Сегодня в рамках мероприятия Google Developers Day, мне удалось пообщаться с Владимиром Офицеровым, который прилетел в Москву специально на мероприятие. Владимир является специалистом отдела качества поиска компании Google и я задал ему ряд тематических вопросов, которые были интересны хабрапользователям.
Напомню, что с 1999 года Владимир Офицеров работал в компании Inktomi — один из первых интернет-поисковиков, который стал основой поисковика Yahoo. В Yahoo Владимир участвовал и руководил проектами, которые были направлены на улучшение алгоритма ранжирования, инфраструктуры сканирования и индексации. В 2008 году с группой инженеров из Yahoo Владимир перешел в калифорнийский Yandex Labs, где работал над проектами, направленными на улучшение поиска в российском интернете. С 2010 года работает в отделе качества поиска компании Google.
— Yahoo, Yandex, Google… Владимир, глядя на такую последовательность мест вашей работы, невольно напрашивается вопрос – как вообще такое возможно? Неужели можно так спокойно взять и перейти из первой компании со всеми ее секретами (NDA) во вторую, являющуюся главным конкурентом первой? Расскажите о причинах перехода из одного места в другое.
— В 1999 году одним одним из моих коллег в Inktomi был Аркадий Борковский – друг Аркадия Воложа, вместе с которым в 1997 году они организовали Яндекс. С Аркадием я долгое время работал в Inktomi, позже в Yahoo, а когда Яндекс решил открыть офис, то выбор начальника этого офиса естественно выпал на Аркадия Борковского. Так как я с ними работал достаточно долго, я просто стал одним людей, основавших этот офис. А насчет секретов — в Калифорнии с точки закона, никаких проблем с этим нет.
— То есть по сути, переманивания из одной компании, как такового, не было?
— Именно. Yahoo, как вы знаете, перестал делать поиск и полностью перешел на Bing. Эта тенденция была заметна какое-то время назад – компания не инвестировала ни в людей, ни в технологии, ни в компьютеры… И, собственно говоря, уход из Yahoo просто длился достаточно долго. Яндекс — очень хорошая компания (в плане менеджмента, принятия решений и т.д), но когда есть возможность перейти из компании, поиском которой пользуется миллионов сорок человек, в компанию, поиском которой пользуется более 500 миллионов, тут выбор остается очевидным. Особенно, если есть мотивация сделать поиск действительно лучше.
— В Google вы работаете с января этого года. По сравнению с предыдущими местами работы, есть какие-нибудь принципиальные различия? Нет ли такого, что на новом месте не хватает чего-то такого, что было на предыдущих местах работы?
— Первое, что видно, придя в Google – что это глобальная компания. Люди существенно проще общаются между собой, между офисами, отделениями… и связь поддерживается очень динамичной. Яндекс, все же, вырос в России и это чувствуется – он более закрыт… у него меньше опыта и подходов к организации глобального бизнеса.
— Давайте теперь немного поговорим о технической стороне вопроса. Почему Google решил перейти на «живой» поиск? И появившиеся на днях превью сайта в поисковых результатах.
— Начну с того, что порядка 30% пользователей не видят живого поиска вообще – как правило, это те, кто набирает запрос в адресной строке браузера. Для оставшихся среднестатистических пользователей «живой поиск» экономит порядка двух-трех секунд. Но нельзя забывать о людях, которые мееедленно набирают текст двумя пальцами – для них «живой поиск» экономит от 30 секунд и больше. Нажав только несколько букв, они с большой вероятностью смогут выбрать нужный им запрос, который уже не придется печатать. Мы решили, что для многих это может быть очень большим плюсом, а все остальные всегда могут отключить эту функцию.
— Мне кажется, что в большинстве случаев пользователь в общих чертах представляет себе то, что ищет – соответственно, все побочные результаты ему попросту не нужны. А нет ли, например, такого, что в этих «невидимых результатах» расходуются деньги рекламодателей, использующих Google AdWords?
— Что касается рекламы, то с этим проблемы нет – деньги начинают расходоваться только тогда, когда человек закончил свой запрос и для определения этого момента есть свои механизмы. Наоборот, в случае с живым поиском рекламы показывается меньше.
— Не случится ли такого, что с подобным предугадыванием запросов будет происходить косвенное манипулирование человеком, ведущему поиск? Когда он еще только задумал что-то поискать, а ему уже услужливо предлагается то, что он «хочет» поискать или то, что уже кем-то проплачено как «то, что надо искать» («все ищут это!» или «все считают это ответом!»).
— Ключевым фактором того, что поисковая машина предлагает вам закончить какой-то запрос является то, что мы знаем, что результат на него будет «хорошим». И если пользователь среди предлагаемых вариантов видит похожий на тот, который он хочет найти – то с точки зрения поисковой машины это и есть идеальный вариант сформулировать запрос, поставленная цель. То есть если у пользователя есть сложность с формулировкой запроса, но в предлагаемом машиной списке он видит что-то похожее на то, что он хочет найти, то найдет он это, скорее всего, значительно быстрее.
— Что вы можете сказать по поводу социального поиска? Когда у компании Google по плану создание поиска, который определяет релевантность результатов выдачи на основе взаимодействия и содействия пользователей вопреки распространенным методам поиска, основанных на алгоритмах?
— Я считаю, что такой поиск появится в самое ближайшее время, в следующем или даже в этом году. Более того – уже сейчас есть возможность указать в Google-профиле свои twitter-, facebook—аккаунт (и кое-какие другие соц.сети), после чего Google построит цепочку ваших друзей. И если кто-то из них опубликует какую-то ссылку у себя в блоге или в социальной сети, а информационное содержимое этой ссылки будет схоже с вашим поисковым запросом, то вы получите своего рода «дружественный» результат с соответствующей пометкой.
— Одной из проблем текущего поиска (любого) является то, что он ищет не «вглубь», а «вширь». То есть, например, по запросу «ручка» в результатах будет огромное количество самых разнообразных ручек – от пишущих до дверных. Но в то же время, «по запросу ручка найдено 1 900 000 результатов» — все равно, что спросить кого-то «А что же такое ручка?» и получить ответ: «я знаю более 1 900 000 ответов на этот вопрос, тебе какой?». То есть весь мгновенный выигрыш теряется на фоне разнородности информации. С этим вообще как-то можно бороться?
— На данный момент, машина действительно не может предугадать на таком уровне, что именно вы ищите и имеете ввиду, особенно если речь касается таких вот омонимов. Тем не менее, для подобных ситуаций мы стараемся выводить информацию о нескольких значениях. Ну и технологии, как мы видим, не стоят на месте – думаю, нет ничего невозможного.
— Какие еще существуют проблемы в современном поиске? Что вас лично на данный момент не устраивает и что бы вы хотели как можно скорее исправить?
— Проблем существует достаточно много, но одной из самых серьезных, я считаю, является спам в поисковых результатах. По крайней мере, для Российского рынка это один из ключевых факторов и мы будем стараться фильтровать эту информацию.
Еще одна тенденция, которая просматривается на протяжении нескольких лет, это предоставлении информации без необходимости нажатия большого количества клавиш. Так, например, одним из шагов к решению этой задачи, стал недавно введенный голосовой поиск.
— Каким вы видите поиск, допустим, через 5 лет? Через 10? Сейчас очень много говорят про дополненную реальность…?
«Если бы я знал…», — сказал Владимир и рассмеялся. В это время шепотом раздалась подсказка со стороны, от коллеги: «Я бы тогда инвестировал!»
Пожалуй, поиск станет еще ближе к пользователю. Персонализация, локализация, регионализация, социализация – думаю, все эти аспекты существенно изменят текущий механизм поиска. По той причине, что в этих данных очень много информации – никто не скажет за вас больше, чем ваши друзья.
— Соответственно, недавний конфликт с Facebook на самом деле гораздо существенней, чем может показаться на первый взгляд?
— Мы всегда очень серьезно воспринимаем конкурентов и, думаю, делают то же самое. Но между поиском и социальными сетями есть очень много точек соприкосновения, благодаря которым работу этих сервисов можно сделать еще лучше. Качество нашей выдачи могло бы быть гораздо выше, если бы мы знали больше про «лайки», которые Facebook расставили по всему интернету.
— То есть сейчас, по сути, поисковый прогресс сейчас тормозит именно эта конкуренция с Facebook?
— Именно. Надеюсь, рано или поздно эти барьеры станут гораздо ниже.
— Владимир, более чем за 10 лет «поисковой» работы у вас наверняка накопилось немало интересных или необычных историй? Расскажите что-нибудь из особо запомнившегося, так сказать, пару баек посмеяться и пару граблей поплакать.
— Году так в 2002 был забавный случай, когда я работал над runtime-системой (система, которая должна отвечать на запросы в течении полсекунды), в ее логах я нашел поисковый запрос, который обрабтывался больше минуты, решил разобраться. Оказалось, что пользователь ввел в поиске строку «i am alone in valentine’s day» с пробелом после каждой буквы («I a m a l o n e I n v a l e n t I n e ‘ s d a y»). В результате поисковой машине был представлен почти целый алфавит, где на каждую букву приходились сотни и тысячи документов — система изо всех сил пыталась их объединить и выдать наиболее подходящий результат. [прим.: Только что попробовал ввести похожий запрос в яндексе – действительно баттхёрт, пусть и не на минуту; в гугле ок]
Я тут приготовил список из нескольких забавных поисковых вопросов… порой забавно почитать.
— Про титановый лом в унитаз поезда? :)
— Нет, это уже классика :) Вот кое-что свеженькое. Непонятно, чем руководствуются пользователи, когда ищут такое. Ну вот, например, «какая челка мне подойдет?».
Что касается граблей…тоже было полно всего. Но с точки зрения программиста, самые страшные грабли – освобождать ту память, которой ты не владеешь. Ни к чему хорошему это не приведет.
— Да уж, интересно. А что вы можете посоветовать тем, кто, например, захочет пойти по ваши стопам? Может быть посоветуете какие-нибудь наиболее интересные книги… то есть не просто «Google для чайников», а что-нибудь более серьезное, действительно стоящее. Или ничего интересного в печатном виде нет и все самое вкусное стоит искать на бескрайних просторах сети?
— Ходить по моим стопам вовсе необязательно – каждый должен выбирать свой путь, по-настоящему интересный. Ну, а что касается информации, то я могу посоветовать две интересных книги: «Introduction to Information Retrieval» [Christopher D. Manning, Prabhakar ] — это более академическая книга, написанная профессором из Стэнфорда. Так сказать, для азов. А «Search Engines: Information Retrieval in Practice» [Bruce Croft, Donald Metzler, and Trevor Stohman] — это уже практическая книга, написанная инженерами из Google. Вполне подойдет для тех, кто, например, хочет сделать свой поисковик – там рассказывается о работе многих механизмов, о написании эффективного кода и много других полезных вещей. Ну и, конечно же, Интернет – при желании там всегда можно найти интересную, а главное, актуальную информацию.
Спасибо! Ну и напоследок, может быть, поделитесь каким-нибудь секретом? Что-нибудь прям необычное, эксклюзивно для читателей нашего сайта?
— Ну, секреты они на то и секреты :) Тем не менее, периодически кое-что открывается – как, например, недавно открытый общественности язык программирования, предназначенный для обработки ОЧЕНЬ БОЛЬШИХ объемов (больше индекса!) логов. Он был написан одним русским (не побоюсь сказать этого слова, учёным) и долгое время был нашим «ноу хау», но порядка недели назад эта информация стала публичной; при желании, можете погуглить. Ну или тот же Closure и GWT для разработки достаточно богатых веб-приложения на Java (которые после компилируется в JavaScript и пакуются так, чтобы они были оптимальны для компиляции, загрузки и по времени исполнения в браузерах) – все это Google сделал доступным для разработчиков.
У нас работает Брэд Фицпатрик, создатель LiveJournal – по сути, он «обычный» программист и в свое время, помимо LJ, написал для Google несколько вещей (в основном, это методы и классы), актуальных до сих пор -сейчас на них работают буквально все и подобных примеров можно привести еще достаточно много. Могу сказать проще – Google это та компания, которая делает из инженеринга религию, создавая проекты «навсегда». Чаще всего это гораздо более сложные (чем у конкурентов) механизмы, все тонкости работы которых взять и открыть просто нельзя.
На этом наша встреча подошла к завершению, я сделал несколько фотографий на память и отправился на само мероприятие – был приятно удивлен большому количеству людей, зарегистрированных на Хабре.
Успехов!
Напомню, что с 1999 года Владимир Офицеров работал в компании Inktomi — один из первых интернет-поисковиков, который стал основой поисковика Yahoo. В Yahoo Владимир участвовал и руководил проектами, которые были направлены на улучшение алгоритма ранжирования, инфраструктуры сканирования и индексации. В 2008 году с группой инженеров из Yahoo Владимир перешел в калифорнийский Yandex Labs, где работал над проектами, направленными на улучшение поиска в российском интернете. С 2010 года работает в отделе качества поиска компании Google.
— Yahoo, Yandex, Google… Владимир, глядя на такую последовательность мест вашей работы, невольно напрашивается вопрос – как вообще такое возможно? Неужели можно так спокойно взять и перейти из первой компании со всеми ее секретами (NDA) во вторую, являющуюся главным конкурентом первой? Расскажите о причинах перехода из одного места в другое.
— В 1999 году одним одним из моих коллег в Inktomi был Аркадий Борковский – друг Аркадия Воложа, вместе с которым в 1997 году они организовали Яндекс. С Аркадием я долгое время работал в Inktomi, позже в Yahoo, а когда Яндекс решил открыть офис, то выбор начальника этого офиса естественно выпал на Аркадия Борковского. Так как я с ними работал достаточно долго, я просто стал одним людей, основавших этот офис. А насчет секретов — в Калифорнии с точки закона, никаких проблем с этим нет.
— То есть по сути, переманивания из одной компании, как такового, не было?
— Именно. Yahoo, как вы знаете, перестал делать поиск и полностью перешел на Bing. Эта тенденция была заметна какое-то время назад – компания не инвестировала ни в людей, ни в технологии, ни в компьютеры… И, собственно говоря, уход из Yahoo просто длился достаточно долго. Яндекс — очень хорошая компания (в плане менеджмента, принятия решений и т.д), но когда есть возможность перейти из компании, поиском которой пользуется миллионов сорок человек, в компанию, поиском которой пользуется более 500 миллионов, тут выбор остается очевидным. Особенно, если есть мотивация сделать поиск действительно лучше.
— В Google вы работаете с января этого года. По сравнению с предыдущими местами работы, есть какие-нибудь принципиальные различия? Нет ли такого, что на новом месте не хватает чего-то такого, что было на предыдущих местах работы?
— Первое, что видно, придя в Google – что это глобальная компания. Люди существенно проще общаются между собой, между офисами, отделениями… и связь поддерживается очень динамичной. Яндекс, все же, вырос в России и это чувствуется – он более закрыт… у него меньше опыта и подходов к организации глобального бизнеса.
— Давайте теперь немного поговорим о технической стороне вопроса. Почему Google решил перейти на «живой» поиск? И появившиеся на днях превью сайта в поисковых результатах.
— Начну с того, что порядка 30% пользователей не видят живого поиска вообще – как правило, это те, кто набирает запрос в адресной строке браузера. Для оставшихся среднестатистических пользователей «живой поиск» экономит порядка двух-трех секунд. Но нельзя забывать о людях, которые мееедленно набирают текст двумя пальцами – для них «живой поиск» экономит от 30 секунд и больше. Нажав только несколько букв, они с большой вероятностью смогут выбрать нужный им запрос, который уже не придется печатать. Мы решили, что для многих это может быть очень большим плюсом, а все остальные всегда могут отключить эту функцию.
— Мне кажется, что в большинстве случаев пользователь в общих чертах представляет себе то, что ищет – соответственно, все побочные результаты ему попросту не нужны. А нет ли, например, такого, что в этих «невидимых результатах» расходуются деньги рекламодателей, использующих Google AdWords?
— Что касается рекламы, то с этим проблемы нет – деньги начинают расходоваться только тогда, когда человек закончил свой запрос и для определения этого момента есть свои механизмы. Наоборот, в случае с живым поиском рекламы показывается меньше.
— Не случится ли такого, что с подобным предугадыванием запросов будет происходить косвенное манипулирование человеком, ведущему поиск? Когда он еще только задумал что-то поискать, а ему уже услужливо предлагается то, что он «хочет» поискать или то, что уже кем-то проплачено как «то, что надо искать» («все ищут это!» или «все считают это ответом!»).
— Ключевым фактором того, что поисковая машина предлагает вам закончить какой-то запрос является то, что мы знаем, что результат на него будет «хорошим». И если пользователь среди предлагаемых вариантов видит похожий на тот, который он хочет найти – то с точки зрения поисковой машины это и есть идеальный вариант сформулировать запрос, поставленная цель. То есть если у пользователя есть сложность с формулировкой запроса, но в предлагаемом машиной списке он видит что-то похожее на то, что он хочет найти, то найдет он это, скорее всего, значительно быстрее.
— Что вы можете сказать по поводу социального поиска? Когда у компании Google по плану создание поиска, который определяет релевантность результатов выдачи на основе взаимодействия и содействия пользователей вопреки распространенным методам поиска, основанных на алгоритмах?
— Я считаю, что такой поиск появится в самое ближайшее время, в следующем или даже в этом году. Более того – уже сейчас есть возможность указать в Google-профиле свои twitter-, facebook—аккаунт (и кое-какие другие соц.сети), после чего Google построит цепочку ваших друзей. И если кто-то из них опубликует какую-то ссылку у себя в блоге или в социальной сети, а информационное содержимое этой ссылки будет схоже с вашим поисковым запросом, то вы получите своего рода «дружественный» результат с соответствующей пометкой.
— Одной из проблем текущего поиска (любого) является то, что он ищет не «вглубь», а «вширь». То есть, например, по запросу «ручка» в результатах будет огромное количество самых разнообразных ручек – от пишущих до дверных. Но в то же время, «по запросу ручка найдено 1 900 000 результатов» — все равно, что спросить кого-то «А что же такое ручка?» и получить ответ: «я знаю более 1 900 000 ответов на этот вопрос, тебе какой?». То есть весь мгновенный выигрыш теряется на фоне разнородности информации. С этим вообще как-то можно бороться?
— На данный момент, машина действительно не может предугадать на таком уровне, что именно вы ищите и имеете ввиду, особенно если речь касается таких вот омонимов. Тем не менее, для подобных ситуаций мы стараемся выводить информацию о нескольких значениях. Ну и технологии, как мы видим, не стоят на месте – думаю, нет ничего невозможного.
— Какие еще существуют проблемы в современном поиске? Что вас лично на данный момент не устраивает и что бы вы хотели как можно скорее исправить?
— Проблем существует достаточно много, но одной из самых серьезных, я считаю, является спам в поисковых результатах. По крайней мере, для Российского рынка это один из ключевых факторов и мы будем стараться фильтровать эту информацию.
Еще одна тенденция, которая просматривается на протяжении нескольких лет, это предоставлении информации без необходимости нажатия большого количества клавиш. Так, например, одним из шагов к решению этой задачи, стал недавно введенный голосовой поиск.
— Каким вы видите поиск, допустим, через 5 лет? Через 10? Сейчас очень много говорят про дополненную реальность…?
«Если бы я знал…», — сказал Владимир и рассмеялся. В это время шепотом раздалась подсказка со стороны, от коллеги: «Я бы тогда инвестировал!»
Пожалуй, поиск станет еще ближе к пользователю. Персонализация, локализация, регионализация, социализация – думаю, все эти аспекты существенно изменят текущий механизм поиска. По той причине, что в этих данных очень много информации – никто не скажет за вас больше, чем ваши друзья.
— Соответственно, недавний конфликт с Facebook на самом деле гораздо существенней, чем может показаться на первый взгляд?
— Мы всегда очень серьезно воспринимаем конкурентов и, думаю, делают то же самое. Но между поиском и социальными сетями есть очень много точек соприкосновения, благодаря которым работу этих сервисов можно сделать еще лучше. Качество нашей выдачи могло бы быть гораздо выше, если бы мы знали больше про «лайки», которые Facebook расставили по всему интернету.
— То есть сейчас, по сути, поисковый прогресс сейчас тормозит именно эта конкуренция с Facebook?
— Именно. Надеюсь, рано или поздно эти барьеры станут гораздо ниже.
— Владимир, более чем за 10 лет «поисковой» работы у вас наверняка накопилось немало интересных или необычных историй? Расскажите что-нибудь из особо запомнившегося, так сказать, пару баек посмеяться и пару граблей поплакать.
— Году так в 2002 был забавный случай, когда я работал над runtime-системой (система, которая должна отвечать на запросы в течении полсекунды), в ее логах я нашел поисковый запрос, который обрабтывался больше минуты, решил разобраться. Оказалось, что пользователь ввел в поиске строку «i am alone in valentine’s day» с пробелом после каждой буквы («I a m a l o n e I n v a l e n t I n e ‘ s d a y»). В результате поисковой машине был представлен почти целый алфавит, где на каждую букву приходились сотни и тысячи документов — система изо всех сил пыталась их объединить и выдать наиболее подходящий результат. [прим.: Только что попробовал ввести похожий запрос в яндексе – действительно баттхёрт, пусть и не на минуту; в гугле ок]
Я тут приготовил список из нескольких забавных поисковых вопросов… порой забавно почитать.
— Про титановый лом в унитаз поезда? :)
— Нет, это уже классика :) Вот кое-что свеженькое. Непонятно, чем руководствуются пользователи, когда ищут такое. Ну вот, например, «какая челка мне подойдет?».
Что касается граблей…тоже было полно всего. Но с точки зрения программиста, самые страшные грабли – освобождать ту память, которой ты не владеешь. Ни к чему хорошему это не приведет.
— Да уж, интересно. А что вы можете посоветовать тем, кто, например, захочет пойти по ваши стопам? Может быть посоветуете какие-нибудь наиболее интересные книги… то есть не просто «Google для чайников», а что-нибудь более серьезное, действительно стоящее. Или ничего интересного в печатном виде нет и все самое вкусное стоит искать на бескрайних просторах сети?
— Ходить по моим стопам вовсе необязательно – каждый должен выбирать свой путь, по-настоящему интересный. Ну, а что касается информации, то я могу посоветовать две интересных книги: «Introduction to Information Retrieval» [Christopher D. Manning, Prabhakar ] — это более академическая книга, написанная профессором из Стэнфорда. Так сказать, для азов. А «Search Engines: Information Retrieval in Practice» [Bruce Croft, Donald Metzler, and Trevor Stohman] — это уже практическая книга, написанная инженерами из Google. Вполне подойдет для тех, кто, например, хочет сделать свой поисковик – там рассказывается о работе многих механизмов, о написании эффективного кода и много других полезных вещей. Ну и, конечно же, Интернет – при желании там всегда можно найти интересную, а главное, актуальную информацию.
Спасибо! Ну и напоследок, может быть, поделитесь каким-нибудь секретом? Что-нибудь прям необычное, эксклюзивно для читателей нашего сайта?
— Ну, секреты они на то и секреты :) Тем не менее, периодически кое-что открывается – как, например, недавно открытый общественности язык программирования, предназначенный для обработки ОЧЕНЬ БОЛЬШИХ объемов (больше индекса!) логов. Он был написан одним русским (не побоюсь сказать этого слова, учёным) и долгое время был нашим «ноу хау», но порядка недели назад эта информация стала публичной; при желании, можете погуглить. Ну или тот же Closure и GWT для разработки достаточно богатых веб-приложения на Java (которые после компилируется в JavaScript и пакуются так, чтобы они были оптимальны для компиляции, загрузки и по времени исполнения в браузерах) – все это Google сделал доступным для разработчиков.
У нас работает Брэд Фицпатрик, создатель LiveJournal – по сути, он «обычный» программист и в свое время, помимо LJ, написал для Google несколько вещей (в основном, это методы и классы), актуальных до сих пор -сейчас на них работают буквально все и подобных примеров можно привести еще достаточно много. Могу сказать проще – Google это та компания, которая делает из инженеринга религию, создавая проекты «навсегда». Чаще всего это гораздо более сложные (чем у конкурентов) механизмы, все тонкости работы которых взять и открыть просто нельзя.
На этом наша встреча подошла к завершению, я сделал несколько фотографий на память и отправился на само мероприятие – был приятно удивлен большому количеству людей, зарегистрированных на Хабре.
Успехов!