Некоторые ранние системы ОЕЯ искали отдельные слова или короткие последовательности слов, которые считали индикаторами тональности всего текста. Например, можно предположить, что такие слова, как “лишенный”, “мрачный”, “странный”, “тяжелый”, “тревожный”, “жуткий” и “посредственный”, и такие словосочетания, как “не зацепили” и “ни шарма, ни остроумия”, говорят о негативной тональности отзывов. В некоторых случаях это действительно так, но часто те же самые слова можно найти в позитивных рецензиях. Вот несколько примеров:
“Несмотря на тяжелую тему, в фильме достаточно юмора, который не позволяет ему стать слишком мрачным”.
“Не понимаю, что тревожного и жуткого люди находят в этом фильме”.
“Когда вышел этот великолепный фильм, я был слишком молод – и тогда он меня не зацепил”.
“Не посмотрев этот фильм, вы многого лишитесь!”
Для определения эмоциональной окраски сообщения недостаточно распознавать отдельные слова или короткие словосочетания: необходимо понять семантику слов в контексте всего предложения.
Вскоре после того, как глубокие сети начали блистать в сфере компьютерного зрения и распознавания речи, исследователи ОЕЯ попытались применить их к анализу тональности текста. Как обычно, идея в том, чтобы натренировать сеть на множестве размеченных людьми примеров предложений с позитивной и негативной тональностью, позволив ей самостоятельно выявить полезные
Рекуррентные нейронные сети
Для обработки предложения или абзаца необходимы нейронные сети особого типа, непохожие на описанные в предыдущих главах. Так, в главе 4 мы анализировали работу сверточной нейронной сети, которая классифицировала изображения по категориям “собака” и “кошка”. Ее входным сигналом была насыщенность пикселей на изображении фиксированного размера (изображения большего и меньшего размера подвергались масштабированию). Предложения, напротив, состоят из
Применение нейронных сетей для решения задач, в которых фигурируют упорядоченные последовательности, такие как предложения, началось в 1980-х годах, когда были созданы
Структура рекуррентной нейронной сети следует такому последовательному чтению предложений и формированию их репрезентаций в форме активации нейронов. На рис. 32 сравниваются структуры традиционной и рекуррентной нейронной сети. Для простоты в каждой сети только две ячейки (белые круги) в скрытом слое и одна ячейка в выходном слое. В обеих сетях входной сигнал имеет связи со скрытыми ячейками, а каждая скрытая ячейка имеет связь с выходной ячейкой (сплошные стрелки). Ключевое отличие РНС в том, что у ее скрытых ячеек есть дополнительные “рекуррентные” связи: каждая из скрытых ячеек имеет связь с самой собой и другой скрытой ячейкой (пунктирные стрелки). Как это работает? В отличие от традиционной нейронной сети, РНС функционирует в соответствии с последовательностью моментов времени. В каждый момент времени РНС получает входной сигнал и вычисляет активацию своих скрытых и выходных ячеек, как и традиционная нейронная сеть. Но в РНС уровень активации каждой скрытой ячейки вычисляется не только на основе входного сигнала, но и на основе уровней активации скрытых ячеек