SlideShare a Scribd company logo
1 of 36
Download to read offline
Практическое применение
методов машинного обучения

Игорь Куралёнок
Яндекс
solar@yandex-team.ru
ППММО: План

  
      Машинное обучение в Яндексе
  
      Обучение ранжированию
  
      Классические проблемы ML в ранжировании
  
      Что дальше?
ППММО: План

  
      Машинное обучение в Яндексе
  
      Обучение ранжированию
  
      Классические проблемы ML в ранжировании
  
      Что дальше?
ППММО: Машинное обучение в Яндексе




            MatrixNet
ППММО: Машинное обучение в Яндексе

   
       Ранжирование (MatrixNet)
   
       Классификация запросов
             – Локализованность, новостность, товарность...
             – Категории, intensions...
   
       Выделение информации
             – организации;
             – магазины, товары.
   
       ...
ППММО: Машинное обучение в
ранжироании Яндекс
ППММО: План

  
      Машинное обучение в Яндексе
  
      Обучение ранжированию
  
      Классические проблемы ML в ранжировании
  
      Что дальше?
ППММО: Что такое “хороший” поиск?

   
       Находит “релевантные” документы?
   
       Позволяет быстро искать?
   
       Не находит всякий бред, так что боишься
       искать с ребенком за спиной?
   
       Поиск которым хочется пользоваться?
   
       Поиск с которого переходят на мой сайт?
   
       Приносит деньги?
ППММО: Кренфилдская методология



   Q

       D1       V        0.5       0.5/1

       D2       R-       0.1       0.1/2

       D3   E   R-   G   0.1   D   0.1/3   C
                                               0.72
       D4       R+       0.2       0.2/4

       D5       R-       0.1       0.1/5

       D6       U        0.4       0.4/6
ППММО: Яндекс pFound (DCG)




Цель:
ППММО: Как устроить ранжирование?




 К сожалению наша целевая функция кусочно постоянна:

  g(A) = 0, g(B) = 1;

  x(A) = 1, x(B) = 0;
  y(A) = 0, y(A) = 1.
                                    1
ППММО: Пути решения

   
       Перебор
   
       Сделать целевую функцию гладкой
   
       Найти другую целевую функцию
ППММО: Перебор
Зафиксируем модель ранжирующей функции




Организуем случайный шаг




Hill climbing от нескольких случайных
начальных точек
ППММО: Перебор (более наукообразно)
Markov Chain Monte-Carlo




Генетика, в частности Differential Evolution
ППММО: Как сделать dcg гладким?



Plackett-Luce




И еще много listwise методов, например:

Learning to Rank by Optimizing NDCG measure
H.Valizadegan, R. Jin, R. Zhang, J.Mao
ППММО: Другая целевая функция
 А что если MSE (pointwise)?




 ●
   Работает!
 ●
   Отлично отделяет “простые” запросы от “сложных”
 ●
   На частотниках ведет себя непредсказуемо
ППММО: Другая целевая функция
 Правдоподобие на парах(pairwise)




 ●
   Работает!
 ●
   Наиболее востребованный на сегодня метод
 ●
   Есть много вариантов реализации
ППММО: План

  
      Машинное обучение в Яндексе
  
      Обучение ранжированию
  
      Классические проблемы ML в ранжировании
  
      Что дальше?
ППММО: Немного чисел
                            Оценка снизу
       Запросы              100 млн/день
       Документы            10 млрд
       Оценки               1 млн
       Размерность          500
       Экспертов            100
       Максимальное время   ~100ms
       отклика
       Разница между        < 5%
       лучшей и худшей
       системами
ППММО: Известные проблемы

   
       Переобучение:
          – запросы;
          – документы;
          – эксперты.
   
       Положительная обратная связь:
          – документы;
          – факторы.
   
       Шумные данные:
          – эксперты;
ППММО: Переобучение (запросы) 2008г.
                 100%


                 90%


                 80%


                 70%                                                                                                            СМИ
                                                                                                                                Учеба
                 60%                                                                                                            Авто
                                                                                                                                Культура
 Доля в потоке




                                                                                                                                Развлечения
                 50%
                                                                                                                                Hi-Tech
                                                                                                                                Дом
                 40%                                                                                                            Бизнес
                                                                                                                                Справки
                                                                                                                                Спорт
                 30%
                                                                                                                                Общество
                                                                                                                                Работа
                 20%                                                                                                            Отдых


                 10%


                  0%
                        1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37

                                                                    weeks
ППММО: Переобучение (запросы)
  Равномерная “длинная” выборка из общего лога
  запросов

       pros:                         cons:
   
       не зависит от времени     ●
                                     не обеспечивает свежесть
   
       много времени на оценку   ●
                                     шумит от времени
   
       стабильна                 ●
                                     скачки при смене набора
                                 ●
                                     оценки устаревают
                                 ●
                                      запросы становятся
                                     неактуальными
ППММО: Переобучение (документы)

   
       Невозможно сделать равномерную выборку
       => учимся только на топе
   
       База все время меняется
       => часто перестраивать формулу
       => нам повезло и Inducted метрики работают
ППММО: Обучение на топе опасно для
вашего здоровья!
   
       Вне топа могут встретиться совсем другие
       документы с аномальными для данного
       запроса значениями факторов


   
       Распределения факторов существенно
       смещены (в топ [ФК Зенит] просто НЕТУ
       документов в которых не встречается запрос
       полностью)
ППММО: Переобучение (документы)

   
       Сделать классификатор до ранжирования
       => ничего не знает про запросы
   
       Сделать еще одно ранжирование которое
       ставит топовые документы выше нетоповых
       => смещение по факторам никуда не денется


   
       Активное обучение, учет неоцененных
       документов
ППММО: Переобучение (эксперты)

   
       миллионы пользователей != группе экспертов
   
       эксперты не задают запросов


   => делаем поиск не для пользователей, а в
     терминах инструкции (~100стр.)
   => попарные оценки (?)
   => обучение на пользовательском поведении
ППММО: Положительная обратная
связь (факторы)
   
       Поведенческие факторы
       => ограничить их влияние частотниками
   
       Search Engine Optimization
       => фильтровать, поменять формулу
   
       Чем лучше мы ищем, тем больше вес факторов
       по которым находим
       => надеемся на конкурентов, эксперты
       добавляют хорошие примеры не из выдачи
ППММО: Положительная обратная
связь (SEO)
    Оптимизация имеет много больше эффектов
    чем кажется (перелинковались → большинство
    перелинковалось → линки упали →
    большинство проиграло).
    Сложно равномерно оптимизировать все
    факторы
ППММО: Шумные данные (эксперты)

  Что будет, если перепроверить оценку?

         оценки   IR     R-     R+     U      V
         IR       0.75   0.22   0.02   0      0
         R-       0.34   0.54   0.11   0.01   0
         R+       0.07   0.13   0.73   0.06   0.01
         U        0.04   0.04   0.52   0.32   0.08
         V        0.03   0.02   0.05   0.08   0.83


   => проверять точность
   => учесть в построении модели
ППММО: Шумные данные (эксперты)

  Учитываем в модели (YetiRank)
ППММО: План

  
      Машинное обучение в Яндексе
  
      Обучение ранжированию
  
      Классические проблемы ML в ранжировании
  
      Что дальше?
ППММО: Что дальше?
    Деревья рулят миром:




    => Ждем новых методов
ППММО: Новые методы
     Где взять данные и с чего начать?




  От себя рекомендую Яндекс ИМ и Yahoo Track 2
ППММО: Что дальше?
  
      Настройка по сессиям пользователей
      => Workshop on Web Search Click Data
  
      Учет неоцененных документов в настройке
      => Берем Track 2 данных Yahoo и случайно
      выкидываем оценки
ППММО: Выводы

  
      Все просто
  
      Все сложно
  
      Без анализа данных – никуда
  
      Все еще только начинается
Вопросы?

More Related Content

Viewers also liked

Viewers also liked (8)

робота обєкти файл_система
робота обєкти файл_системаробота обєкти файл_система
робота обєкти файл_система
 
Ars Latina Camina Zacatecas
Ars Latina Camina ZacatecasArs Latina Camina Zacatecas
Ars Latina Camina Zacatecas
 
Amanda e Isabella Turma:301
Amanda e Isabella Turma:301Amanda e Isabella Turma:301
Amanda e Isabella Turma:301
 
Hola profe
Hola profeHola profe
Hola profe
 
vlsuw.pdf
vlsuw.pdfvlsuw.pdf
vlsuw.pdf
 
Tahlili bar-mohite-kar
Tahlili bar-mohite-karTahlili bar-mohite-kar
Tahlili bar-mohite-kar
 
Magazine Alma Laboris Edizione 2015
Magazine Alma Laboris Edizione 2015Magazine Alma Laboris Edizione 2015
Magazine Alma Laboris Edizione 2015
 
Hola profe
Hola profeHola profe
Hola profe
 

Similar to 20111030 csseminar machine_learning_kuralenok

Анализ рынка труда тестировщиков в Санкт-Петербурге
Анализ рынка труда тестировщиков в Санкт-ПетербургеАнализ рынка труда тестировщиков в Санкт-Петербурге
Анализ рынка труда тестировщиков в Санкт-Петербургеuransoft
 
Доклад "Анализ рынка труда тестировщиков в Спб"
Доклад "Анализ рынка труда тестировщиков в Спб"Доклад "Анализ рынка труда тестировщиков в Спб"
Доклад "Анализ рынка труда тестировщиков в Спб"uransoft
 
Оценка рынка IT-персонала Москвы в 2016 году
Оценка рынка IT-персонала Москвы в 2016 годуОценка рынка IT-персонала Москвы в 2016 году
Оценка рынка IT-персонала Москвы в 2016 годуSpice IT Recruitment
 
IT-HR Club №24. Alina Nazarova Reviewing compensation during Performance review
IT-HR Club №24. Alina Nazarova Reviewing compensation during Performance reviewIT-HR Club №24. Alina Nazarova Reviewing compensation during Performance review
IT-HR Club №24. Alina Nazarova Reviewing compensation during Performance reviewIT-HR Club
 
Kalanov Denis, IT-Dominanta, SPMConf
Kalanov Denis, IT-Dominanta, SPMConfKalanov Denis, IT-Dominanta, SPMConf
Kalanov Denis, IT-Dominanta, SPMConfIT-Доминанта
 
Вся правда о PM-ах
Вся правда о PM-ахВся правда о PM-ах
Вся правда о PM-ахSQALab
 
Стартап-маркетинг 4-х стихий: software, coupons, retail, digital. Только прак...
Стартап-маркетинг 4-х стихий: software, coupons, retail, digital. Только прак...Стартап-маркетинг 4-х стихий: software, coupons, retail, digital. Только прак...
Стартап-маркетинг 4-х стихий: software, coupons, retail, digital. Только прак...Eugene Lisovskiy
 
Карьерные и финансовые возможности
Карьерные и финансовые возможностиКарьерные и финансовые возможности
Карьерные и финансовые возможностиIT-Доминанта
 
Метапрограммы или еще 1 способ собрать «дрим-тим»
Метапрограммы или еще 1 способ собрать «дрим-тим»Метапрограммы или еще 1 способ собрать «дрим-тим»
Метапрограммы или еще 1 способ собрать «дрим-тим»SQALab
 
Создание системы обратной связи
Создание системы обратной связиСоздание системы обратной связи
Создание системы обратной связиAnna Nesmeeva
 
RST2014_Petrozavodsk_SmartCareer
RST2014_Petrozavodsk_SmartCareerRST2014_Petrozavodsk_SmartCareer
RST2014_Petrozavodsk_SmartCareerRussianStartupTour
 
Исследование моделей компетенций
Исследование моделей компетенцийИсследование моделей компетенций
Исследование моделей компетенцийSergey Yuldashev
 
[Технопарк] Управление продуктом-3
[Технопарк] Управление продуктом-3[Технопарк] Управление продуктом-3
[Технопарк] Управление продуктом-3Oleg Parinov
 
Mikhail Ovchinnikov "Automated Machine Learning: building a conveyor"
Mikhail Ovchinnikov "Automated Machine Learning: building a conveyor"Mikhail Ovchinnikov "Automated Machine Learning: building a conveyor"
Mikhail Ovchinnikov "Automated Machine Learning: building a conveyor"Fwdays
 
Dsml for business.full version
Dsml for business.full versionDsml for business.full version
Dsml for business.full versionDmitry Guzenko
 
Как обогнать конкурентов при помощи интернета?
Как обогнать конкурентов при помощи интернета?Как обогнать конкурентов при помощи интернета?
Как обогнать конкурентов при помощи интернета?UAMASTER Digital Agency
 

Similar to 20111030 csseminar machine_learning_kuralenok (18)

Анализ рынка труда тестировщиков в Санкт-Петербурге
Анализ рынка труда тестировщиков в Санкт-ПетербургеАнализ рынка труда тестировщиков в Санкт-Петербурге
Анализ рынка труда тестировщиков в Санкт-Петербурге
 
Доклад "Анализ рынка труда тестировщиков в Спб"
Доклад "Анализ рынка труда тестировщиков в Спб"Доклад "Анализ рынка труда тестировщиков в Спб"
Доклад "Анализ рынка труда тестировщиков в Спб"
 
Оценка рынка IT-персонала Москвы в 2016 году
Оценка рынка IT-персонала Москвы в 2016 годуОценка рынка IT-персонала Москвы в 2016 году
Оценка рынка IT-персонала Москвы в 2016 году
 
IT-HR Club №24. Alina Nazarova Reviewing compensation during Performance review
IT-HR Club №24. Alina Nazarova Reviewing compensation during Performance reviewIT-HR Club №24. Alina Nazarova Reviewing compensation during Performance review
IT-HR Club №24. Alina Nazarova Reviewing compensation during Performance review
 
Kalanov Denis, IT-Dominanta, SPMConf
Kalanov Denis, IT-Dominanta, SPMConfKalanov Denis, IT-Dominanta, SPMConf
Kalanov Denis, IT-Dominanta, SPMConf
 
Вся правда о PM-ах
Вся правда о PM-ахВся правда о PM-ах
Вся правда о PM-ах
 
Стартап-маркетинг 4-х стихий: software, coupons, retail, digital. Только прак...
Стартап-маркетинг 4-х стихий: software, coupons, retail, digital. Только прак...Стартап-маркетинг 4-х стихий: software, coupons, retail, digital. Только прак...
Стартап-маркетинг 4-х стихий: software, coupons, retail, digital. Только прак...
 
Карьерные и финансовые возможности
Карьерные и финансовые возможностиКарьерные и финансовые возможности
Карьерные и финансовые возможности
 
Метапрограммы или еще 1 способ собрать «дрим-тим»
Метапрограммы или еще 1 способ собрать «дрим-тим»Метапрограммы или еще 1 способ собрать «дрим-тим»
Метапрограммы или еще 1 способ собрать «дрим-тим»
 
Создание системы обратной связи
Создание системы обратной связиСоздание системы обратной связи
Создание системы обратной связи
 
Chistov (3)
Chistov (3)Chistov (3)
Chistov (3)
 
RST2014_Petrozavodsk_SmartCareer
RST2014_Petrozavodsk_SmartCareerRST2014_Petrozavodsk_SmartCareer
RST2014_Petrozavodsk_SmartCareer
 
Исследование моделей компетенций
Исследование моделей компетенцийИсследование моделей компетенций
Исследование моделей компетенций
 
[Технопарк] Управление продуктом-3
[Технопарк] Управление продуктом-3[Технопарк] Управление продуктом-3
[Технопарк] Управление продуктом-3
 
Mikhail Ovchinnikov "Automated Machine Learning: building a conveyor"
Mikhail Ovchinnikov "Automated Machine Learning: building a conveyor"Mikhail Ovchinnikov "Automated Machine Learning: building a conveyor"
Mikhail Ovchinnikov "Automated Machine Learning: building a conveyor"
 
Qroom.ru 2012
Qroom.ru 2012Qroom.ru 2012
Qroom.ru 2012
 
Dsml for business.full version
Dsml for business.full versionDsml for business.full version
Dsml for business.full version
 
Как обогнать конкурентов при помощи интернета?
Как обогнать конкурентов при помощи интернета?Как обогнать конкурентов при помощи интернета?
Как обогнать конкурентов при помощи интернета?
 

More from Computer Science Club

20140531 serebryany lecture01_fantastic_cpp_bugs
20140531 serebryany lecture01_fantastic_cpp_bugs20140531 serebryany lecture01_fantastic_cpp_bugs
20140531 serebryany lecture01_fantastic_cpp_bugsComputer Science Club
 
20140531 serebryany lecture02_find_scary_cpp_bugs
20140531 serebryany lecture02_find_scary_cpp_bugs20140531 serebryany lecture02_find_scary_cpp_bugs
20140531 serebryany lecture02_find_scary_cpp_bugsComputer Science Club
 
20140531 serebryany lecture01_fantastic_cpp_bugs
20140531 serebryany lecture01_fantastic_cpp_bugs20140531 serebryany lecture01_fantastic_cpp_bugs
20140531 serebryany lecture01_fantastic_cpp_bugsComputer Science Club
 
20140511 parallel programming_kalishenko_lecture12
20140511 parallel programming_kalishenko_lecture1220140511 parallel programming_kalishenko_lecture12
20140511 parallel programming_kalishenko_lecture12Computer Science Club
 
20140427 parallel programming_zlobin_lecture11
20140427 parallel programming_zlobin_lecture1120140427 parallel programming_zlobin_lecture11
20140427 parallel programming_zlobin_lecture11Computer Science Club
 
20140420 parallel programming_kalishenko_lecture10
20140420 parallel programming_kalishenko_lecture1020140420 parallel programming_kalishenko_lecture10
20140420 parallel programming_kalishenko_lecture10Computer Science Club
 
20140413 parallel programming_kalishenko_lecture09
20140413 parallel programming_kalishenko_lecture0920140413 parallel programming_kalishenko_lecture09
20140413 parallel programming_kalishenko_lecture09Computer Science Club
 
20140329 graph drawing_dainiak_lecture02
20140329 graph drawing_dainiak_lecture0220140329 graph drawing_dainiak_lecture02
20140329 graph drawing_dainiak_lecture02Computer Science Club
 
20140329 graph drawing_dainiak_lecture01
20140329 graph drawing_dainiak_lecture0120140329 graph drawing_dainiak_lecture01
20140329 graph drawing_dainiak_lecture01Computer Science Club
 
20140310 parallel programming_kalishenko_lecture03-04
20140310 parallel programming_kalishenko_lecture03-0420140310 parallel programming_kalishenko_lecture03-04
20140310 parallel programming_kalishenko_lecture03-04Computer Science Club
 
20140216 parallel programming_kalishenko_lecture01
20140216 parallel programming_kalishenko_lecture0120140216 parallel programming_kalishenko_lecture01
20140216 parallel programming_kalishenko_lecture01Computer Science Club
 

More from Computer Science Club (20)

20141223 kuznetsov distributed
20141223 kuznetsov distributed20141223 kuznetsov distributed
20141223 kuznetsov distributed
 
Computer Vision
Computer VisionComputer Vision
Computer Vision
 
20140531 serebryany lecture01_fantastic_cpp_bugs
20140531 serebryany lecture01_fantastic_cpp_bugs20140531 serebryany lecture01_fantastic_cpp_bugs
20140531 serebryany lecture01_fantastic_cpp_bugs
 
20140531 serebryany lecture02_find_scary_cpp_bugs
20140531 serebryany lecture02_find_scary_cpp_bugs20140531 serebryany lecture02_find_scary_cpp_bugs
20140531 serebryany lecture02_find_scary_cpp_bugs
 
20140531 serebryany lecture01_fantastic_cpp_bugs
20140531 serebryany lecture01_fantastic_cpp_bugs20140531 serebryany lecture01_fantastic_cpp_bugs
20140531 serebryany lecture01_fantastic_cpp_bugs
 
20140511 parallel programming_kalishenko_lecture12
20140511 parallel programming_kalishenko_lecture1220140511 parallel programming_kalishenko_lecture12
20140511 parallel programming_kalishenko_lecture12
 
20140427 parallel programming_zlobin_lecture11
20140427 parallel programming_zlobin_lecture1120140427 parallel programming_zlobin_lecture11
20140427 parallel programming_zlobin_lecture11
 
20140420 parallel programming_kalishenko_lecture10
20140420 parallel programming_kalishenko_lecture1020140420 parallel programming_kalishenko_lecture10
20140420 parallel programming_kalishenko_lecture10
 
20140413 parallel programming_kalishenko_lecture09
20140413 parallel programming_kalishenko_lecture0920140413 parallel programming_kalishenko_lecture09
20140413 parallel programming_kalishenko_lecture09
 
20140329 graph drawing_dainiak_lecture02
20140329 graph drawing_dainiak_lecture0220140329 graph drawing_dainiak_lecture02
20140329 graph drawing_dainiak_lecture02
 
20140329 graph drawing_dainiak_lecture01
20140329 graph drawing_dainiak_lecture0120140329 graph drawing_dainiak_lecture01
20140329 graph drawing_dainiak_lecture01
 
20140310 parallel programming_kalishenko_lecture03-04
20140310 parallel programming_kalishenko_lecture03-0420140310 parallel programming_kalishenko_lecture03-04
20140310 parallel programming_kalishenko_lecture03-04
 
20140223-SuffixTrees-lecture01-03
20140223-SuffixTrees-lecture01-0320140223-SuffixTrees-lecture01-03
20140223-SuffixTrees-lecture01-03
 
20140216 parallel programming_kalishenko_lecture01
20140216 parallel programming_kalishenko_lecture0120140216 parallel programming_kalishenko_lecture01
20140216 parallel programming_kalishenko_lecture01
 
20131106 h10 lecture6_matiyasevich
20131106 h10 lecture6_matiyasevich20131106 h10 lecture6_matiyasevich
20131106 h10 lecture6_matiyasevich
 
20131027 h10 lecture5_matiyasevich
20131027 h10 lecture5_matiyasevich20131027 h10 lecture5_matiyasevich
20131027 h10 lecture5_matiyasevich
 
20131027 h10 lecture5_matiyasevich
20131027 h10 lecture5_matiyasevich20131027 h10 lecture5_matiyasevich
20131027 h10 lecture5_matiyasevich
 
20131013 h10 lecture4_matiyasevich
20131013 h10 lecture4_matiyasevich20131013 h10 lecture4_matiyasevich
20131013 h10 lecture4_matiyasevich
 
20131006 h10 lecture3_matiyasevich
20131006 h10 lecture3_matiyasevich20131006 h10 lecture3_matiyasevich
20131006 h10 lecture3_matiyasevich
 
20131006 h10 lecture3_matiyasevich
20131006 h10 lecture3_matiyasevich20131006 h10 lecture3_matiyasevich
20131006 h10 lecture3_matiyasevich
 

20111030 csseminar machine_learning_kuralenok

  • 1. Практическое применение методов машинного обучения Игорь Куралёнок Яндекс solar@yandex-team.ru
  • 2. ППММО: План  Машинное обучение в Яндексе  Обучение ранжированию  Классические проблемы ML в ранжировании  Что дальше?
  • 3. ППММО: План  Машинное обучение в Яндексе  Обучение ранжированию  Классические проблемы ML в ранжировании  Что дальше?
  • 4. ППММО: Машинное обучение в Яндексе MatrixNet
  • 5. ППММО: Машинное обучение в Яндексе  Ранжирование (MatrixNet)  Классификация запросов – Локализованность, новостность, товарность... – Категории, intensions...  Выделение информации – организации; – магазины, товары.  ...
  • 6. ППММО: Машинное обучение в ранжироании Яндекс
  • 7. ППММО: План  Машинное обучение в Яндексе  Обучение ранжированию  Классические проблемы ML в ранжировании  Что дальше?
  • 8. ППММО: Что такое “хороший” поиск?  Находит “релевантные” документы?  Позволяет быстро искать?  Не находит всякий бред, так что боишься искать с ребенком за спиной?  Поиск которым хочется пользоваться?  Поиск с которого переходят на мой сайт?  Приносит деньги?
  • 9. ППММО: Кренфилдская методология Q D1 V 0.5 0.5/1 D2 R- 0.1 0.1/2 D3 E R- G 0.1 D 0.1/3 C 0.72 D4 R+ 0.2 0.2/4 D5 R- 0.1 0.1/5 D6 U 0.4 0.4/6
  • 11. ППММО: Как устроить ранжирование? К сожалению наша целевая функция кусочно постоянна: g(A) = 0, g(B) = 1; x(A) = 1, x(B) = 0; y(A) = 0, y(A) = 1. 1
  • 12. ППММО: Пути решения  Перебор  Сделать целевую функцию гладкой  Найти другую целевую функцию
  • 13. ППММО: Перебор Зафиксируем модель ранжирующей функции Организуем случайный шаг Hill climbing от нескольких случайных начальных точек
  • 14. ППММО: Перебор (более наукообразно) Markov Chain Monte-Carlo Генетика, в частности Differential Evolution
  • 15. ППММО: Как сделать dcg гладким? Plackett-Luce И еще много listwise методов, например: Learning to Rank by Optimizing NDCG measure H.Valizadegan, R. Jin, R. Zhang, J.Mao
  • 16. ППММО: Другая целевая функция А что если MSE (pointwise)? ● Работает! ● Отлично отделяет “простые” запросы от “сложных” ● На частотниках ведет себя непредсказуемо
  • 17. ППММО: Другая целевая функция Правдоподобие на парах(pairwise) ● Работает! ● Наиболее востребованный на сегодня метод ● Есть много вариантов реализации
  • 18. ППММО: План  Машинное обучение в Яндексе  Обучение ранжированию  Классические проблемы ML в ранжировании  Что дальше?
  • 19. ППММО: Немного чисел Оценка снизу Запросы 100 млн/день Документы 10 млрд Оценки 1 млн Размерность 500 Экспертов 100 Максимальное время ~100ms отклика Разница между < 5% лучшей и худшей системами
  • 20. ППММО: Известные проблемы  Переобучение: – запросы; – документы; – эксперты.  Положительная обратная связь: – документы; – факторы.  Шумные данные: – эксперты;
  • 21. ППММО: Переобучение (запросы) 2008г. 100% 90% 80% 70% СМИ Учеба 60% Авто Культура Доля в потоке Развлечения 50% Hi-Tech Дом 40% Бизнес Справки Спорт 30% Общество Работа 20% Отдых 10% 0% 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 weeks
  • 22. ППММО: Переобучение (запросы) Равномерная “длинная” выборка из общего лога запросов pros: cons:  не зависит от времени ● не обеспечивает свежесть  много времени на оценку ● шумит от времени  стабильна ● скачки при смене набора ● оценки устаревают ● запросы становятся неактуальными
  • 23. ППММО: Переобучение (документы)  Невозможно сделать равномерную выборку => учимся только на топе  База все время меняется => часто перестраивать формулу => нам повезло и Inducted метрики работают
  • 24. ППММО: Обучение на топе опасно для вашего здоровья!  Вне топа могут встретиться совсем другие документы с аномальными для данного запроса значениями факторов  Распределения факторов существенно смещены (в топ [ФК Зенит] просто НЕТУ документов в которых не встречается запрос полностью)
  • 25. ППММО: Переобучение (документы)  Сделать классификатор до ранжирования => ничего не знает про запросы  Сделать еще одно ранжирование которое ставит топовые документы выше нетоповых => смещение по факторам никуда не денется  Активное обучение, учет неоцененных документов
  • 26. ППММО: Переобучение (эксперты)  миллионы пользователей != группе экспертов  эксперты не задают запросов => делаем поиск не для пользователей, а в терминах инструкции (~100стр.) => попарные оценки (?) => обучение на пользовательском поведении
  • 27. ППММО: Положительная обратная связь (факторы)  Поведенческие факторы => ограничить их влияние частотниками  Search Engine Optimization => фильтровать, поменять формулу  Чем лучше мы ищем, тем больше вес факторов по которым находим => надеемся на конкурентов, эксперты добавляют хорошие примеры не из выдачи
  • 28. ППММО: Положительная обратная связь (SEO) Оптимизация имеет много больше эффектов чем кажется (перелинковались → большинство перелинковалось → линки упали → большинство проиграло). Сложно равномерно оптимизировать все факторы
  • 29. ППММО: Шумные данные (эксперты) Что будет, если перепроверить оценку? оценки IR R- R+ U V IR 0.75 0.22 0.02 0 0 R- 0.34 0.54 0.11 0.01 0 R+ 0.07 0.13 0.73 0.06 0.01 U 0.04 0.04 0.52 0.32 0.08 V 0.03 0.02 0.05 0.08 0.83 => проверять точность => учесть в построении модели
  • 30. ППММО: Шумные данные (эксперты) Учитываем в модели (YetiRank)
  • 31. ППММО: План  Машинное обучение в Яндексе  Обучение ранжированию  Классические проблемы ML в ранжировании  Что дальше?
  • 32. ППММО: Что дальше? Деревья рулят миром: => Ждем новых методов
  • 33. ППММО: Новые методы Где взять данные и с чего начать? От себя рекомендую Яндекс ИМ и Yahoo Track 2
  • 34. ППММО: Что дальше?  Настройка по сессиям пользователей => Workshop on Web Search Click Data  Учет неоцененных документов в настройке => Берем Track 2 данных Yahoo и случайно выкидываем оценки
  • 35. ППММО: Выводы  Все просто  Все сложно  Без анализа данных – никуда  Все еще только начинается