Введение в Text Mining и предварительная обработка текстовых данных

Понятие интеллектуального анализа текста (text mining) и его отличие от контент-анализа

Data mining — это междисциплинарная область знания, находящая на пересечении традиционного статистического анализа, искусственного ин- теллекта, машинного обучения и развития больших баз данных. Можно даже сказать, что data mining — это новая философия, новый взгляд на анализ данных. Суть философии data mining частично выражена в названии этой области знания, которое со- стоит из двух понятий: поиск ценной информации в большой базе данных (data) и добыча горной руды (mining). Именно в просеивании через сито своих инструментов огромного количества «сырых», часто неструктурированных данных в поисках самородков, т. е. осмысленной, нетриви- альной информации — знаний. Более верным названием для этого процесса было бы «knowledge mining from data» (добыча знаний из данных)

Исходное определение термина, которое дал наш бывший соотечественник Григорий Пятнецкий-Шапито, звучит следующим образом: «Data mining — это процесс обнаружения в сырых данных ранее неизвестных нетривиальных практически полезных и доступных интерпретации знаний, необходимых для принятия решений в различных сферах человеческой деятельности».

Специфической областью data mining, нацеленной на анализ текстовых данных является text mining – интеллектуальный анализ текста. По аналогии с термином data mining термину text mining можно дать следующее определение – это нетривиальный процесс обнаружения действительно новых, потенциально полезных и понятных шаблонов в неструктурированных текстовых данных.

Самым популярным вариантом методологии data mining является CRISP-DM (CRoss Industry Standard Process for Data Mining) – Межотраслевой стандартный процесс для data mining.

Так как главное отличие text mining от data mining заключается в том, что первый специализируется на определённом типе данных, с небольшими изменениями CRISP-DM можно применить и для ана- лиза текстовых данных. Весь цикл обработки данных это методологии представлен шестью последовательными этапами

Этап 1. Определение целей исследования. С этого начинается практически любая осмысленная деятельность. Грамотная постановка цели требует глубокого понимания всех аспектов ситуации, в которой проводится исследование, и чёткого определения результата, который мы хотим получить. Для этого необходимо изучить проблему, на решение которой направлено исследование.

Этап 2. Оценка доступности и характера данных. Данный этап включает в себя следующие задачи:

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

После того, как разведывательная часть исследования успешно завершена, можно приступить к сбору данных из различных источников. Как это делать, мы уже проходили.

Этап 3. Подготовка данных. Подготовка данных – необходимый для text mining этап, ведь специфика данного метода по сравнению с data mining заключается в более трудоёмких стадиях сбора и обработки данных.

Этап подготовки данных состоит из следующих фаз:

  • Создание корпуса. В лингвистике корпус – это большой структурированный набор текстов. На данном этапе необходимо собрать все текстовые документы, относящиеся к исследуемой проблеме. Исследователю предстоит решить, какие данные и в каких объёмах необходимо собрать и проанализировать, чтобы решить поставленную задачу. Следует помнить, что все методы data mining сильно зависимы от точности полученных результатов от их количества. После того, как документы будут собраны, их необходимо трансформировать таким образом, чтобы они были представлены в единой форме (например, в базе данных или текстовом файле) для компьютерной обработки.
  • Предварительная обработка данных. Об этом ниже.

Этап 4. Разработка и калибровка модели. На этом этапе происходит применение методов извлечения знаний.

Этап 5. Проверка результатов. После того, как модель создана и настроена, мы должны произвести общую проверку всех действий. Например, необходимо убедиться, что выборка произведена правильно. Также случается, что в процессе построения исследования теряется основная цель, для достижения которой оно начиналось. На данном этапе следует проверить, решает ли модель сформулированную проблему и служит ли, таким образом, достижению цели. Если что-то упущено, необходимо вернуться назад к этапу, породившему рассогласованность между целью и результатом.

Этап 6. Внедрение. В случае, если по итогам проверок было решено, что модель решает поставленную проблему, её можно применять. В самом простом случае внедрение может принимать форму написания отчёта о результатах исследования (в вашем случае — курсовой работы). В сложном – построение интеллектуальной системы на основе построенной модели с тем, чтобы она могла быть повторно использована для принятия решений.

Область применения и примеры использования методов интеллектуального анализа текста

Интеллектуальный анализ текста находит своё применение во многих областях. В экономике с его помощью можно установить, как настроения в СМИ влияют на котировки фондового рынка [1] имеется ли связь между отзывами о продукте в Интернет-магазине и его продажами [2], как макроэкономические показатели могут быть измерены поисковыми запросами [3] и текстами из социальных медиа.

В психологии этот метод позволяет узнать, как психическое состояние человека выражается в его языке [4] и правда ли, что суточные и сезонные циклы настроения носят надкультурный характер [5].

Одним из самых известных и ранних примеров применения методов text mining в исторических исследованиях является установление авторства сборника статей «Федералист» [6]. Здесь text mining принял форму стилометрии.

Социолингвисты использовали text mining для идентификации географически зависимых лингвистических переменных и, на основании этого, предсказания местоположения пользователя на основе написанного им текста [7]. Text-mining также можно использовать в качестве вспомогательного метода, уточняющего результаты традиционных опросов [8]. Рассматриваемый метод активно используется в политологических и социологических исследованиях.

  1. C. Tetlock Paul. Giving content to investor sentiment: The role of media in the stock mar- ket // The Journal of Finance. — 2007. — June. — Vol. 62, no. 3. — Pp. 1139–1168.
  2. ArchakNikolay,GhoseAnindya,IpeirotisPanagiotis.Derivingthepricingpowerofproductfeatures by mining consumer reviews [Online] // Management Science. — 2011. — August. — Vol. 57, no. 8. — Pp. 1485–1509. — Available: http://pages.stern.nyu.edu/~aghose/pricingpower_print.pdf.
  3. Askitas Nikolaos, Zimmermann Klaus F. Google econometrics and unemployment forecasting [Online] // Applied Economics Quarterly. — 2009. — April. — Vol. 55, no. 2. — Pp. 107–120. — Available: http://ftp.iza.org/dp4201.pdf.
  4. Tausczik Yla R., Pennebaker James W. The Psychological Meaning of Words: LIWC and Comput- erized Text Analysis Methods [Online] // Journal of Language and Social Psychology. — 2010. — Vol. 29, no. 1. — Pp. 24–54. — Available: http://homepage.psy.utexas.edu/HomePage/Faculty/Pennebaker/Reprints/Tausczik&Pennebaker2010.pdf.
  5. Golder Scott A., Macy Michael W. Diurnal and Seasonal Mood Vary with Work, Sleep, and Daylength Across Diverse Cultures [Online] // Science. — 2011. — September. — Vol. 333. — Pp. 1878–1881. — Available: http://www3.ntu.edu.sg/home/linqiu/teaching/psychoinformatics/DiurnalandSeasonalMoodVaryAcrossDiverseCultures.pdf.
  6. Mosteller F., Wallace D.L., Nerbonne J. Inference and Disputed Authorship: The Federalist. The David Hume Series. — Center for the Study of Language and Information, 2008.
  7. A Latent Variable Model for Geographic Lexical Variation [Online] / Jacob Eisenstein, Brendan O’Connor, Noah A. Smith, Eric P. Xing // Proceedings of the 2010 Conference on Empirical Methods in Natural Language Processing. — 2010. — Pp. 1277–1287. — Available: http://www.cs.cmu.edu/~nasmith/papers/eisenstein+oconnor+smith+xing.emnlp10.pdf.
  8. From Tweets to Polls: Linking Text Sentiment to Public Opinion Time Series [Online] / Bren- dan O’Connor, Ramnath Balasubramanyan, Bryan R. Routledge, Noah A Smith // Internation- al AAAI Conference on Weblogs and Social Media. — Washington: 2010. — Available: http://www.cs.cmu.edu/~nasmith/papers/oconnor+balasubramanyan+routledge+smith.icwsm10.pdf.

Особенности работы с текстами

Автоматический анализ текстов — наверное, самая сложный раздел анализа данных и предмет отдельных дисциплин, таких как компьютерная лингвистика, обработка естественного языка и др. В работе с текстами очень важно осознавать особенности этого типа данных на каждом цикле:

  1. Сбор и хранение текстов, построение корпуса.
  2. Предварительная обработка текстов.
  3. Кодирование текстов (не обязательно).
  4. Применение методов анализа

Особенности анализа текстов: 0. Зависимость от языка.

  1. Сложная многоуровная структура (морфология, синтаксис, семантика), которая для компьютера по умолчанию выглядит как отсутствите структуры.
  2. При анализе текстов этап предварительной обработки имеет намного большее значение, чем при анализе других видов информации, т.к. благодаря этому текст обретает структуру.
  3. Как следствие, существуют особенные методы предварительной обработки и выявления признаков:
    • токенизация
    • лемматизация, стемминг
    • удаление стоп-слов
    • POS-tagging
    • n-граммы (на уровне символов и на уровне слов)
    • обогащение контекстом: word2vec, doc2vec, etc.
    • сочетания методов (phrases из gensim)
    • выявление синтаксически связанных словосочетаний (typed dependences)
    • ...
  4. Особенности кодирования текстов: кодирование сложных концептов вызывает большие затруднения у людей, поскольку эти концепты выражают сложные и многослойные идеи (Measuring the Reliability of Hate Speech Annotations: The Case of the European Refugee Crisis).
  5. Помимо общих в анализе текста существуют и специализированные задачи (некоторые из них пересекаются с методами предварительной обработки, но могут использоваться как самостоятельные методы анализа):

Практика

Чтобы получить представление о текущем состоянии дел в одной из практических областей обработки естественного язка — выявлении языка вражды — прочитайте статью «A Survey on Hate Speech Detection using Natural Language Processing».

  1. Какие основные методы извлечения признаков из текстов выделяют авторы?
  2. Какие методы классификации чаще всего используются в этой сфере?

Сбор и хранение данных

Про сбор данных мы уже говорили, так что несколько слов про хранение.

  • Избегайте хранить структурированные текстовые данные в текстовом формате типа CSV. В случае, если в текстах встретится символ, используеммый в этом файле качестве разделителя, вся структура сломается.

  • Храните текстовые данные в кодировке utf8.

  • Если данные помещаются с оперативную память, то их можно хранить в любом бинарном формате как один файл (форматы хранения pandas dataframes). Иначе используйте базы данных, предпочтительно документо-ориентированные типа MongoDB.

Ссылки

Препроцессинг

Выделение нужной части текста

Для этого полезны регулярные выражения.

Сегментация и токенизация

Анекдот для начала: https://research-journal.org/languages/k-voprosu-o-tokenizacii-teksta/.

http://wiki.cs.hse.ru/Lecture_2._Tokenization_and_word_counts

Пакеты для сегментации и токенизации:

Протестировать работу модулей токенизации из NLTK и Pattern можно по ссылке: http://text-processing.com/demo/tokenize/.

import nltk nltk.download("punkt")
[nltk_data] Downloading package punkt to /Users/hun/nltk_data...
[nltk_data] Package punkt is already up-to-date!
True

punkt токенизирует слова и предложения при помощи машинного обучения.

from nltk.tokenize import sent_tokenize with open("text1.txt") as f: raw = f.read() sents = sent_tokenize(raw, language='english') print(sents)
['Они поднялись по дороге к хижине старика и вошли в дверь, растворенную настежь.', 'Старик прислонил мачту с обернутым вокруг нее парусом к стене, а мальчик положил рядом снасти.', 'Мачта была почти такой же длины, как хижина, выстроенная из листьев королевской пальмы, которую здесь зовут guano.', 'В хижине были кровать, стол и стул и в глинобитном полу — выемка, чтобы стряпать пищу на древесном угле.', 'Коричневые стены, сложенные из спрессованных волокнистых листьев, были украшены цветными олеографиями Сердца господня и Santa Maria del Cobre.', 'Они достались ему от покойной жены.', 'Когда-то на стене висела и раскрашенная фотография самой жены, но потом старик ее спрятал, потому что смотреть на нее было уж очень тоскливо.', 'Теперь фотография лежала на полке в углу, под чистой рубахой.']
from nltk import word_tokenize with open("text1.txt", encoding="utf8") as f: raw = f.read() tokens = word_tokenize(raw, language='english') print(tokens)
['Они', 'поднялись', 'по', 'дороге', 'к', 'хижине', 'старика', 'и', 'вошли', 'в', 'дверь', ',', 'растворенную', 'настежь', '.', 'Старик', 'прислонил', 'мачту', 'с', 'обернутым', 'вокруг', 'нее', 'парусом', 'к', 'стене', ',', 'а', 'мальчик', 'положил', 'рядом', 'снасти', '.', 'Мачта', 'была', 'почти', 'такой', 'же', 'длины', ',', 'как', 'хижина', ',', 'выстроенная', 'из', 'листьев', 'королевской', 'пальмы', ',', 'которую', 'здесь', 'зовут', 'guano', '.', 'В', 'хижине', 'были', 'кровать', ',', 'стол', 'и', 'стул', 'и', 'в', 'глинобитном', 'полу', '—', 'выемка', ',', 'чтобы', 'стряпать', 'пищу', 'на', 'древесном', 'угле', '.', 'Коричневые', 'стены', ',', 'сложенные', 'из', 'спрессованных', 'волокнистых', 'листьев', ',', 'были', 'украшены', 'цветными', 'олеографиями', 'Сердца', 'господня', 'и', 'Santa', 'Maria', 'del', 'Cobre', '.', 'Они', 'достались', 'ему', 'от', 'покойной', 'жены', '.', 'Когда-то', 'на', 'стене', 'висела', 'и', 'раскрашенная', 'фотография', 'самой', 'жены', ',', 'но', 'потом', 'старик', 'ее', 'спрятал', ',', 'потому', 'что', 'смотреть', 'на', 'нее', 'было', 'уж', 'очень', 'тоскливо', '.', 'Теперь', 'фотография', 'лежала', 'на', 'полке', 'в', 'углу', ',', 'под', 'чистой', 'рубахой', '.']

Удаление пунктуации

При помощь list comprehensions и списка символов пунктуации:

import string text = "«Текст», с какой-то пунктуацией!" "".join(l for l in text if l not in string.punctuation)
'«Текст» с какойто пунктуацией'

Если не символы алфавита и пробелы, то заменяем на пустую строку:

import re re.sub("[^\w\s]", "", text)
'Текст с какойто пунктуацией'

Лемматизация / стемминг

Cтемминг

Слова состоят из морфем:word=stem+affixes. Стемминг позволяет отбросить аффиксы (чаще всего – только суффиксы).

павлиний, павлиньи, павлиньим⇒павлин

Стеммер Портера — алгоритм стемминга, опубликованный Мартином Портером в 1980 году. Оригинальная версия стеммера была предназначена для английского языка и была написана на языке BCPL. Впоследствии Мартин создал проект «Snowball» и, используя основную идею алгоритма, написал стеммеры для распространённых индоевропейских языков, в том числе для русского.

Алгоритм не использует баз основ слов, а лишь, применяя последовательно ряд правил, отсекает окончания и суффиксы, основываясь на особенностях языка, в связи с чем работает быстро, но не всегда безошибочно.

http://snowball.tartarus.org/algorithms/russian/stemmer.html

#from nltk.stem.porter import PorterStemmer from nltk.stem import SnowballStemmer # from nltk.stem.snowball import RussianStemmer
nltk.download("snowball")
[nltk_data] Error loading snowball: Package 'snowball' not found in
[nltk_data] index
False
stemmer = SnowballStemmer("russian") stemmer.stem("железный")
'железн'

Лемматизация

Каждой словоформе соответствует лемма(нормальная форма):

кошке, кошку, кошкам, кошкой⇒кошка

Существует для основных лемматизатора для Python — mystem от Яндекса и PyMorphy.

from pymorphy2 import MorphAnalyzer m = MorphAnalyzer() lemmas = [m.parse(token)[0].normal_form for token in tokens] lemmas
['они',
'подняться',
'по',
'дорога',
'к',
'хижина',
'старик',
'и',
'войти',
'в',
'дверь',
',',
'растворить',
'настежь',
'.',
'старик',
'прислонить',
'мачта',
'с',
'обернуть',
'вокруг',
'нея',
'парус',
'к',
'стена',
',',
'а',
'мальчик',
'положить',
'ряд',
'снасть',
'.',
'мачта',
'быть',
'почти',
'такой',
'же',
'длина',
',',
'как',
'хижина',
',',
'выстроить',
'из',
'лист',
'королевский',
'пальма',
',',
'который',
'здесь',
'звать',
'guano',
'.',
'в',
'хижина',
'быть',
'кровать',
',',
'стол',
'и',
'стул',
'и',
'в',
'глинобитный',
'пол',
'—',
'выемка',
',',
'чтобы',
'стряпать',
'пища',
'на',
'древесный',
'угол',
'.',
'коричневый',
'стена',
',',
'сложить',
'из',
'спрессовать',
'волокнистый',
'лист',
',',
'быть',
'украсить',
'цветной',
'олеография',
'сердце',
'господний',
'и',
'santa',
'maria',
'del',
'cobre',
'.',
'они',
'достаться',
'он',
'от',
'покойный',
'жена',
'.',
'когда-то',
'на',
'стена',
'висеть',
'и',
'раскрасить',
'фотография',
'самый',
'жена',
',',
'но',
'потом',
'старик',
'она',
'спрятать',
',',
'потому',
'что',
'смотреть',
'на',
'нея',
'быть',
'уж',
'очень',
'тоскливый',
'.',
'теперь',
'фотография',
'лежалый',
'на',
'полка',
'в',
'угол',
',',
'под',
'чистый',
'рубаха',
'.']
!pip3 install pymystem3
Requirement already satisfied: pymystem3 in /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages (0.2.0)
Requirement already satisfied: requests in /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages (from pymystem3) (2.19.1)
Requirement already satisfied: certifi>=2017.4.17 in /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages (from requests->pymystem3) (2018.8.24)
Requirement already satisfied: idna<2.8,>=2.5 in /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages (from requests->pymystem3) (2.7)
Requirement already satisfied: chardet<3.1.0,>=3.0.2 in /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages (from requests->pymystem3) (3.0.4)
Requirement already satisfied: urllib3<1.24,>=1.21.1 in /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages (from requests->pymystem3) (1.23)
You are using pip version 18.0, however version 18.1 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
from pymystem3 import Mystem
m = Mystem() lemmas = m.lemmatize(raw) lemmas
['они',
' ',
'подниматься',
' ',
'по',
' ',
'дорога',
' ',
'к',
' ',
'хижина',
' ',
'старик',
' ',
'и',
' ',
'входить',
' ',
'в',
' ',
'дверь',
', ',
'растворять',
' ',
'настежь',
'. ',
'старик',
' ',
'прислонять',
' ',
'мачта',
' ',
'с',
' ',
'оборачивать',
' ',
'вокруг',
' ',
'она',
' ',
'парус',
' ',
'к',
' ',
'стена',
', ',
'а',
' ',
'мальчик',
' ',
'полагать',
' ',
'рядом',
' ',
'снасть',
'. ',
'мачта',
' ',
'быть',
' ',
'почти',
' ',
'такой',
' ',
'же',
' ',
'длина',
', ',
'как',
' ',
'хижина',
', ',
'выстраивать',
' ',
'из',
' ',
'лист',
' ',
'королевский',
' ',
'пальма',
', ',
'который',
' ',
'здесь',
' ',
'звать',
' ',
'guano',
'. ',
'в',
' ',
'хижина',
' ',
'быть',
' ',
'кровать',
', ',
'стол',
' ',
'и',
' ',
'стул',
' ',
'и',
' ',
'в',
' ',
'глинобитный',
' ',
'пол',
' — ',
'выемка',
', ',
'чтобы',
' ',
'стряпать',
' ',
'пища',
' ',
'на',
' ',
'древесный',
' ',
'угол',
'. ',
'коричневый',
' ',
'стена',
', ',
'слагать',
' ',
'из',
' ',
'спрессовывать',
' ',
'волокнистый',
' ',
'лист',
', ',
'быть',
' ',
'украшать',
' ',
'цветной',
' ',
'олеография',
' ',
'сердце',
' ',
'господний',
' ',
'и',
' ',
'Santa',
' ',
'Maria',
' ',
'del',
' ',
'Cobre',
'. ',
'они',
' ',
'доставаться',
' ',
'он',
' ',
'от',
' ',
'покойный',
' ',
'жена',
'. ',
'когда-то',
' ',
'на',
' ',
'стена',
' ',
'висеть',
' ',
'и',
' ',
'раскрашивать',
' ',
'фотография',
' ',
'сам',
' ',
'жена',
', ',
'но',
' ',
'потом',
' ',
'старик',
' ',
'она',
' ',
'спрятать',
', ',
'потому',
' ',
'что',
' ',
'смотреть',
' ',
'на',
' ',
'она',
' ',
'быть',
' ',
'уж',
' ',
'очень',
' ',
'тоскливо',
'. ',
'теперь',
' ',
'фотография',
' ',
'лежать',
' ',
'на',
' ',
'полка',
' ',
'в',
' ',
'угол',
', ',
'под',
' ',
'чистый',
' ',
'рубаха',
'.',
'\n']
m.analyze(raw)
[{'analysis': [{'lex': 'они', 'wt': 1, 'gr': 'SPRO,мн=им'}], 'text': 'Они'},
{'text': ' '},
{'analysis': [{'lex': 'подниматься',
'wt': 1,
'gr': 'V,нп=прош,мн,изъяв,сов'}],
'text': 'поднялись'},
{'text': ' '},
{'analysis': [{'lex': 'по', 'wt': 1, 'gr': 'PR='}], 'text': 'по'},
{'text': ' '},
{'analysis': [{'lex': 'дорога', 'wt': 1, 'gr': 'S,жен,неод=(пр,ед|дат,ед)'}],
'text': 'дороге'},
{'text': ' '},
{'analysis': [{'lex': 'к', 'wt': 0.9999551773, 'gr': 'PR='}], 'text': 'к'},
{'text': ' '},
{'analysis': [{'lex': 'хижина', 'wt': 1, 'gr': 'S,жен,неод=(пр,ед|дат,ед)'}],
'text': 'хижине'},
{'text': ' '},
{'analysis': [{'lex': 'старик', 'wt': 1, 'gr': 'S,муж,од=(вин,ед|род,ед)'}],
'text': 'старика'},
{'text': ' '},
{'analysis': [{'lex': 'и', 'wt': 0.9999770522, 'gr': 'CONJ='}], 'text': 'и'},
{'text': ' '},
{'analysis': [{'lex': 'входить', 'wt': 1, 'gr': 'V,нп=прош,мн,изъяв,сов'}],
'text': 'вошли'},
{'text': ' '},
{'analysis': [{'lex': 'в', 'wt': 0.9999917746, 'gr': 'PR='}], 'text': 'в'},
{'text': ' '},
{'analysis': [{'lex': 'дверь', 'wt': 1, 'gr': 'S,жен,неод=(вин,ед|им,ед)'}],
'text': 'дверь'},
{'text': ', '},
{'analysis': [{'lex': 'растворять',
'wt': 1,
'gr': 'V,пе=прош,вин,ед,прич,полн,жен,сов,страд'}],
'text': 'растворенную'},
{'text': ' '},
{'analysis': [{'lex': 'настежь', 'wt': 1, 'gr': 'ADV='}], 'text': 'настежь'},
{'text': '. '},
{'analysis': [{'lex': 'старик', 'wt': 1, 'gr': 'S,муж,од=им,ед'}],
'text': 'Старик'},
{'text': ' '},
{'analysis': [{'lex': 'прислонять',
'wt': 1,
'gr': 'V,пе=прош,ед,изъяв,муж,сов'}],
'text': 'прислонил'},
{'text': ' '},
{'analysis': [{'lex': 'мачта', 'wt': 1, 'gr': 'S,жен,неод=вин,ед'}],
'text': 'мачту'},
{'text': ' '},
{'analysis': [{'lex': 'с', 'wt': 0.9999778271, 'gr': 'PR='}], 'text': 'с'},
{'text': ' '},
{'analysis': [{'lex': 'оборачивать',
'wt': 1,
'gr': 'V,пе=(прош,дат,мн,прич,полн,сов,страд|прош,твор,ед,прич,полн,муж,сов,страд|прош,твор,ед,прич,полн,сред,сов,страд)'}],
'text': 'обернутым'},
{'text': ' '},
{'analysis': [{'lex': 'вокруг', 'wt': 0.2243259996, 'gr': 'ADV='}],
'text': 'вокруг'},
{'text': ' '},
{'analysis': [{'lex': 'она',
'wt': 0.9999228716,
'gr': 'SPRO,ед,3-л,жен=(вин|род)'}],
'text': 'нее'},
{'text': ' '},
{'analysis': [{'lex': 'парус', 'wt': 1, 'gr': 'S,муж,неод=твор,ед'}],
'text': 'парусом'},
{'text': ' '},
{'analysis': [{'lex': 'к', 'wt': 0.9999551773, 'gr': 'PR='}], 'text': 'к'},
{'text': ' '},
{'analysis': [{'lex': 'стена',
'wt': 0.9994994998,
'gr': 'S,жен,неод=(пр,ед|дат,ед)'}],
'text': 'стене'},
{'text': ', '},
{'analysis': [{'lex': 'а', 'wt': 0.9822148681, 'gr': 'CONJ='}], 'text': 'а'},
{'text': ' '},
{'analysis': [{'lex': 'мальчик', 'wt': 1, 'gr': 'S,муж,од=им,ед'}],
'text': 'мальчик'},
{'text': ' '},
{'analysis': [{'lex': 'полагать',
'wt': 1,
'gr': 'V,пе=прош,ед,изъяв,муж,сов'}],
'text': 'положил'},
{'text': ' '},
{'analysis': [{'lex': 'рядом', 'wt': 0.9518985152, 'gr': 'ADV='}],
'text': 'рядом'},
{'text': ' '},
{'analysis': [{'lex': 'снасть',
'wt': 0.9996435046,
'gr': 'S,жен,неод=(пр,ед|вин,мн|дат,ед|род,ед|им,мн)'}],
'text': 'снасти'},
{'text': '. '},
{'analysis': [{'lex': 'мачта', 'wt': 1, 'gr': 'S,жен,неод=им,ед'}],
'text': 'Мачта'},
{'text': ' '},
{'analysis': [{'lex': 'быть', 'wt': 1, 'gr': 'V,нп=прош,ед,изъяв,жен,несов'}],
'text': 'была'},
{'text': ' '},
{'analysis': [{'lex': 'почти', 'wt': 0.9984512925, 'gr': 'ADV='}],
'text': 'почти'},
{'text': ' '},
{'analysis': [{'lex': 'такой',
'wt': 1,
'gr': 'APRO=(пр,ед,жен|дат,ед,жен|род,ед,жен|твор,ед,жен|вин,ед,муж,неод|им,ед,муж)'}],
'text': 'такой'},
{'text': ' '},
{'analysis': [{'lex': 'же', 'wt': 0.9351937175, 'gr': 'PART='}],
'text': 'же'},
{'text': ' '},
{'analysis': [{'lex': 'длина',
'wt': 1,
'gr': 'S,жен,неод=(вин,мн|род,ед|им,мн)'}],
'text': 'длины'},
{'text': ', '},
{'analysis': [{'lex': 'как', 'wt': 0.6102573872, 'gr': 'CONJ='}],
'text': 'как'},
{'text': ' '},
{'analysis': [{'lex': 'хижина', 'wt': 1, 'gr': 'S,жен,неод=им,ед'}],
'text': 'хижина'},
{'text': ', '},
{'analysis': [{'lex': 'выстраивать',
'wt': 1,
'gr': 'V,пе=прош,им,ед,прич,полн,жен,сов,страд'}],
'text': 'выстроенная'},
{'text': ' '},
{'analysis': [{'lex': 'из', 'wt': 1, 'gr': 'PR='}], 'text': 'из'},
{'text': ' '},
{'analysis': [{'lex': 'лист', 'wt': 0.9869581461, 'gr': 'S,муж,неод=род,мн'}],
'text': 'листьев'},
{'text': ' '},
{'analysis': [{'lex': 'королевский',
'wt': 1,
'gr': 'A=(пр,ед,полн,жен|дат,ед,полн,жен|род,ед,полн,жен|твор,ед,полн,жен)'}],
'text': 'королевской'},
{'text': ' '},
{'analysis': [{'lex': 'пальма',
'wt': 1,
'gr': 'S,жен,неод=(вин,мн|род,ед|им,мн)'}],
'text': 'пальмы'},
{'text': ', '},
{'analysis': [{'lex': 'который', 'wt': 1, 'gr': 'APRO=вин,ед,жен'}],
'text': 'которую'},
{'text': ' '},
{'analysis': [{'lex': 'здесь', 'wt': 1, 'gr': 'ADVPRO='}], 'text': 'здесь'},
{'text': ' '},
{'analysis': [{'lex': 'звать',
'wt': 1,
'gr': 'V,несов,пе=непрош,мн,изъяв,3-л'}],
'text': 'зовут'},
{'text': ' '},
{'analysis': [], 'text': 'guano'},
{'text': '. '},
{'analysis': [{'lex': 'в', 'wt': 0.9999917746, 'gr': 'PR='}], 'text': 'В'},
{'text': ' '},
{'analysis': [{'lex': 'хижина', 'wt': 1, 'gr': 'S,жен,неод=(пр,ед|дат,ед)'}],
'text': 'хижине'},
{'text': ' '},
{'analysis': [{'lex': 'быть',
'wt': 0.9993723035,
'gr': 'V,нп=прош,мн,изъяв,несов'}],
'text': 'были'},
{'text': ' '},
{'analysis': [{'lex': 'кровать', 'wt': 1, 'gr': 'S,жен,неод=(вин,ед|им,ед)'}],
'text': 'кровать'},
{'text': ', '},
{'analysis': [{'lex': 'стол', 'wt': 1, 'gr': 'S,муж,неод=(вин,ед|им,ед)'}],
'text': 'стол'},
{'text': ' '},
{'analysis': [{'lex': 'и', 'wt': 0.9999770522, 'gr': 'CONJ='}], 'text': 'и'},
{'text': ' '},
{'analysis': [{'lex': 'стул', 'wt': 1, 'gr': 'S,муж,неод=(вин,ед|им,ед)'}],
'text': 'стул'},
{'text': ' '},
{'analysis': [{'lex': 'и', 'wt': 0.9999770522, 'gr': 'CONJ='}], 'text': 'и'},
{'text': ' '},
{'analysis': [{'lex': 'в', 'wt': 0.9999917746, 'gr': 'PR='}], 'text': 'в'},
{'text': ' '},
{'analysis': [{'lex': 'глинобитный',
'wt': 1,
'gr': 'A=(пр,ед,полн,муж|пр,ед,полн,сред)'}],
'text': 'глинобитном'},
{'text': ' '},
{'analysis': [{'lex': 'пол',
'wt': 0.9334520698,
'gr': 'S,муж,неод=(дат,ед|местн,ед)'}],
'text': 'полу'},
{'text': ' — '},
{'analysis': [{'lex': 'выемка', 'wt': 1, 'gr': 'S,жен,неод=им,ед'}],
'text': 'выемка'},
{'text': ', '},
{'analysis': [{'lex': 'чтобы', 'wt': 0.9998207688, 'gr': 'CONJ='}],
'text': 'чтобы'},
{'text': ' '},
{'analysis': [{'lex': 'стряпать', 'wt': 1, 'gr': 'V,несов,пе=инф'}],
'text': 'стряпать'},
{'text': ' '},
{'analysis': [{'lex': 'пища', 'wt': 0.9780845046, 'gr': 'S,жен,неод=вин,ед'}],
'text': 'пищу'},
{'text': ' '},
{'analysis': [{'lex': 'на', 'wt': 0.9989522696, 'gr': 'PR='}], 'text': 'на'},
{'text': ' '},
{'analysis': [{'lex': 'древесный',
'wt': 1,
'gr': 'A=(пр,ед,полн,муж|пр,ед,полн,сред)'}],
'text': 'древесном'},
{'text': ' '},
{'analysis': [{'lex': 'угол', 'wt': 0.5469763875, 'gr': 'S,муж,неод=пр,ед'}],
'text': 'угле'},
{'text': '. '},
{'analysis': [{'lex': 'коричневый',
'wt': 1,
'gr': 'A=(вин,мн,полн,неод|им,мн,полн)'}],
'text': 'Коричневые'},
{'text': ' '},
{'analysis': [{'lex': 'стена',
'wt': 0.9997813702,
'gr': 'S,жен,неод=(вин,мн|род,ед|им,мн)'}],
'text': 'стены'},
{'text': ', '},
{'analysis': [{'lex': 'слагать',
'wt': 0.7125064731,
'gr': 'V,пе=(прош,вин,мн,прич,полн,сов,страд,неод|прош,им,мн,прич,полн,сов,страд)'}],
'text': 'сложенные'},
{'text': ' '},
{'analysis': [{'lex': 'из', 'wt': 1, 'gr': 'PR='}], 'text': 'из'},
{'text': ' '},
{'analysis': [{'lex': 'спрессовывать',
'wt': 1,
'gr': 'V=(прош,пр,мн,прич,полн,сов,страд|прош,вин,мн,прич,полн,сов,страд,од|прош,род,мн,прич,полн,сов,страд)'}],
'text': 'спрессованных'},
{'text': ' '},
{'analysis': [{'lex': 'волокнистый',
'wt': 1,
'gr': 'A=(пр,мн,полн|вин,мн,полн,од|род,мн,полн)'}],
'text': 'волокнистых'},
{'text': ' '},
{'analysis': [{'lex': 'лист', 'wt': 0.9869581461, 'gr': 'S,муж,неод=род,мн'}],
'text': 'листьев'},
{'text': ', '},
{'analysis': [{'lex': 'быть',
'wt': 0.9993723035,
'gr': 'V,нп=прош,мн,изъяв,несов'}],
'text': 'были'},
{'text': ' '},
{'analysis': [{'lex': 'украшать',
'wt': 1,
'gr': 'V=прош,мн,прич,кр,сов,страд,пе'}],
'text': 'украшены'},
{'text': ' '},
{'analysis': [{'lex': 'цветной', 'wt': 0.9862660766, 'gr': 'A=твор,мн,полн'}],
'text': 'цветными'},
{'text': ' '},
{'analysis': [{'lex': 'олеография', 'wt': 1, 'gr': 'S,жен,неод=твор,мн'}],
'text': 'олеографиями'},
{'text': ' '},
{'analysis': [{'lex': 'сердце',
'wt': 1,
'gr': 'S,сред,неод=(вин,мн|род,ед|им,мн)'}],
'text': 'Сердца'},
{'text': ' '},
{'analysis': [{'lex': 'господний',
'wt': 1,
'gr': 'A,притяж=(вин,ед,кр,муж,од|им,ед,кр,жен|род,ед,кр,муж|род,ед,кр,сред)'}],
'text': 'господня'},
{'text': ' '},
{'analysis': [{'lex': 'и', 'wt': 0.9999770522, 'gr': 'CONJ='}], 'text': 'и'},
{'text': ' '},
{'analysis': [], 'text': 'Santa'},
{'text': ' '},
{'analysis': [], 'text': 'Maria'},
{'text': ' '},
{'analysis': [], 'text': 'del'},
{'text': ' '},
{'analysis': [], 'text': 'Cobre'},
{'text': '. '},
{'analysis': [{'lex': 'они', 'wt': 1, 'gr': 'SPRO,мн=им'}], 'text': 'Они'},
{'text': ' '},
{'analysis': [{'lex': 'доставаться',
'wt': 1,
'gr': 'V,нп=прош,мн,изъяв,сов'}],
'text': 'достались'},
{'text': ' '},
{'analysis': [{'lex': 'он', 'wt': 0.9886697531, 'gr': 'SPRO,ед,3-л,муж=дат'}],
'text': 'ему'},
{'text': ' '},
{'analysis': [{'lex': 'от', 'wt': 1, 'gr': 'PR='}], 'text': 'от'},
{'text': ' '},
{'analysis': [{'lex': 'покойный',
'wt': 0.9627692103,
'gr': 'A=(пр,ед,полн,жен|дат,ед,полн,жен|род,ед,полн,жен|твор,ед,полн,жен)'}],
'text': 'покойной'},
{'text': ' '},
{'analysis': [{'lex': 'жена', 'wt': 1, 'gr': 'S,жен,од=(род,ед|им,мн)'}],
'text': 'жены'},
{'text': '. '},
{'analysis': [{'lex': 'когда-то', 'wt': 1, 'gr': 'ADVPRO='}],
'text': 'Когда-то'},
{'text': ' '},
{'analysis': [{'lex': 'на', 'wt': 0.9989522696, 'gr': 'PR='}], 'text': 'на'},
{'text': ' '},
{'analysis': [{'lex': 'стена',
'wt': 0.9994994998,
'gr': 'S,жен,неод=(пр,ед|дат,ед)'}],
'text': 'стене'},
{'text': ' '},
{'analysis': [{'lex': 'висеть',
'wt': 1,
'gr': 'V,несов,нп=прош,ед,изъяв,жен'}],
'text': 'висела'},
{'text': ' '},
{'analysis': [{'lex': 'и', 'wt': 0.9999770522, 'gr': 'CONJ='}], 'text': 'и'},
{'text': ' '},
{'analysis': [{'lex': 'раскрашивать',
'wt': 0.8568181992,
'gr': 'V=прош,им,ед,прич,полн,жен,сов,страд'}],
'text': 'раскрашенная'},
{'text': ' '},
{'analysis': [{'lex': 'фотография', 'wt': 1, 'gr': 'S,жен,неод=им,ед'}],
'text': 'фотография'},
{'text': ' '},
{'analysis': [{'lex': 'сам',
'wt': 0.2883675694,
'gr': 'APRO=(пр,ед,жен|дат,ед,жен|род,ед,жен|твор,ед,жен)'}],
'text': 'самой'},
{'text': ' '},
{'analysis': [{'lex': 'жена', 'wt': 1, 'gr': 'S,жен,од=(род,ед|им,мн)'}],
'text': 'жены'},
{'text': ', '},
{'analysis': [{'lex': 'но', 'wt': 0.9998906255, 'gr': 'CONJ='}],
'text': 'но'},
{'text': ' '},
{'analysis': [{'lex': 'потом', 'wt': 0.9973604083, 'gr': 'ADVPRO='}],
'text': 'потом'},
{'text': ' '},
{'analysis': [{'lex': 'старик', 'wt': 1, 'gr': 'S,муж,од=им,ед'}],
'text': 'старик'},
{'text': ' '},
{'analysis': [{'lex': 'она',
'wt': 0.9999876618,
'gr': 'SPRO,ед,3-л,жен=(вин|род)'}],
'text': 'ее'},
{'text': ' '},
{'analysis': [{'lex': 'спрятать',
'wt': 1,
'gr': 'V,сов,пе=прош,ед,изъяв,муж'}],
'text': 'спрятал'},
{'text': ', '},
{'analysis': [{'lex': 'потому', 'wt': 1, 'gr': 'ADVPRO='}], 'text': 'потому'},
{'text': ' '},
{'analysis': [{'lex': 'что', 'wt': 0.6885325909, 'gr': 'CONJ='}],
'text': 'что'},
{'text': ' '},
{'analysis': [{'lex': 'смотреть', 'wt': 1, 'gr': 'V,несов,пе=инф'}],
'text': 'смотреть'},
{'text': ' '},
{'analysis': [{'lex': 'на', 'wt': 0.9989522696, 'gr': 'PR='}], 'text': 'на'},
{'text': ' '},
{'analysis': [{'lex': 'она',
'wt': 0.9999228716,
'gr': 'SPRO,ед,3-л,жен=(вин|род)'}],
'text': 'нее'},
{'text': ' '},
{'analysis': [{'lex': 'быть',
'wt': 0.9756807089,
'gr': 'V,нп=прош,ед,изъяв,сред,несов'}],
'text': 'было'},
{'text': ' '},
{'analysis': [{'lex': 'уж', 'wt': 0.7191510797, 'gr': 'PART='}],
'text': 'уж'},
{'text': ' '},
{'analysis': [{'lex': 'очень', 'wt': 1, 'gr': 'ADV='}], 'text': 'очень'},
{'text': ' '},
{'analysis': [{'lex': 'тоскливо', 'wt': 0.9824444056, 'gr': 'ADV='}],
'text': 'тоскливо'},
{'text': '. '},
{'analysis': [{'lex': 'теперь', 'wt': 1, 'gr': 'ADV='}], 'text': 'Теперь'},
{'text': ' '},
{'analysis': [{'lex': 'фотография', 'wt': 1, 'gr': 'S,жен,неод=им,ед'}],
'text': 'фотография'},
{'text': ' '},
{'analysis': [{'lex': 'лежать',
'wt': 0.9998289943,
'gr': 'V,несов,нп=прош,ед,изъяв,жен'}],
'text': 'лежала'},
{'text': ' '},
{'analysis': [{'lex': 'на', 'wt': 0.9989522696, 'gr': 'PR='}], 'text': 'на'},
{'text': ' '},
{'analysis': [{'lex': 'полка',
'wt': 0.5671178699,
'gr': 'S,жен,неод=(пр,ед|дат,ед)'}],
'text': 'полке'},
{'text': ' '},
{'analysis': [{'lex': 'в', 'wt': 0.9999917746, 'gr': 'PR='}], 'text': 'в'},
{'text': ' '},
{'analysis': [{'lex': 'угол', 'wt': 1, 'gr': 'S,муж,неод=(дат,ед|местн,ед)'}],
'text': 'углу'},
{'text': ', '},
{'analysis': [{'lex': 'под', 'wt': 0.9996470213, 'gr': 'PR='}],
'text': 'под'},
{'text': ' '},
{'analysis': [{'lex': 'чистый',
'wt': 1,
'gr': 'A=(пр,ед,полн,жен|дат,ед,полн,жен|род,ед,полн,жен|твор,ед,полн,жен)'}],
'text': 'чистой'},
{'text': ' '},
{'analysis': [{'lex': 'рубаха', 'wt': 1, 'gr': 'S,жен,неод=твор,ед'}],
'text': 'рубахой'},
{'text': '.'},
{'text': '\n'}]

Основные проблемы

  • Морфологическая неоднозначность
    • Существительное или глагол: стали, стекло, течь, белила, падали
    • Прилагательное или существительное: мороженое, простой* Существительное или существительное: черепах
  • Новые слова

Удаление стоп слов и редких слов

Закон Ципфа. Закон Ципфа («ранг—частота») — эмпирическая закономерность распределения частоты слов естественного языка: если все слова языка (или просто достаточно длинного текста) упорядочить по убыванию частоты их использования, то частота n-го слова в таком списке окажется приблизительно обратно пропорциональной его порядковому номеру n (так называемому рангу этого слова). Например, второе по используемости слово встречается примерно в два раза реже, чем первое, третье — в три раза реже, чем первое, и так далее.

from nltk.corpus import stopwords nltk.download("stopwords")
[nltk_data] Downloading package stopwords to /Users/hun/nltk_data...
[nltk_data] Unzipping corpora/stopwords.zip.
True
print(stopwords.words("russian"))
['и', 'в', 'во', 'не', 'что', 'он', 'на', 'я', 'с', 'со', 'как', 'а', 'то', 'все', 'она', 'так', 'его', 'но', 'да', 'ты', 'к', 'у', 'же', 'вы', 'за', 'бы', 'по', 'только', 'ее', 'мне', 'было', 'вот', 'от', 'меня', 'еще', 'нет', 'о', 'из', 'ему', 'теперь', 'когда', 'даже', 'ну', 'вдруг', 'ли', 'если', 'уже', 'или', 'ни', 'быть', 'был', 'него', 'до', 'вас', 'нибудь', 'опять', 'уж', 'вам', 'ведь', 'там', 'потом', 'себя', 'ничего', 'ей', 'может', 'они', 'тут', 'где', 'есть', 'надо', 'ней', 'для', 'мы', 'тебя', 'их', 'чем', 'была', 'сам', 'чтоб', 'без', 'будто', 'чего', 'раз', 'тоже', 'себе', 'под', 'будет', 'ж', 'тогда', 'кто', 'этот', 'того', 'потому', 'этого', 'какой', 'совсем', 'ним', 'здесь', 'этом', 'один', 'почти', 'мой', 'тем', 'чтобы', 'нее', 'сейчас', 'были', 'куда', 'зачем', 'всех', 'никогда', 'можно', 'при', 'наконец', 'два', 'об', 'другой', 'хоть', 'после', 'над', 'больше', 'тот', 'через', 'эти', 'нас', 'про', 'всего', 'них', 'какая', 'много', 'разве', 'три', 'эту', 'моя', 'впрочем', 'хорошо', 'свою', 'этой', 'перед', 'иногда', 'лучше', 'чуть', 'том', 'нельзя', 'такой', 'им', 'более', 'всегда', 'конечно', 'всю', 'между']

n-граммы и коллокации

http://www.nltk.org/howto/collocations.html

from nltk import bigrams, trigrams text = "Красивая мама мыла раму" tokens = word_tokenize(text) print(list(bigrams(tokens))) print(list(trigrams(tokens)))
[('Красивая', 'мама'), ('мама', 'мыла'), ('мыла', 'раму')]
[('Красивая', 'мама', 'мыла'), ('мама', 'мыла', 'раму')]

Коллокации — это биграммы, которые встречаются особенно часто. О метриках ассоциаций коллокаций можно прочитать в презентации курса «Анализ неструктурированных данных» программы «Прикладная математика и информатика» московской вышки.

from nltk.collocations import * from nltk import word_tokenize with open("Адамс_-_Путеводитель_Автостопом_по_Галактике.txt", encoding="utf8") as f: raw = f.read() tokens = word_tokenize(raw, language='english') bigram_finder = BigramCollocationFinder.from_words(tokens, window_size=2) bigram_measures = nltk.collocations.BigramAssocMeasures() #trigram_finder = TrigramCollocationFinder.from_words(tokens) #trigram_measures = nltk.collocations.TrigramAssocMeasures()
bigrams_scored = bigram_finder.score_ngrams(bigram_measures.raw_freq) bigrams_scored
[(('.', '–'), 0.022048859808742112),
((',', '–'), 0.017673932401564132),
((',', 'что'), 0.007685160091370166),
(('?', '–'), 0.006930194742343877),
((',', 'и'), 0.00416198846258082),
(('!', '–'), 0.0031940841689573735),
(('.', 'Он'), 0.002555267335165899),
((',', 'а'), 0.002303612218823803),
((',', 'но'), 0.002303612218823803),
((',', 'как'), 0.0020906732742266444),
(('он', '.'), 0.001935808587246893),
(('–', 'сказал'), 0.0018390181578845483),
((',', 'чтобы'), 0.001684153470904797),
(('Форд', '.'), 0.001684153470904797),
(('.', 'Артур'), 0.0015680049556699833),
(('–', 'Да'), 0.0015486468697975145),
((',', 'в'), 0.0015292887839250455),
(('Артур', '.'), 0.0015099306980525765),
(('.', 'Форд'), 0.0014712145263076387),
(('–', 'А'), 0.0014324983545627007),
(('–', 'Я'), 0.001374424096945294),
((':', '–'), 0.0013163498393278872),
(('он', ','), 0.0012969917534554182),
(('.', 'В'), 0.0012776336675829494),
(('Артур', ','), 0.0012582755817104805),
(('Форд', ','), 0.0012389174958380115),
(('–', 'Что'), 0.001142127066475667),
((',', 'не'), 0.0010840528088582602),
(('”', '.'), 0.0010840528088582602),
((',', 'когда'), 0.0009872623794959154),
(('Зафод', '.'), 0.0009291881218785087),
(('”', ','), 0.0009291881218785087),
(('Зафод', ','), 0.0008904719501335708),
((',', 'если'), 0.0008711138642611019),
((',', 'я'), 0.000832397692516164),
(('.', 'Зафод'), 0.000832397692516164),
(('–', 'Не'), 0.0007936815207712261),
((',', 'который'), 0.0007743234348987572),
(('–', 'спросил'), 0.0007743234348987572),
((',', 'это'), 0.0007549653490262883),
((',', 'на'), 0.0007162491772813504),
(('что', ','), 0.0007162491772813504),
(('–', 'Мы'), 0.0007162491772813504),
(('–', 'Это'), 0.0007162491772813504),
(('Глубокий', 'Мыслитель'), 0.0006968910914088815),
((',', 'где'), 0.0006775330055364126),
(('сказал', 'он'), 0.0006775330055364126),
(('–', 'и'), 0.0006775330055364126),
((',', 'чем'), 0.0006581749196639436),
(('.', 'На'), 0.0006581749196639436),
(('Да', ','), 0.0006581749196639436),
(('того', ','), 0.0006581749196639436),
(('–', 'Но'), 0.0006581749196639436),
(('–', 'Нет'), 0.0006388168337914747),
(('–', 'это'), 0.0006388168337914747),
((',', 'он'), 0.0006194587479190057),
((',', 'то'), 0.0006194587479190057),
(('.', 'И'), 0.0006194587479190057),
(('.', 'Они'), 0.0006001006620465368),
((',', 'с'), 0.000580742576174068),
(('.', 'Глава'), 0.000580742576174068),
(('то', ','), 0.000580742576174068),
(('–', 'Ну'), 0.000580742576174068),
(('.', '“'), 0.000561384490301599),
(('ничего', 'не'), 0.000561384490301599),
(('–', 'И'), 0.000561384490301599),
((',', 'они'), 0.0005420264044291301),
((',', 'по'), 0.0005420264044291301),
(('.', 'А'), 0.0005420264044291301),
(('Нет', ','), 0.0005420264044291301),
(('и', 'не'), 0.0005420264044291301),
(('что', 'я'), 0.0005226683185566611),
((',', 'которые'), 0.0005033102326841922),
((',', 'так'), 0.0005033102326841922),
(('конечно', ','), 0.0005033102326841922),
(('не', 'мог'), 0.0005033102326841922),
(('что', 'он'), 0.0005033102326841922),
(('что', 'это'), 0.0005033102326841922),
((',', 'конечно'), 0.00048395214681172326),
(('.', 'Все'), 0.00048395214681172326),
(('.', 'Она'), 0.00048395214681172326),
(('на', 'него'), 0.00048395214681172326),
(('нет', ','), 0.00048395214681172326),
(('–', 'не'), 0.00048395214681172326),
(('.', 'Это'), 0.0004645940609392543),
((':', '“'), 0.0004645940609392543),
(('?', '!'), 0.0004645940609392543),
(('и', ','), 0.0004645940609392543),
(('спросил', 'он'), 0.0004645940609392543),
((',', 'о'), 0.0004452359750667854),
(('Триллиан', '.'), 0.0004452359750667854),
(('том', ','), 0.0004452359750667854),
(('–', 'ответил'), 0.0004452359750667854),
((',', 'мы'), 0.00042587788919431645),
(('.', 'По'), 0.00042587788919431645),
(('.', 'Я'), 0.00042587788919431645),
(('Золота', '”'), 0.00042587788919431645),
(('–', 'Вы'), 0.00042587788919431645),
(('–', 'Он'), 0.00042587788919431645),
((',', 'ты'), 0.00040651980332184756),
(('.', 'Но'), 0.00040651980332184756),
(('сказал', 'Форд'), 0.00040651980332184756),
(('у', 'него'), 0.00040651980332184756),
(('Что', '?'), 0.0003871617174493786),
(('некоторое', 'время'), 0.0003871617174493786),
(('–', 'Как'), 0.0003871617174493786),
(('–', 'Форд'), 0.0003871617174493786),
(('–', 'что'), 0.0003871617174493786),
((',', 'кто'), 0.0003678036315769097),
(('об', 'этом'), 0.0003678036315769097),
(('посмотрел', 'на'), 0.0003678036315769097),
(('–', 'Ты'), 0.0003678036315769097),
(('–', 'воскликнул'), 0.0003678036315769097),
(('.', 'Потом'), 0.00034844554570444074),
(('в', 'этом'), 0.00034844554570444074),
(('и', 'в'), 0.00034844554570444074),
(('–', 'Зафод'), 0.00034844554570444074),
(('–', 'в'), 0.00034844554570444074),
(('”', '–'), 0.00034844554570444074),
((',', 'все'), 0.0003290874598319718),
(('.', 'С'), 0.0003290874598319718),
(('?', '”'), 0.0003290874598319718),
(('Автостопом', 'по'), 0.0003290874598319718),
(('Мыслитель', '.'), 0.0003290874598319718),
(('а', 'потом'), 0.0003290874598319718),
(('знаю', ','), 0.0003290874598319718),
(('он', 'был'), 0.0003290874598319718),
(('сказать', ','), 0.0003290874598319718),
(('“', 'Автостопом'), 0.0003290874598319718),
(('…', '–'), 0.0003290874598319718),
((',', 'да'), 0.00030972937395950287),
((',', 'куда'), 0.00030972937395950287),
((',', 'пока'), 0.00030972937395950287),
(('Зафод', 'Библброкс'), 0.00030972937395950287),
(('Форд', 'Префект'), 0.00030972937395950287),
(('быть', ','), 0.00030972937395950287),
(('в', 'том'), 0.00030972937395950287),
(('кажется', ','), 0.00030972937395950287),
(('компьютер', ','), 0.00030972937395950287),
(('на', 'Артура'), 0.00030972937395950287),
(('он', 'не'), 0.00030972937395950287),
(('у', 'меня'), 0.00030972937395950287),
(('что', 'в'), 0.00030972937395950287),
(('это', '?'), 0.00030972937395950287),
(('–', 'мы'), 0.00030972937395950287),
(('–', 'я'), 0.00030972937395950287),
(('.', 'Как'), 0.000290371288087034),
(('.', 'Триллиан'), 0.000290371288087034),
(('Галактике', '”'), 0.000290371288087034),
(('Триллиан', ','), 0.000290371288087034),
(('все', 'равно'), 0.000290371288087034),
(('конце', 'концов'), 0.000290371288087034),
(('миллионов', 'лет'), 0.000290371288087034),
(('нет', '.'), 0.000290371288087034),
(('по', 'Галактике'), 0.000290371288087034),
(('потому', 'что'), 0.000290371288087034),
(('самом', 'деле'), 0.000290371288087034),
(('что', 'мы'), 0.000290371288087034),
(('что', 'ты'), 0.000290371288087034),
(('–', 'Вот'), 0.000290371288087034),
(('–', 'а'), 0.000290371288087034),
(('–', 'продолжал'), 0.000290371288087034),
((',', 'вы'), 0.00027101320221456504),
((',', 'потому'), 0.00027101320221456504),
(('А', 'что'), 0.00027101320221456504),
(('Да', '.'), 0.00027101320221456504),
(('в', 'воздухе'), 0.00027101320221456504),
(('же', ','), 0.00027101320221456504),
(('знал', ','), 0.00027101320221456504),
(('можно', 'было'), 0.00027101320221456504),
(('не', 'было'), 0.00027101320221456504),
(('не', 'в'), 0.00027101320221456504),
(('но', 'не'), 0.00027101320221456504),
(('–', 'В'), 0.00027101320221456504),
(('–', 'На'), 0.00027101320221456504),
(('–', 'О'), 0.00027101320221456504),
(('–', 'Так'), 0.00027101320221456504),
(('–', 'но'), 0.00027101320221456504),
(('!', 'Я'), 0.0002516551163420961),
((',', 'которую'), 0.0002516551163420961),
((',', '“'), 0.0002516551163420961),
(('.', 'Мы'), 0.0002516551163420961),
(('?', '…'), 0.0002516551163420961),
(('Сердце', 'Золота'), 0.0002516551163420961),
(('в', 'конце'), 0.0002516551163420961),
(('в', 'чем'), 0.0002516551163420961),
(('все', 'это'), 0.0002516551163420961),
(('если', 'бы'), 0.0002516551163420961),
(('ли', ','), 0.0002516551163420961),
(('м-р', 'Проссер'), 0.0002516551163420961),
(('него', ','), 0.0002516551163420961),
(('планеты', ','), 0.0002516551163420961),
(('сказал', ','), 0.0002516551163420961),
(('сказал', 'Зафод'), 0.0002516551163420961),
(('я', 'не'), 0.0002516551163420961),
(('–', 'объяснил'), 0.0002516551163420961),
(('–', 'он'), 0.0002516551163420961),
(('“', 'Сердце'), 0.0002516551163420961),
((',', 'Зафод'), 0.00023229703046962716),
((',', 'было'), 0.00023229703046962716),
((',', 'для'), 0.00023229703046962716),
((',', 'нет'), 0.00023229703046962716),
((',', 'поскольку'), 0.00023229703046962716),
(('.', 'Голос'), 0.00023229703046962716),
(('Артура', '.'), 0.00023229703046962716),
(('Ну', ','), 0.00023229703046962716),
(('Он', 'не'), 0.00023229703046962716),
(('его', '.'), 0.00023229703046962716),
(('и', 'Артур'), 0.00023229703046962716),
(('к', 'одному'), 0.00023229703046962716),
(('но', ','), 0.00023229703046962716),
(('о', 'чем'), 0.00023229703046962716),
(('сказал', 'Артур'), 0.00023229703046962716),
(('так', ','), 0.00023229703046962716),
(('только', 'что'), 0.00023229703046962716),
(('это', 'было'), 0.00023229703046962716),
(('–', 'Артур'), 0.00023229703046962716),
(('–', 'подтвердил'), 0.00023229703046962716),
(('!', '”'), 0.00021293894459715822),
(('!', '…'), 0.00021293894459715822),
((',', 'даже'), 0.00021293894459715822),
((',', 'ибо'), 0.00021293894459715822),
((',', 'надо'), 0.00021293894459715822),
((',', 'после'), 0.00021293894459715822),
(('.', 'Так'), 0.00021293894459715822),
(('Артура', ','), 0.00021293894459715822),
(('Марвин', '.'), 0.00021293894459715822),
(('Не', 'знаю'), 0.00021293894459715822),
(('Я', 'не'), 0.00021293894459715822),
(('и', 'все'), 0.00021293894459715822),
(('лет', ','), 0.00021293894459715822),
(('может', ','), 0.00021293894459715822),
(('на', 'них'), 0.00021293894459715822),
(('с', 'ним'), 0.00021293894459715822),
(('спросил', 'Артур'), 0.00021293894459715822),
(('ты', ','), 0.00021293894459715822),
(('что', 'у'), 0.00021293894459715822),
(('–', '“'), 0.00021293894459715822),
((',', 'Форд'), 0.0001935808587246893),
((',', 'или'), 0.0001935808587246893),
((',', 'которых'), 0.0001935808587246893),
((',', 'сэр'), 0.0001935808587246893),
((',', 'у'), 0.0001935808587246893),
(('.', 'Если'), 0.0001935808587246893),
(('.', 'Там'), 0.0001935808587246893),
(('Да', '!'), 0.0001935808587246893),
(('М-р', 'Проссер'), 0.0001935808587246893),
(('Марвин', ','), 0.0001935808587246893),
(('Привет', ','), 0.0001935808587246893),
(('Слартибартфаст', ','), 0.0001935808587246893),
(('глаза', '.'), 0.0001935808587246893),
(('ж', ','), 0.0001935808587246893),
(('за', 'ним'), 0.0001935808587246893),
(('и', 'он'), 0.0001935808587246893),
(('мне', ','), 0.0001935808587246893),
(('на', 'Форда'), 0.0001935808587246893),
(('на', 'планете'), 0.0001935808587246893),
(('не', 'менее'), 0.0001935808587246893),
(('не', 'так'), 0.0001935808587246893),
(('он', 'и'), 0.0001935808587246893),
(('ответил', 'Форд'), 0.0001935808587246893),
(('с', 'собой'), 0.0001935808587246893),
(('сказал', ':'), 0.0001935808587246893),
(('старик', '.'), 0.0001935808587246893),
(('там', ','), 0.0001935808587246893),
(('тем', ','), 0.0001935808587246893),
(('что', 'все'), 0.0001935808587246893),
(('это', ','), 0.0001935808587246893),
(('это', 'время'), 0.0001935808587246893),
(('это', 'за'), 0.0001935808587246893),
(('–', 'Если'), 0.0001935808587246893),
(('–', 'Компьютер'), 0.0001935808587246893),
(('–', 'Кто'), 0.0001935808587246893),
(('–', 'если'), 0.0001935808587246893),
(('–', 'прокричал'), 0.0001935808587246893),
((')', ','), 0.00017422277285222037),
((',', 'был'), 0.00017422277285222037),
((',', 'которое'), 0.00017422277285222037),
((',', 'однако'), 0.00017422277285222037),
((',', 'она'), 0.00017422277285222037),
((',', 'от'), 0.00017422277285222037),
((',', 'подумал'), 0.00017422277285222037),
((',', 'почему'), 0.00017422277285222037),
((',', 'прежде'), 0.00017422277285222037),
((',', 'хотя'), 0.00017422277285222037),
(('.', 'Его'), 0.00017422277285222037),
(('.', 'Не'), 0.00017422277285222037),
(('.', 'Тогда'), 0.00017422277285222037),
(('Артур', 'Дент'), 0.00017422277285222037),
(('Бенжи', '.'), 0.00017422277285222037),
(('Галактики', ','), 0.00017422277285222037),
(('Ладно', ','), 0.00017422277285222037),
(('Может', ','), 0.00017422277285222037),
(('Он', 'был'), 0.00017422277285222037),
(('Слушай', ','), 0.00017422277285222037),
(('Что', 'это'), 0.00017422277285222037),
(('в', 'виду'), 0.00017422277285222037),
(('в', 'его'), 0.00017422277285222037),
(('в', 'степени'), 0.00017422277285222037),
(('в', 'сторону'), 0.00017422277285222037),
(('в', 'то'), 0.00017422277285222037),
(('все', 'же'), 0.00017422277285222037),
(('голос', ','), 0.00017422277285222037),
(('думаю', ','), 0.00017422277285222037),
(('жизни', '.'), 0.00017422277285222037),
(('и', 'так'), 0.00017422277285222037),
(('казалось', ','), 0.00017422277285222037),
(('компьютер', '.'), 0.00017422277285222037),
(('молчание', '.'), 0.00017422277285222037),
(('на', 'самом'), 0.00017422277285222037),
(('но', 'все'), 0.00017422277285222037),
(('о', 'том'), 0.00017422277285222037),
(('один', 'из'), 0.00017422277285222037),
(('пожал', 'плечами'), 0.00017422277285222037),
(('после', 'чего'), 0.00017422277285222037),
(('потому', ','), 0.00017422277285222037),
(('прежде', 'чем'), 0.00017422277285222037),
(('так', 'что'), 0.00017422277285222037),
(('человек', ','), 0.00017422277285222037),
(('чем', 'дело'), 0.00017422277285222037),
(('что', 'именно'), 0.00017422277285222037),
(('–', 'Может'), 0.00017422277285222037),
(('–', 'Очень'), 0.00017422277285222037),
(('–', 'добавил'), 0.00017422277285222037),
(('–', 'закричал'), 0.00017422277285222037),
(('–', 'сказала'), 0.00017422277285222037),
(('–', 'ты'), 0.00017422277285222037),
(('!', 'И'), 0.00015486468697975143),
(('!', 'Он'), 0.00015486468697975143),
((',', 'Артур'), 0.00015486468697975143),
((',', 'казалось'), 0.00015486468697975143),
((',', 'откуда'), 0.00015486468697975143),
((',', 'правда'), 0.00015486468697975143),
(('.', 'К'), 0.00015486468697975143),
(('.', 'Компьютер'), 0.00015486468697975143),
(('.', 'После'), 0.00015486468697975143),
(('.', 'Что'), 0.00015486468697975143),
(('?', 'И'), 0.00015486468697975143),
(('Артура', 'Дента'), 0.00015486468697975143),
(('Компьютер', '!'), 0.00015486468697975143),
(('Компьютер', ','), 0.00015486468697975143),
(('Конечно', ','), 0.00015486468697975143),
(('Мыслитель', ','), 0.00015486468697975143),
(('Форда', '.'), 0.00015486468697975143),
(('Форда', 'Префекта'), 0.00015486468697975143),
(('больше', 'нет'), 0.00015486468697975143),
(('в', 'ответ'), 0.00015486468697975143),
(('взглянул', 'на'), 0.00015486468697975143),
(('во', 'всех'), 0.00015486468697975143),
(('все', 'еще'), 0.00015486468697975143),
(('да', ','), 0.00015486468697975143),
(('деле', ','), 0.00015486468697975143),
(('здесь', ','), 0.00015486468697975143),
(('значит', ','), 0.00015486468697975143),
(('знаю', '.'), 0.00015486468697975143),
(('к', 'нему'), 0.00015486468697975143),
(('к', 'тому'), 0.00015486468697975143),
(('когда', 'он'), 0.00015486468697975143),
(('на', 'ноги'), 0.00015486468697975143),
(('не', 'знаю'), 0.00015486468697975143),
(('никогда', 'не'), 0.00015486468697975143),
(('они', 'не'), 0.00015486468697975143),
(('правда', '?'), 0.00015486468697975143),
(('света', ','), 0.00015486468697975143),
(('света', '.'), 0.00015486468697975143),
(('световых', 'лет'), 0.00015486468697975143),
(('смотрел', 'на'), 0.00015486468697975143),
(('собой', ','), 0.00015486468697975143),
(('спросил', 'Форд'), 0.00015486468697975143),
(('старик', ','), 0.00015486468697975143),
(('считать', ','), 0.00015486468697975143),
(('так', 'и'), 0.00015486468697975143),
(('ты', 'не'), 0.00015486468697975143),
(('что', 'вы'), 0.00015486468697975143),
(('что', 'не'), 0.00015486468697975143),
(('это', 'не'), 0.00015486468697975143),
(('–', 'Конечно'), 0.00015486468697975143),
(('–', 'Ладно'), 0.00015486468697975143),
(('–', 'Привет'), 0.00015486468697975143),
(('–', 'Прошу'), 0.00015486468697975143),
(('–', 'Слушай'), 0.00015486468697975143),
(('–', 'У'), 0.00015486468697975143),
(('–', 'мне'), 0.00015486468697975143),
(('–', 'так'), 0.00015486468697975143),
(('–', 'удивился'), 0.00015486468697975143),
((')', '.'), 0.00013550660110728252),
((',', 'Вселенной'), 0.00013550660110728252),
((',', 'видимо'), 0.00013550660110728252),
((',', 'за'), 0.00013550660110728252),
((',', 'знаешь'), 0.00013550660110728252),
((',', 'кроме'), 0.00013550660110728252),
((',', 'очень'), 0.00013550660110728252),
((',', 'собственно'), 0.00013550660110728252),
((',', 'только'), 0.00013550660110728252),
(('.', 'Бармен'), 0.00013550660110728252),
(('.', 'Вот'), 0.00013550660110728252),
(('.', 'Затем'), 0.00013550660110728252),
(('.', 'Из'), 0.00013550660110728252),
(('.', 'Когда'), 0.00013550660110728252),
(('.', 'М-р'), 0.00013550660110728252),
(('.', 'Ничего'), 0.00013550660110728252),
(('.', 'Старик'), 0.00013550660110728252),
(('.', 'У'), 0.00013550660110728252),
(('.', 'Через'), 0.00013550660110728252),
(('?', 'На'), 0.00013550660110728252),
(('?', 'Форд'), 0.00013550660110728252),
(('А', 'это'), 0.00013550660110728252),
(('Артур', 'не'), 0.00013550660110728252),
(('Великий', 'Вопрос'), 0.00013550660110728252),
(('Вселенной', 'и'), 0.00013550660110728252),
(('Всяком', 'Таком'), 0.00013550660110728252),
(('Галакт', '”'), 0.00013550660110728252),
(('Да', 'нет'), 0.00013550660110728252),
(('Жизни', ','), 0.00013550660110728252),
(('Земля', ','), 0.00013550660110728252),
(('И', 'что'), 0.00013550660110728252),
(('На', 'самом'), 0.00013550660110728252),
(('Пан', 'Галакт'), 0.00013550660110728252),
(('Путеводитель', '“'), 0.00013550660110728252),
(('Форд', 'и'), 0.00013550660110728252),
(('Фрэнки', ','), 0.00013550660110728252),
(('Фрэнки', '.'), 0.00013550660110728252),
(('Что', 'ж'), 0.00013550660110728252),
(('а', 'затем'), 0.00013550660110728252),
(('больше', 'не'), 0.00013550660110728252),
(('бы', 'не'), 0.00013550660110728252),
(('было', ','), 0.00013550660110728252),
(('было', 'бы'), 0.00013550660110728252),
(('в', 'открытый'), 0.00013550660110728252),
(('в', 'это'), 0.00013550660110728252),
(('в', 'этот'), 0.00013550660110728252),
(('вещей', ','), 0.00013550660110728252),
(('видимо', ','), 0.00013550660110728252),
(('время', '.'), 0.00013550660110728252),
(('где', ','), 0.00013550660110728252),
(('делать', '.'), 0.00013550660110728252),
(('день', ','), 0.00013550660110728252),
(('для', 'чего'), 0.00013550660110728252),
(('если', 'вы'), 0.00013550660110728252),
(('еще', 'не'), 0.00013550660110728252),
(('и', 'Всяком'), 0.00013550660110728252),
(('из', 'всех'), 0.00013550660110728252),
(('к', 'Артуру'), 0.00013550660110728252),
(('как', ','), 0.00013550660110728252),
(('как', 'только'), 0.00013550660110728252),
(('меня', ','), 0.00013550660110728252),
(('может', 'быть'), 0.00013550660110728252),
(('мостик', '.'), 0.00013550660110728252),
(('на', 'этот'), 0.00013550660110728252),
(('настоящий', 'момент'), 0.00013550660110728252),
(('нет', '?'), 0.00013550660110728252),
(('никто', 'не'), 0.00013550660110728252),
(('одному', ','), 0.00013550660110728252),
(('она', ','), 0.00013550660110728252),
(('она', '.'), 0.00013550660110728252),
(('плечами', '.'), 0.00013550660110728252),
(('подумал', ','), 0.00013550660110728252),
(('подумал', 'он'), 0.00013550660110728252),
(('понять', ','), 0.00013550660110728252),
(('пор', ','), 0.00013550660110728252),
(('разумеется', ','), 0.00013550660110728252),
(('с', 'Фордом'), 0.00013550660110728252),
(('себе', ','), 0.00013550660110728252),
(('сириусианской', 'кибернетической'), 0.00013550660110728252),
(('совершенно', 'не'), 0.00013550660110728252),
(('так', 'уж'), 0.00013550660110728252),
(('тысяч', 'к'), 0.00013550660110728252),
(('удивился', 'Артур'), 0.00013550660110728252),
(('уставился', 'на'), 0.00013550660110728252),
(('что', 'его'), 0.00013550660110728252),
(('что', 'ему'), 0.00013550660110728252),
(('этот', 'момент'), 0.00013550660110728252),
(('я', ','), 0.00013550660110728252),
(('я', 'знаю'), 0.00013550660110728252),
(('–', 'Ага'), 0.00013550660110728252),
(('–', 'Все'), 0.00013550660110728252),
(('–', 'Какой'), 0.00013550660110728252),
(('–', 'Ответ'), 0.00013550660110728252),
(('–', 'Откуда'), 0.00013550660110728252),
(('–', 'Почему'), 0.00013550660110728252),
(('–', 'С'), 0.00013550660110728252),
(('–', 'То'), 0.00013550660110728252),
(('–', 'Тогда'), 0.00013550660110728252),
(('–', 'Хорошо'), 0.00013550660110728252),
(('–', 'заорал'), 0.00013550660110728252),
(('–', 'продолжил'), 0.00013550660110728252),
(('–', 'с'), 0.00013550660110728252),
(('“', 'Пан'), 0.00013550660110728252),
(('”', 'и'), 0.00013550660110728252),
(('!', 'А'), 0.00011614851523481358),
(('*', '*'), 0.00011614851523481358),
((',', 'вот'), 0.00011614851523481358),
((',', 'каким'), 0.00011614851523481358),
((',', 'которая'), 0.00011614851523481358),
((',', 'мне'), 0.00011614851523481358),
((',', 'например'), 0.00011614851523481358),
((',', 'пожалуйста'), 0.00011614851523481358),
((',', 'почти'), 0.00011614851523481358),
((',', 'раз'), 0.00011614851523481358),
((',', 'разумеется'), 0.00011614851523481358),
((',', 'чего'), 0.00011614851523481358),
(('.', 'Даже'), 0.00011614851523481358),
(('.', 'Под'), 0.00011614851523481358),
(('.', 'Робот'), 0.00011614851523481358),
(('?', 'А'), 0.00011614851523481358),
(('?', 'Артур'), 0.00011614851523481358),
(('?', 'Ты'), 0.00011614851523481358),
(('А', 'я'), 0.00011614851523481358),
(('Ага', ','), 0.00011614851523481358),
(('Артур', 'с'), 0.00011614851523481358),
(('Артуру', '.'), 0.00011614851523481358),
(('Вогон', 'Йелтц'), 0.00011614851523481358),
(('И', 'все'), 0.00011614851523481358),
(('И', 'ты'), 0.00011614851523481358),
(('Как', 'это'), 0.00011614851523481358),
(('Может', 'быть'), 0.00011614851523481358),
(('Нет', '.'), 0.00011614851523481358),
(('Но', 'я'), 0.00011614851523481358),
(('Простетник', 'Вогон'), 0.00011614851523481358),
(('Так', ','), 0.00011614851523481358),
(('Хорошо', ','), 0.00011614851523481358),
(('Что', ','), 0.00011614851523481358),
(('Что', 'ты'), 0.00011614851523481358),
(('Эдди', '.'), 0.00011614851523481358),
(('Я', 'же'), 0.00011614851523481358),
(('а', 'также'), 0.00011614851523481358),
(('аэромобиль', ','), 0.00011614851523481358),
(('бы', ','), 0.00011614851523481358),
(('в', 'жизни'), 0.00011614851523481358),
(('в', 'которой'), 0.00011614851523481358),
(('в', 'мозгу'), 0.00011614851523481358),
(('в', 'настоящий'), 0.00011614851523481358),
(('в', 'основном'), 0.00011614851523481358),
(('в', 'руках'), 0.00011614851523481358),
(('виду', ','), 0.00011614851523481358),
(('во', 'Вселенной'), 0.00011614851523481358),
(('воздухе', ','), 0.00011614851523481358),
(('воскликнул', 'Форд'), 0.00011614851523481358),
(('время', 'как'), 0.00011614851523481358),
(('все', ','), 0.00011614851523481358),
(('вы', 'не'), 0.00011614851523481358),
(('гаргл', 'хол'), 0.00011614851523481358),
(('голос', '.'), 0.00011614851523481358),
(('да', '?'), 0.00011614851523481358),
(('даже', 'не'), 0.00011614851523481358),
(('данный', 'момент'), 0.00011614851523481358),
(('делать', '?'), 0.00011614851523481358),
(('для', 'того'), 0.00011614851523481358),
(('есть', ','), 0.00011614851523481358),
(('же', '!'), 0.00011614851523481358),
(('жизни', ','), 0.00011614851523481358),
(('замолчал', '.'), 0.00011614851523481358),
(('знаешь', ','), 0.00011614851523481358),
(('и', 'весьма'), 0.00011614851523481358),
(('и', 'даже'), 0.00011614851523481358),
(('и', 'есть'), 0.00011614851523481358),
(('и', 'они'), 0.00011614851523481358),
(('и', 'с'), 0.00011614851523481358),
(('и', 'тогда'), 0.00011614851523481358),
(('и', 'что'), 0.00011614851523481358),
(('и', 'это'), 0.00011614851523481358),
(('как', 'он'), 0.00011614851523481358),
(('как', 'раз'), 0.00011614851523481358),
(('как', 'я'), 0.00011614851523481358),
(('капитанский', 'мостик'), 0.00011614851523481358),
(('конец', 'света'), 0.00011614851523481358),
(('корабль', '.'), 0.00011614851523481358),
(('крайней', 'мере'), 0.00011614851523481358),
(('мере', ','), 0.00011614851523481358),
(('момент', ','), 0.00011614851523481358),
(('мы', 'в'), 0.00011614851523481358),
(('на', 'Земле'), 0.00011614851523481358),
(('на', 'капитанский'), 0.00011614851523481358),
(('на', 'нее'), 0.00011614851523481358),
(('на', 'то'), 0.00011614851523481358),
(('не', 'замечал'), 0.00011614851523481358),
(('не', 'знал'), 0.00011614851523481358),
(('не', 'то'), 0.00011614851523481358),
(('небо', ','), 0.00011614851523481358),
(('него', '.'), 0.00011614851523481358),
(('несколько', 'секунд'), 0.00011614851523481358),
(('ним', ','), 0.00011614851523481358),
(('ничего', ','), 0.00011614851523481358),
(('о', 'Жизни'), 0.00011614851523481358),
(('однако', ','), 0.00011614851523481358),
(('ответ', '.'), 0.00011614851523481358),
(('ответил', 'Зафод'), 0.00011614851523481358),
(('по', 'всему'), 0.00011614851523481358),
(('по', 'крайней'), 0.00011614851523481358),
(('по', 'сторонам'), 0.00011614851523481358),
(('пожалуйста', ','), 0.00011614851523481358),
(('половиной', 'миллионов'), 0.00011614851523481358),
(('почувствовал', ','), 0.00011614851523481358),
(('с', 'Зафодом'), 0.00011614851523481358),
(('с', 'половиной'), 0.00011614851523481358),
(('с', 'этим'), 0.00011614851523481358),
(('свое', 'время'), 0.00011614851523481358),
(('сказала', 'Триллиан'), 0.00011614851523481358),
(('слова', ','), 0.00011614851523481358),
(('собой', '.'), 0.00011614851523481358),
(('собственно', ','), 0.00011614851523481358),
(('сторону', '.'), 0.00011614851523481358),
(('тех', 'пор'), 0.00011614851523481358),
(('то', 'время'), 0.00011614851523481358),
(('тому', 'же'), 0.00011614851523481358),
(('у', 'нас'), 0.00011614851523481358),
(('у', 'тебя'), 0.00011614851523481358),
(('уже', 'не'), 0.00011614851523481358),
(('хол', 'гаргл'), 0.00011614851523481358),
(('что', 'же'), 0.00011614851523481358),
(('что', 'за'), 0.00011614851523481358),
(('что', 'они'), 0.00011614851523481358),
(('чтобы', 'они'), 0.00011614851523481358),
(('этом', ','), 0.00011614851523481358),
(('я', 'и'), 0.00011614851523481358),
(('–', 'Ой'), 0.00011614851523481358),
(('–', 'Они'), 0.00011614851523481358),
(('–', 'Триллиан'), 0.00011614851523481358),
(('–', 'вы'), 0.00011614851523481358),
(('–', 'заметил'), 0.00011614851523481358),
(('–', 'как'), 0.00011614851523481358),
(('–', 'на'), 0.00011614851523481358),
(('–', 'напомнил'), 0.00011614851523481358),
(('–', 'начал'), 0.00011614851523481358),
(('–', 'отозвался'), 0.00011614851523481358),
(('–', 'повторил'), 0.00011614851523481358),
(('–', 'произнес'), 0.00011614851523481358),
(('–', 'просто'), 0.00011614851523481358),
(('–', 'прошептал'), 0.00011614851523481358),
(('–', 'согласился'), 0.00011614851523481358),
(('”', '?'), 0.00011614851523481358),
(('!', 'Не'), 9.679042936234466e-05),
(('!', 'Форд'), 9.679042936234466e-05),
((',', 'Триллиан'), 9.679042936234466e-05),
((',', 'будто'), 9.679042936234466e-05),
((',', 'вам'), 9.679042936234466e-05),
((',', 'видите'), 9.679042936234466e-05),
((',', 'во'), 9.679042936234466e-05),
((',', 'до'), 9.679042936234466e-05),
((',', 'землянин'), 9.679042936234466e-05),
((',', 'к'), 9.679042936234466e-05),
((',', 'кажется'), 9.679042936234466e-05),
((',', 'которому'), 9.679042936234466e-05),
((',', 'может'), 9.679042936234466e-05),
((',', 'нам'), 9.679042936234466e-05),
((',', 'но…'), 9.679042936234466e-05),
((',', 'поэтому'), 9.679042936234466e-05),
((',', 'пытаясь'), 9.679042936234466e-05),
((',', 'разве'), 9.679042936234466e-05),
((',', 'тебе'), 9.679042936234466e-05),
(('.', 'Внезапно'), 9.679042936234466e-05),
(('.', 'Вогон'), 9.679042936234466e-05),
(('.', 'Для'), 9.679042936234466e-05),
(('.', 'Еще'), 9.679042936234466e-05),
(('.', 'Кроме'), 9.679042936234466e-05),
(('.', 'Марвин'), 9.679042936234466e-05),
(('.', 'Наконец'), 9.679042936234466e-05),
(('.', 'Оно'), 9.679042936234466e-05),
(('.', 'От'), 9.679042936234466e-05),
(('.', 'Планета'), 9.679042936234466e-05),
(('.', 'Сквозь'), 9.679042936234466e-05),
(('.', 'Этот'), 9.679042936234466e-05),
((':', 'он'), 9.679042936234466e-05),
(('А', 'кто'), 9.679042936234466e-05),
(('Артур', 'и'), 9.679042936234466e-05),
(('Библброкс', ','), 9.679042936234466e-05),
(('В', 'этот'), 9.679042936234466e-05),
(('Вопрос', 'о'), 9.679042936234466e-05),
(('Вселенной', ','), 9.679042936234466e-05),
(('Галактики', '.'), 9.679042936234466e-05),
(('Да', 'что'), 9.679042936234466e-05),
(('Да-да', ','), 9.679042936234466e-05),
(('Дент', ','), 9.679042936234466e-05),
(('Дурволл', '.'), 9.679042936234466e-05),
(('Земля', '.'), 9.679042936234466e-05),
(('Кстати', ','), 9.679042936234466e-05),
(('Кто', 'это'), 9.679042936234466e-05),
(('Магратея', '.'), 9.679042936234466e-05),
(('Майекфизе', '.'), 9.679042936234466e-05),
(('Мы', 'требуем'), 9.679042936234466e-05),
(('Ну', 'и'), 9.679042936234466e-05),
(('Правда', ','), 9.679042936234466e-05),
(('Придурвилль', '.'), 9.679042936234466e-05),
(('Прошу', 'прощения'), 9.679042936234466e-05),
(('Сердца', 'Золота'), 9.679042936234466e-05),
(('Сопротивление', 'бесполезно'), 9.679042936234466e-05),
(('Форд', 'с'), 9.679042936234466e-05),
(('Форда', ','), 9.679042936234466e-05),
(('Фруумфондел', ','), 9.679042936234466e-05),
(('Это', ','), 9.679042936234466e-05),
(('Это', 'же'), 9.679042936234466e-05),
(('бесполезно', '!'), 9.679042936234466e-05),
(('более', 'или'), 9.679042936234466e-05),
(('бы', 'и'), 9.679042936234466e-05),
(('бы', 'они'), 9.679042936234466e-05),
(('был', 'на'), 9.679042936234466e-05),
(('в', 'данный'), 9.679042936234466e-05),
(('в', 'небо'), 9.679042936234466e-05),
(('в', 'открытом'), 9.679042936234466e-05),
(('в', 'поисках'), 9.679042936234466e-05),
(('в', 'пункте'), 9.679042936234466e-05),
(('в', 'рюкзаке'), 9.679042936234466e-05),
(('в', 'свое'), 9.679042936234466e-05),
(('в', 'своей'), 9.679042936234466e-05),
(('вас', ','), 9.679042936234466e-05),
(('вас', '.'), 9.679042936234466e-05),
(('вверх', ','), 9.679042936234466e-05),
(('весьма', 'и'), 9.679042936234466e-05),
(('вид', '.'), 9.679042936234466e-05),
(('вогонов', ','), 9.679042936234466e-05),
(('вопрос', ','), 9.679042936234466e-05),
(('воскликнул', 'он'), 9.679042936234466e-05),
(('вот', ','), 9.679042936234466e-05),
(('время', ','), 9.679042936234466e-05),
(('все', 'и'), 9.679042936234466e-05),
(('все', 'такое'), 9.679042936234466e-05),
(('всей', 'Галактике'), 9.679042936234466e-05),
(('говорил', '.'), 9.679042936234466e-05),
(('горло', '.'), 9.679042936234466e-05),
(('дверь', ','), 9.679042936234466e-05),
(('дверь', '.'), 9.679042936234466e-05),
(('для', 'этого'), 9.679042936234466e-05),
(('до', 'тех'), 9.679042936234466e-05),
(('должно', 'быть'), 9.679042936234466e-05),
(('дошло', ','), 9.679042936234466e-05),
(('его', ','), 9.679042936234466e-05),
(('его', 'не'), 9.679042936234466e-05),
(('если', 'я'), 9.679042936234466e-05),
(('же', 'это'), 9.679042936234466e-05),
(('зачем', '?'), 9.679042936234466e-05),
(('знаете', ','), 9.679042936234466e-05),
(('знать', ','), 9.679042936234466e-05),
(('и', 'очень'), 9.679042936234466e-05),
(('и', 'по'), 9.679042936234466e-05),
(('и', 'стали'), 9.679042936234466e-05),
(('и', '“'), 9.679042936234466e-05),
(('или', 'менее'), 9.679042936234466e-05),
(('или', 'нет'), 9.679042936234466e-05),
(('их', '.'), 9.679042936234466e-05),
(('к', 'этому'), 9.679042936234466e-05),
(('как', 'будто'), 9.679042936234466e-05),
(('как', 'бы'), 9.679042936234466e-05),
(('кибернетической', 'корпорации'), 9.679042936234466e-05),
(('книги', ','), 9.679042936234466e-05),
(('когда', 'я'), 9.679042936234466e-05),
(('компьютера', '.'), 9.679042936234466e-05),
(('лет', '.'), 9.679042936234466e-05),
(('лет', 'назад'), 9.679042936234466e-05),
(('лет', 'от'), 9.679042936234466e-05),
(('люди', ','), 9.679042936234466e-05),
(('люк', ','), 9.679042936234466e-05),
(('места', ','), 9.679042936234466e-05),
(('мог', 'бы'), 9.679042936234466e-05),
(('на', 'меня'), 9.679042936234466e-05),
(('на', 'полу'), 9.679042936234466e-05),
(('на', 'что'), 9.679042936234466e-05),
(('на', 'это'), 9.679042936234466e-05),
(('назад', ','), 9.679042936234466e-05),
(('например', ','), 9.679042936234466e-05),
(('не', 'был'), 9.679042936234466e-05),
(('не', 'видел'), 9.679042936234466e-05),
(('не', 'имеет'), 9.679042936234466e-05),
(('не', 'может'), 9.679042936234466e-05),
(('не', 'понял'), 9.679042936234466e-05),
(('не', 'смог'), 9.679042936234466e-05),
(('не', 'совсем'), 9.679042936234466e-05),
(('него', 'в'), 9.679042936234466e-05),
(('но', 'в'), 9.679042936234466e-05),
(('но', 'на'), 9.679042936234466e-05),
(('но', 'это'), 9.679042936234466e-05),
(('о', 'которых'), 9.679042936234466e-05),
(('о', 'нем'), 9.679042936234466e-05),
(('открытый', 'космос'), 9.679042936234466e-05),
(('очевидно', ','), 9.679042936234466e-05),
(('ощущение', ','), 9.679042936234466e-05),
(('планета', ','), 9.679042936234466e-05),
(('планета', '.'), 9.679042936234466e-05),
(('планете', 'Земля'), 9.679042936234466e-05),
(('планеты', '.'), 9.679042936234466e-05),
(('по', 'всей'), 9.679042936234466e-05),
(('по', 'поводу'), 9.679042936234466e-05),
(('понял', ','), 9.679042936234466e-05),
(('после', 'того'), 9.679042936234466e-05),
(('предположить', ','), 9.679042936234466e-05),
(('привет', '!'), 9.679042936234466e-05),
(('происходит', 'что-то'), 9.679042936234466e-05),
(('пять', 'минут'), 9.679042936234466e-05),
(('разве', 'ты'), 9.679042936234466e-05),
(('решил', ','), 9.679042936234466e-05),
(('рядом', 'с'), 9.679042936234466e-05),
(('с', 'помощью'), 9.679042936234466e-05),
(('с', 'ума'), 9.679042936234466e-05),
(('свет', '.'), 9.679042936234466e-05),
(('себя', ','), 9.679042936234466e-05),
(('секунд', ','), 9.679042936234466e-05),
(('скажем', ','), 9.679042936234466e-05),
(('сказал', '.'), 9.679042936234466e-05),
(('сказал', 'компьютер'), 9.679042936234466e-05),
(('со', 'мной'), 9.679042936234466e-05),
(('солнца', ','), 9.679042936234466e-05),
(('сторонам', '.'), 9.679042936234466e-05),
(('сэр', '?'), 9.679042936234466e-05),
(('так', 'же'), 9.679042936234466e-05),
(('тем', 'не'), 9.679042936234466e-05),
(('то', 'же'), 9.679042936234466e-05),
(('того', 'места'), 9.679042936234466e-05),
(('тому', ','), 9.679042936234466e-05),
(('ты', 'ничего'), 9.679042936234466e-05),
(('ты', 'это'), 9.679042936234466e-05),
(('у', 'Артура'), 9.679042936234466e-05),
(('узнать', ','), 9.679042936234466e-05),
(('факт', ','), 9.679042936234466e-05),
(('хорошо', ','), 9.679042936234466e-05),
(('человека', ','), 9.679042936234466e-05),
(('что', 'с'), 9.679042936234466e-05),
(('чувствовал', 'себя'), 9.679042936234466e-05),
(('это', 'был'), 9.679042936234466e-05),
(('это', 'же'), 9.679042936234466e-05),
(('это', 'и'), 9.679042936234466e-05),
(('это', 'может'), 9.679042936234466e-05),
(('этот', 'раз'), 9.679042936234466e-05),
(('этот', 'самый'), 9.679042936234466e-05),
(('я', '?'), 9.679042936234466e-05),
(('я', 'бы'), 9.679042936234466e-05),
(('я', 'еще'), 9.679042936234466e-05),
(('я', 'могу'), 9.679042936234466e-05),
(('–', 'А-а'), 9.679042936234466e-05),
(('–', 'Ах'), 9.679042936234466e-05),
(('–', 'Боже'), 9.679042936234466e-05),
(('–', 'Всем'), 9.679042936234466e-05),
(('–', 'Да-да'), 9.679042936234466e-05),
(('–', 'Знаешь'), 9.679042936234466e-05),
(('–', 'Какая'), 9.679042936234466e-05),
(('–', 'Марвин'), 9.679042936234466e-05),
(('–', 'Мне'), 9.679042936234466e-05),
(('–', 'Нам'), 9.679042936234466e-05),
(('–', 'Ничего'), 9.679042936234466e-05),
(('–', 'Сопротивление'), 9.679042936234466e-05),
(('–', 'Эй'), 9.679042936234466e-05),
(('–', 'вот'), 9.679042936234466e-05),
(('–', 'выдохнул'), 9.679042936234466e-05),
(('–', 'заявил'), 9.679042936234466e-05),
(('–', 'крикнул'), 9.679042936234466e-05),
(('–', 'настаивал'), 9.679042936234466e-05),
(('–', 'переспросил'), 9.679042936234466e-05),
(('–', 'позвал'), 9.679042936234466e-05),
(('–', 'поинтересовался'), 9.679042936234466e-05),
(('–', 'попросил'), 9.679042936234466e-05),
(('–', 'пояснил'), 9.679042936234466e-05),
(('–', 'пробормотал'), 9.679042936234466e-05),
(('–', 'у'), 9.679042936234466e-05),
(('“', 'Сердца'), 9.679042936234466e-05),
(('!', 'В'), 7.743234348987572e-05),
(('!', 'Вот'), 7.743234348987572e-05),
(('!', 'Это'), 7.743234348987572e-05),
((',', 'вроде'), 7.743234348987572e-05),
((',', 'его'), 7.743234348987572e-05),
((',', 'зачем'), 7.743234348987572e-05),
((',', 'извините'), 7.743234348987572e-05),
((',', 'какие'), 7.743234348987572e-05),
((',', 'какой'), 7.743234348987572e-05),
((',', 'компьютер'), 7.743234348987572e-05),
((',', 'ладно'), 7.743234348987572e-05),
((',', 'м-р'), 7.743234348987572e-05),
((',', 'можно'), 7.743234348987572e-05),
((',', 'насколько'), 7.743234348987572e-05),
((',', 'ни'), 7.743234348987572e-05),
((',', 'никто'), 7.743234348987572e-05),
((',', 'оно'), 7.743234348987572e-05),
((',', 'пожалуй'), 7.743234348987572e-05),
((',', 'понимаете'), 7.743234348987572e-05),
((',', 'понимаешь'), 7.743234348987572e-05),
((',', 'приятель'), 7.743234348987572e-05),
((',', 'просто'), 7.743234348987572e-05),
((',', 'ради'), 7.743234348987572e-05),
((',', 'ребята'), 7.743234348987572e-05),
((',', 'совсем'), 7.743234348987572e-05),
((',', 'спасибо'), 7.743234348987572e-05),
((',', 'тем'), 7.743234348987572e-05),
((',', 'хоть'), 7.743234348987572e-05),
((',', 'через'), 7.743234348987572e-05),
(('.', '*'), 7.743234348987572e-05),
(('.', 'Аэромобиль'), 7.743234348987572e-05),
(('.', 'Вы'), 7.743234348987572e-05),
(('.', 'Ему'), 7.743234348987572e-05),
(('.', 'Звук'), 7.743234348987572e-05),
(('.', 'Земля'), 7.743234348987572e-05),
(('.', 'Именно'), 7.743234348987572e-05),
(('.', 'Караульный'), 7.743234348987572e-05),
(('.', 'Катер'), 7.743234348987572e-05),
(('.', 'Корабль'), 7.743234348987572e-05),
(('.', 'Лишь'), 7.743234348987572e-05),
(('.', 'Мне'), 7.743234348987572e-05),
(('.', 'Может'), 7.743234348987572e-05),
(('.', 'Несколько'), 7.743234348987572e-05),
(('.', 'Никто'), 7.743234348987572e-05),
(('.', 'Один'), 7.743234348987572e-05),
(('.', 'Однако'), 7.743234348987572e-05),
(('.', 'Остальные'), 7.743234348987572e-05),
(('.', 'Просто'), 7.743234348987572e-05),
(('.', 'Тут'), 7.743234348987572e-05),
(('.', 'Эти'), 7.743234348987572e-05),
(('?', 'Не'), 7.743234348987572e-05),
(('?', 'Нет'), 7.743234348987572e-05),
(('?', 'Что'), 7.743234348987572e-05),
(('?', 'Это'), 7.743234348987572e-05),
(('Z', 'Альфа'), 7.743234348987572e-05),
(('ZZ9', 'Плюрал'), 7.743234348987572e-05),
(('А', ','), 7.743234348987572e-05),
(('А', '?'), 7.743234348987572e-05),
(('А', 'если'), 7.743234348987572e-05),
(('А', 'как'), 7.743234348987572e-05),
(('А', 'мне'), 7.743234348987572e-05),
(('Без', 'паники'), 7.743234348987572e-05),
(('Бенжи', ','), 7.743234348987572e-05),
(('Бетельгейзе', ','), 7.743234348987572e-05),
(('Бетельгейзе', '.'), 7.743234348987572e-05),
(('Боже', ','), 7.743234348987572e-05),
(('В', 'конце'), 7.743234348987572e-05),
(('В', 'путеводителе'), 7.743234348987572e-05),
(('В', 'течение'), 7.743234348987572e-05),
(('Вот', ','), 7.743234348987572e-05),
(('Вот', 'что'), 7.743234348987572e-05),
(('Вот', 'это'), 7.743234348987572e-05),
(('Все', 'это'), 7.743234348987572e-05),
(('Всем', 'привет'), 7.743234348987572e-05),
(('Два', 'в'), 7.743234348987572e-05),
(('Дента', ','), 7.743234348987572e-05),
(('Жаль', ','), 7.743234348987572e-05),
(('Жизнь', ','), 7.743234348987572e-05),
(('Зафод', 'и'), 7.743234348987572e-05),
(('Зафод', 'не'), 7.743234348987572e-05),
(('Зафода', ','), 7.743234348987572e-05),
(('Зафода', '.'), 7.743234348987572e-05),
(('Земле', ','), 7.743234348987572e-05),
(('Знаешь', ','), 7.743234348987572e-05),
(('И', ','), 7.743234348987572e-05),
(('И', 'не'), 7.743234348987572e-05),
(('И', 'это'), 7.743234348987572e-05),
(('И', 'я'), 7.743234348987572e-05),
(('Кажется', ','), 7.743234348987572e-05),
(('Как', 'только'), 7.743234348987572e-05),
(('Мне', 'кажется'), 7.743234348987572e-05),
(('Мы', 'не'), 7.743234348987572e-05),
(('Нет-нет', ','), 7.743234348987572e-05),
(('Ничего', 'не'), 7.743234348987572e-05),
(('Но', ','), 7.743234348987572e-05),
(('Но', 'это'), 7.743234348987572e-05),
(('Но…', '–'), 7.743234348987572e-05),
(('Ну', 'что'), 7.743234348987572e-05),
(('Однако', ','), 7.743234348987572e-05),
(('Ой', ','), 7.743234348987572e-05),
(('Ол', '’'), 7.743234348987572e-05),
(('Он', 'опять'), 7.743234348987572e-05),
(('Он', 'сказал'), 7.743234348987572e-05),
(('Ответ', 'на'), 7.743234348987572e-05),
(('Откуда', 'я'), 7.743234348987572e-05),
(('Плюрал', 'Z'), 7.743234348987572e-05),
(('По-моему', ','), 7.743234348987572e-05),
(('Пожалуйста', ','), 7.743234348987572e-05),
(('Президентом', 'Галактики'), 7.743234348987572e-05),
(('Пфук', '.'), 7.743234348987572e-05),
(('Так', 'и'), 7.743234348987572e-05),
(('То', 'есть'), 7.743234348987572e-05),
(('Триллиан', 'и'), 7.743234348987572e-05),
(('Ты', 'хочешь'), 7.743234348987572e-05),
(('У', 'меня'), 7.743234348987572e-05),
(('Форд', '!'), 7.743234348987572e-05),
(('Форд', '?'), 7.743234348987572e-05),
(('Форд', 'в'), 7.743234348987572e-05),
(('Что', 'значит'), 7.743234348987572e-05),
(('Эдди', ','), 7.743234348987572e-05),
(('Эй', '!'), 7.743234348987572e-05),
(('Я', ','), 7.743234348987572e-05),
(('Я', '–'), 7.743234348987572e-05),
(('а', 'все'), 7.743234348987572e-05),
(('а', 'я'), 7.743234348987572e-05),
(('безопасности', ','), 7.743234348987572e-05),
(('бесконечной', 'невероятности'), 7.743234348987572e-05),
(('более', 'чем'), 7.743234348987572e-05),
(('больше', ','), 7.743234348987572e-05),
(('бы', 'ни'), 7.743234348987572e-05),
(('бы', 'я'), 7.743234348987572e-05),
(('был', 'слишком'), 7.743234348987572e-05),
(('в', 'бар'), 7.743234348987572e-05),
(('в', 'виде'), 7.743234348987572e-05),
(('в', 'голову'), 7.743234348987572e-05),
(('в', 'голосе'), 7.743234348987572e-05),
(('в', 'кратер'), 7.743234348987572e-05),
(('в', 'нескольких'), 7.743234348987572e-05),
(('в', 'общем-то'), 7.743234348987572e-05),
(('в', 'окно'), 7.743234348987572e-05),
(('в', 'окрестностях'), 7.743234348987572e-05),
(('в', 'самом'), 7.743234348987572e-05),
(('в', 'состоянии'), 7.743234348987572e-05),
(('в', 'течение'), 7.743234348987572e-05),
(('в', 'углу'), 7.743234348987572e-05),
(('в', 'угол'), 7.743234348987572e-05),
(('в', 'ухо'), 7.743234348987572e-05),
(('в', 'четверг'), 7.743234348987572e-05),
...]
len(bigrams_scored)
33719
bigram_finder.apply_freq_filter(3)
bigrams_scored = bigram_finder.score_ngrams(bigram_measures.raw_freq) len(bigrams_scored)
2100
bigram_finder.nbest(bigram_measures.raw_freq, 10)
[('.', '–'),
(',', '–'),
(',', 'что'),
('?', '–'),
(',', 'и'),
('!', '–'),
('.', 'Он'),
(',', 'а'),
(',', 'но'),
(',', 'как')]

POS-tagging

nltk.download('averaged_perceptron_tagger_ru')
[nltk_data] Downloading package averaged_perceptron_tagger_ru to
[nltk_data] /Users/hun/nltk_data...
[nltk_data] Package averaged_perceptron_tagger_ru is already up-to-
[nltk_data] date!
True
from nltk import word_tokenize, pos_tag, ne_chunk
text = "Красивая мама мыла раму." # str tokens = word_tokenize(text) tagged_tokens = pos_tag(tokens, lang="rus") print(tagged_tokens)
[('Красивая', 'A=f'), ('мама', 'S'), ('мыла', 'V'), ('раму', 'S'), ('.', 'NONLEX')]

NLTK-FreqDist

from nltk import FreqDist
with open("Адамс_-_Путеводитель_Автостопом_по_Галактике.txt", encoding="utf8") as f: raw = f.read() tokens = word_tokenize(raw, language='english')
fdist = FreqDist(tokens) fdist.most_common(n=20)
[(',', 4886),
('.', 3013),
('–', 3011),
('и', 1046),
('в', 909),
('не', 622),
('на', 579),
('?', 577),
('что', 540),
('он', 427),
('!', 351),
('с', 333),
('Артур', 306),
('Форд', 295),
('это', 287),
('я', 213),
('как', 210),
('“', 197),
('его', 197),
('”', 195)]
fdist.freq("полотенце")
0.00021293894459715822
fdist["полотенце"]
11
fdist.N()
51658
fdist.hapaxes()
['Адамс',
'Дуглас',
'Ноэль',
'Неофициальный',
'любительский',
'перевод',
'М.',
'Спивак',
'неизведанных',
'задворках',
'западного',
'спирального',
'рукава',
'затеряно',
'невзрачное',
'девяноста',
'восьми',
'вращается',
'ничтожнейшая',
'зелено-голубая',
'обитающие',
'организмы',
'примитивны',
'гениальным',
'изобретением',
'жителей',
'общая',
'беда',
'следующем',
'Предлагалось',
'способов',
'беды',
'способы',
'перемещением',
'бумажек',
'нелогично',
'зеленые',
'бумажки',
'нерешенной',
'злы',
'убоги',
'владельцы',
'электронных',
'убеждались',
'совершили',
'слезли',
'утверждали',
'деревья-то',
'неудачным',
'ходом',
'океан',
'мужика',
'приколотили',
'гвоздями',
'дереву',
'дурацкие',
'разговоры',
'разнообразия',
'возлюбить',
'ближнего',
'сидевшая',
'одиночестве',
'кафе',
'Ричмэнсворте',
'осознала',
'неправильно',
'славным',
'придумала',
'сработать',
'прибивать',
'телефонной',
'будки',
'позвонить',
'догадке',
'ужасная',
'нелепейшая',
'катастрофа',
'увы',
'утеряна',
'безвозвратно',
'девушке',
'нелепейшей',
'катастрофе',
'последствиях',
'называемой',
'внеземной',
'издававшейся',
'упомянутой',
'катастрофы',
'Книга',
'успешная',
'популярная',
'атлас',
'сиротских',
'приютов',
'продающаяся',
'53',
'занятия',
'нулевой',
'гравитации',
'противоречивая',
'трилогия',
'философских',
'блокбастеров',
'Оолона',
'Каллапида',
'ошибаться',
'просчетов',
'многих',
'благополучных',
'восточного',
'кольца',
'заменил',
'кладезя',
'житейской',
'премудрости',
'Галактическую',
'Энциклопедию',
'недочеты',
'неканонические',
'меньшей',
'вопиюще',
'неточные',
'сведения',
'перещеголял',
'последнюю',
'статьям',
'во-первых',
'дешевле',
'большими',
'умиротворяющими',
'написано',
'ужасного',
'нелепого',
'четверга',
'необыкновенных',
'последствий',
'переплетены',
'1',
'небольшом',
'холме',
'краю',
'поселка',
'Стоял',
'сельскохозяйственных',
'угодий',
'Западного',
'графства',
'примечательный',
'построенный',
'квадратный',
'приземистый',
'кирпичный',
'фасаде',
'размерам',
'пропорциям',
'стопроцентно',
'порадовать',
'некоторую',
'ценность',
'доме',
'обитал',
'переехал',
'Лондона',
'находил',
'суетной',
'раздражающей',
'темноволос',
'спрашивали',
'обеспокоен',
'это-то',
'знакомым',
'думают',
'занимались',
'рекламой',
'вечером',
'сильный',
'дождь',
'грязны',
'мокры',
'вовсю',
'проложить',
'утра',
'мутный',
'слепо',
'побродил',
'шлепанцы',
'пошлепал',
'ванную',
'умываться',
'Пасту',
'Шкряб',
'Зеркальце',
'бритья',
'отразило',
'окном',
'щетину',
'Побрился',
'умылся',
'вытерся',
'прошлепал',
'кухню',
'съедобное',
'Чайник',
'воткнули',
'холодильник',
'молоко',
'Зевок',
'кухни',
'поглазел',
'ушлепал',
'одеваться',
'Проходя',
'заподозревал',
'Пил',
'вероятнее',
'Поймал',
'отражение',
'Пивная',
'пивная',
'Смутно',
'припомнилось',
'больших',
'подробностях',
'зрительно',
'запомнились',
'устремленные',
'автостраде',
'только-только',
'Оказывается',
'планах',
'подозревал',
'Нелепость',
'глотнул',
'Как-нибудь',
'Совета',
'зеркало',
'Высунул',
'желтый',
'преграждая',
'подползавшему',
'садовой',
'дорожке',
'Ничто',
'чуждо',
'мистеру',
'Л.',
'Проссеру',
'Иными',
'двуногую',
'происходящую',
'Более',
'детально',
'сорока',
'жирный',
'потасканный',
'Совете',
'являлся',
'прямым',
'потомком',
'Чингиз-хана',
'мужской',
'Промежуточные',
'смешение',
'растрепали',
'гены',
'заметных',
'монголоидных',
'признаков',
'выраженной',
'полноты',
'талии',
'меховым',
'шапкам',
'воином',
'нервный',
'беспокойный',
'нервным',
'беспокойным',
'допустил',
'серьезный',
'просчет',
'заключалась',
'концу',
'убрать',
'Перестаньте',
'бульдозером',
'посверкать',
'захотели',
'щурился',
'Спорим',
'заржавеет',
'смириться',
'хватаясь',
'поправляя',
'Автострада',
'задирался',
'тряс',
'убрал',
'находчиво',
'прокладывать',
'приспособления',
'позволяют',
'нестись',
'несутся',
'А.',
'Людям',
'живут',
'гадать',
'рвутся',
'мечтают',
'Обитателям',
'конкретным',
'пригодным',
'миленький',
'коттеджик',
'алебардами',
'достойно',
'проводил',
'Д',
'пивной',
'ближайшей',
'пункту',
'Жена',
'хотела',
'плетистые',
'розы',
'любил',
'жарко',
'обильно',
'вспотел',
'насмешливыми',
'взглядами',
'опираться',
'обеих',
'некомфортно',
'Становилось',
'редкостную',
'некомпетентность',
'молился',
'оказаться',
'предоставлена',
'обратиться',
'жалобами',
'апелляциями',
'надлежащий',
'рабочего',
'мыть',
'Сначала',
'протер',
'пятерку',
'Нельзя',
'кожи',
'оповестить',
'выставлены',
'обозрение…',
'лезть',
'подвал',
'населения',
'послушайте',
'выставлено',
'всеобщее',
'дне',
'запертого',
'шкафчика',
'засунутого',
'неработающий',
'сортир',
'леопард',
'Проплыло',
'облако',
'лежавшего',
'подперев',
'Тень',
'заткнитесь',
'Заткнитесь',
'убирайтесь',
'прихватите',
'Рот',
'закрылся',
'мысленным',
'проносились',
'привлекательные',
'пожар',
'охвативший',
'воплями',
'страшного',
'огня',
'воткнуты',
'копья',
'М-ра',
'беспокоили',
'видения',
'нервировали',
'заикаться',
'Алло',
'Слушаю',
'ущерб',
'нанесен',
'переехать',
'информировал',
'унесся',
'недоумевая',
'полно',
'волосатых',
'всадников',
'отчего',
'орут',
'занятному',
'стечению',
'обстоятельств',
'ровно',
'потомок',
'обезьяны',
'произошел',
'расположенной',
'заподозрил',
'Упомянутый',
'основательно',
'потрудился',
'внедрением',
'земную',
'успехом',
'притворяясь',
'безработным',
'актером',
'Одну',
'глупую',
'совершил',
'должного',
'тщания',
'подготовительных',
'исследованиях',
'собранных',
'сведений',
'скромному',
'добропорядочному',
'гражданину',
'уместно',
'заметными',
'подозрительно',
'чертами',
'Жесткие',
'рыжеватые',
'зачесаны',
'висков',
'затылку',
'оттянутой',
'ощущалось',
'противоестественное',
'редко',
'моргал',
'приходилось',
'продолжительные',
'беседы',
'наполнялись',
'влагой',
'бессознательной',
'дискомфорт',
'чуть-чуть',
'появлялось',
'тревожное',
'вцепится',
'друзей-землян',
'считало',
'эксцентричным',
'безобидным',
'безалаберный',
'выпивоха',
'странностями',
'вваливался',
'университете',
'стельку',
'напивался',
'потешаться',
'астрофизиками',
'вышвыривали',
'Иногда',
'находило',
'занимается',
'вздрагивал',
'успокаивался',
'жутковатым',
'оскалом',
'Высматриваю',
'летающие',
'смеялись',
'начинали',
'допытываться',
'высматривает',
'Зеленые',
'коварной',
'хохотал',
'выпивку',
'забивался',
'путанно',
'объяснять',
'летающих',
'тарелок',
'важен',
'бредя',
'полупарализованных',
'ногах',
'ночным',
'улицам',
'натыкался',
'полисмена',
'останавливался',
'Полисмен',
'обыкновенно',
'пора',
'Стараюсь',
'дружок',
'стараюсь',
'отрешенно',
'высматривал',
'какую-нибудь',
'летающую',
'зеленую',
'традиционным',
'цветом',
'костюмов',
'торговом',
'флоте',
'любая',
'долгий',
'безвылазно',
'торчать',
'скучном',
'сигналить',
'спустились',
'разъездным',
'корреспондентом',
'издательства',
'приспосабливаются',
'условиям',
'полудню',
'устоялась',
'чередом',
'обязанность',
'ворочаться',
'чавкающей',
'эпизодически',
'адвоката',
'маму',
'интересную',
'оратора',
'призванного',
'изобретались',
'риторические',
'приемы',
'делается',
'благо',
'общества',
'эпохой',
'будущее',
'прочие',
'произносимые',
'завидной',
'регулярностью',
'сентенции',
'участвовали',
'спектакле',
'сидя',
'попивая',
'прикидывая',
'пункты',
'профсоюзного',
'законодательства',
'позволят',
'извлечь',
'финансовую',
'выгоду',
'сложившейся',
'двигалась',
'каждодневным',
'курсом',
'Солнце',
'начинало',
'высушивать',
'расположился',
'надвинулась',
'сощурившись',
'Нормально',
'Занят',
'лежу',
'сарказм',
'сосредотачивался',
'кролику',
'упорно',
'дожидается',
'переедет',
'опустился',
'Жизненно',
'пили',
'поселок',
'тревожно',
'выжидающе',
'сносили',
'Какой-то',
'ты…',
'обычный',
'важную',
'твоей',
'причем',
'Коне',
'конюхе',
'крепкого',
'удивлению',
'воля',
'начинает',
'ослабевать',
'подавлять',
'чужую',
'научился',
'давным-давно',
'пьянствуя',
'гиперпространственных',
'портах',
'мадранито-добывающих',
'зон',
'Орион',
'игру',
'сути',
'армрестлинга',
'играется',
'следующим',
'правилам',
'противников',
'садятся',
'ставится',
'устанавливается',
'бутылка',
'навеки',
'прославленного',
'старинной',
'песне',
'орионских',
'шахтеров',
'башка',
'слетит',
'совру',
'поджарятся',
'помру',
'лей',
'грешный',
'Спирит…',
'соревнующихся',
'напрягает',
'перевернуть',
'бутылку',
'налить',
'оппонента',
'обязан',
'пополняется',
'Играется',
'раунд',
'третий',
'проигрывать',
'подавляет',
'телепатические',
'способности',
'поглощении',
'установленного',
'объема',
'проигравший',
'фант',
'оказывается',
'непристойно',
'физиологичным',
'проигрывал',
'конечном',
'итоге',
'растерянно',
'зловредная',
'собираются',
'проложить…',
'находившийся',
'разгаре',
'жаркого',
'спора',
'представителем',
'последних',
'заплатят',
'оглянулся',
'удивлен',
'встревожен',
'образумился',
'пролежит',
'простаивать',
'Видимо',
'Нужен',
'обеспокоился',
'нес',
'чепуху',
'полчасика',
'слинять',
'возражаете',
'бред',
'Звучит',
'разумно…',
'успокаивающим',
'успокоить',
'захотите',
'пропустить',
'любезность',
'побудем',
'отчаялся',
'стороны…',
'напялил',
'бровей',
'победил',
'лечь…',
'выразился',
'Мой',
'клиент',
'встанет',
'условии',
'подойдете',
'займете',
'несешь',
'пискнул',
'снизу',
'носком',
'ботинка',
'свыкнуться',
'Вместо',
'изволили',
'выразиться',
'груз',
'плеч',
'представлений',
'поведете',
'неуверенных',
'шажков',
'Честное',
'Обещаю',
'обещал',
'Вставай',
'дай',
'дяде',
'поманил',
'уселся',
'единственным',
'ощущением',
'Грязь',
'обволокла',
'ягодицы',
'просачиваться',
'ботинки',
'страшные',
'сносов',
'пригрозил',
'рассматривать',
'укладываясь',
'наличие',
'приближающегося',
'депутата',
'откинул',
'лужу',
'аргументы',
'пользу',
'персона',
'шумно',
'дымно',
'лошади',
'пахло',
'кровью',
'бывало',
'обставили',
'лучшем',
'Чингиз-хан',
'неистовствовал',
'ярости',
'хныкал',
'подступающие',
'слезы',
'Сволочи',
'бюрократы',
'возмущенные',
'лежащие',
'незнакомцы',
'нечеловеческие',
'унижения',
'конная',
'орда',
'хохочущая',
'счетом',
'беспокоился',
'верить',
'Минут',
'двенадцать',
'пойдем',
'2',
'статья',
'алкоголь',
'бесцветная',
'испаряющаяся',
'образуемая',
'брожения',
'сахаров',
'отмечается',
'интоксицирующее',
'данной',
'упоминание',
'напитков',
'мгновенному',
'выбиванию',
'ломтиком',
'лимона',
'обернутым',
'золотого',
'кирпича',
'Путеводителе',
'рассказано',
'планетах',
'смешивают',
'цены',
'перечислены',
'добровольные',
'организации',
'помогающие',
'снятии',
'абстинентного',
'синдрома',
'последующей',
'реабилитации',
'приведен',
'рецепт',
'приготовить',
'домашних',
'условиях',
'Возьмите',
'Влейте',
'взятой',
'ах',
'растворите',
'кубика',
'мега-джина',
'мега-джин',
'заморозить',
'пропадет',
'бензин',
'Пропустите',
'смесь',
'литра',
'фаллианского',
'болотного',
'счастливых',
'путешественниках',
'болотах',
'Фаллии',
'серебряной',
'ложечки',
'влейте',
'экстракта',
'гипермятного',
'квалактина',
'благоухающего',
'ароматами',
'Квалактиновых',
'Зон',
'прекрасных',
'нежных',
'Бросьте',
'зуб',
'Понаблюдайте',
'растворяться',
'огни',
'Алгола',
'напитка',
'Побрызгайте',
'земфиором',
'Положите',
'оливку',
'Пейте',
'осторожно…',
'спросом',
'Большая',
'Галактическая',
'Энциклопедия',
'Шесть',
'горького',
'побыстрее',
'заслуживал',
'обращения',
'достойным',
'пожилым',
'Поправив',
'переносице',
'моргание',
'переключил',
'Прекрасная',
'разливать',
'намерением',
'матч',
'Таково',
'предварительное',
'заключение',
'Арсенала',
'шансов',
'поверх',
'кружек',
'считайте',
'Арсенал',
'отделался',
'искренне',
'неловкую',
'сидящим',
'двоих',
'уме',
'арифметические',
'вычисления',
'понравился',
'Отвали',
'рыкнул',
'пьянице',
'заставил',
'восвояси',
'шлепнул',
'стойке',
'пятифунтовой',
'банкнотой',
'Сдачи',
'пятерки',
'потратить',
'вникать',
'ненадолго',
'ерунда',
'поджал',
'Ридерс',
'Дайджест',
'колонка',
'Способствует',
'релаксации',
'попробую',
'Э-э…',
'откалывал',
'глотнув',
'пива',
'собираешься',
'подобное',
'толка',
'объяснениях',
'прочим',
'Скоро',
'бледно',
'Публика',
'нахмурилась',
'публики',
'проделал',
'отгоняющие',
'прекратил',
'улыбаться',
'занялся',
'делами',
'спрятаться',
'нормально',
'напиться',
'3',
'конкретный',
'ионосфере',
'двигалось',
'Точнее',
'десятков',
'неуклюжих',
'глыбоподобных',
'небоскребы',
'молчаливых',
'птицы',
'невесомо',
'парили',
'купаясь',
'электромагнитных',
'лучах',
'выжидая',
'группируясь',
'безучастной',
'присутствию',
'поры',
'Гигантское',
'проплыло',
'незамеченным',
'Гуанхилли',
'прошло',
'Канаверал',
'вызвав',
'Вумера',
'обидно',
'происходило',
'долгие',
'Единственным',
'глыб',
'приборчик',
'называемый',
'Приборчик',
'помигивал',
'покоясь',
'кожаного',
'мешка-рюкзака',
...]
from nltk import Text
with open("Адамс_-_Путеводитель_Автостопом_по_Галактике.txt", encoding="utf8") as f: raw = f.read() tokens = word_tokenize(raw, language='english') text = Text(tokens) print(text)
text.concordance("полотенце", width=79, lines=25)
Displaying 12 of 12 matches:
окнот и довольно большое купальное полотенце от Маркса энд Спенсера . По поводу
Галактике ” говорится следующее . Полотенце , говорится там , это , пожалуй ,
ирокое практическое применение . В полотенце можно заворачиваться для тепла , к
странства Яглан-бетанских лун ; на полотенце можно нежиться на сияющих мраморны
покинутой цивилизацией Какрафона ; полотенце можно употребить как парус , сплав
чистое . Что гораздо более важно , полотенце являет собой неоценимый психологич
видят , что у хайкера есть с собой полотенце , то они автоматически полагают ,
м умудрился не забыть , где у него полотенце , – это вне всяких сомнений челове
, который не забывает , где у него полотенце ! ” ( суссоваться – знать , слышат
о крутой парень . ) Покоившийся на полотенце в рюкзаке Форда Префекта Суб-эфирн
пить чайку . – У тебя есть с собой полотенце ? – внезапно спросил Форд у Артура
готово . Он не забыл , где у него полотенце . Внезапное молчание поразило Земл
text.similar("Артур")
он форд ты что это никто зафод они ведь ничего я мы никому не себя
даже ее тем то человека
text.common_contexts(["Артур"])
имени_дент доме_обитал утра_чувствовал большой_поглазел
похмелье_посмотрел делать_из выкрикнул_кто задирался_почему
заорал_надлежащий сказал_я оборвал_дент сам_с отозвался_хочу
заинтересовался_абсолютно обезьяны_дент бетельгейзе_дент чередом_взял
расположился_на привет_сказала тень_взглянул
text.collocations()
Глубокий Мыслитель; некоторое время; конце концов; самом деле; Сердце
Золота; м-р Проссер; миллионов лет; Форд Префект; Зафод Библброкс; все
равно; пожал плечами; М-р Проссер; Пан Галакт; сириусианской
кибернетической; Всяком Таком; прежде чем; Форда Префекта; можно было;
Великий Вопрос; капитанский мостик
text.plot()
text.vocab()
FreqDist({'Адамс': 1,
'Дуглас': 1,
'Ноэль': 1,
'Путеводитель': 9,
'“': 197,
'Автостопом': 17,
'по': 186,
'Галактике': 25,
'”': 195,
'Неофициальный': 1,
',': 4886,
'любительский': 1,
'перевод': 1,
'М.': 1,
'В.': 2,
'Спивак': 1,
'Далеко-далеко': 2,
'на': 579,
'неизведанных': 1,
'да': 27,
'и': 1046,
'никому': 5,
'не': 622,
'интересных': 3,
'задворках': 1,
'западного': 1,
'спирального': 1,
'рукава': 1,
'Галактики': 24,
'затеряно': 1,
'маленькое': 2,
'невзрачное': 1,
'желтое': 5,
'солнце': 8,
'.': 3013,
'Вокруг': 3,
'него': 73,
'расстоянии': 5,
'приблизительно': 5,
'девяноста': 1,
'восьми': 1,
'миллионов': 20,
'миль': 11,
'вращается': 1,
'своей': 19,
'орбите': 4,
'ничтожнейшая': 1,
'зелено-голубая': 1,
'планета': 19,
'Некоторые': 3,
'обитающие': 1,
'ней': 15,
'живые': 2,
'организмы': 1,
'происходят': 2,
'от': 127,
'обезьян': 3,
'так': 120,
'восхитительно': 2,
'примитивны': 1,
'что': 540,
'до': 64,
'сих': 3,
'пор': 12,
'считают': 3,
'электронные': 2,
'часы': 5,
'довольно-таки': 3,
'гениальным': 1,
'изобретением': 1,
'У': 18,
'жителей': 1,
'этой': 22,
'планеты': 46,
'есть': 39,
'–': 3011,
'или': 40,
'точнее': 2,
'была': 41,
'одна': 11,
'общая': 1,
'беда': 1,
'состояла': 2,
'она': 50,
'в': 909,
'следующем': 1,
':': 143,
'практически': 8,
'все': 158,
'они': 116,
'постоянно': 6,
'чувствовали': 3,
'себя': 45,
'глубоко': 5,
'несчастными': 2,
'Предлагалось': 1,
'множество': 6,
'способов': 1,
'спасения': 3,
'беды': 1,
'но': 134,
'эти': 18,
'способы': 1,
'почему-то': 4,
'были': 57,
'иначе': 5,
'связаны': 2,
'с': 333,
'перемещением': 1,
'пространстве': 4,
'маленьких': 4,
'зеленых': 3,
'бумажек': 1,
'нелогично': 1,
'той': 5,
'точки': 2,
'зрения': 5,
'ведь': 13,
'маленькие': 3,
'же': 129,
'зеленые': 1,
'бумажки': 1,
'Таким': 2,
'образом': 18,
'проблема': 4,
'оставалась': 2,
'нерешенной': 1,
';': 25,
'многие': 10,
'люди': 19,
'злы': 1,
'убоги': 1,
'даже': 48,
'владельцы': 1,
'электронных': 1,
'часов': 2,
'Люди': 3,
'больше': 41,
'убеждались': 1,
'том': 30,
'совершили': 1,
'огромную': 3,
'ошибку': 3,
'когда': 61,
'слезли': 1,
'деревьев': 2,
'А': 125,
'некоторые': 6,
'утверждали': 1,
'деревья-то': 1,
'свое': 15,
'время': 74,
'крайне': 9,
'неудачным': 1,
'ходом': 1,
'самого': 10,
'начала': 6,
'следовало': 2,
'покидать': 2,
'океан': 1,
'потом': 36,
'однажды': 5,
'четверг': 7,
'спустя': 8,
'почти': 16,
'две': 10,
'тысячи': 5,
'лет': 52,
'после': 28,
'того': 50,
'как': 210,
'одного': 11,
'мужика': 1,
'приколотили': 1,
'гвоздями': 1,
'к': 160,
'дереву': 1,
'за': 155,
'дурацкие': 1,
'разговоры': 1,
'о': 100,
'было': 136,
'бы': 123,
'неплохо': 2,
'для': 86,
'разнообразия': 1,
'возлюбить': 1,
'ближнего': 1,
'некая': 2,
'девушка': 2,
'сидевшая': 1,
'одиночестве': 1,
'маленьком': 2,
'кафе': 1,
'Ричмэнсворте': 1,
'внезапно': 12,
'осознала': 1,
'именно': 17,
'шло': 2,
'неправильно': 1,
'это': 287,
'долгое': 2,
'можно': 42,
'сделать': 8,
'мир': 8,
'славным': 1,
'счастливым': 3,
'местом': 2,
'Она': 26,
'хорошо': 20,
'придумала': 1,
'уж': 37,
'точно': 8,
'должно': 7,
'сработать': 1,
'никого': 6,
'ни': 51,
'чему': 4,
'пришлось': 8,
'прибивать': 1,
'Как': 38,
'печально': 4,
'успела': 2,
'добраться': 2,
'телефонной': 1,
'будки': 1,
'собиралась': 2,
'всем': 19,
'позвонить': 1,
'рассказать': 4,
'догадке': 1,
'потому': 26,
'случилась': 3,
'ужасная': 1,
'нелепейшая': 1,
'катастрофа': 1,
'идея': 6,
'увы': 1,
'оказалась': 6,
'утеряна': 1,
'безвозвратно': 1,
'Но': 58,
'эта': 10,
'история': 7,
'девушке': 1,
'Эта': 4,
'об': 30,
'ужасной': 3,
'нелепейшей': 1,
'катастрофе': 1,
'некоторых': 3,
'ее': 44,
'последствиях': 1,
'Это': 70,
'также': 16,
'одной': 12,
'книги': 5,
'называемой': 1,
'галактике': 2,
'внеземной': 1,
'разу': 3,
'Земле': 10,
'издававшейся': 1,
'которую': 18,
'упомянутой': 1,
'катастрофы': 1,
'никогда': 16,
'видел': 9,
'которой': 22,
'слышал': 4,
'один': 29,
'землянин': 8,
'Между': 3,
'тем': 28,
'весьма': 21,
'замечательная': 5,
'книга': 6,
'По': 27,
'правде': 2,
'говоря': 4,
'самая': 6,
'пожалуй': 4,
'из': 149,
'всех': 39,
'когда-либо': 7,
'вышедших': 2,
'печати': 2,
'гигантской': 2,
'издательской': 2,
'корпорации': 7,
'планете': 17,
'Урса': 2,
'Минор': 2,
'тоже': 28,
'ничего': 54,
'Книга': 1,
'только': 79,
'успешная': 1,
'более': 35,
'популярная': 1,
'чем': 79,
'атлас': 1,
'сиротских': 1,
'приютов': 1,
'звездного': 2,
'неба': 5,
'гораздо': 10,
'лучше': 18,
'продающаяся': 1,
'Еще': 11,
'53': 1,
'занятия': 1,
'нулевой': 1,
'гравитации': 1,
'а': 138,
'противоречивая': 1,
'трилогия': 1,
'философских': 1,
'блокбастеров': 1,
'Оолона': 1,
'Каллапида': 1,
'Когда': 9,
'Бог': 7,
'начал': 28,
'ошибаться': 1,
'парочка': 3,
'величайших': 4,
'просчетов': 1,
'Бога': 4,
'кто': 35,
'собственно': 7,
'такой': 20,
'этот': 43,
'?': 577,
'Для': 8,
'многих': 1,
'наиболее': 6,
'благополучных': 1,
'цивилизаций': 4,
'внешнего': 2,
'восточного': 1,
'кольца': 1,
'уже': 50,
'заменил': 1,
'качестве': 2,
'кладезя': 1,
'житейской': 1,
'премудрости': 1,
'Большую': 2,
'Галактическую': 1,
'Энциклопедию': 1,
'несмотря': 2,
'недочеты': 1,
'неканонические': 1,
'(': 31,
'меньшей': 1,
'мере': 12,
'вопиюще': 1,
'неточные': 1,
')': 31,
'сведения': 1,
'перещеголял': 1,
'последнюю': 1,
'двум': 2,
'важным': 3,
'статьям': 1,
'во-первых': 1,
'дешевле': 1,
'во-вторых': 2,
'обложке': 2,
'у': 89,
'большими': 1,
'умиротворяющими': 1,
'буквами': 2,
'написано': 1,
'Без': 6,
'паники': 5,
'то': 93,
'ужасного': 1,
'нелепого': 1,
'четверга': 1,
'его': 197,
'необыкновенных': 1,
'последствий': 1,
'каким': 9,
'невероятным': 4,
'последствия': 2,
'переплетены': 1,
'замечательной': 4,
'книгой': 2,
'начинается': 2,
'очень': 55,
'просто': 44,
'дома': 9,
'Глава': 35,
'1': 1,
'Дом': 2,
'стоял': 13,
'небольшом': 1,
'холме': 1,
'самом': 23,
'краю': 1,
'поселка': 1,
'Стоял': 1,
'себе': 44,
'глядя': 4,
'широкие': 2,
'просторы': 2,
'сельскохозяйственных': 1,
'угодий': 1,
'Западного': 1,
'графства': 1,
'Не': 61,
'чтобы': 93,
'чем-то': 3,
'примечательный': 1,
'дом': 17,
'построенный': 1,
'этак': 2,
'30': 2,
'назад': 18,
'квадратный': 1,
'приземистый': 1,
'кирпичный': 1,
'фасаде': 1,
'четыре': 9,
'окна': 4,
'размерам': 1,
'пропорциям': 1,
'которых': 22,
'менее': 17,
'стопроцентно': 1,
'удавалось': 2,
'порадовать': 1,
'глаз': 4,
'представлял': 5,
'собой': 42,
'некоторую': 1,
'ценность': 1,
'одного-единственного': 2,
'человека': 14,
'имени': 2,
'Артур': 306,
'Дент': 16,
'случилось': 12,
'этом': 48,
'доме': 1,
'обитал': 1,
'около': 9,
'трех': 6,
'тех': 16,
'самых': 9,
'переехал': 1,
'Лондона': 1,
'жизнь': 23,
'котором': 7,
'находил': 1,
'суетной': 1,
'раздражающей': 1,
'Артуру': 24,
'самому': 4,
'тридцати': 2,
'он': 427,
'был': 101,
'высок': 3,
'темноволос': 1,
'вечно': 2,
'тарелке': 3,
'спрашивали': 1,
'сильно': 7,
'обеспокоен': 1,
'это-то': 1,
'беспокоило': 2,
'всего': 16,
'Он': 170,
'работал': 5,
'местном': 3,
'радио': 2,
'всегда': 24,
'говорил': 19,
'знакомым': 1,
'куда': 20,
'интереснее': 2,
'думают': 1,
'Так': 29,
'оно': 15,
'знакомые': 2,
'большинстве': 2,
'своем': 8,
'занимались': 1,
'рекламой': 1,
'В': 96,
'среду': 2,
'вечером': 1,
'шел': 2,
'сильный': 1,
'дождь': 1,
'утром': 4,
'хотя': 13,
'улицы': 3,
'еще': 91,
'грязны': 1,
'мокры': 1,
'вовсю': 1,
'светило': 2,
'стены': 6,
'Артура': 57,
'Дента': 11,
'последний': 4,
'выяснилось': 2,
'раз': 47,
'сознание': 8,
'пока': 26,
'вернулся': 2,
'тот': 25,
'факт': 8,
'Совет': 2,
'решил': 18,
'снести': 4,
'проложить': 1,
'месте': 9,
'автостраду': 2,
'восемь': 6,
'утра': 1,
'чувствовал': 9,
'неважно': 5,
'проснулся': 2,
'весь': 9,
'мутный': 1,
'встал': 7,
'слепо': 1,
'побродил': 1,
'комнате': 2,
'открыл': 5,
'окно': 7,
'увидел': 10,
'бульдозер': 4,
'нашел': 14,
'шлепанцы': 1,
'пошлепал': 1,
'ванную': 1,
'умываться': 1,
'Пасту': 1,
'щетку': 2,
'Шкряб': 1,
'Зеркальце': 1,
'бритья': 1,
'смотрит': 4,
'потолок': 3,
'поправил': 2,
'На': 58,
'секунду': 12,
'зеркальце': 2,
'отразило': 1,
'второй': 18,
'окном': 1,
'ванной': 2,
'свою': 10,
'щетину': 1,
'Побрился': 1,
'умылся': 1,
'вытерся': 1,
'прошлепал': 1,
'кухню': 1,
'найти': 14,
'что-нибудь': 14,
'съедобное': 1,
'положить': 2,
'рот': 3,
'Чайник': 1,
'воткнули': 1,
'холодильник': 1,
'открыли': 4,
'кофе': 2,
'молоко': 1,
'Зевок': 1,
'Слово': 2,
'поплавало': 2,
'мозгу': 10,
'поисках': 5,
'приткнуться': 2,
'Из': 9,
'кухни': 1,
'видно': 5,
'довольно': 12,
'большой': 13,
'поглазел': 1,
'Желтый': 3,
'подумал': 24,
'ушлепал': 1,
'спальню': 2,
'одеваться': 1,
'Проходя': 1,
'мимо': 4,
'остановился': 6,
'выпить': 7,
'стакан': 4,
'воды': 6,
'сразу': 15,
'заподозревал': 1,
'похмелье': 3,
'С': 27,
'какой': 11,
'стати': 3,
'Пил': 1,
'ли': 50,
'вчера': 6,
'пришел': 8,
'выводу': 2,
'вероятнее': 1,
'Поймал': 1,
'краем': 2,
'глаза': 28,
'отражение': 1,
'продолжил': 15,
'свой': 16,
'путь': 7,
'Там': 12,
'думал': 6,
'Пивная': 1,
'Боже': 9,
'пивная': 1,
'Смутно': 1,
'припомнилось': 1,
'зол': 3,
'страшно': 2,
'поводу': 6,
'чего-то': 5,
'казалось': 15,
'ему': 60,
'быть': 44,
'рассказывал': 2,
'народу': 3,
'судя': 3,
'всему': 7,
'больших': 1,
'подробностях': 1,
'зрительно': 1,
'четко': 3,
'запомнились': 1,
'устремленные': 1,
'слушателей': 2,
'Что-то': 8,
'новой': 5,
'автостраде': 1,
'тогда': 19,
'только-только': 1,
'узнал': 6,
'Оказывается': 1,
'планах': 1,
'сто': 11,
'никто': 16,
'подозревал': 1,
'Нелепость': 1,
'!': 351,
'глотнул': 1,
'Как-нибудь': 1,
'само': 5,
'образуется': 2,
'нужна': 3,
'автострада': 3,
'Совета': 1,
'слишком': 19,
'шаткие': 2,
'основания': 4,
'Все': 36,
'Господи': 2,
'какое': 4,
'посмотрел': 24,
'зеркало': 1,
'Высунул': 1,
'язык': 2,
'желтый': 1,
'Через': 8,
'пятнадцать': 7,
'секунд': 19,
'лежал': 9,
'перед': 24,
'домом': 3,
'преграждая': 1,
'бульдозеру': 2,
'подползавшему': 1,
'садовой': 1,
'дорожке': 1,
'Ничто': 1,
'говорится': 9,
'человеческое': 2,
'чуждо': 1,
'мистеру': 1,
'Л.': 1,
'Проссеру': 1,
'Иными': 1,
'словами': 3,
'форму': 2,
'жизни': 30,
'основе': 2,
'углерода': 4,
'двуногую': 1,
'происходящую': 1,
'Более': 1,
'детально': 1,
'сорока': 1,
'жирный': 1,
'потасканный': 1,
'Совете': 1,
'Довольно': 2,
'любопытно': 2,
'знал': 22,
'этого': 46,
'являлся': 1,
'прямым': 1,
'потомком': 1,
'Чингиз-хана': 1,
'мужской': 1,
'линии': 4,
'Промежуточные': 1,
'поколения': 2,
'смешение': 1,
'рас': 5,
'растрепали': 1,
'гены': 1,
'нем': 14,
'осталось': 3,
'никаких': 8,
'сколько-нибудь': 4,
'заметных': 1,
'монголоидных': 1,
'признаков': 1,
'кроме': 13,
'выраженной': 1,
'полноты': 1,
'талии': 1,
'пристрастия': 2,
'меховым': 1,
'шапкам': 1,
'Его': 11,
'никак': 4,
'нельзя': 9,
'назвать': 4,
'великим': 3,
'воином': 1,
'напротив': 3,
'нервный': 1,
'беспокойный': 1,
'человек': 27,
'Сегодня': 4,
'особенно': 9,
'нервным': 1,
'беспокойным': 1,
'поскольку': 13,
'допустил': 1,
'серьезный': 1,
'просчет': 1,
'работе': 3,
'суть': 3,
'заключалась': 1,
'необходимости': 3,
'концу': 1,
'дня': 7,
'убрать': 1,
'дороги': 2,
'Перестаньте': 1,
'м-р': 17,
'вас': 42,
'получится': 3,
'можете': 7,
'вы': 92,
'лежать': 3,
'бульдозером': 1,
'бесконечности': 2,
'попробовал': 8,
'грозно': 3,
'посверкать': 1,
'глазами': 5,
'захотели': 1,
'делать': 21,
'грязи': 9,
'щурился': 1,
'Спорим': 1,
'выкрикнул': 5,
'Кто': 12,
'первый': 7,
'заржавеет': 1,
'Боюсь': 3,
'вам': 49,
'придется': 8,
'смириться': 1,
'вразумлял': 2,
'Проссер': 23,
'хватаясь': 1,
'меховую': 2,
'шапку': 2,
'поправляя': 1,
'голове': 8,
'Автострада': 1,
'должна': 4,
'проложена': 4,
'будет': 32,
'Неужели': 5,
'задирался': 1,
'Почему': 10,
'М-р': 12,
'некоторое': 21,
'тряс': 1,
'над': 35,
'Артуром': 7,
'пальцем': 10,
'Потом': 18,
'перестал': 2,
'убрал': 1,
'руку': 8,
'Что': 79,
'значит': 13,
'почему': 18,
'находчиво': 1,
'сказал': 148,
'Автострады': 2,
'надо': 32,
'прокладывать': 1,
'такие': 15,
'приспособления': 1,
'которые': 29,
'позволяют': 1,
'одним': 3,
'людям': 2,
'нестись': 1,
'со': 36,
'страшной': 3,
'скоростью': 11,
'пункта': 6,
'пункт': 2,
'Б': 5,
'другие': 5,
'несутся': 1,
'А.': 1,
'Людям': 1,
'живут': 1,
'пункте': 6,
'посередине': 2,
'пути': 3,
'остается': 5,
'лишь': 22,
'гадать': 1,
'такого': 14,
'необыкновенного': 2,
'столько': 7,
'рвутся': 1,
'туда': 11,
'попасть': 4,
'мечтают': 1,
'Обитателям': 1,
'часто': 2,
'хочется': 4,
'навсегда': 5,
'решили': 5,
'где': 44,
'черт': 5,
'их': 67,
'побери': 5,
'им': 29,
'хотел': 8,
'Г.': 2,
'Пункт': 2,
'Г': 3,
'каким-то': 6,
'конкретным': 1,
'пунктом': 2,
'мог': 34,
'любым': 3,
'пригодным': 1,
'далеким': 2,
'пунктов': 2,
'миленький': 1,
'маленький': 8,
'коттеджик': 1,
'алебардами': 1,
'дверью': 5,
'достойно': 1,
'проводил': 1,
'Д': 1,
'который': 45,
'пивной': 1,
'ближайшей': 1,
'пункту': 1,
'Жена': 1,
'конечно': 30,
'хотела': 1,
'плетистые': 1,
'розы': 1,
'предпочитал': 2,
'алебарды': 2,
'любил': 1,
'жарко': 1,
'обильно': 1,
'вспотел': 1,
'под': 32,
'насмешливыми': 1,
'взглядами': 1,
'бульдозеристов': 3,
'опираться': 1,
'другую': 3,
'ногу': 5,
'обеих': 1,
'одинаково': 2,
'некомфортно': 1,
'Становилось': 1,
'совершенно': 24,
'очевидно': 5,
'кто-то': 6,
'умудрился': 5,
'проявить': 2,
'редкостную': 1,
'некомпетентность': 1,
'молился': 1,
'Богу': 3,
'оказаться': 1,
'этим': 16,
'самым': 11,
'кем-то': 2,
'Вам': 7,
'предоставлена': 1,
'возможность': 6,
'обратиться': 1,
'жалобами': 1,
'апелляциями': 1,
'надлежащий': 1,
'срок': 4,
'знаете': 8,
'Надлежащий': 2,
'заорал': 9,
'Да': 87,
'я': 213,
'услышал': 2,
'рабочего': 1,
'Я': 110,
'спрашиваю': 2,
'пришли': 6,
'мыть': 1,
'говорит': 10,
'нет': 61,
'Сначала': 1,
'протер': 1,
'пару': 12,
'окон': 2,
'взял': 6,
'меня': 55,
'пятерку': 1,
'последние': 6,
'девять': 4,
'месяцев': 2,
'планы': 3,
'сноса': 4,
'доступны': 2,
'всеобщего': 3,
'обозрения': 2,
'отделе': 3,
'планирования': 5,
'Ну': 32,
'разумеется': 8,
'днем': 3,
'пошел': 7,
'посмотреть': 3,
'Нельзя': 1,
'сказать': 28,
'там': 40,
'кожи': 1,
'вон': 6,
'лезли': 2,
'оповестить': 1,
'них': 31,
'имею': 4,
'виду': 11,
'конкретно': 3,
'говорили': 6,
'выставлены': 1,
'обозрение…': 1,
'обозрение': 2,
'конце': 18,
'концов': 15,
'мне': 81,
'лезть': 1,
'ними': 11,
'подвал': 1,
'отдел': 4,
'оповещения': 2,
'населения': 1,
'фонариком': 3,
'всей': 22,
'видимости': 4,
'света': 24,
'лестницы': 2,
'послушайте': 1,
'нашли': 3,
'уведомление': 2,
'правда': 15,
'ядовито': 2,
'Оно': 6,
'выставлено': 1,
'всеобщее': 1,
'дне': 1,
...})

Генерация текстов при помощи Марковских цепей

https://tproger.ru/translations/markov-chains/

!pip3 install markovify
Collecting markovify
Downloading markovify-0.7.0.tar.gz
Collecting unidecode (from markovify)
Downloading Unidecode-0.04.21-py2.py3-none-any.whl (228kB)
 100% |████████████████████████████████| 235kB 900kB/s ta 0:00:01
[?25hBuilding wheels for collected packages: markovify
Running setup.py bdist_wheel for markovify ... [?25ldone
[?25h Stored in directory: /Users/hun/Library/Caches/pip/wheels/91/9d/53/92a5e51b554809a66a45271fa5550e9eb03d75c11efaef3d27
Successfully built markovify
Installing collected packages: unidecode, markovify
Successfully installed markovify-0.7.0 unidecode-0.4.21
import markovify text_model = markovify.Text(raw) # Print five randomly-generated sentences for i in range(5): print(text_model.make_sentence())
Он сказал: “Снаетте, Сафот ттакой самечаттелный селофек”, но не сумел продолжить, потому что знал, как нужно сигналить, чтобы они научились звонить в звонок, бегать по лабиринтам и все звуки умолкли, кроме далекого жужжания двигателей.
Он отыскал в толпе Триллиан – девушку, которую недавно подцепил на одной из главных трудностей в отношениях с Зафодом удалось открыть дверь.
И так, тысячелетиями, Вогосфера влачила несчастное существование – до тех пор, пока тот, кто меня перебил, не признается, – настаивал Форд. – Так, стало быть, часы работы подходящие, – продолжил Форд, – управляют кораблем, а дентрасси работают поварами, они и сами не знали.
Знаете ли вы, землянин, постичь, что это и все.
Голос у них за спиной произнес: – Добро пожаловать к обеду, земное создание.

Комментарии