Лекция-введение в рекомендательные системы в рамках курса по машинному обучению для студентов четвертого курса на кафедре КТ ИТМО. Часть 2 — explanations, RBM, evaluation metrics, BPR
ИТМО Machine Learning. Рекомендательные системы — часть 1Andrey Danilchenko
Лекция-введение в рекомендательные системы в рамках курса по машинному обучению для студентов четвертого курса на кафедре КТ ИТМО. Часть 1 — kNN, SVD, iALS.
Рассказ про рекомендательные системы в целом, о том, какие они бываю и какие данные используют. Краткий разбор kNN-модели и SVD, рассказ о том, как применять SGD и ALS для обучения SVD. Обучение implicit SVD через iALS. Методы построения объяснений к рекомендациям. Обзор основных метрик качества Модель Personalized Bayesian Ranking в качестве примера learning to rank framework.
Лекция №6 "Линейные модели для классификации и регрессии" Technosphere1
Техносфера Mail.ru Group, МГУ им. М.В. Ломоносова. Курс "Алгоритмы интеллектуальной обработки больших объемов данных", Лекция №6 "Линейные модели для классификации и регрессии"
Лектор - Николай Анохин
Обобщенные линейные модели. Постановка задачи оптимизации. Примеры критериев. Градиентный спуск. Регуляризация. Метод Maximum Likelihood. Логистическая регрессия.
Видео лекции курса https://www.youtube.com/playlist?list=PLrCZzMib1e9pyyrqknouMZbIPf4l3CwUP
ИТМО Machine Learning. Рекомендательные системы — часть 1Andrey Danilchenko
Лекция-введение в рекомендательные системы в рамках курса по машинному обучению для студентов четвертого курса на кафедре КТ ИТМО. Часть 1 — kNN, SVD, iALS.
Рассказ про рекомендательные системы в целом, о том, какие они бываю и какие данные используют. Краткий разбор kNN-модели и SVD, рассказ о том, как применять SGD и ALS для обучения SVD. Обучение implicit SVD через iALS. Методы построения объяснений к рекомендациям. Обзор основных метрик качества Модель Personalized Bayesian Ranking в качестве примера learning to rank framework.
Лекция №6 "Линейные модели для классификации и регрессии" Technosphere1
Техносфера Mail.ru Group, МГУ им. М.В. Ломоносова. Курс "Алгоритмы интеллектуальной обработки больших объемов данных", Лекция №6 "Линейные модели для классификации и регрессии"
Лектор - Николай Анохин
Обобщенные линейные модели. Постановка задачи оптимизации. Примеры критериев. Градиентный спуск. Регуляризация. Метод Maximum Likelihood. Логистическая регрессия.
Видео лекции курса https://www.youtube.com/playlist?list=PLrCZzMib1e9pyyrqknouMZbIPf4l3CwUP
Техносфера Mail.ru Group, МГУ им. М.В. Ломоносова. Курс "Алгоритмы интеллектуальной обработки больших объемов данных", Лекция №7 "Машина опорных векторов"
Лектор - Николай Анохин
Разделяющая поверхность с максимальным зазором. Формулировка задачи оптимизации для случаев линейно-разделимых и линейно-неразделимых классов. Сопряженная задача. Опорные векторы. KKT-условия. SVM для задач классификации и регрессии. Kernel trick. Теорема Мерсера. Примеры функций ядра.
Видео лекции курса https://www.youtube.com/playlist?list=PLrCZzMib1e9pyyrqknouMZbIPf4l3CwUP
Техносфера Mail.ru Group, МГУ им. М.В. Ломоносова. Курс "Алгоритмы интеллектуальной обработки больших объемов данных", Лекция №9 "Алгоритмические композиции. Начало"
Лектор - Владимир Гулин
Комбинации классификаторов. Модельные деревья решений. Смесь экспертов. Stacking. Стохастические методы построения ансамблей классификаторов. Bagging. RSM. Алгоритм RandomForest.
Видео лекции курса https://www.youtube.com/playlist?list=PLrCZzMib1e9pyyrqknouMZbIPf4l3CwUP
Техносфера Mail.ru Group, МГУ им. М.В. Ломоносова. Курс "Алгоритмы интеллектуальной обработки больших объемов данных", Лекция №10 "Алгоритмические композиции. Завершение"
Лектор - Владимир Гулин
Ключевые идеи бустинга. Отличия бустинга и бэггинга. Алгорим AdaBoost. Градиентный бустинг. Мета-алгоритмы над алгоритмическими композициями. Алгоритм BagBoo.
Видео лекции курса https://www.youtube.com/playlist?list=PLrCZzMib1e9pyyrqknouMZbIPf4l3CwUP
Лекция №2 "Задача кластеризации и ЕМ-алгоритм"Technosphere1
Техносфера Mail.ru Group, МГУ им. М.В. Ломоносова. Курс "Алгоритмы интеллектуальной обработки больших объемов данных", Лекция №2 "Задача кластеризации и ЕМ-алгоритм"
Лектор - Николай Анохин
Постановка задачи кластеризации. Функции расстояния. Критерии качества кластеризации. EM-алгоритм. K-means и модификации.
Видео лекции курса https://www.youtube.com/playlist?list=PLrCZzMib1e9pyyrqknouMZbIPf4l3CwUP
Техносфера Mail.ru Group, МГУ им. М.В. Ломоносова. Курс "Алгоритмы интеллектуальной обработки больших объемов данных", Лекция №5 "Обработка текстов, Naive Bayes"
Лектор - Николай Анохин
Условная вероятность и теорема Байеса. Нормальное распределение. Naive Bayes: multinomial, binomial, gaussian. Сглаживание. Генеративная модель NB и байесовский вывод. Графические модели.
Видео лекции курса https://www.youtube.com/playlist?list=PLrCZzMib1e9pyyrqknouMZbIPf4l3CwUP
Техносфера Mail.ru Group, МГУ им. М.В. Ломоносова. Курс "Алгоритмы интеллектуальной обработки больших объемов данных", Лекция №4 "Задача классификации"
Лектор - Николай Анохин
Постановка задач классификации и регрессии. Теория принятия решений. Виды моделей. Примеры функций потерь. Переобучение. Метрики качества классификации. MDL. Решающие деревья. Алгоритм CART.
Видео лекции курса https://www.youtube.com/playlist?list=PLrCZzMib1e9pyyrqknouMZbIPf4l3CwUP
Техносфера Mail.ru Group, МГУ им. М.В. Ломоносова. Курс "Алгоритмы интеллектуальной обработки больших объемов данных", Лекция №8 "Методы снижения размерности пространства"
Лектор - Владимир Гулин
Проблема проклятия размерности. Отбор и выделение признаков. Методы выделения признаков (feature extraction). Метод главных компонент (PCA). Метод независимых компонент (ICA). Методы основанные на автоэнкодерах. Методы отбора признаков (feature selection). Методы основанные на взаимной корреляции признаков. Метод максимальной релевантность и минимальной избыточности (mRMR). Методы основанные на деревьях решений.
Видео лекции курса https://www.youtube.com/playlist?list=PLrCZzMib1e9pyyrqknouMZbIPf4l3CwUP
Лекция №12 "Ограниченная машина Больцмана" Technosphere1
Техносфера Mail.ru Group, МГУ им. М.В. Ломоносова. Курс "Алгоритмы интеллектуальной обработки больших объемов данных", Лекция №12 "Ограниченная машина Больцмана"
Лектор - Павел Нестеров
Нейросетейвой автоэнкодер. Стохастические и рекурентные нейронные сети. Машина Больцмана и ограниченная машина Больцмана. Распределение Гиббса. Алгоритм contrastive divergence для обучения РБМ. Сэмплирование данных из РБМ. Бинарная РБМ и гауссово-бинарная РБМ. Влияние регуляризации, нелинейное сжатие размерности, извлечение признаков. Semantic hashing.
Видео лекции курса https://www.youtube.com/playlist?list=PLrCZzMib1e9pyyrqknouMZbIPf4l3CwUP
Онлайн-революция: от ранних репозиториев – к современным МООС-курсамCEE-SEC(R)
This document summarizes the evolution of online education from early content repositories to modern massive open online courses (MOOCs). It describes three stages of development: 1) early content repositories with downloadable materials, 2) addition of video lectures and social integration, and 3) current MOOCs with massive enrollments, open access, and online delivery. The largest MOOC providers, Coursera and edX, are discussed. Trends include using analytics from learner data and blended learning. Feedback indicates MOOCs attract diverse learners and help master concepts. Future work involves specialization courses and project-based learning on Coursera and edX.
This document discusses a sublinear algorithm for analyzing images based on property testing techniques. The algorithm can quickly determine if a binary image is divisible into two almost homochromous halfplanes or is far from having this property. It works by randomly selecting a small percentage of pixels from the image and analyzing the distribution of black and white pixels under different possible dividing lines. If any division results in both halves being sufficiently homochromous, it returns positive, otherwise negative. The runtime is proportional to the number of sampled pixels and does not depend on the full image size, making it sublinear. Analysis shows the algorithm has low error probabilities if enough pixels are sampled to represent each potential halfplane division.
Техносфера Mail.ru Group, МГУ им. М.В. Ломоносова. Курс "Алгоритмы интеллектуальной обработки больших объемов данных", Лекция №7 "Машина опорных векторов"
Лектор - Николай Анохин
Разделяющая поверхность с максимальным зазором. Формулировка задачи оптимизации для случаев линейно-разделимых и линейно-неразделимых классов. Сопряженная задача. Опорные векторы. KKT-условия. SVM для задач классификации и регрессии. Kernel trick. Теорема Мерсера. Примеры функций ядра.
Видео лекции курса https://www.youtube.com/playlist?list=PLrCZzMib1e9pyyrqknouMZbIPf4l3CwUP
Техносфера Mail.ru Group, МГУ им. М.В. Ломоносова. Курс "Алгоритмы интеллектуальной обработки больших объемов данных", Лекция №9 "Алгоритмические композиции. Начало"
Лектор - Владимир Гулин
Комбинации классификаторов. Модельные деревья решений. Смесь экспертов. Stacking. Стохастические методы построения ансамблей классификаторов. Bagging. RSM. Алгоритм RandomForest.
Видео лекции курса https://www.youtube.com/playlist?list=PLrCZzMib1e9pyyrqknouMZbIPf4l3CwUP
Техносфера Mail.ru Group, МГУ им. М.В. Ломоносова. Курс "Алгоритмы интеллектуальной обработки больших объемов данных", Лекция №10 "Алгоритмические композиции. Завершение"
Лектор - Владимир Гулин
Ключевые идеи бустинга. Отличия бустинга и бэггинга. Алгорим AdaBoost. Градиентный бустинг. Мета-алгоритмы над алгоритмическими композициями. Алгоритм BagBoo.
Видео лекции курса https://www.youtube.com/playlist?list=PLrCZzMib1e9pyyrqknouMZbIPf4l3CwUP
Лекция №2 "Задача кластеризации и ЕМ-алгоритм"Technosphere1
Техносфера Mail.ru Group, МГУ им. М.В. Ломоносова. Курс "Алгоритмы интеллектуальной обработки больших объемов данных", Лекция №2 "Задача кластеризации и ЕМ-алгоритм"
Лектор - Николай Анохин
Постановка задачи кластеризации. Функции расстояния. Критерии качества кластеризации. EM-алгоритм. K-means и модификации.
Видео лекции курса https://www.youtube.com/playlist?list=PLrCZzMib1e9pyyrqknouMZbIPf4l3CwUP
Техносфера Mail.ru Group, МГУ им. М.В. Ломоносова. Курс "Алгоритмы интеллектуальной обработки больших объемов данных", Лекция №5 "Обработка текстов, Naive Bayes"
Лектор - Николай Анохин
Условная вероятность и теорема Байеса. Нормальное распределение. Naive Bayes: multinomial, binomial, gaussian. Сглаживание. Генеративная модель NB и байесовский вывод. Графические модели.
Видео лекции курса https://www.youtube.com/playlist?list=PLrCZzMib1e9pyyrqknouMZbIPf4l3CwUP
Техносфера Mail.ru Group, МГУ им. М.В. Ломоносова. Курс "Алгоритмы интеллектуальной обработки больших объемов данных", Лекция №4 "Задача классификации"
Лектор - Николай Анохин
Постановка задач классификации и регрессии. Теория принятия решений. Виды моделей. Примеры функций потерь. Переобучение. Метрики качества классификации. MDL. Решающие деревья. Алгоритм CART.
Видео лекции курса https://www.youtube.com/playlist?list=PLrCZzMib1e9pyyrqknouMZbIPf4l3CwUP
Техносфера Mail.ru Group, МГУ им. М.В. Ломоносова. Курс "Алгоритмы интеллектуальной обработки больших объемов данных", Лекция №8 "Методы снижения размерности пространства"
Лектор - Владимир Гулин
Проблема проклятия размерности. Отбор и выделение признаков. Методы выделения признаков (feature extraction). Метод главных компонент (PCA). Метод независимых компонент (ICA). Методы основанные на автоэнкодерах. Методы отбора признаков (feature selection). Методы основанные на взаимной корреляции признаков. Метод максимальной релевантность и минимальной избыточности (mRMR). Методы основанные на деревьях решений.
Видео лекции курса https://www.youtube.com/playlist?list=PLrCZzMib1e9pyyrqknouMZbIPf4l3CwUP
Лекция №12 "Ограниченная машина Больцмана" Technosphere1
Техносфера Mail.ru Group, МГУ им. М.В. Ломоносова. Курс "Алгоритмы интеллектуальной обработки больших объемов данных", Лекция №12 "Ограниченная машина Больцмана"
Лектор - Павел Нестеров
Нейросетейвой автоэнкодер. Стохастические и рекурентные нейронные сети. Машина Больцмана и ограниченная машина Больцмана. Распределение Гиббса. Алгоритм contrastive divergence для обучения РБМ. Сэмплирование данных из РБМ. Бинарная РБМ и гауссово-бинарная РБМ. Влияние регуляризации, нелинейное сжатие размерности, извлечение признаков. Semantic hashing.
Видео лекции курса https://www.youtube.com/playlist?list=PLrCZzMib1e9pyyrqknouMZbIPf4l3CwUP
Онлайн-революция: от ранних репозиториев – к современным МООС-курсамCEE-SEC(R)
This document summarizes the evolution of online education from early content repositories to modern massive open online courses (MOOCs). It describes three stages of development: 1) early content repositories with downloadable materials, 2) addition of video lectures and social integration, and 3) current MOOCs with massive enrollments, open access, and online delivery. The largest MOOC providers, Coursera and edX, are discussed. Trends include using analytics from learner data and blended learning. Feedback indicates MOOCs attract diverse learners and help master concepts. Future work involves specialization courses and project-based learning on Coursera and edX.
This document discusses a sublinear algorithm for analyzing images based on property testing techniques. The algorithm can quickly determine if a binary image is divisible into two almost homochromous halfplanes or is far from having this property. It works by randomly selecting a small percentage of pixels from the image and analyzing the distribution of black and white pixels under different possible dividing lines. If any division results in both halves being sufficiently homochromous, it returns positive, otherwise negative. The runtime is proportional to the number of sampled pixels and does not depend on the full image size, making it sublinear. Analysis shows the algorithm has low error probabilities if enough pixels are sampled to represent each potential halfplane division.
This document provides information on three industrial panel PC models: Xtrem-nP1560TP2E-DC, Xtrem-nP1560TP2E-AC, and Xtrem-nP1560TE. The models are heavy-duty panel PCs equipped with 2nd/3rd generation Intel Core processors, expansion slots, and communication ports. They have an aluminum front bezel, IP65 rating, and are designed for harsh industrial environments. The document includes detailed specifications, dimensions, and ordering information for each model.
Для эффективной борьбы с большими данными одних технологий недостаточно. Необходим правильный настрой по отношению к ним, позволяющий видеть перспективы и особенности их использования. В данном рассказе предлагается точка зрения на совокупность проблем больших данных и их возможные пути разрешения. Рассказ построен на конкретных примерах из личной практики.
Целевая аудитория доклада, ее примерный уровень: аналитики, менеджеры ИТ, CTO.
Кадомский Сергей - Как продать аналитику бизнесу - WargamingWG_ Events
Рассказ о том, как в Wargaming строилась и используется аналитика. Будет показан ряд примеров, среди которых будет рассказ о применении data mining для анализа поведения игровой аудитории и других бизнес-задач.
Thorny Path to the Large Scale Graph Processing, Алексей Зиновьев (Тамтэк)Ontico
The document discusses large-scale graph processing and summarizes several graph processing tools and techniques. It describes Google's Pregel framework, which introduced the bulk synchronous parallel computation model. It also discusses Apache Giraph, an open-source implementation of Pregel, and how it uses Hadoop and ZooKeeper. Finally, it summarizes more recent tools like Spark and GraphX that can perform graph analytics in-memory at faster speeds.
«QuickCheck в Python: проверка гипотез и поиск ошибок», Александр Шорин, Ramb...Mail.ru Group
Существуют три наисложнейшие проблемы в программировании: именование, кэширование и выход за границу массива. Проверка пограничных случаев поведения кода наиболее важна, но эта зона также наименее тестируема. Придумать и предугадать все возможные ситуации человеку тяжело, и порой мы что-то упускаем из виду. Вот было бы здорово, если бы тесты сами находили такие случаи, при которых код падает… Мечты? О том, как превратить их в реальность, и рассказал Александр.
Факторизационные модели в рекомендательных системахromovpa
Факторизационные модели, модели разложения матриц для коллаборативной фильтрации в рекомендательных системах. В презентации рассматриваются теоретические аспекты и алгоритмы.
С доклада на спецсеминаре "Machine Learning & Information Retrieval" в Школе Анализа Данных Яндекса.
В задачах интерполяции функций по заданным значениям функции для заданного набора аргументов широко применяется формула аппроксимации функции полиномом, совпадающего в заданных точках со значениями исследуемой функции. Обобщим эту формулу на случай функции нескольких переменных.
ПРОВЕРОЧНЫЕ РАБОТЫ по АЛГЕБРЕ
ДИДАКТИЧЕСКИЕ
МАТЕРИАЛЫ
http://matematika.advandcash.biz/proverochnie-raboti-po-algebre/
ПО АЛГЕБРЕ
И
НАЧАЛАМ АНАЛИЗА для 10 класса
стр. 138-150
5. Item-based model explanation
Модель: ˆ rui = wijrui
Σ
k
j∈Nu
Вклад в рейтинг: wijrui
Выберем j с максимальными вкладами —
это и есть объяснение!
j
6. ALS explanation
Модель: ˆ rui = yi
T (λ I +Y TY )−1
T xu = yi
Y Tr (u)
Σ u
ruj
ˆ rui = sij
(u,i)∈R
1
Wu = ( Y TY +λ I )−su = yTWuyij
i
j
Тогда перепишем модель как
urj uj
Вклад в рейтинг: sij
Выберем j с максимальными вкладами —
это и есть объяснение!
7. ALS explanation
Модель: ˆ rui = yi
T (λ I +Y TY )−1
T xu = yi
Y Tr (u)
Σ
ˆ rui = Vuqi ( )T Vuqj ( )ruj
(u,i)∈R
1
Wu = ( Y TY +λ I )−su = yTWuyij
i
j
Перепишем модель как
Wu =Vu
TVu
Vu Тогда можно рассматривать как шаблон
пользовательского мнения про item-ы
8. iALS explanation
Модель: ˆpui = yi
T (λ I +Y TCuY )−1
T xu = yi
Y TCu p(u)
Σ u
cpuj uj
ˆpui = sij
pui>0
Wu = ( Y TCuY +λ I )−1
su = yTWuyij
i
j
Тогда перепишем модель как
j ucp= sucuj uj ij
uj
Вклад в рейтинг: sij
Выберем j с максимальными вкладами —
это и есть объяснение!
10. Restricted Boltzmann Machine (for user)
F — # of features
Missing
Missing
Missing
Missing
h
W
V
Binary hidden units
Visible movie ratings
… …
# of movies
Weights
(shared between all users)
11. Model distributions
For n users, m movies, ratings from 1 to K, binary features from 1 to F:
k =1|
p vi
!
( h) =
FΣ
k + hjWij
exp bi
k
j=1
"
# $$
%
& ''
FΣ
l + hjWij
exp bi
l
j=1
"
# $$
%
& ''
KΣ
l=1
p hj =1|
!
KΣ
mΣ
( V) =σ bj + vi
kWij
k
k=1
i=1
"
# $
%
& '
, где
1
σ (x) =
1+ e−x p
!
(V) =
exp −E
!
V,
!
( ( h))
!
exp −E
V ',
!
! ( ( h '))
Σ
! Σ
!
V ',
h ' h
E
( !
!
V,
h) = − Wij
khjvi
k
KΣ
k=1
FΣ
j=1
mΣ
i=1
, где энергия задается как
kbi
KΣ
mΣ
− vi
k
k=1
i=1
FΣ
− hjbj
j=1
12. Обучение — data part
%%
k =ε
ΔWij
!
( V))
∂Wij
∂log p(
k
#
$
&
((
'
( khkh)
j data
j predicted =ε vi
− vi
Получаем из данных:
1. для каждого обучающего примера v, выведем h
2. посчитаем частоту, с которой фильм i получил рейтинг k при
соответствующем h
13. Обучение — model part
%%
k =ε
ΔWij
!
( V))
∂Wij
∂log p(
k
#
$
&
((
'
( khkh)
j data
j predicted =ε vi
− vi
Трудно получать аналитически, работает экспоненциальное время
14. Contrastive divergence
%%
k =ε
ΔWij
!
( V))
∂Wij
∂log p(
k
#
$
&
((
'
( khkh) ≈
j data
j predicted =ε vi
− vi
( khkh)
j data
j recon ≈ε vi
− vi
Восстановим из данных:
1. для каждого обучающего примера v, выведем h
2. восстановим v’ из h
3. посчитаем “reconstruct”-часть
15. Sampling reconstruction part in CD
khj recon ( ) =ε vi
k =ε vi
ΔWij
khj data
− vi
( kh− vkh)
j data
i
j T Будем сэмплировать по Гиббсу из распределений,
делая T шагов.
k =1|
p vi
!
( h)
!
p h=1|
j ( V)
Начальная точка сэмплирования — наблюдаемые данные
Количество шагов T будем увеличивать в процессе обучения.
Таким образом мы будем получать все более «точные» приближения.
16. Gibbs sampling
Пускай есть d случайных величин и дано их совместное распределение
p x1, x2…xd ( )
Пусть на шаге t уже выбрано приближение Xt = xi
d
t { }i=1
Тогда на t+1 шаге:
1. выберем индекс i
t ( )
t+1 p xi | x1
2. выберем x по распределению i
t…xi−1
t …xd
t , xi+1
Обычно индекс выбирается как i = (t +1)%d
17. Общая схема обучения
1. посчитаем data-part (для каждого пользователя и его рейтинга)
2. выведем reconstruction-part для данного рейтинга
3. усредним градиенты по всем пользователям
4. запустим log-likelihood gradient ascend
19. Предсказание рейтингов
k =1|
p vi
!
( V)∝ exp −E vq
Σ k,
∝
!
V,
!
( ( h))
h1…hp
Σ + vi
Σ
FΠ
k exp vi
∝Γq
lhjWij
l
il
khjWij
k + hjbj
%
& '
(
) *
hj∈{0,1}
j=1
=
Σ + vi
FΠ где Γq
k 1+ exp vi
= Γq
lWij
l
il
kWij
k + bj
%
& '
(
) *
%
& ''
(
) **
j=1
k ( )
k = exp vq
kbq
Получили вероятность, что пользователь поставит фильму i оценку k
20. Что делать с вероятностями?
Два варианта:
1. просто взять оценку, у которой вероятность максимальна
2. нормализовать вероятности так, чтобы
p(vi = k)
KΣ
k=1
=1
и посчитать предсказание как E vi [ ]
21. Предсказание множества рейтингов
21
Если требуется предсказать рейтинги для n фильмов, то
можно посчитать вероятность:
k1 =1, vq2
p vq1
k2 =1,…, vqn
kn =1|
!
( V)
Но это требует O(Kn) времени!
22. Multi-predict trick
22
Давайте сделаем один update-шаг:
ˆpj = p hj =1|
!
KΣ
mΣ
( V) =σ bj + vi
kWij
k
k=1
i=1
"
# $
%
& '
k ( =1| pˆ) =
p vq
FΣ
k + ˆpjWqj
exp bq
k
j=1
"
%
''
& $$# FΣ
k + ˆpjWqj
exp bq
l
j=1
"
# $$
%
& ''
KΣ
l=1
И снова вычислим предсказания как матожидание.
Это немного хуже по качеству, но намного быстрее!
23. Gaussian hidden units
23
Можно ввести расширение модели, считая скрытые переменные
гауссовскими. Тогда вероятности в модели примут вид:
k =1|
p vi
!
( h) =
FΣ
k + hjWij
exp bi
k
j=1
"
# $$
%
& ''
FΣ"
# $$
l + hjWij
exp bi
l
j=1
%
& ''
KΣ
l=1
p hj = h |
!
( V) =
1
2Πσ i
&&&&&
exp −
kWij
KΣ
mΣ
h − bj −σ j vi
k
k=1
i=1
$
% &
'
( )
2
2
2σ i
$
%
'
)))))
(
N.B. для единичной дисперсии формулы обновления те же!
26. Classification quality
Истинный ответ 0 Истинный ответ 1
Confusion matrix:
Предсказали 0 TN FN
Предсказали 1 FP TP
P =
TP
TP + FP
R =
TP
TP + FN
F1 =
2
1
P
+
1
R
Precision:
Recall:
27. More on classification quality
nΣ
AP = P(k)Δr(k)
k=1
MAP =
AP(q)
Σ
q∈Q
Q
Average precision:
Mean average precision:
MAP — средняя точность на позициях, где есть попадания в top k.
29. Ranking quality (NDCG)
Пусть для каждого пользователя и item-а задана «релевантность» r
DCGu = r1 +
nΣ
ri
log2 i i=2
NDCGu =
DCGu
IDCGu
NDCG =
NDCGu
U
32. BPR: problem setting
Для пользователей u из U и фильмов i из I составим обучающее множество
как тройки:
+ ^ j ∈ I Iu
DS = {(u, i, j) : i ∈ Iu
+}
+ — фильмы с implicit feedback для данного пользователя
где Iu
>u — полный порядок на фильмах, причем выполняются свойства:
∀i, j ∈ I : i ≠ j⇒i >u j∨ j >u i
∀i, j ∈ I : i >u j ^ j >u i⇒i = j
∀i, j, k ∈ I : i >u j ^ j >u k ⇒i >u k
полнота
антисимметричность
транзитивность
33. Байесовская формулировка
p(Θ|>u )∝ p(>u |Θ) p(Θ)
Тогда для всех пользователей запишем:
Π p ( Θ|>)
= p ( i >δ j |Θ)((u,i, j )∈DS )
u u u∈U
Π ⋅
u,i, j∈U×I×I
⋅ 1− p i >u ( ( j |Θ))δ ((u,i, j )∉DS )
Тогда по свойствам порядка это можно упростить:
Π p ( Θ|>)
= p ( i >j |Θ)
u u u∈U
Π
u,i, j∈Ds
34. Preference model
Окончательно определим модель как:
p(i >u j |Θ) =σ (xˆuij (Θ))
Здесь ˆ xuij — «встроенная» модель, которая отслеживает
связь между u, i и j. Например,
- матричное разложение
- модель kNN
37. Еще раз о модели рейтинга
Распишем ˆ xuij = ˆ xui − ˆ xuj
В случае разложения матриц
kΣ
ˆ xui = wu, hi = wuf hif
f =1
Тогда производные распишутся как
∂ˆ xuij
∂θ
=
(hif − hjf )
wuf
−wuf
0
если θ = wuf
если θ = hif
если θ = hjf
иначе
38. If you like this lecture you will like these books
39. If you like this lecture you will probably like
http://www.4ducks.ru/pages/itmo-rs-2014.html
40. Удачи!
Андрей Данильченко
группа разработки рекомендательных систем, Яндекс
danilchenko@yandex-team.ru
http://www.4ducks.ru/itmo-ml-course-recsys-part-2.html