Ознакомительная версия. Доступно 12 страниц из 56
В 5-й главе мы использовали NER для лучшего понимания героев книг и исследования их агентивности. Но еще важнее для изучения персонажей оказался метод, называемый разбором зависимостей. Программы для разбора зависимостей анализируют предложение и размечают его синтаксическую структуру. Программа разбора понимает, какие слова связаны между собой и где в предложении подлежащее, сказуемое и дополнение. Как и описанный выше алгоритм разбора по частям речи, эта программа использует информацию из предложений, предварительно разобранных специалистами-людьми. Эта информация помогает определять наиболее вероятную структуру введенных в программу предложений. Для 5-й главы нам нужно было исследовать агентивность героев на основе глаголов, обычно связанных с мужскими и женскими персонажами[253]. Возьмем, например, это предложение из «Сферы»:
nsubj(knew-2, Mae-1)
root(ROOT-0, knew-2)
nsubj(watching-5, Renata-3)
aux(watching-5, was-4)
ccomp(knew-2, watching-5)
dobj(watching-5, her-6)
cc(knew-2, and-8)
nsubj(knew-10, she-9)
conj(knew-2, knew-10)
nmod: poss(face-12, her-11)
nsubj(betraying-14, face-12)
aux(betraying-14, was-13)
ccomp(knew-10, betraying-14)
dobj(betraying-14, something-15)
case(horror-17, like-16)
nmod(betraying-14, horror-17)
Первая строка вывода показывает связь подлежащего (Mae)[256] с основным глаголом (knew)[257]. Кстати сказать, цифры рядом со словами показывают их порядок в предложении: Mae – первое слово, knew – второе, затем идет Renata и т. д. Обратите внимание: программа заметила связь между Ренатой, другим персонажем романа и глаголом watching[258], а также между местоимением she и вторым вхождением глагола knew. Объединив результаты анализа зависимостей и данные об именах персонажей, полученные с помощью NER, мы смогли понять, какие глаголы характерны для того или иного персонажа. Например, в этом предложении Мэй знает, а Рената наблюдает.
Из всех задач, с которыми мы столкнулись в ходе исследований, разбор зависимостей требует наибольшего объема вычислительных мощностей. Обработка одного романа занимает до пятнадцати часов, а романов у нас были тысячи. К тому же после разбора нужно было пройти по всем текстам еще раз, чтобы извлечь интересующие нас сочетания подлежащего и сказуемого. Это настолько трудоемкий процесс, что нам понадобился кластер из тысячи компьютеров, чтобы обрабатывать тысячу книг одновременно.
С точки зрения сложности вычислительных задач самой простой, вероятно, была описанная в 3-й главе – построение сюжетных графиков на основе слов, означающих эмоциональное состояние героев. Ученые, работающие в этой области (она называется «анализ тональности текста»), разработали несколько подходов к исследованию слов, обозначающих эмоции. Самые совершенные из этих методов делают выводы на основе статистических данных – примерно так же, как и программы разбора по частям речи и разбора зависимостей. Сейчас эти методы используются для анализа отзывов потребителей о товарах и услугах, а также для определения общего эмоционального настроя различных текстов, в том числе электронных писем. Мы экспериментировали с разными методами анализа тональности, но оказалось, что для выделения эмоционально нагруженных слов из текста более простые методы работают лучше.
В методе, который мы сочли наиболее эффективным, использовалось несколько специальных словарей, содержащих эмоционально окрашенные слова. Эти «словари эмоций» представляют собой просто списки слов, для которых указана эмоциональная окраска (положительная или отрицательная) и «валентность». Например, слово «любить» имеет сильную положительную окраску, а «ненавидеть» – сильную отрицательную. Мы научили программу читать книгу слово за словом, регистрировать эмоциональную окраску каждого, а затем давать оценку всему предложению. Последовательности позитивно и негативно окрашенных предложений и создают кривые графиков, приведенные в 3-й главе. Возьмем фразу из речи Эймона в «Сфере»: «Я люблю вас, как трава росинку, как птица ветку». Такое предложение алгоритм определит как положительно окрашенное. Вот еще одна фраза из «Сферы» – ее произносит Энни, только что узнавшая, что ее предки были рабовладельцами: «Ты вообще представляешь, какой бардак сейчас у нас в семье?» Неудивительно, что эту фразу алгоритм пометит как окрашенную отрицательно. Количество положительно и отрицательно окрашенных предложений в отрывке текста, как правило, отражает состояние главного героя в текущий момент и показывает, в каком месте сюжета мы находимся.
Все процессы интеллектуального анализа текста, которые мы обсуждали до сих пор, имеют дело с выделением и распознаванием отдельных компонентов текста. После вычленения слов уже легко узнать, как часто каждое из них встречается. Определив границы предложений, можно подсчитать, например, среднюю длину предложения или соотношение объема диалогов с объемом остального текста. Выполнив разбор по частям речи, мы можем исследовать типы существительных, прилагательных и глаголов, используемых разными авторами. Можно даже начать искать закономерности, характерные для одних писателей и отсутствующие у других. Извлеченные существительные можно ввести в алгоритм моделирования тем (как было показано во 2-й главе), а результаты разбора зависимостей позволяют нам исследовать синтаксис предложений и увидеть, какие связки «подлежащее – сказуемое» используются в каждой книге.
Вся эта вычислительная работа – на самом деле лишь подготовка. Обычно ее называют «предобработкой», предшествующей выделению и извлечению параметров текста. Лишь исследовав различные методы извлечения интересующих нас параметров, можно переходить к более интересной работе – использованию этих методов для классификации книг. Эта вторая фаза построения бестселлерометра называется машинным обучением.
Ознакомительная версия. Доступно 12 страниц из 56