Стивен Бейкер, инженер, Маунтин Вью
Парадокс компьютерных наук заключается в том, что многие задачи, которые людям не под силу, легко выполняются компьютерными программами. При этом задачи, которые человек может выполнять безо всяких усилий, остаются сложны для компьютеров. Мы умеем разрабатывать шахматные программы, которые побеждают ведущих гроссмейстеров на Земле. Однако создать такую программу, которая сможет распознать объекты на фотографии или понять предложение даже на уровне, доступном ребенку, мы не можем.
Обучение компьютера пониманию языка остается одной из сложнейших задач
искусственного интеллекта. Задача поисковой машины — найти именно то, что вам нужно. Важнейшую роль при этом играет понимание языка, в частности — синонимов.
Итак, что такое синоним? Приведем простейший пример. Слова "фото" и "фотография" означают одно и то же. Если вы ищете фразу [
проявка фото в кофе], то Google должен понимать, что даже если на странице употребляется слово "фотография", а не "фото", эта страница все равно является результатом поиска. Хотя любой ребенок понимает, что слова "фотография" и "фото" — синонимы, научить этому компьютерную программу крайне трудно. Именно поэтому мы по праву гордимся системой подбора синонимов, разработанной в Google.
Наша система подбора синонимов является результатом более чем пятилетней работы команды качества поиска Google. Мы постоянно контролируем качество работы системы, но недавно мы отдельно проанализировали влияние подбора синонимов на результаты поиска. Возможно, вы обычно и не замечаете, что при поиске используются синонимы, — все это происходит в недрах поисковой машины. Однако, как показывают проделанные нами измерения, синонимы влияют на выполнение 70% поисковых запросов, осуществляемых на сотне языков, поддерживаемых Google. Мы выбрали такие запросы и проанализировали, насколько точно были подобраны синонимы. Результаты нас порадовали. На каждые 50 запросов, для которых использование синонимов существенно улучшало результаты поиска, только в одном случае наблюдался отрицательный эффект.
Пример плохого подбора синонима — поиск [
dell system speaker driver precision 360]. В данном случае Google считает, что "pc" (ПК, персональный компьютер) является синонимом слова precision (точность). Мы знаем, что это плохой синоним, — и такие вещи иногда встречаются в результатах Google, — однако мы предпочитаем не исправлять их вручную. Вместо этого мы стараемся постоянно улучшать наши алгоритмы, чтобы добиться комплексного решения таких проблем. Мы надеемся, что в ходе дальнейших доработок мы добьемся корректной обработки и этого запроса.
Кроме того, с недавнего времени мы используем новый способ отображения синонимов в результатах поиска — в виде жирного шрифта. Сначала мы выделяли различные формы одного и того же слова. Например, для поиска, содержащего слово "картинки" мы выделяли слово "картинка". Теперь мы также выделяем слова, которые, с точки зрения наших алгоритмов, с высокой степенью достоверности совпадают по значению с исходным словом. При этом написание слов может отличаться. Теперь вы понимаете, почему результат может быть показан даже в том случае, когда он не содержит слов вашего запроса. В нашем примере [
проявка фото в кофе] вы видите, что в описании первого результата слово "фотографии" выделено жирным:

Заметим, что поскольку использование синонимов зависит от многих факторов, — в частности от наличия других слов в вашем запросе, — вы не обязательно увидите выделенное слово "фотографии" в поиске, содержащем слово "фото". Целесообразность выделения синонимов определяется нашими поисковыми алгоритмами.
Для обнаружения синонимов мы используем большое количество методик, и мы
писали об этом в нашем блоге. Наши системы анализируют петабайты документов, доступных в сети, а также данные по истории поиска. На основании этой информации формируется тонкое понимание смысла слов в различных контекстах. В приведенном выше примере "фото" и "фотографии" — это очевидные синонимы. Но синонимы не всегда являются взаимозаменяемыми. Например, несмотря на то что "блюдо" это одно из синонимов слова "тарелка", поисковая система должна понимать что "летающая тарелка" является вполне осмысленным запросом, а сочетание "летающее блюдо" более напоминает о сцене в ресторане, чем об НЛО.
Еще один пример — это аббревиатура "ГТО". Любой автомобилист знает что это сокращение означает: "Государственный технический осмотр транспортных средств". В случае запроса [
правила прохождения гто] Google выделит в результатах поиска фразу "Государственный технический осмотр". Это показывает, что в данном случае "Государственный технический осмотр" означает то же самое, что и ГТО. Есть ли еще значения у этой аббревиатуры? Многие вспомнят, что ГТО означает еще "Готов к труду и обороне" - программа физкультурной подготовки, существовавшая в нашей стране с 1931 по 1991 год. Это словосочетание будет выделено в результатах, содержащих виды упражнений и нормативы комплекса ГТО. Например, запрос [
гто СССР] вернет документы рассказывающие об истории этой программы, а также информацию о нормативах и упражнениях входящих в комплекс ГТО. Помимо этого, ГТО может обозначать "гаражно-техническое объединение", для любого знатока аниме, ГТО это сериал Great Teacher Onizuka.
Ниже на скриншотах показаны результаты запросов с различным значением аббревиатуры ГТО:

Кстати, даже такие очевидные варианты слова, как "фотография" и "фотографии" (единственное и множественное число), обычным компьютером будут восприниматься как разные условия поиска. Поэтому мы также включаем такие вариации в нашу систему подбора синонимов. Слова "фотография" и "фотографии" — это однокоренные слова, формы одного и того же слова. Система, понимающая, что "фотография" и "фото" — это одно и то же, должна понимать также, что "фотография" и "фотографии" — формы одного и того же слова. Это совсем очевидно для человека, но компьютеру не так-то просто это понять. Еще один пример — слова "животное" и "живот", которые имеют одинаковый корень и сходную этимологию, но означают совсем разные вещи. Другой пример — это использование слов "право" и "права". "Право" — это не только регулятор общественных отношений или совокупность законодательных норм, но и антоним слова "лево". А в множественном числе слово "права" означают и желанный документ, разрешающий управление автомобилем. Соответственно, запросы [
получить право] и [
получить права] имеют совсем разный смысл. Поиск Google достаточно умен для того, чтобы отличить одно выражение от другого, т.е. он знает, что "право" и "права" — это опасные синонимы, и их использование может привести к искажению смысла. Именно такие тонкие различия между словами, только кажущимися родственными, и затрудняют понимание правильного употребления синонимов.
Вот еще несколько примеров использования синонимов, которые, по нашему мнению, будут для вас интересны:
[
концерты в спб 2010] "Санкт Петербург" выделен жирным как синоним "спб"
[
пользователи жж] жирным выделены "Живой Журнал", а также английское название ресурса "LiveJournal"
[
клуб квн] "Клуб Веселых и Находчивых" выделен жирным как синоним сокращения "квн"
[
институт маи] "маи" расшифровывается как "Московский авиационный институт"
[
академия маи] ну, а в этом случае мы считаем что "маи" это "Международная академия информатизации"
Разумеется, сложность и разнообразие языка, используемого современной человеческой культурой, неисчерпаемы. Поэтому наши сегодняшние алгоритмы иногда ошибаются. Нам становится досадно, когда мы обнаруживаем такие ошибки, но мы постоянно работаем над их устранением. Чтобы лучше справляться с проблемами, мы уделяем большое внимание откликам реальных пользователей Google. Они вдохновляют нас на улучшение наших компьютерных программ. Если у вас есть конкретные замечания по работе нашей системы подбора синонимов, вы можете задать вопрос в справочном форуме веб-поиска или создать сообщение в twitter с тегом #googlesyns. Также вы можете отключить поиск по синонимам конкретного слова, если поставите перед ним "+" или заключите слово в кавычки.