8 сентября во всем мире отмечается день грамотности. Поисковая машина – не случайный гость на празднике грамотности. Машина вместе с человеком участвует в сложном процессе поиска информации: человек набирает запрос – машина подсказывает, человек делает в запросе ошибки – машина исправляет, человек задает запрос – машина отвечает. Для быстрого и эффективного получения результатов поиска грамотность нужна обоим участникам этого «разделения труда».
Сложно сказать, как быстро и в каком направлении меняется грамотность пользовательской аудитории – для этого надо проводить специальное исследование. Оценить динамику исправления поисковых запросов намного проще – измерение основных показателей соответствующих программ является штатной процедурой контроля качества поисковых систем.
Требования, метрики и оценки «грамотности» у машин и у людей, конечно, разные. Машине не нужно писать сочинение, сдавать единый государственный экзамен и поступать в институт. Главное требование для поисковой машины – исправлять ошибки в запросах. И метрики здесь – стандартные для ИТ-отрасли полнота и точность, а оценка – кликабельность сообщений об ошибке («Быть может, вы искали…»).
Лексика и синтаксис, с которыми имеет дело машина, тоже сильно отличаются от классического литературного языка. Помимо цитат из Пушкина и Мандельштама приходится исправлять короткие и хлесткие запросы вроде «кто тебя создал токую», «скчать мп3 безплатно» и «коды на gta vise citi». Поисковой системе никогда не придется исправлять многие слова и фразы из «Анны Карениной» и «Братьев Карамазовых», но просто необходимо знать, как правильно пишутся «Дэниэл Рэдклифф» и «sony ericsson». Кроме этого, надо уметь восстанавливать текст, набранный в неправильной раскладке, например «rfhnf vjcrds» («карта москвы») и «дштуфпу 2» («lineage 2»).
Давайте посмотрим, что произошло в Рунете с «грамотностью» поиска за последние 2 года. Изменения можно смело назвать «драматическими». Все без исключения поисковики втянулись в «борьбу за грамотность». Полнота и точность программ исправления запросов непрерывно росли и у некоторых поисковиков вышли на уровень 70-80%. Это значит, что в среднем исправляются три ошибочных запроса из четырех, и в трех случаях из четырех подсказка оказывается правильной. Во всех поисковиках появились подсказки быстрого набора, большинство поисковиков исправляет часть запросов автоматически.
Прогресс в поисковой «грамотности» объясняется развитием и внедрением вероятностных методов (т.н. языковых моделей), которые пришли на смену традиционным лингвистическим подходам и быстро нашли применение практически во всех областях искусственного интеллекта (исправление ошибок, автоматический перевод, распознавание речи).
Языковые модели представляют собой статистику употребимости слов и выражений естественного языка (например, русского) в определенной сфере использования (в поисковых запросах). Основой языковой модели служит список наиболее употребимых слов и n-словных сочетаний с частотами встречаемости за определенный период времени. Если n равно 2, модель называется «двухсловной», если 3 – «трехсловной» и так далее.
Информация о совместной встречаемости слов оказала всестороннее влияние на качество: позволила находить в запросах больше ошибок, выявлять более сложные классы ошибок, давать более точные подсказки. Только применение языковой модели дало возможность исправлять ошибки, связанные со словарным окружением – это опечатки с лишним или пропущенным пробелом («lovepla net»); когнитивные ошибки слитно-раздельного написания («пост индустриализация»); контекстные ошибки – малапропизмы (неправильные замены одного слова другим, сходным по звучанию, например, «меховой слон»). Эти классы ошибок составляют почти четверть (!) всех ошибок в запросах.
Правильный выбор варианта исправления тоже зачастую невозможен без анализа сочетаемости соседних слов. Так в запросе «грюм река» слово «грюм» можно заменить на «угрюм» только при наличии слова «река». В запросе «грюм стиль» слово «грюм» надо заменять на «грум». А в запросе «аластор грюм» вообще ничего не надо исправлять (это персонаж из «Гарри Поттера»).
Высокий уровень точности, достигнутый в результате применения языковой модели, позволил сделать очень смелый и важный шаг вперед – перейти от подсказок к автоматическому исправлению запросов. Сейчас на Яндекс.Поиске около трети запросов с ошибками исправляются автоматически.
В немалой степени зависит от полноты и точности исправления запросов содержимое подсказки быстрого набора. Подсказывать опечаточные варианты нет смысла и выглядит такая подсказка неряшливо. Фильтрация подсказок быстрого набора от орфографических ошибок и опечаток является важной и сложной задачей, весьма далекой от завершения.
Возвращаясь к «человеку», можно уверенно сказать, что перечисленные выше изменения в качестве сервиса подсказочных модулей не могли остаться незамеченными и затронули всех пользователей – независимо от уровня образования. Орфографические ошибки в трудных словах («агентство», «галерея», «терраса») чаще делают те, кто плохо учился в школе. Однако случайные ошибки («биноклб», «чснок», «марафонн») делают все – от детсадовца до академика.
Делать прогнозы развития программ исправления запросов достаточно сложно. Резервы языковой модели далеки от исчерпания, но обычно после мощных и резких рывков наступает затишье – до следующего прорыва в области искусственного интеллекта. Интересно, что это будет за прорыв и что все это время будет происходить с грамотностью пользовательской аудитории? Об этом – в следующих выпусках.
Алексей Байтин, группа исправления опечаток
А сколько вобще ошибок? А то может игра не стоит и свеч? Пару раз перенабить запрос -- вряд ли кого-то напрягает. А вот засилье магазинов в поиске - -это да, это трабла...