Интеллектуальная Обработка Текста

Работа, связанная с естественным языком, является одной из ключевых задач создания искусственного интеллекта.

Их сложность долгое время сильно недооценивалась.

Одной из причин раннего оптимизма в отношении естественного языка была новаторская работа Ноама Хомского по порождающим грамматикам.

В своей книге «Синтаксические структуры» и других работах Хомский предложил идею, которая сейчас кажется вполне банальной, но тогда была революционной: он превратил предложение естественного языка в дерево, показывающее отношения разных слов в предложении.



Интеллектуальная обработка текста

Пример дерева разбора показан на рисунке выше (а — разбор на основе структуры непосредственных компонентов; б — на основе грамматики зависимостей).

Генеративная грамматика — это набор правил вида S → NP V P или V P → V NP, которые можно использовать для генерации таких деревьев.

На деревьях разбора можно строить довольно строгие конструкции, пытаясь определить, например, логику естественного языка, с реальными аксиомами и правилами вывода.

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

непосредственные компоненты, или фразово-структурные грамматики (разбор на основе фразовой структуры).

Хомский, конечно, попутно выдвигал и другие гипотезы — в частности, одной из центральных его идей была идея «универсальной грамматики» человеческого языка, которая, по крайней мере частично, заложена на генетическом уровне.

, еще до рождения ребенка - но для нас сейчас это важно.

Именно эта новая связь между естественным языком и математикой со временем превратила языкознание в одну из самых «тяжелых» из гуманитарных наук.

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

Однако на практике эта программа столкнулась, мягко говоря, со значительными трудностями: оказалось, что естественный язык — не такая уж формальная вещь, как казалось ранее, а главное, он в значительной степени зависит от неявных предположений, которые уже не так легко формализовать.

Более того, оказывается, что для понимания естественного языка зачастую нужно не только правильно «разобрать» такой четко определенный формальный объект, как последовательность букв или слов, но и иметь некий «здравый смысл», представление об окружающем мире, а компьютеры пока очень плохо с этим справляются.

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

Сравните два предложения: «Мама помыла раму, и теперь она блестит» и «Мама помыла раму, и теперь она устала».

Конструктивно они абсолютно идентичны.

Но представьте, сколько всего нужно знать и понимать компьютеру, чтобы правильно определить, к чему относится местоимение «она» в каждой из этих фраз! И это не какой-то специально придуманный извращенный пример, а обыденная действительность нашего языка; мы постоянно делаем ссылки на то, что люди понимают «естественно»… но для компьютерной модели это совершенно нелогично! Рассуждения, основанные на здравом смысле, являются основным камнем преткновения в современной обработке естественного языка.

Кстати, специалисты по обработке естественного языка уже давно пытаются конкретно работать в этом направлении; Уже более десяти лет проводятся ежегодный семинар по «здравому смыслу», Международный симпозиум по логической формализации рассуждений, основанных на здравом смысле, а совсем недавно соревнование по решению задач на основе здравого смысла под названием «Winograd Schema Challenge» в честь Терри Винограда.

Задания там примерно такие: «Чашка не поместилась в чемодан, потому что была слишком велика; Что именно было слишком большим: чемодан или кубокЭ» Итак, хотя люди работают над интеллектуальной обработкой текста и даже добиваются значительных успехов, компьютеры еще не научились говорить.

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

Как оптимизировать «понимание»? Конечно, интеллектуальная обработка текста – это не одна задача, а множество, и все они в той или иной мере подлежат контролю человека и связаны с «Святым Граалем» понимания текста.

Давайте перечислим и кратко прокомментируем основные легко поддающиеся количественной оценке задачи обработки текста; некоторые из них будут обсуждаться позже в этой главе; Попробуем пойти от простого к сложному и условно разделить их на три класса.

1. Задачи первого класса условно можно назвать синтаксическими; здесь проблемы, как правило, очень четко определены и представляют собой проблемы классификации или проблемы генерации дискретных объектов, и многие из них сейчас решаются достаточно хорошо, например: (i) разметка частей речи: размечать слова в заданном тексте по частям речи (существительное, глагол, прилагательное.

) и, возможно, по морфологическим признакам (род, падеж.

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

форма); (iv) устранение неоднозначности границ предложения: разбить данный текст на предложения; Может показаться, что они разделены точками и другими знаками препинания и начинаются с заглавной буквы, но вспомните, например, как «в 1995 году Т.

Виноград стал научным руководителем диссертации Л.

Пейджа», и вы поймете, что задача непростая.

; а в таких языках, как китайский, даже задача сегментации слов становится весьма нетривиальной, поскольку поток символов без пробелов можно разделить на слова по-разному; (v) распознавание названных объектов: находить в тексте собственные имена людей, географических и других объектов, отмечая их по типу объекта (имена, топонимы и т.п.

); (vi) устранение смысловой неоднозначности слова: выбрать, какой из омонимов, какое из разных значений одного и того же слова используется в данном отрывке текста; (vii) синтаксический анализ: по данному предложению (и, возможно, его контексту) построить синтаксическое дерево, непосредственно по Хомскому; (viii) разрешение кореференции: определить, какие объекты или другие части текста относятся к определенным словам и фразам; частным случаем этой проблемы является то самое разрешение анафоры, о котором мы говорили выше.

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

К таким задачам относятся, в частности: (i) языковые модели: по отрывку текста предсказать следующее слово или символ; эта задача очень важна, например, для распознавания речи (см.

чуть ниже); (ii) поиск информации — основная задача, которую решают Google и Яндекс: учитывая заданный запрос и огромное разнообразие документов, найти среди них наиболее релевантные этому запросу; (iii) анализ настроений: определить настроение текста, то есть несет ли текст позитивное или негативное отношение; анализ настроений используется в онлайн-трейдинге для анализа отзывов пользователей, в финансах и трейдинге для анализа статей в прессе, отчетов компаний и подобных текстов и т. д.; (iv) извлечение отношений, извлечение фактов: извлечение из текста четко определенных отношений или фактов об упомянутых там объектах; например, кто с кем связан, в каком году была основана упомянутая в тексте компания и т. д.; (v) вопрос-ответ: дать ответ на заданный вопрос; в зависимости от постановки это может быть как чистая классификация (выбор из вариантов ответа, как в тесте), так и классификация с очень большим количеством классов (ответы на фактические вопросы типа «ктоЭ» или «в каком годуЭ») , или даже текст генерации (если нужно отвечать на вопросы в рамках естественного диалога).

3. И, наконец, к третьему классу относятся задания, в которых необходимо не только понять уже написанный текст, но и сгенерировать новый.

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

К таким задачам относятся, например: (i) сама генерация текста; (ii) автоматическое реферирование: на основе текста сформировать его резюме, так сказать, реферат; это можно рассматривать как проблему классификации, если попросить модель выбрать из текста готовые предложения, которые лучше всего отражают общий смысл, или как проблему генерации, если резюме необходимо написать с нуля; (iii) машинный перевод: из текста на одном языке создать соответствующий текст на другом языке; (iv) диалоговые и разговорные модели: поддерживать беседу с человеком; первые чат-боты начали появляться еще в 1970-е годы, а сегодня они представляют собой большую индустрию; и хотя вести полноценный диалог и пройти тест Тьюринга пока не удается, модели диалога уже вовсю развиваются (например, первую линию «онлайн-консультантов» на различных торговых площадках почти всегда составляют чат-боты).

Важной проблемой для моделей последнего класса является оценка качества.

У нас может быть набор параллельных переводов, которые мы считаем хорошими, но как мы оценим новый перевод, произведенный моделью? Или, что ещё интереснее, как оценить реакцию диалоговой модели в разговоре? Одним из возможных ответов на этот вопрос является BLEU (Bilingual Evaluation Understudy) [48], класс метрик, предназначенный для машинного перевода, но также применимый и для других задач.

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

Для всего набора тестов BLEU рассчитывается следующим образом:

Интеллектуальная обработка текста

где r — общая длина правильного ответа, c — длина ответа модели, pn — модифицированная точность, а wn — положительные веса, сумма которых равна единице.

Существуют и другие подобные метрики: METEOR [298] — гармоническое среднее точности и полноты по униграммам, TER (скорость редактирования перевода) [513] вычисляет относительное количество исправлений, которые необходимо внести в выходные данные модели, чтобы получить эталонные выходные данные, ROUGE [326] подсчитывает долю пересечений наборов n-граммных слов в стандарте и в результирующем тексте, а LEPOR [204] даже объединяет несколько разных метрик с разными весами, которые также можно обучать (многие авторы эти статьи французские, поэтому и аббревиатуры оказались французскими).

Однако интересно то, что, хотя такие метрики, как BLEU и METEOR, по-прежнему широко используются, на самом деле они не являются лучшим выбором.

Во-первых, BLEU имеет дискретный набор значений, поэтому его нельзя оптимизировать напрямую с помощью градиентного спуска.

Но что еще более интересно, в работе [232] представлены весьма удивительные результаты использования различных схожих метрик качества в контексте оценки ответов модели в диалоге.

Там вычисляются корреляции (как обычные, так и ранговые) человеческих оценок качества ответов и рейтингов по различным метрикам.

и оказывается, что эти корреляции почти всегда близки к нулю, а иногда даже отрицательны! Лучшей версии BLEU удалось добиться корреляции с человеческими оценками около 0,35 в одном наборе данных и даже 0,12 в другом (попробуйте опубликовать научный результат с такой корреляцией!).

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

Мы пока вообще этого не понимаем.

Эта критика уже привела к новым разработкам автоматического обучения метрик качества [537], и мы надеемся, что появятся новые результаты в этом направлении.

Однако в настоящее время не существует легко применимых альтернатив таким метрикам, как BLEU, и обычно используются именно они.

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

Например, не понимая языка, практически невозможно научиться в совершенстве распознавать речь: хотя кажется, что распознавание речи — это всего лишь задача классификации фонем по звуку, на самом деле человек пропускает множество звуков и завершает значительную часть того, что он слышит на основе своего понимания языка.

Еще в 1990-е годы системы распознавания речи достигли человеческого уровня распознавания отдельных фонем: если посадить человека перед магнитофоном, дать ему послушать звуки без контекста и попросить отличить «а» от «о», результаты не были бы вообще выдающимися; Поэтому, чтобы, например, записать то, что вам диктуют, нужно хорошо знать язык, на котором это происходит. Другой класс — проблемы распознавания рукописного или печатного текста.

Ко многим из этих проблем мы вернемся позже.

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

Приведен отрывок из книги Сергея Николенко, Артура Кадурина и Екатерины Архангельской.

«Глубокое обучение» Теги: #Машинное обучение #Алгоритмы #Профессиональная литература #книги #книги

Вместе с данным постом часто просматривают:

Автор Статьи


Зарегистрирован: 2019-12-10 15:07:06
Баллов опыта: 0
Всего постов на сайте: 0
Всего комментарий на сайте: 0
Dima Manisha

Dima Manisha

Эксперт Wmlog. Профессиональный веб-мастер, SEO-специалист, дизайнер, маркетолог и интернет-предприниматель.