2013-08-22 2 views
1

Я работаю с NLTK в течение последних трех дней, чтобы познакомиться и прочитать книгу «Обработка естественного языка», чтобы понять, что происходит. Мне интересно, если кто-то может прояснить для меня следующее:Что генерирует() при использовании NLTK в Python?

Обратите внимание, что первый раз, когда вы запустите эту команду, она медленно, т.к. статистика собирает около последовательностей слов. Каждый раз, когда вы запускаете его, вы получите другой выходной текст. Теперь попробуйте создать случайный текст в стиле инаугурационного адреса или интернет-чата. Хотя текст случайный, он повторно использует общие слова и фразы из исходного текста и дает нам ощущение его стиля и содержания. (Чего не хватает в этом случайно генерируемый текст?)

Эта часть текста, chapter 1, просто говорит о том, что «статистика собирает» и получите «различный выходной текст»

Что конкретно действительно ли создает и как он работает?

Этот пример generate() использует Text3, который является библейская Книга Бытия:

В начале, между мною и тобою, и в саду ты будешь прийти к Ною в ковчег, и Мивсам, И сказал: «Есть ли еще какой-либо части или наследства для нас, и сделай тебя Ефремом и как песок герцогов, которые пришли с ней; и они пришли. Также он послал из вас голубь с табуреткой и плакал над ними сильно; и она задумала и назвала их имена по их именам после окончания матки? И он

Здесь функция generate(), кажется, просто выходные фразы, созданные отрезая текст в пунктуации и случайно сборке, но она имеет немного читаемости к нему.

ответ

2

type(text3) скажет вам, что text3 имеет тип nltk.text.Text.

Чтобы привести documentation из Text.generate():

печати случайный текст, созданный с использованием модели языка триграмма.

Это означает, что NLTK создал N-Gram model для текста Genesis, считая каждое вхождение последовательностей трех слов, так что он может предсказать наиболее вероятный преемник любых заданных двух слов в этом тексте. Модели N-Gram будут объяснены более подробно в chapter 5 of the NLTK book.

См. Также ответы на вопросы this question.

Смежные вопросы