Дуже коротко про
судове засідання проти Google, де доповідачем був Pandu Nayak — на той час головний по якості пошуку в Google.
Чому воно важливе? Тому що
відображає ті зміни, які відбуваються в пошуку зараз, а також допоможе зрозуміти, як працює система корисності контенту і деякі інші, пов'язані з нею системи.
Повний документ потрібно прочитати кожному. Але ось декілька цікавинок:
🟢 Google досі використовує
інвертований індекс як фундамент для пошуку.
🟢 Коли індекс розростається і заповнюється мусором, Google ініціює оновлення основного алгоритму, щоб зменшити індекс для відповіді на запит до декількох сотень документів. Після цього кожному з тих документів, що потрапили до індексу, присвоюється
IR score (оцінка інформаційного пошуку).
🟢 Основною системою для зменшення індексу і його оцінки є
NavBoost, який був інтегрований в алгоритм ще у 2005 році або навіть раніше. Але з того часу зазнав численних змін. У нього є розширення:
Glue — яке використовується для всіх компонентів сторінки видачі, а не тільки для блакитних посилань на інші сайти.
🟢 NavBoost запам'ятовує і аналізує за допомогою машинного навчання
всі кліки по всім запитам користувачів за останні 13 місяців (до 2017 р — до 18 місяців). Але є документи, по яким немає кліків, тому це не єдиний фактор для оцінки.
Інші фактори: тематичність, PageRank (використовувався раніше), надійність, локальність.
🟢 Алгоритм, який збирає нам видачу, як ми її бачимо, називається
Tangram, а раніше називався Tetris.
🟢 Перед змінами алгоритму Google їх тестує. Потім асесори оцінюють результати. Потім зміни впроваджуються в пошук.
Скор, який присвоюється асесорами, називається IS — information satisfaction — інформаційне задоволення.
І він є головним відображенням якості пошуку. Він використовується для тренування інших модулей пошуку і для запровадження змін у алгоритм.
🟢 Google тримає приблизно 15тис зразків запитів, які постійно оцінюють асесори, і на яких вони експериментують.
🟢 Для ранжування Google використовує глибоке навчання з 3 основних моделей: RankBrain, DeepRank, RankEmbed BERT. Їх теж тренують на даних з кліків користувачів і запитів за останні 13 місяців. Але оскільки для гугла це як чорна скринька, то весь аналіз вони йому не довіряють, тому що тоді не зможуть контролювати результат — тут великий привіт усім віруючим у неіснуючий рандом!
🟢 RankBrain тренується на всіх мовах і запитах в усіх локалях. А потім налаштовується за допомогою скора IS (від асесорів). Це дорогий алгоритм, тому його використовують тільки на топ-20-30 результатах пошуку. Він коректує початковий скор (оцінку) результату.
🟢 RankEmbed було додано пізніше, потім він став
RankEmbed BERT. Але все ж таки тренувався на даних кліків і запитів. І налаштовувася скором IS. Він додає документи до вже існуючого індексу.
🟢 А потім до нього додали
DeepRank, який відіграє компліментарну функцію і майже заміщує BERT. Він використовується для розуміння мови. Але його використання ще дорожче, ніж RankBrain, через обчислювальну вартість обробки трансформерів.
🟢 Велика проблема для Google, яку вони постійно вирішують, —
затримка результатів пошуку для користувачів. Команда з UX додає до видачі зображення і різні функції, що призводить до зниження швидкості, за яку відповідає інша команда. Але у той же час для Google вкрай важливо задовільнити потреби користувачів, тому їм постійно доводиться балансувати між UX і затримкою.
🟢 Тому вони не використовують MUM на проді — вона для цього завелика і повільна.
Замість великих важких моделей використовуються маленькі класифікатори.