Быстрое объяснение, как работает новый поиск Graph Search от Facebook

Я провел это утро (16 января – прим. ред.), слушая Марка Цукерберга и его компанию, которые представили новый большой продукт Facebook под названием Graph Search. Он позволяет делать поиск с учетом людей, мест, фотографий и интересов (со временем критериев будет больше), используя все это как векторы поиска. Реакция прессы варьируется от скуки до дикого восторга.

Однако лично у меня после мероприятия осталось больше вопросов, чем ответов. Хотя Дэнни Салливан в своем обзоре отвечает на многие из этих вопросов, я даже после него не до конца понял, как это работает.

Так как же действует этот Graph Search на базе Unicorn? Из того, что я понял, поиск состоит из двух частей, обе разработаны самим Facebook. Первая часть – это технология обработки естественного языка, которым пользователи задают вопросы. Вторая часть – собственно та, что дает ответы.

Вторая часть основана на внутреннем поисковом инструменте под названием Unicorn, который уже некоторое время используется в Facebook. Там создан индекс всех объектов социальной платформы. В инженерном блоге компании Ларс Расмуссен (а также Том Стоки), отвечавший за разработку Graph Search, пишет:

Использование традиционных систем поиска информации для объединения ключевых слов и структурных запросов достаточно хорошо изучено. Но нам была нужна система, которая также будет искать ответы на более удаленном расстоянии, чем одно соединение, например «рестораны, которые понравились моим друзьям из Индии». И здесь нам повезло: одна из четырех наших уже существующих систем, Unicorn, была разработана именно с этим учетом.

Поисковая команда решила использовать двухшаговый подход: сначала сделать так, чтобы Unicorn управлял всеми поисковыми операциями на сайте, а затем доработать его, чтобы он удовлетворял требованиям Graph Search. Сегодня мы достаточно продвинулись, чтобы запустить Graph Search в бета-режиме, хотя пока не хватает возможности индексировать все сообщения и комментарии людей на Facebook. Это самая большая база данных, которая у нас есть для Graph Search и Unicorn.

Позже Расмуссен уже по телефону объяснил принцип работы технологии на очень рудиментарном уровне. Скажем, мы вводим «рестораны в Сан-Франциско, которые понравились моим друзьям из Индии». Агрегатор естественной речи берет эту фразу и преобразует ее в ключевые слова, по которым составляются поисковые запросы: «рестораны», «Сан-Франциско» и «друзья из Индии». Затем результаты этих запросов снова сортируются, чтобы выдать готовый ответ. Здесь нет ничего принципиально нового, за исключением масштаба тех данных, по которым прогоняются запросы. Вероятно, это совершенно новая (и растущая) планка.

Расмуссен признает, что в самой компании тоже не все понимают до конца. В частности, до сих пор неясно, какого рода компьютерные ресурсы потребуются для работы Graph Search в большом масштабе. По его словам, в Facebook будут оценивать пошаговый бета-выпуск и на его основе делать компьютерное планирование ресурсов.

Лично мое мнение таково, что это будет серьезный инфраструктурный вызов, особенно если Ларс и его армия хотят, чтобы латентность не превышала две секунды. Расмуссен отмечает, что «ранжирующий алгоритм» будет улучшаться по мере того, как поиском пользуется больше людей. При миллиарде ежедневных поисковых запросов на Facebook даже нескольких миллионов запросов будет достаточно для настройки ранжирующего алгоритма.

Что касается остальных моих запросов, то думаю, компания со временем поделится деталями. В блоге Facebook сказано, что новости «по этой проблеме скоро появятся в инженерном блоге».

Автор текста: Ом Малик (Om Malik) – основатель компании Giga Omni Media, главный редактор блога GigaOm

Читайте также:

Создатели vs. Инфлюенсеры

Хто використовує ваше обличчя? Неприємна правда про технологію facial-recognition

Facebook: история 15-летней дружбы

Победители в электронной коммерции: Google, Facebook и Amazon