Sequence recommenders

Preview:

DESCRIPTION

Lecture for DM labs, second part. Methods for sequential recommendations: Koren's station-based/station-less and LME models

Citation preview

Sequence recommenders

Андрей Данильченко разработчик

Что такое рекомендации?

Классическая RS

SVD Metadata Features

Recommender

Музыкальная RS

SVD Metadata Features

Recommender

?

Музыкальная RS — пример

SVD Metadata Features

Recommender

Музыкальная RS — пример 2

SVD Metadata Features

Recommender

Sequence recommenders

Данные

Station-based & station-less models

LME

Плейлист — это фраза на неизвестном естественном

языке!

Где используют этот язык?

Sequence recommenders

Данные

Station-based & station-less models

LME

Station-based model (Yahoo)

L S;Θ( ) = logP i s;t,Θ( )(i,t )∈PS

∑PS∈S∑

Правдоподобие плейлиста станции:

P i s;t,Θ( ) =exp(rsi;t )exp(rsj;t )

j∑

rsi;t = bi + qiT vs + vs

slot (t ) +1Ps(t,w)

qjj∈Ps

( t ,w )∑

$

%

&&&

'

(

)))

Запись для самой станции:

Station-less model (Yahoo)

L S;Θ( ) = logP i s;t,Θ( )(i,t )∈PS

∑PS∈S∑

Правдоподобие плейлиста станции:

P i s;t,Θ( ) =exp(rsi;t )exp(rsj;t )

j∑

rsi;t = bi + qiT 1

Psqj

j∈Ps

∑ +1Ps(t,w)

qjj∈Ps

( t ,w )∑

$

%

&&&

'

(

)))

Запись для самой станции:

Обучение моделей

η∂ logP i s;t( )

∂θ=η

∂rsi;t∂θ

− P j s;t( )∂rsj;t∂θj

∑$

%&&

'

())

SGD с шагом:

Обучение моделей — трюк

Δθ =η∂rsi;t∂θ

− w j s( )∂rsj;t∂θj∈J

∑&

'((

)

*++

Шаг SGD:

Sampling:

P i S( ) J w i S( ) =

exp(rsi;t )P i S( )

exp(rsj;t )P j S( )j∈J

Sequence recommenders

Данные

Station-based & station-less models

LME

Представление треков

Single-point model Dual-point model

Single-point model — вероятности

P p[i] | p[i−1]( ) = e− X p[ i ]( )−X p[ i−1]( )

2

2

e− X s( )−X p[ i−1]( )

2

2

s∈S∑

=e−Δ p[ i ],p[ i−1]( )

2

Z(p[i−1])

P p( ) = Pi=1

kp

∏ p[i] | p[i−1]( ) = e−Δ p[ i ],p[ i−1]( )2

Z(p[i−1])i=1

kp

Вероятность следующего трека:

Вероятность плейлиста:

Single-point model — функционал

L S;X( ) = −Δ(p[i], p[i−1])2 − logZ p[i−1]( )i=1

kp

∑p∈D∑

Log-likelihood:

X = argmaxX∈ℜ|S|×d

e−Δ( p[ i ],p[ i−1] )2

Z p[i−1]( )i=1

kp

∑p∈D∑

Dual-point model

P p( ) = Pi=1

kp

∏ p[i] | p[i−1]( ) = e−Δ2 p[ i ],p[ i−1]( )2

Z2 (p[i−1])i=1

kp

Вероятность плейлиста:

V,U( ) = argmaxV ,U∈ℜ|S|×d

e−Δ2 ( p[ i ],p[ i−1] )2

Z2 p[i−1]( )i=1

kp

∑p∈D∑

Функционал:

Регуляризация

X = argmaxX∈ℜ|S|×d

L D | X( )−λ XF

2

(V,U) = argmaxV ,U∈ℜ|S|×d

L D |V,U( )−λ VF

2+ U

F

2( )

Single-point model:

Dual-point model:

Регуляризация

X = argmaxX∈ℜ|S|×d

L D | X( )−λ XF

2

(V,U) = argmaxV ,U∈ℜ|S|×d

L D |V,U( )−λ VF

2+ U

F

2( )−−v Δ2 s, s( )2

s∈S∑

Single-point model:

Dual-point model:

Как это выглядит?

Что делать дальше?

Ссылки

•  N. Aizenberg, Y. Koren, and O. Somekh. 2012. Build your own music recommender by modeling internet radio streams. In Proceedings of the 21st international conference on World Wide Web (WWW '12). ACM, New York, NY, USA, 1-10. http://doi.acm.org/10.1145/2187836.2187838

•  B. McFee, and G. Lankriet. 2011. The natural language of playlists. In Proceedings of 12th International Society for Music Information Retrieval Conference (ISMIR 2011). http://cosmal.ucsd.edu/~gert/papers/nlp.pdf

•  S. Chen, J. Moore, D. Turnbull, and T. Joachims. 2012. Playlist prediction via metric embedding. In Proceedings of the 18th ACM SIGKDD international conference on Knowledge discovery and data mining (KDD '12). ACM, New York, NY, USA, 714-722. http://doi.acm.org/10.1145/2339530.2339643

Андрей Данильченко

разработчик

apdanilchenko@yandex.ru

Удачи!