Естественно, первое, что приходит в голову с таким подходом, — это перевод.
— Нетрудно понять, что человек-переводчик в процессе перевода сначала понимает смысл исходного предложения, а затем синтезирует этот смысл на другом языке. Только так можно получить адекватный перевод. Если же Google будет применять какие угодно эвристики, переводить по частям, используя пословный или пофразовый перевод, то неизбежно будет теряться смысл.
Конечно, кое-что можно понять уже на уровне синтаксического анализа. Например, синтаксический анализ зачастую позволяет разобраться с омонимией, когда одно и то же слово может означать разные вещи. Возьмем, допустим, слово «copy» — оно может быть как существительным («копия»), так и глаголом («копировать»). Но синтаксический анализ предложения I will copy this book показывает, что в данном случае «copy» — это глагол. Проблема в том, что синтаксис даже в таких, относительно простых случаях работает не всегда. Омонимию «за,мок»-"замо,к" синтаксически разрешить невозможно. «Я буду жить в этом замке» или «я повесил этот замок». Здесь уже нужен семантический анализ.
Выглядит все очень здорово, но, кажется, похожую функциональность обещали и экспертные системы, дайте-ка вспомнить, двадцать, тридцать, сорок лет назад?
— Если говорить о других подходах, то можно вспомнить не только экспертные системы, но и нейрокомпьютеры, которые, вообще говоря, к системам ИИ можно отнести с большой натяжкой, формально они к ним не относятся, это в большей степени статистические модели. Что касается экспертных систем, то в этой области масса различных реализаций. Если говорить о «черном ящике», то наша технология может имитировать поведение экспертной системы, если конечному пользователю так проще. Он сможет задавать вопросы и получать ответы. Но ключевым отличием NLC является то, что у нас целостный подход, мы строим целостное представление о мире. Экспертные системы никогда не ставили себе целью построение всеобъемлющей модели, да и не могли поставить такую цель.
Что это означает? Мы применяем так называемый IPA-подход — Integrity, Purposefulness and Adaptability, целостное, целенаправленное адаптивное восприятие. Этот принцип лежит в основе FineReader, NLC и ряда других систем ИИ, которыми мы занимаемся. Отдельные его принципы существовали и до нас, но наиболее цельно сформулировал этот подход наш главный идеолог по этому направлению Александр Львович Шамис, так что мы считаем, что принцип IPA изобретен нами. И этот принцип работает — сегодня FineReader умеет, например, распознавать рукописные шрифты без настройки на почерк.
В двух словах о том, что это такое. Во-первых, принцип целостности постулирует, что мы храним знания о мире целостным образом. Любые знания являются частью целого. Если говорить о распознавании текстов, то любая буква может быть представлена как система элементов, связанных друг с другом определенным образом. Если говорить о структуре языка, то здесь мы видим систему понятий, которые логически связаны друг с другом.
Принцип целенаправленности говорит о том, что мы не пытаемся исходить из того, что видим или анализируем. Мы поступаем ровно наоборот — априори высказываем гипотезу и пытаемся ее проверить. Наша система изначально является активным субъектом данного акта взаимодействия. Она не просто воспринимает данные на входе, но, получив объект для восприятия, пытается угадать, что это такое, или опровергнуть выдвинутую гипотезу. Причем это система с обратной связью — позитивные или негативные результаты запоминаются, система адаптируется и самообучается.
Представьте, что вы вошли в чулан. Темнота. Света практически нет, только какой-то слабый лучик пробивается. Вы почти ничего не видите, но чувствуете, что слева от вас что-то прошмыгнуло, проскочил движущийся объект. Через доли секунды вы уже знаете точно, что это была кошка. Как это произошло? Как вы догадались, ведь вы ее не видели?
Традиционная система распознавания взяла бы ту явно недостаточную графическую информацию, попыталась бы сделать на ее основании какие-то выводы — и у нее, конечно, ничего не получилось бы, потому что кошки не было, вы не видели ее. Но человек действует иначе. Сам не осознавая этого, он выдвигает гипотезы (как ограничивается круг возможных гипотез, это отдельный большой вопрос). Возможно, это собака, думает человек. Но если это собака, то тень должна была быть крупнее. Кроме того, собака должна издавать соответствующие звуки. Значит, эта гипотеза неверна. Переходим к следующей. Возможно, это мышь? Тоже нет, не подходит по размерам. А если это кошка? Кошка подходит. Это кошка!