Персонализированный...
TRANSCRIPT
Персонализированныймир
ВикторКантор
Работа:Руководительслужбымашинногообучения ианализаданныхЯндекс.Такси,ранееруководилподразделениямивYandex DataFactoryиABBYY
Преподавание:Coursera,МФТИ,ШАД, Яндекс, Яндекс.Такси,ABBYY,Мегафон,МТС, Сбертех идр.
Докладчик
Планрассказа
• Рекомендательныесистемы:ранееисейчас• Оценкаэффекта• Другие применениярекомендаций
Рекомендательныесистемы:ранееисейчас
Чтохотимнаучитьсяделать
• Естьбазапользователейибазаобъектов(фильмов,музыки,товароввинтернет-магазине)• Естьобратнаясвязьотпользователей:оценки,просмотры,покупки• Нужнонаучитьсярекомендоватьпользователюто,чтоемупонравится
Рекомендациифильмов:возможнаяпостановказадачи• Естьизвестныеоценки,которыепользователипоставилиужепросмотреннымфильмам• Нужно:• Спрогнозироватьоценки,которыепоставилибыпользователидругимфильмам• Порекомендоватьпользователямто,чтоимбольшепонравится
РекомендациифильмовПила Улица Вязов Ванильное
небо1+1
Маша 5 4 1 2
Юля 5 2
Вова 3 5
Коля 3 4 5
Петя 4
Ваня 5 3 3
РекомендациифильмовПила Улица Вязов Ванильное
небо1+1
Маша 5 4 1 2
Юля 5 2 ?
Вова 3 5
Коля 3 4 5
Петя 4
Ваня 5 3 3
User-based kNNПила Улица Вязов Ванильное
небо1+1
Маша 5 4 1 2
Юля 5 2
Вова 3 5
Коля 3 4 5
Петя 4
Ваня 5 3 3
User-basedkNNПила Улица Вязов Ванильное
небо1+1
Маша 5 4 1 2
Юля 5 2 ?
Вова 3 5
Коля 3 4 5
Петя 4
Ваня 5 3 3
Item-basedkNNПила Улица Вязов Ванильное
небо1+1
Маша 5 4 1 2
Юля 5 2 ?
Вова 3 5
Коля 3 4 5
Петя 4
Ваня 5 3 3
Item-basedkNNПила Улица Вязов Ванильное
небо1+1
Маша 5 4 1 2
Юля 5 2 ?
Вова 3 5
Коля 3 4 5
Петя 4
Ваня 5 3 3
Матричныеразложения
Пила Улица Вязов Ванильноенебо
1+1
Маша 5 4 1 2
Юля 5 5 2
Вова 3 5
Коля 3 ? 4 5
Петя 4
Ваня 5 3 3
𝑖
𝑗
𝑥$% ≈ 𝑢$, 𝑣% = ,𝑢$-𝑣%-
.
-/0
𝑢$ - «интересыпользователей»𝑣% - «параметрыфильмов»
Какизмеритькачество?
Качествомодели=качествопрогнозаоценок?• Среднеквадратичноеотклонение(RMSE)• Среднееабсолютноеотклонение(MAE)
Правильнолимыживем?
• Чтомыоцениваем:качествопрогнозаоценок• Чтонужнооценивать:качестворекомендаций
Другойпример:рекомендациитоваров
Вечернееплатье
Кеды Джинсы Футболка
Маша 1 1
Юля 1 1 1
Вова 1 1
Коля 1 ? 1
Петя 1 1
Ваня 1 1
𝑖
𝑗
Отличияотпрошлойзадачи
• Нетнегативныхпримеров• Понятнейсвязьсприбылью
Чтоможемделать
• Прогнозировать,какиетоварыбудуткуплены• Максимизироватьприбыль
Товар1 Товар2 Товар3 Товар4
Максимизациядохода
Товар1 Товар2 Товар3 Товар4
Максимизациядохода
Вероятность: 𝒑𝟏 𝒑𝟐 𝒑𝟑 𝒑𝟒Цена: 𝑐1 𝑐2 𝑐3 𝑐4
Максимизациядохода
Вероятность: 0.05 0.02 0.015 0.009
Цена: 3490 1990 1590 1970
Максимизацияприбыли
Вероятность: 0.05 0.02 0.015 0.009
Цена: 3490 1990 1590 1970
Маржинальность: 0.1 0.4 0.4 0.2
Прогнозированиевероятности
• Объекты:тройки(пользователь,товар,моментвремени)• Классы:1- товарбудеткуплен,0– товарнебудеткуплен• Признаки:параметрыпользователя,товара,моментавременииих«взаимодействие»
Отборкандидатов
• Популярные• Из техжекатегорий• Частопокупаемыесужепросмотренными/понравившимися• Иззаранееподготовленныхсписковпохожихтоваров
Генерациянегативныхпримеров
• Добавитьккаждомупозитивномупримерувеськаталогкакнегативный(нереально)• Случайныесравномернымраспределением• Случайные,свероятностями,пропорциональнымипопулярностиобъекта• Самыепопулярныепримеры• Теобъекты,которыерекомендовалбыкакой-тоалгоритм,ноонинебыликуплены
Оценкаэффекта
Онлайноваяоценкакачества
Допустим,наисторическихданныхкачествоалгоритмавысокое,абудетлионовысокимвреальности?
Онлайноваяоценкакачества
Допустим,наисторическихданныхкачествоалгоритмавысокое,абудетлионовысокимвреальности?
Идеи:1. А/Втест2. Оценкастатзначимости результата
A/Bтест
1. Случайнымобразомделимклиентовнаравныегруппы2. Измеряемцелевыеметрики(например,доходскаждойгруппы
клиентов)вкаждойгруппезадлительныйпериодвремени3. Получаемкакое-точислодлякаждойгруппы4. Чтодальше?
Cтатистическая значимость:пример
Однакриваяотличаетсяотдругихна10%Норазбиениенасамомделе– случайное
Cтатистическая значимость:пример
Другиеприменениярекомендательныхсистем
ПрогнозированиеточкиБвТакси
Чтоделаем
Какаяпостановказадачимашинногообучениядолжнабыть?1. УгадатьточкуB
Чтоделаем
Какаяпостановказадачимашинногообучениядолжнабыть?1. УгадатьточкуB2. Задачарегрессии:объекты– пользователи,целевоезначение–
координатыточкиВ
Чтоделаем
Какаяпостановказадачимашинногообучениядолжнабыть?1. УгадатьточкуB2. Задачарегрессии:объекты– пользователи,целевоезначение–
координатыточкиВ3. Задачаклассификации:объекты- пары(пользователи,момент
времени),классы– адресамест,кудаможетпоехать
Чтоделаем
Какаяпостановказадачимашинногообучениядолжнабыть?1. УгадатьточкуB2. Задачарегрессии:объекты– пользователи,целевоезначение–
координатыточкиВ3. Задачаклассификации:объекты- пары(пользователи,момент
времени),классы– адресамест,кудаможетпоехать4. Задачаклассификации:объекты- тройки(пользователь,место,
моментвремени,классы– 1и0(поехалилинет),1приточномпопаданиивадресиливокрестность20метров
Результаты
• Былодонас:(эвристическийалгоритм)recall@1=63,7%;recall@2=78,5%;
• Стало:recall@1=72,1%;recall@2=82,6%;
Ещепримеры
• Рекомендацииметодовудержанияклиента• Персонализацияконтентасайта• Персонализацияпривлеченияклиентов• …