Попытки научить компьютер понимать человеческий язык делаются уже довольно давно. Среди специалистов, занятых этой проблемой, в последнее время все труднее встретить «безнадежных оптимистов». Еще меньше их среди пользователей тех программ, которые должны обеспечивать взаимопонимание. Существующие компьютерные трансляторы, увы, по-настоящему полезны разве что для перевода сравнительно небольших и однозначных фраз. Поисковые машины частенько выдают вовсе не то, что мы хотим. Даже досконально изучив язык запросов, все равно приходится пробираться через информационные дебри, отбрасывая с дороги нерелевантные результаты. А «цунами» спама? По-прежнему, скрипя зубами, тратим время на удаление мусора из почтового ящика. Когда-то «черные списки» адресов могли обеспечить сносную защиту. Теперь, похоже, настало время, когда компьютеру необходимо поручать не только анализ цифр, но и «чтение» электронной почты.
Размышления обо всем этом привели меня на международную конференцию «Диалог» (http://www.dialog-21.ru), ежегодно собирающую крупнейших специалистов в области компьютерной лингвистики, причем не только мечтательных теоретиков, но и прагматичных производителей ПО. Последнее обстоятельство вселяло надежду, что наконец-то удастся увидеть, как хорошая идея превращается в полезную программу. Длинные теоретические доклады в первые дни конференции были столь же далеки от практики, как декабристы от народа. Упущенное удалось наверстать на стендовых секциях, посвященных разработкам: здесь и программу можно было испытать, и с авторами пообщаться.
Семантические методы фильтрации
Все мы имели возможность наблюдать «мутацию» рекламных писем: в них начали появляться ошибки — пропущенные или лишние буквы и знаки препинания, замысловатые символы. Виной тому, как вы понимаете, отнюдь не безграмотность спаммеров. Я бы назвал это самым настоящим дарвиновским естественным отбором: спам эволюционировал, дабы выжить в условиях контентной фильтрации и все равно оказаться в наших почтовых ящиках.
Этот факт, безусловно, не остался незамеченным и «охотниками за консервами». Доклад А. Власовой и К. Зоркого «Проблема намеренных искажений письменного текста в электронных рекламных рассылках (спаме)» (ЗАО «Ашманов и партнеры») был посвящен псевдоошибкам спаммеров и способам борьбы с ними, которые реализованы в фильтре «Спамтест 2.0». Для того чтобы преодолеть такой барьер, спаммеры используют автоматическую генерацию текстов, которые должны быть однозначно восприняты фильтром как нерекламные, а пользователем —как рекламные. Им на руку ахиллесова пята компьютера — способность «понимать» письменный текст. Часто применяется подмена букв (vi@gr@), разбиение слов на несколько частей (МО МЕ НТ АЛЬ НО), удвоение литер (Меммбранный плазмаферрез с применнением плазмоофильтра «РОСА»). Особые возможности предоставляет формат HTML: в текст письма можно вставлять любое количество дополнительных символов, цвет которых совпадает с цветом фона. Для пользователя эти символы будут незаметны, зато с их помощью можно заставить фильтр воспринимать весь текст как одно длинное слово.
Как бороться с такой напастью? Сотрудники лаборатории «Спамтест» предлагают довольно эффективные решения (http://www.spamtest.ru/technology-e.html). Если спаммеры удваивают буквы, то анализатор должен игнорировать удвоения. Хитрости с заменой букв на символы другого языка более-менее эффективно решаются с помощью перебора вариантов. Также фильтр проводит анализ цвета фона и цвета шрифта для писем в формате HTML.
Получается, что ловить спаммеров, использующих известные приемы, и «рубить их на корню» возможно. А что делать, если будут появляться новые приемы? Создавать новые решения и «обучать» им фильтр? Мне показалось, что в глобальном масштабе усилия антиспаммеров пока еще все равно представляют собой войну с ветряными мельницами. Спам с «заиканиями» как нельзя лучше демонстрирует, насколько слабо компьютер понимает человеческий язык и насколько сложно алгоритмизировать процесс восприятия текста.
Технология уточнения поисковых запросов
Алгоритмы поиска в Интернете постоянно совершенствуются, однако ситуации, когда пользователь не находит то, что ищет, увы, не редкость. Конечно, большинство уважающих себя поисковиков предоставляют функции расширенного поиска или позволяют использовать логические операторы (OR, AND, NOT). Однако даже эти возможности не всегда оказываются эффективными.
В этой связи мне показалась интересной работа П. Браславского «Автоматические операции с запросами к машинам поиска Интернета на основе тезауруса: подходы и оценки» (Институт машиноведения УрО РАН). Успех поиска в Сети зависит от удачно сформулированного запроса, но пока мы можем задать машине всего нескольких слов. Понятно, насколько полезен был бы инструмент для уточнения, переформулирования и оптимизации поискового запроса. Предложенная технология предполагает использование тезаурусов — словарей, составленных на основе анализа совместной встречаемости слов. Конечно, такой словарь может быть составлен только для довольно узкой предметной области. Но ведь очень часто мы обращаемся к поисковику, чтобы получить информацию, относящуюся, например, к сфере наших профессиональных интересов. В этих случаях метапоисковая машина окажется весьма полезной: она примет запрос, переведет его на другой язык, уточнит и адресует тому поисковику, который сможет выдать релевантные результаты. Не об этом ли мечтает каждый пользователь?
Однако для особого оптимизма оснований пока нет: система способна лишь помочь составить уточненный поисковый запрос. Возможно, он с большей вероятностью даст релевантные результаты, но все это, на мой взгляд, очень далеко от поиска информации с «человеческим лицом».
Globus Software: по-настоящему электронный словарь
Электронными словарями сегодня решительно никого не удивишь. Семейство Globus Software, представленное на конференции, показалось мне достойным внимания благодаря глубине реализованных идей и богатым функциональным возможностям. По-настоящему электронный словарь, по мнению представителя компании И. Ларченкова, должен обладать целым рядом дополнений. Представленное семейство отличает гибкая настройка словарной статьи. Для хранения и разметки данных разработан теговый язык DML (Dictionary Markup Language), который в значительной степени напоминает HTML. Его использование позволяет модифицировать словарную статью и, если необходимо, конвертировать данные в форматы, совместимые с другими словарями или издательскими системами. Для тех, кто не желает осваивать основы DML, предусмотрен редактор словарной статьи с настраиваемым пользовательским интерфейсом. Рост популярности электронных словарей, по всей видимости, не приведет к полному исчезновению традиционных печатных изданий. Именно поэтому в словарях Globus Software предусмотрен ряд функций издательской системы. С помощью встроенных инструментов можно подготовить оригинал-макет печатного словаря на основе электронного и экспортировать данные в формат RTF или HTML.
Вопросы, вопросы...
На конференцию я привез множество вопросов, касающихся человеко-компьютерного взаимодействия. Когда собирался уезжать, понял, что их количество удвоилось. Вместе с тем прибавилось уважения к людям, которые год за годом бьются над ответами на них.
Способен ли компьютер понимать значение слова? Любой, кто имеет хотя бы небольшой опыт работы с электронными словарями или компьютерными переводчиками, даст отрицательный ответ. А как насчет синтаксиса? Вспомните, как часто ошибается модуль автоматической проверки в MS Word, постоянно пытаясь убедить нас, что вполне грамотное предложение «не согласовано». Не добавляют оптимизма и ложные срабатывания антиспамовых фильтров, когда важные письма вдруг оказываются в одной папке с мусором.
Я уже предвижу возражения: «Постойте! Если бы компьютер был вовсе не способен понимать человеческий язык, то все выглядело бы значительно хуже. За каждым словом приходилось бы лезть в бумажный словарь, от спама не было бы спасения, а найти что-либо в Интернете было бы решительно невозможно». Абсолютно согласен, но разве достижения пропорциональны общим темпам развития информационных технологий? Чтобы представить себе это, достаточно вспомнить, что первые машинные переводчики появились в 60—70-х годах прошлого века. Теперь сравните производительность тогдашнего мэйнфрейма с возможностями современной пользовательской машины.
В заключение хочу привести запомнившуюся мне фразу одного из участников конференции: «Искусственный интеллект — это как смерть... Пока мы есть, его нет; когда будет он, нас не станет». Мне почему-то хочется, чтобы он оказался неправ.
Cовременный словарь «великого и могучего»
«Яндекс» — это не просто один из популярнейших поисковиков Рунета. Оказывается, благодаря доступности огромного массива русских текстов, он даст фору многим традиционным словарям. С помощью поисковых запросов можно исследовать управление глаголов, сочетаемость слов или употребление отдельных форм. Как было отмечено в докладе, посвященном такому использованию поисковика, «Яндекс» оказался вполне качественным инструментом получения новой лексикографической информации. Например, форма множественного числа «директоры» уже давно признается архаичной, однако в текстах Рунета формы «директора» и «директоры» встречаются одинаково часто.