В своем романе «Маятник Фуко» Умберто Эко вернул имя Абулафии в современную массовую европейскую культуру, так им назван персональный компьютер, принадлежащий главному героем Бельбо. Этот компьютер, используемый для работы с текстами, стал наравне с людьми одним из персонажей «Маятника», а выдержки из книги Абулафии Эко использует в качестве эпиграфов к главам.
Как это ни странно, но близкой к кабалистическим представлениям Абулафии о языке оказалась диссертация «О комбинаторном искусстве» (On the Combinatorial Art) Готфрида Лейбница, написанная им в 1666 году в двадцатилетнем возрасте до того, как он стал признанным универсальным гением, проявившим себя в философии, логике, математике, механике, физике и даже юриспруденции, истории и дипломатии. В зрелом возрасте Лейбниц изменил свои взгляды на более здравые, когда в 1690 году диссертацию издали без согласования с ним, он выразил категорический протест.
NLP, данные и информация
Текст – это символьные данные, содержащие информацию, если текст обозрим, то человек без всякой помощи прекрасно справляется с решением задачи преобразования этих данных в полезную для себя информацию. Но в наше время объем текстов, доступных в цифровой форме, таков, что человек с ним справиться не может и возникает потребность в автоматизации этого процесса. Возвращаясь к иерархической модели DIKW, можно сказать, что NLP – это технология преобразования текстовых, она служит инструментом для интеллектуального анализа текстов (text mining, TM), для преобразования неструктурированного текста на естественном языке в нормализованные структурированные данные, которые можно хранить в базах или хранилищах данных и т. д. NLP сочетает методы лингвистики, математики и компьютерной науки и делится на две взаимодополняющие составляющие Natural Language Understanding (NLU) и Natural Language Generation (NLG).
Иногда NLU еще называют Natural Language Interpretation (NLI), подтверждая тот факт, что для перевода английского слова understanding в NLU можно использовать и русское слово интерпретация. Для понимания-интерпретации текстовые данные подвергаются синтаксическому анализу (parsing), делятся на более мелкие и простые части, над которыми могут выполняться какие-то иные операции с целью превращения этих данных в структурированные и извлечения из них полезной информации. NLG решает обратную задачу превращения структурированных данных в читаемый текст на разговорном языке, то есть в неструктурированный и неформатированный текст, такой текст называют plain text.
Три подхода к NLP
Можно выделить три основных подхода к NLP:
– Символьный подход предполагает использование лингвистических правил, записанных человеком.
– Статистический подход основан на распознавании образов в больших объемах текстов с целью «понимания» естественного языка.
– Коннекционистский подход сочетает элементы символьного и статического с использованием нейронных сетей.
NLP на основе символьного подхода
Сохранение, казалось бы, устаревшего символьного подхода в NLP имеет очевидную причину – язык является символьным по своей природе. С символьного подхода все началось и он существует до сих пор, поэтому в определенной мере сохраняют актуальность некоторые первые решения, основанные на логике, правилах и онтологиях как формах представления знаний. Время с конца 40-х – до конца 60-х ассоциируется главным образом с задачами машинного перевода (Machine Translation, MT), описанными в главе 3. По итогам широко известного Джорджтаунского эксперимента стало формироваться MT как новое научное направление, с 1954 началось издание журналов Mechanical Translation и Computational Linguistics, на протяжении 10 лет было проведено несколько крупных, в том числе международных конференций. В них участвовали самые заметные ученые того времени, среди которых был Марвин Минский и Ханс Лун, более известный как изобретатель алгоритма Луна (Luhn algorithm), используемого до сих пор для вычисления контрольной цифры номера пластиковой карты с целью выявления ошибок, вызванных непреднамеренным искажением данных.
Энтузиазм первопроходцев находился в явном противоречии с возможностями существовавших на тот момент компьютеров, напомним, что иных средств взаимодействия с компьютером кроме принтера перфокарт не существовало и вся работа осуществлялась в пакетном режиме. Решение задач MT требовало иного аппаратного обеспечения, поэтому возникали утопические проекты создания специализированных компьютеров для работы с нецифровыми данными. Несмотря на то, что ничего позитивного в области MT тогда достигнуто не было, важнейшим наследием первого периода NLP стали теоретические работы в области вычислительной лингвистики. В первую очередь следует отметить труды Нома Хомского (Noam Chomsky, 1928), еще одного потомка выходцев из Российской Империи.
Следующие 10–15 лет с начала 60-х напоминают недолгий, но яркий взлет экспертных систем, случившийся в интервале между двумя зимами AI. Он привел к вопросно-ответным системам NLP с их попытками использовать экспертные знания, эту волну можно назвать семанически-ориентированной. В 1961 году в МТИ создали систему Baseball, способную вести диалог, она понимала вопросы, относящееся к культовой в Бостоне бейсбольной команде Red Sox и могла давать подходящие ответы, система детально описана в статье Baseball: an Automatic Question-Answerer. Выбор в пользу бейсбола понятен – клуб Red Sox был и остается одним из символов Бостона. В конце 60-х там же в МТИ Терри Виноград (Allen Winograd, 1946), фамилия которого недвусмысленно подсказывает происхождение, создал программу для «понимания естественного языка». Она была написана на языке LISP для компьютера DEC PDP-6, снабженного графическим дисплеем, новинкой того времени. Необычное название SHRDLU взято от раскладки алфавитных клавиш наборных строкоотливных машина, их называли линотипами и массово использовали для механизации набора пока их не заменили компьютерами.
Пользователь мог общаться с SHRDLU приказами на простом английском, следуя им SHRDLU перемещала изображения простых объектов в упрощенном «мире блоков»: кубики, конусы, шары и так далее. Среда SHRDLU была настолько проста, что для описания действий хватало пятидесяти слов, таких как существительные «блок» или «конус», глаголов «помести на» или «перемести в» и прилагательных «большой» или «синий». Выражения из них были тривиальны, но создавалось впечатление, будто программа понимала то, что имел в виду пользователь. SHRDLU. Человек может попросить SHRDLU: «Положи зеленый конус на красный блок и затем сними конус». Человек также мог задавать вопросы об истории действий – например, может спросить: «Ты поднимала что-нибудь до того, как поднять конус?» Позже Виноград, уйдя из МТИ в Стэнфорд, дал вполне критическую оценку этой системе: «Я пришел к выводу, что успешность взаимодействия самым серьезным образом зависит прежде всего от интеллекта человека, и что существует множество иных способов взаимодействия с компьютером, который таким интеллектом не обладает».
В большей мере удача сопутствовала Уильяму Вудсу (William Woods, 1942) и его вопросно-ответной системе LUNAR, созданной в рамках космической программы Apollo содружеством ученых из МТИ и уникальной компании Bolt Beranek and Newman (BBN), получившей гораздо большую известность в качестве разработчика и производителя маршрутизаторов для сети ARPAnet. Эта система описана в опубликованном компанией BBN в 1972 году в отчете The Lunar Science Natural Language Information System.
Наиболее близка к практической реализации NLP была компания Artificial Intelligence Corporation, разрабатывавшая с 1975 года вопросно-ответную систему INTELLECT.
Однако идею создания вопросно-ответных систем на основе правил, задаваемых человеком (handwritten rules), в конечном счете постигла та же участь, что и первые попытки создания систем MT. Окончательно же судьбу вопросно-ответных систем не в их пользу решил Даг Энгельбарт, разработавший NLS (On-Line System), создатель манипулятора мышки и того, что мы сегодня называем презентациями, без чего не обходится ни одна лекция, ни одно публичное выступление. Энгельбарт смотрел на жизнь совершенно иначе, чем создатели вопросно-ответных систем, он не пытался заменить человека компьютером, уже тогда прекрасно понимая значение разделения функций между машиной и человеком. NLS строилась на принципе ETLANTU (Easy To Learn And Natural To Use), т. е. «легко изучить и просто использовать», и главное в ней – идея создания интегрированной интерактивной визуальной среды, адаптированной к нуждам пользователя.