1
Ðåêîìåíäàòåëüíûå ñèñòåìû è 
ôàêòîðèçàöèîííûå ìîäåëè 
Ìèõàèë Ðîéçíåð 
20 ñåíòÿáðÿ 2014 ã. 
2
Ïëàí 
Âèäû è îáëàñòè ïðèìåíåíèÿ ðåêîìåíäàòåëüíûõ ñèñòåì 
Ïðîñòåéøèå àëãîðèòìû 
Ââåäåíèå â ëèíåéíóþ àëãåáðó 
Àëãîðèòì SVD 
Èçìåðåíèå êà÷åñòâà ðåêîìåíäàöèé 
Íàïðàâëåíèÿ ðàçâèòèÿ 
3
Ôèëüìû 
4
Ôèëüìû 
4
Ìóçûêà 
5
Ìóçûêà 
5
Òîâàðû 
6
Òîâàðû 
6
È äðóãèå êàòåãîðèè 
I Çàâåäåíèÿ íà êàðòå 
I Íîâîñòè, ñòàòüè, ñàéòû 
I Êîíöåðòû, òåàòðû, âûñòàâêè 
I Âèäåî 
I Êíèãè 
I Ïðèëîæåíèÿ 
I Èãðû 
I Ïóòåøåñòâèÿ 
I Ñîöèàëüíûå ñâÿçè 
I . . . 
7
Âèäû ðåêîìåíäàòåëüíûõ ñèñòåì 
I Content-based 
I Ïîëüçîâàòåëþ ðåêîìåíäóþòñÿ îáúåêòû, ïîõîæèå íà òå, 
êîòîðûå ýòîò ïîëüçîâàòåëü óæå óïîòðåáèë. 
I Ïîõîæåñòè îöåíèâàþòñÿ ïî ïðèçíàêàì ñîäåðæèìîãî 
îáúåêòîâ. 
I Ñèëüíàÿ çàâèñèìîñòü îò ïðåäìåòíîé îáëàñòè, ïîëåçíîñòü 
ðåêîìåíäàöèé îãðàíè÷åíà. 
8
Âèäû ðåêîìåíäàòåëüíûõ ñèñòåì 
I Content-based 
I Ïîëüçîâàòåëþ ðåêîìåíäóþòñÿ îáúåêòû, ïîõîæèå íà òå, 
êîòîðûå ýòîò ïîëüçîâàòåëü óæå óïîòðåáèë. 
I Ïîõîæåñòè îöåíèâàþòñÿ ïî ïðèçíàêàì ñîäåðæèìîãî 
îáúåêòîâ. 
I Ñèëüíàÿ çàâèñèìîñòü îò ïðåäìåòíîé îáëàñòè, ïîëåçíîñòü 
ðåêîìåíäàöèé îãðàíè÷åíà. 
I Êîëëàáîðàòèâíàÿ ôèëüòðàöèÿ (Collaborative Filtering) 
I Äëÿ ðåêîìåíäàöèé èñïîëüçóåòñÿ èñòîðèÿ îöåíîê êàê 
ñàìîãî ïîëüçîâàòåëÿ, òàê è äðóãèõ ïîëüçîâàòåëåé. 
I Áîëåå óíèâåðñàëüíûé ïîäõîä, ÷àñòî äàåò ëó÷øèé ðåçóëüòàò. 
I Åñòü ñâîè ïðîáëåìû (íàïðèìåð, õîëîäíûé ñòàðò). 
8
Âèäû ðåêîìåíäàòåëüíûõ ñèñòåì 
I Content-based 
I Ïîëüçîâàòåëþ ðåêîìåíäóþòñÿ îáúåêòû, ïîõîæèå íà òå, 
êîòîðûå ýòîò ïîëüçîâàòåëü óæå óïîòðåáèë. 
I Ïîõîæåñòè îöåíèâàþòñÿ ïî ïðèçíàêàì ñîäåðæèìîãî 
îáúåêòîâ. 
I Ñèëüíàÿ çàâèñèìîñòü îò ïðåäìåòíîé îáëàñòè, ïîëåçíîñòü 
ðåêîìåíäàöèé îãðàíè÷åíà. 
I Êîëëàáîðàòèâíàÿ ôèëüòðàöèÿ (Collaborative Filtering) 
I Äëÿ ðåêîìåíäàöèé èñïîëüçóåòñÿ èñòîðèÿ îöåíîê êàê 
ñàìîãî ïîëüçîâàòåëÿ, òàê è äðóãèõ ïîëüçîâàòåëåé. 
I Áîëåå óíèâåðñàëüíûé ïîäõîä, ÷àñòî äàåò ëó÷øèé ðåçóëüòàò. 
I Åñòü ñâîè ïðîáëåìû (íàïðèìåð, õîëîäíûé ñòàðò). 
I Ãèáðèäíûå ñèñòåìû 
I Ñî÷åòàþò îáà ïîäõîäà. 
8
Netflix Prize 
Ðàññâåò ðåêîìåíäàòåëüíûõ ñèñòåì  Netflix Prize1. 
I 480 189 ïîëüçîâàòåëåé; 
I 17 770 ôèëüìîâ; 
I 100 480 507 îöåíîê f1; 2; 3; 4; 5g; 
I çàäà÷à: óìåíüøèòü RMSE (ñðåäíå-êâàäðàòè÷íîå 
îòêëîíåíèå) c 0.9514 äî 0.8563 (íà 10%); 
I 2 îêòÿáðÿ 2006  21 ñåíòÿáðÿ 2009; 
1www.netflixprize.com 
9
Netflix Prize 
Ðàññâåò ðåêîìåíäàòåëüíûõ ñèñòåì  Netflix Prize1. 
I 480 189 ïîëüçîâàòåëåé; 
I 17 770 ôèëüìîâ; 
I 100 480 507 îöåíîê f1; 2; 3; 4; 5g; 
I çàäà÷à: óìåíüøèòü RMSE (ñðåäíå-êâàäðàòè÷íîå 
îòêëîíåíèå) c 0.9514 äî 0.8563 (íà 10%); 
I 2 îêòÿáðÿ 2006  21 ñåíòÿáðÿ 2009; 
I ïðèç $1 000 000. 
1www.netflixprize.com 
9
Ïëàí 
Âèäû è îáëàñòè ïðèìåíåíèÿ ðåêîìåíäàòåëüíûõ ñèñòåì 
Ïðîñòåéøèå àëãîðèòìû 
Ââåäåíèå â ëèíåéíóþ àëãåáðó 
Àëãîðèòì SVD 
Èçìåðåíèå êà÷åñòâà ðåêîìåíäàöèé 
Íàïðàâëåíèÿ ðàçâèòèÿ 
10
Ôîðìàëüíàÿ ïîñòàíîâêà 
Èìååòñÿ: 
I Ïîëüçîâàòåëè (users, u 2 U) 
I Îáúåêòû (items, i 2 I) 
I Ñîáûòèÿ (events, (rui; u; i; : : :) 2 D) 
11
Ôîðìàëüíàÿ ïîñòàíîâêà 
Èìååòñÿ: 
I Ïîëüçîâàòåëè (users, u 2 U) 
I Îáúåêòû (items, i 2 I) 
I Ñîáûòèÿ (events, (rui; u; i; : : :) 2 D) 
Òðåáóåòñÿ: 
I Ïðåäñêàçàòü ïðåäïî÷òåíèå: 
^rui = Predict(u; i; : : :)  rui 
11
Ôîðìàëüíàÿ ïîñòàíîâêà 
Èìååòñÿ: 
I Ïîëüçîâàòåëè (users, u 2 U) 
I Îáúåêòû (items, i 2 I) 
I Ñîáûòèÿ (events, (rui; u; i; : : :) 2 D) 
Òðåáóåòñÿ: 
I Ïðåäñêàçàòü ïðåäïî÷òåíèå: 
^rui = Predict(u; i; : : :)  rui 
I Ïåðñîíàëüíûå ðåêîìåíäàöèè: 
u7! (i1; : : : ; iK) = RecommendK(u; : : :) 
11
Ôîðìàëüíàÿ ïîñòàíîâêà 
Èìååòñÿ: 
I Ïîëüçîâàòåëè (users, u 2 U) 
I Îáúåêòû (items, i 2 I) 
I Ñîáûòèÿ (events, (rui; u; i; : : :) 2 D) 
Òðåáóåòñÿ: 
I Ïðåäñêàçàòü ïðåäïî÷òåíèå: 
^rui = Predict(u; i; : : :)  rui 
I Ïåðñîíàëüíûå ðåêîìåíäàöèè: 
u7! (i1; : : : ; iK) = RecommendK(u; : : :) 
I Ïîõîæèå îáúåêòû: 
i7! (i1; : : : ; iM) = SimilarM(i) 
11
Òàáëèöà îöåíîê 
Item 1 Item 2 Item 3 Item 4 Item 5 Item 6 
User 1 5 4 5 
User 2 4 5 
User 3 3 5 4 
User 4 3 4 
User 5 4 2 4 
User 6 3 5 
12
Òàáëèöà îöåíîê 
Item 1 Item 2 Item 3 Item 4 Item 5 Item 6 
User 1 5 4 5 
User 2 4 ? 5 
User 3 3 5 ? 4 
User 4 ? 3 4 
User 5 ? 4 2 4 ? 
User 6 3 5 
12
Êëàñòåðèçàöèÿ ïîëüçîâàòåëåé 
I Âûáåðåì íåêîòîðóþ ìåðó ñõîæåñòè ïîëüçîâàòåëåé ïî èõ 
èñòîðèè îöåíîê sim(u; v). 
13
Êëàñòåðèçàöèÿ ïîëüçîâàòåëåé 
I Âûáåðåì íåêîòîðóþ ìåðó ñõîæåñòè ïîëüçîâàòåëåé ïî èõ 
èñòîðèè îöåíîê sim(u; v). 
I Îáúåäåíèì ïîëüçîâàòåëåé â ãðóïïû (êëàñòåðû) òàê, ÷òîáû 
ïîõîæèå ïîëüçîâàòåëè îêàçûâàëèñü â îäíîì êëàñòåðå: 
u7! F(u) 
13
Êëàñòåðèçàöèÿ ïîëüçîâàòåëåé 
I Âûáåðåì íåêîòîðóþ ìåðó ñõîæåñòè ïîëüçîâàòåëåé ïî èõ 
èñòîðèè îöåíîê sim(u; v). 
I Îáúåäåíèì ïîëüçîâàòåëåé â ãðóïïû (êëàñòåðû) òàê, ÷òîáû 
ïîõîæèå ïîëüçîâàòåëè îêàçûâàëèñü â îäíîì êëàñòåðå: 
u7! F(u) 
I Îöåíêó ïîëüçîâàòåëÿ îáúåêòó áóäåì ïðåäñêàçûâàòü êàê 
ñðåäíþþ îöåíêó âñåãî êëàñòåðà ýòîìó îáúåêòó: 
^rui = 
1 
jF(u)j 
X 
v2F(u) 
rvi 
13
Êëàñòåðèçàöèÿ ïîëüçîâàòåëåé 
I Âûáåðåì íåêîòîðóþ ìåðó ñõîæåñòè ïîëüçîâàòåëåé ïî èõ 
èñòîðèè îöåíîê sim(u; v). 
I Îáúåäåíèì ïîëüçîâàòåëåé â ãðóïïû (êëàñòåðû) òàê, ÷òîáû 
ïîõîæèå ïîëüçîâàòåëè îêàçûâàëèñü â îäíîì êëàñòåðå: 
u7! F(u) 
I Îöåíêó ïîëüçîâàòåëÿ îáúåêòó áóäåì ïðåäñêàçûâàòü êàê 
ñðåäíþþ îöåíêó âñåãî êëàñòåðà ýòîìó îáúåêòó: 
^rui = 
1 
jF(u)j 
X 
v2F(u) 
rvi 
Ïðîáëåìû: 
I Íå÷åãî ðåêîìåíäîâàòü íîâûì/íåòèïè÷íûì ïîëüçîâàòåëÿì. 
I Íå ó÷èòûâàåòñÿ ñïåöèôèêà êàæäîãî ïîëüçîâàòåëÿ. 
I Åñëè â êëàñòåðå íèêòî íå îöåíèâàë îáúåêò, òî 
ïðåäñêàçàíèå ñäåëàòü íå ïîëó÷èòñÿ. 
13
User-based 
^rui = ru + 
P 
sim(u; v)(rvi  rv) P 
v2Ui 
v2Ui 
sim(u; v) 
14
User-based 
^rui = ru + 
P 
sim(u; v)(rvi  rv) P 
v2Ui 
v2Ui 
sim(u; v) 
Ïðîáëåìû: 
I Íå÷åãî ðåêîìåíäîâàòü íîâûì/íåòèïè÷íûì ïîëüçîâàòåëÿì. 
I Õîëîäíûé ñòàðò  íîâûå îáúåêòû íèêîìó íå 
ðåêîìåíäóþòñÿ. 
14
Item-based 
^rui = ri + 
P 
sim(i; j)(ruj  rj) 
P 
j2Iu 
j2Iu sim(i; j) 
15
Item-based 
^rui = ri + 
P 
sim(i; j)(ruj  rj) 
P 
j2Iu 
j2Iu sim(i; j) 
Ïðîáëåìû: 
I Õîëîäíûé ñòàðò  íîâûå îáúåêòû íèêîìó íå 
ðåêîìåíäóþòñÿ. 
I Ðåêîìåíäàöèè ÷àñòî òðèâèàëüíû. 
15
Îáùèå ïðîáëåìû 
I Õîëîäíûé ñòàðò 
I Ïëîõèå ïðåäñêàçàíèÿ äëÿ íîâûõ/íåòèïè÷íûõ 
ïîëüçîâàòåëåé/îáúåêòîâ 
I Òðèâèàëüíîñòü ðåêîìåíäàöèé 
I Ðåñóðñîåìêîñòü âû÷èñëåíèé 
16
Ïëàí 
Âèäû è îáëàñòè ïðèìåíåíèÿ ðåêîìåíäàòåëüíûõ ñèñòåì 
Ïðîñòåéøèå àëãîðèòìû 
Ââåäåíèå â ëèíåéíóþ àëãåáðó 
Àëãîðèòì SVD 
Èçìåðåíèå êà÷åñòâà ðåêîìåíäàöèé 
Íàïðàâëåíèÿ ðàçâèòèÿ 
17
Ââåäåíèå â ëèíåéíóþ àëãåáðó 
18
Ââåäåíèå â ëèíåéíóþ àëãåáðó 
I Âåêòîð: 
18
Ââåäåíèå â ëèíåéíóþ àëãåáðó 
I Âåêòîð: 
18
Ââåäåíèå â ëèíåéíóþ àëãåáðó 
I Âåêòîð: 
(x1; x2; : : : ; xn) 
18
Ââåäåíèå â ëèíåéíóþ àëãåáðó 
I Âåêòîð: 
x = 
0 
BBB@ x1 
x2 
... 
xn 
1 
CCCA 
18
Ââåäåíèå â ëèíåéíóþ àëãåáðó 
I Âåêòîð: 
x = 
0 
BBB@ x1 
x2 
... 
xn 
1 
CCCA 
I Ìàòðèöà: 
18
Ââåäåíèå â ëèíåéíóþ àëãåáðó 
I Âåêòîð: 
x = 
0 
BBB@ 
x1 
x2 
... 
xn 
1 
CCCA 
I Ìàòðèöà: 
18
Ââåäåíèå â ëèíåéíóþ àëãåáðó 
I Âåêòîð: 
x = 
0 
BBB@ x1 
x2 
... 
xn 
1 
CCCA 
I Ìàòðèöà: 
A 
nm 
= 
0 
BBB@ 
a11 a12 : : : a1m 
a21 a22 : : : a2m 
... 
... 
. . . 
... 
an1 an2 : : : anm 
1 
CCCA 
18
Ââåäåíèå â ëèíåéíóþ àëãåáðó 
I Ñëîæåíèå: 
A + B = 
0 
B@ 
a11 + b11 : : : an1 + bn1 
... 
. . . 
... 
a1m + b1m : : : anm + bnm 
1 
CA 
19
Ââåäåíèå â ëèíåéíóþ àëãåáðó 
I Ñëîæåíèå: 
A + B = 
0 
B@ 
a11 + b11 : : : an1 + bn1 
... 
. . . 
... 
a1m + b1m : : : anm + bnm 
1 
CA 
I Òðàíñïîíèðîâàíèå: 
A = 
0 
BBB@ 
a11 a12 : : : a1m 
a21 a22 : : : a2m 
... 
.... . . 
... 
an1 an2 : : : anm 
1 
CCCA 
; AT = 
0 
BBB@ 
a11 a21 : : : an1 
a12 a22 : : : an2 
... 
... 
. . . 
... 
a1m a2m : : : anm 
1 
CCCA 
19
Ââåäåíèå â ëèíåéíóþ àëãåáðó 
I Ñëîæåíèå: 
A + B = 
0 
B@ 
a11 + b11 : : : an1 + bn1 
... 
. . . 
... 
a1m + b1m : : : anm + bnm 
1 
CA 
I Òðàíñïîíèðîâàíèå: 
A = 
0 
BBB@ 
a11 a12 : : : a1m 
a21 a22 : : : a2m 
... 
.... . . 
... 
an1 an2 : : : anm 
1 
CCCA 
; AT = 
0 
BBB@ 
a11 a21 : : : an1 
a12 a22 : : : an2 
... 
... 
. . . 
... 
a1m a2m : : : anm 
1 
CCCA 
I Åäèíè÷íàÿ ìàòðèöà: 
In = 
0 
1 0 : : : 0 
0 1 : : : 0 
BBB@ 
... 
... 
. . . 
... 
0 0 : : : 1 
1 
CCCA 
19
Ââåäåíèå â ëèíåéíóþ àëãåáðó 
I Óìíîæåíèå: 
A 
nk 
 B 
km 
= C 
; cij = 
nm 
Xk 
l=1 
ailblj 
20
Ââåäåíèå â ëèíåéíóþ àëãåáðó 
I Óìíîæåíèå: 
A 
nk 
 B 
km 
= C 
; cij = 
nm 
Xk 
l=1 
ailblj 
A 
nm 
 Im = In  A 
nm 
= A 
nm 
20
Ââåäåíèå â ëèíåéíóþ àëãåáðó 
I Óìíîæåíèå: 
A 
nk 
 B 
km 
= C 
; cij = 
nm 
Xk 
l=1 
ailblj 
A 
nm 
 Im = In  A 
nm 
= A 
nm 
I Äëèíà (íîðìà) âåêòîðà: 
kxk = 
  
Xn 
i=1 
x2i 
!1=2 
20
Ââåäåíèå â ëèíåéíóþ àëãåáðó 
I Óìíîæåíèå: 
A 
nk 
 B 
km 
= C 
; cij = 
nm 
Xk 
l=1 
ailblj 
A 
nm 
 Im = In  A 
nm 
= A 
nm 
I Äëèíà (íîðìà) âåêòîðà: 
kxk = 
  
Xn 
i=1 
x2i 
!1=2 
I Ñêàëÿðíîå ïðîèçâåäåíèå: 
hx; yi = kxkkyk cos  
20
Ââåäåíèå â ëèíåéíóþ àëãåáðó 
I Óìíîæåíèå: 
A 
nk 
 B 
km 
= C 
; cij = 
nm 
Xk 
l=1 
ailblj 
A 
nm 
 Im = In  A 
nm 
= A 
nm 
I Äëèíà (íîðìà) âåêòîðà: 
kxk = 
  
Xn 
i=1 
x2i 
!1=2 
I Ñêàëÿðíîå ïðîèçâåäåíèå: 
cos  = 
hx; yi 
kxkkyk 
20
Ââåäåíèå â ëèíåéíóþ àëãåáðó 
I Óìíîæåíèå: 
A 
nk 
 B 
km 
= C 
; cij = 
nm 
Xk 
l=1 
ailblj 
A 
nm 
 Im = In  A 
nm 
= A 
nm 
I Äëèíà (íîðìà) âåêòîðà: 
kxk = 
  
Xn 
i=1 
x2i 
!1=2 
I Ñêàëÿðíîå ïðîèçâåäåíèå: 
hx; yi = 
Xn 
i=1 
xiyi = xT y 
20
Ïëàí 
Âèäû è îáëàñòè ïðèìåíåíèÿ ðåêîìåíäàòåëüíûõ ñèñòåì 
Ïðîñòåéøèå àëãîðèòìû 
Ââåäåíèå â ëèíåéíóþ àëãåáðó 
Àëãîðèòì SVD 
Èçìåðåíèå êà÷åñòâà ðåêîìåíäàöèé 
Íàïðàâëåíèÿ ðàçâèòèÿ 
21
Singular Value Decomposition 
22
Singular Value Decomposition 
I Ñèíãóëÿðíîå ðàçëîæåíèå ìàòðèöû: 
A 
nm 
= U 
nn 
  
nm 
 V T 
mm 
; 
U, V  îðòîãîíàëüíûå,   äèàãîíàëüíàÿ: 
UUT = In; V V T = Im; 
 
1; : : : ; min(n;m) 
 = diag 
 
; 1  : : :  min(n;m)  0: 
22
Singular Value Decomposition 
I Ñèíãóëÿðíîå ðàçëîæåíèå ìàòðèöû: 
A 
nm 
= U 
nn 
  
nm 
 V T 
mm 
; 
U, V  îðòîãîíàëüíûå,   äèàãîíàëüíàÿ: 
UUT = In; V V T = Im; 
 
1; : : : ; min(n;m) 
 = diag 
 
; 1  : : :  min(n;m)  0: 
I Óñå÷åííîå ðàçëîæåíèå ðàíãà d: 
d+1; : : : ; min(n;m) := 0; 
A0 
nm 
= U0 
nd 
 0 
dd 
 V 0T 
dm 
 A 
22
Singular Value Decomposition 
I Ñèíãóëÿðíîå ðàçëîæåíèå ìàòðèöû: 
A 
nm 
= U 
nn 
  
nm 
 V T 
mm 
; 
U, V  îðòîãîíàëüíûå,   äèàãîíàëüíàÿ: 
UUT = In; V V T = Im; 
 
1; : : : ; min(n;m) 
 = diag 
 
; 1  : : :  min(n;m)  0: 
I Óñå÷åííîå ðàçëîæåíèå ðàíãà d: 
d+1; : : : ; min(n;m) := 0; 
A0 
nm 
= U0 
nd 
 0 
dd 
 V 0T 
dm 
 A 
I A0  íàèëó÷øåå “íèçêîðàíãîâîå” ïðèáëèæåíèå ñ òî÷êè 
çðåíèÿ ñðåäíå-êâàäðàòè÷íîãî îòêëîíåíèÿ. 
22
SVD äëÿ ðåêîìåíäàöèé 
23
SVD äëÿ ðåêîìåíäàöèé 
^rui = hpu; qii 
23
SVD äëÿ ðåêîìåíäàöèé 
^rui = hpu; qii 
I Âûÿâëåíèå ñêðûòûõ ïðèçíàêîâ îáúåêòîâ è èíòåðåñîâ 
ïîëüçîâàòåëåé! 
23
SVD äëÿ ðåêîìåíäàöèé 
^rui = hpu; qii 
I Âûÿâëåíèå ñêðûòûõ ïðèçíàêîâ îáúåêòîâ è èíòåðåñîâ 
ïîëüçîâàòåëåé! 
I Ïðîáëåìû: 
I Ìàòðèöà îöåíîê R íàì ïîëíîñòüþ íå èçâåñòíà. 
I Ðàçëîæåíèå íå åäèíñòâåííîå: 
(U
)(V 
)T = UV T 
23
Îáó÷åíèå 
I Ìîäåëü: 
^rui() = pTu 
qi; 
 = fpu; qi j u 2 U; i 2 Ig 
24
Îáó÷åíèå 
I Ìîäåëü: 
^rui() = pTu 
qi; 
 = fpu; qi j u 2 U; i 2 Ig 
I Õîòèì îïòèìèçèðîâàòü êà÷åñòâî ïðåäñêàçàíèé â áóäóùåì: 
E(u;i) 
 
^rui()  rui 
2 ! min 
 
24
Îáó÷åíèå 
I Ìîäåëü: 
^rui() = pTu 
qi; 
 = fpu; qi j u 2 U; i 2 Ig 
I Õîòèì îïòèìèçèðîâàòü êà÷åñòâî ïðåäñêàçàíèé â áóäóùåì: 
E(u;i) 
 
^rui()  rui 
2 ! min 
 
I Èìååì òîëüêî îöåíêè èç ïðîøëîãî (îáó÷àþùàÿ âûáîðêà): 
X 
(u;i)2D 
 
^rui()  rui 
2 
| {z } 
êà÷åñòâî íà îáó÷àþùåé âûáîðêå 
+  
X 
2 
2 
| {z } 
ðåãóëÿðèçàöèÿ 
! min 
 
24
Çà÷åì íóæíà ðåãóëÿðèçàöèÿ? 
25
Çà÷åì íóæíà ðåãóëÿðèçàöèÿ? 
Ïåðåîáó÷åíèå  ÿâëåíèå, êîãäà ïîñòðîåííàÿ ìîäåëü õîðîøî 
îáúÿñíÿåò ïðèìåðû èç îáó÷àþùåé âûáîðêè, íî äîñòàòî÷íî 
ïëîõî ðàáîòàåò íà ïðèìåðàõ, íå ó÷àñòâîâàâøèõ â îáó÷åíèè. 
25
Çà÷åì íóæíà ðåãóëÿðèçàöèÿ? 
Ïåðåîáó÷åíèå  ÿâëåíèå, êîãäà ïîñòðîåííàÿ ìîäåëü õîðîøî 
îáúÿñíÿåò ïðèìåðû èç îáó÷àþùåé âûáîðêè, íî äîñòàòî÷íî 
ïëîõî ðàáîòàåò íà ïðèìåðàõ, íå ó÷àñòâîâàâøèõ â îáó÷åíèè. 
Êàê èçáåãàòü ïåðåîáó÷åíèÿ? 
25
Çà÷åì íóæíà ðåãóëÿðèçàöèÿ? 
Ïåðåîáó÷åíèå  ÿâëåíèå, êîãäà ïîñòðîåííàÿ ìîäåëü õîðîøî 
îáúÿñíÿåò ïðèìåðû èç îáó÷àþùåé âûáîðêè, íî äîñòàòî÷íî 
ïëîõî ðàáîòàåò íà ïðèìåðàõ, íå ó÷àñòâîâàâøèõ â îáó÷åíèè. 
Êàê èçáåãàòü ïåðåîáó÷åíèÿ? 
I Ïðîñòûå ìîäåëè 
25
Çà÷åì íóæíà ðåãóëÿðèçàöèÿ? 
Ïåðåîáó÷åíèå  ÿâëåíèå, êîãäà ïîñòðîåííàÿ ìîäåëü õîðîøî 
îáúÿñíÿåò ïðèìåðû èç îáó÷àþùåé âûáîðêè, íî äîñòàòî÷íî 
ïëîõî ðàáîòàåò íà ïðèìåðàõ, íå ó÷àñòâîâàâøèõ â îáó÷åíèè. 
Êàê èçáåãàòü ïåðåîáó÷åíèÿ? 
I Ïðîñòûå ìîäåëè 
I Ðåãóëÿðèçàöèÿ 
25
×èñëåííàÿ îïòèìèçàöèÿ 
J() = 
X 
(u;i)2D 
 
pTu 
qi  rui 
2 +  
X 
u 
kpuk2 + 
X 
i 
kqik2 
26
×èñëåííàÿ îïòèìèçàöèÿ 
J() = 
X 
(u;i)2D 
 
pTu 
qi  rui 
2 +  
X 
u 
kpuk2 + 
X 
i 
kqik2 
I Ãðàäèåíò: 
rJ() = 
 
@J 
@1 
; 
@J 
@2 
; : : : ; 
@J 
@n 
T 
26
×èñëåííàÿ îïòèìèçàöèÿ 
J() = 
X 
(u;i)2D 
 
pTu 
qi  rui 
2 +  
X 
u 
kpuk2 + 
X 
i 
kqik2 
I Ãðàäèåíò: 
rJ() = 
 
@J 
@1 
; 
@J 
@2 
; : : : ; 
@J 
@n 
T 
26
Ãðàäèåíòíûé ñïóñê 
t+1 = t  rJ() 
27
Ãðàäèåíòíûé ñïóñê 
t+1 = t  rJ() 
27
Ãðàäèåíòíûé ñïóñê 
t+1 = t  rJ() 
Ïðîáëåìû: 
I Ðàáîòàåò î÷åíü ìåäëåííî. 
I Íàõîäèò ëîêàëüíûé ìèíèìóì, à íå ãëîáàëüíûé. 
27
Alternating Least Squares 
I L çàâèñèò îò âñåõ ïàðàìåòðîâ êâàäðàòè÷íî. Ïî êàæäîìó 
ïàðàìåòðó ìîæíî íàéòè òî÷íûé îïòèìóì. 
28
Alternating Least Squares 
I L çàâèñèò îò âñåõ ïàðàìåòðîâ êâàäðàòè÷íî. Ïî êàæäîìó 
ïàðàìåòðó ìîæíî íàéòè òî÷íûé îïòèìóì. 
I Äëÿ êàæäîãî ïîëüçîâàòåëÿ è äëÿ êàæäîãî îáúåêòà çàäà÷à 
îïòèìèçàöèè  â òî÷íîñòè ìåòîä íàèìåíüøèõ êâàäðàòîâ. 
p 
u() = arg min 
pu 
J() = (QTu 
Qu + I)1QTu 
ru; 
qi 
() = arg min 
qi 
J() = (PTi 
Pi + I)1PTi 
ri: 
28
Alternating Least Squares 
I L çàâèñèò îò âñåõ ïàðàìåòðîâ êâàäðàòè÷íî. Ïî êàæäîìó 
ïàðàìåòðó ìîæíî íàéòè òî÷íûé îïòèìóì. 
I Äëÿ êàæäîãî ïîëüçîâàòåëÿ è äëÿ êàæäîãî îáúåêòà çàäà÷à 
îïòèìèçàöèè  â òî÷íîñòè ìåòîä íàèìåíüøèõ êâàäðàòîâ. 
p 
u() = arg min 
pu 
J() = (QTu 
Qu + I)1QTu 
ru; 
qi 
() = arg min 
qi 
J() = (PTi 
Pi + I)1PTi 
ri: 
I Èòåðàòèâíûé àëãîðèòì ALS: 
8u 2 U p2t+1 
u = p 
u(2t); 
8i 2 I q2t+2 
i = qi 
(2t+1): 
28
Alternating Least Squares 
I L çàâèñèò îò âñåõ ïàðàìåòðîâ êâàäðàòè÷íî. Ïî êàæäîìó 
ïàðàìåòðó ìîæíî íàéòè òî÷íûé îïòèìóì. 
I Äëÿ êàæäîãî ïîëüçîâàòåëÿ è äëÿ êàæäîãî îáúåêòà çàäà÷à 
îïòèìèçàöèè  â òî÷íîñòè ìåòîä íàèìåíüøèõ êâàäðàòîâ. 
p 
u() = arg min 
pu 
J() = (QTu 
Qu + I)1QTu 
ru; 
qi 
() = arg min 
qi 
J() = (PTi 
Pi + I)1PTi 
ri: 
I Èòåðàòèâíûé àëãîðèòì ALS: 
8u 2 U p2t+1 
u = p 
u(2t); 
8i 2 I q2t+2 
i = qi 
(2t+1): 
I Êàæäûé øàã ìîæíî ðàñïàðàëëåëèòü. 
28
Ïëàí 
Âèäû è îáëàñòè ïðèìåíåíèÿ ðåêîìåíäàòåëüíûõ ñèñòåì 
Ïðîñòåéøèå àëãîðèòìû 
Ââåäåíèå â ëèíåéíóþ àëãåáðó 
Àëãîðèòì SVD 
Èçìåðåíèå êà÷åñòâà ðåêîìåíäàöèé 
Íàïðàâëåíèÿ ðàçâèòèÿ 
29
Ìåòðèêè 
30
Ìåòðèêè 
Òî, ÷òî íåëüçÿ èçìåðèòü, íåëüçÿ è óëó÷øèòü. 
30
Ìåòðèêè 
Òî, ÷òî íåëüçÿ èçìåðèòü, íåëüçÿ è óëó÷øèòü. 
Ìåòðèêà ïðåäñêàçàíèÿ îöåíêè: 
RMSE = 
vuut 
1 
jDj 
X 
(u;i)2D 
(^rui  rui)2 
30
Ìåòðèêè 
Òî, ÷òî íåëüçÿ èçìåðèòü, íåëüçÿ è óëó÷øèòü. 
Ìåòðèêà ïðåäñêàçàíèÿ îöåíêè: 
RMSE = 
vuut 
1 
jDj 
X 
(u;i)2D 
(^rui  rui)2 
Íåäîñòàòêè: 
I Ó êàæäîãî ïîëüçîâàòåëÿ ñâîå ïðåäñòàâëåíèå î øêàëå 
îöåíîê. 
I Îøèáêà â ïðåäñêàçàíèè âûñîêîé îöåíêè èìååò òàêîé æå 
âåñ, ÷òî è îøèáêà â ïðåäñêàçàíèè íèçêîé îöåíêè. 
I Ìîæíî èìåòü ïî÷òè èäåàëüíóþ ìåòðèêó RMSE, íî èìåòü 
î÷åíü ïëîõîå êà÷åñòâî ðàíæèðîâàíèÿ, è íàîáîðîò. 
30
Ìåòðèêè ðàíæèðîâàíèÿ 
31
Ìåòðèêè ðàíæèðîâàíèÿ 
Ïóñòü R  ìíîæåñòâî ðåêîìåíäîâàííûõ îáúåêòîâ, P  
ìíîæåñòâî îáúåêòîâ, êîòîðûå íà ñàìîì äåëå ïîëüçîâàòåëþ 
ïîíðàâÿòñÿ. 
Precision = 
jR  Pj 
jRj 
Recall = 
jR  Pj 
jPj 
31
Ìåòðèêè ðàíæèðîâàíèÿ 
Ïóñòü R  ìíîæåñòâî ðåêîìåíäîâàííûõ îáúåêòîâ, P  
ìíîæåñòâî îáúåêòîâ, êîòîðûå íà ñàìîì äåëå ïîëüçîâàòåëþ 
ïîíðàâÿòñÿ. 
Precision = 
jR  Pj 
jRj 
Recall = 
jR  Pj 
jPj 
Ïðîáëåìû: 
I Íåò äàííûõ ïðî ðåêîìåíäîâàííûå îáúåêòû, êîòîðûå 
ïîëüçîâàòåëü íå îöåíèâàë. 
I Îïòèìèçèðîâàòü ýòè ìåòðèêè íàïðÿìóþ ïî÷òè 
íåâîçìîæíî. 
31
Äðóãèå ñâîéñòâà ðåêîìåíäàöèé 
Æåëàåìûå ñâîéñòâà ðåêîìåíäàöèé, êîòîðûå, âîçìîæíî, íå 
âûðàæàþòñÿ êà÷åñòâîì ïðåäñêàçàíèÿ îöåíêè: 
32
Äðóãèå ñâîéñòâà ðåêîìåíäàöèé 
Æåëàåìûå ñâîéñòâà ðåêîìåíäàöèé, êîòîðûå, âîçìîæíî, íå 
âûðàæàþòñÿ êà÷åñòâîì ïðåäñêàçàíèÿ îöåíêè: 
I Diversity (ðàçíîîáðàçèå) 
32
Äðóãèå ñâîéñòâà ðåêîìåíäàöèé 
Æåëàåìûå ñâîéñòâà ðåêîìåíäàöèé, êîòîðûå, âîçìîæíî, íå 
âûðàæàþòñÿ êà÷åñòâîì ïðåäñêàçàíèÿ îöåíêè: 
I Diversity (ðàçíîîáðàçèå) 
32
Äðóãèå ñâîéñòâà ðåêîìåíäàöèé 
Æåëàåìûå ñâîéñòâà ðåêîìåíäàöèé, êîòîðûå, âîçìîæíî, íå 
âûðàæàþòñÿ êà÷åñòâîì ïðåäñêàçàíèÿ îöåíêè: 
I Diversity (ðàçíîîáðàçèå) 
I Serendipity (íåîæèäàííîñòü) 
32
Äðóãèå ñâîéñòâà ðåêîìåíäàöèé 
Æåëàåìûå ñâîéñòâà ðåêîìåíäàöèé, êîòîðûå, âîçìîæíî, íå 
âûðàæàþòñÿ êà÷åñòâîì ïðåäñêàçàíèÿ îöåíêè: 
I Diversity (ðàçíîîáðàçèå) 
I Serendipity (íåîæèäàííîñòü) 
32
Äðóãèå ñâîéñòâà ðåêîìåíäàöèé 
Æåëàåìûå ñâîéñòâà ðåêîìåíäàöèé, êîòîðûå, âîçìîæíî, íå 
âûðàæàþòñÿ êà÷åñòâîì ïðåäñêàçàíèÿ îöåíêè: 
I Diversity (ðàçíîîáðàçèå) 
I Serendipity (íåîæèäàííîñòü) 
I Novelty (íîâèçíà) 
32
Äðóãèå ñâîéñòâà ðåêîìåíäàöèé 
Æåëàåìûå ñâîéñòâà ðåêîìåíäàöèé, êîòîðûå, âîçìîæíî, íå 
âûðàæàþòñÿ êà÷åñòâîì ïðåäñêàçàíèÿ îöåíêè: 
I Diversity (ðàçíîîáðàçèå) 
I Serendipity (íåîæèäàííîñòü) 
I Novelty (íîâèçíà) 
32
Äðóãèå ñâîéñòâà ðåêîìåíäàöèé 
Æåëàåìûå ñâîéñòâà ðåêîìåíäàöèé, êîòîðûå, âîçìîæíî, íå 
âûðàæàþòñÿ êà÷åñòâîì ïðåäñêàçàíèÿ îöåíêè: 
I Diversity (ðàçíîîáðàçèå) 
I Serendipity (íåîæèäàííîñòü) 
I Novelty (íîâèçíà) 
I Coverage, Trust, Utility, Robustness, Adaptivity, Scalability, . . . 
32
Ïîõîæèå îáúåêòû 
×òî òàêîå ïîõîæèå îáúåêòû? 
33
Ïîõîæèå îáúåêòû 
×òî òàêîå ïîõîæèå îáúåêòû? 
I Îáúåêòû, ïîõîæèå ïî ñâîèì ïðèçíàêàì (content-based). 
33
Ïîõîæèå îáúåêòû 
×òî òàêîå ïîõîæèå îáúåêòû? 
I Îáúåêòû, ïîõîæèå ïî ñâîèì ïðèçíàêàì (content-based). 
I Îáúåêòû, êîòîðûå ÷àñòî èñïîëüçóþò âìåñòå (¾êëèåíòû, 
êóïèâøèå i, òàêæå ïîêóïàëè j¿). 
33
Ïîõîæèå îáúåêòû 
×òî òàêîå ïîõîæèå îáúåêòû? 
I Îáúåêòû, ïîõîæèå ïî ñâîèì ïðèçíàêàì (content-based). 
I Îáúåêòû, êîòîðûå ÷àñòî èñïîëüçóþò âìåñòå (¾êëèåíòû, 
êóïèâøèå i, òàêæå ïîêóïàëè j¿). 
I Ðåêîìåíäàöèè äëÿ ïîëüçîâàòåëÿ, êîòîðîìó ïîíðàâèëñÿ 
äàííûé îáúåêò. 
33
Ïîõîæèå îáúåêòû 
×òî òàêîå ïîõîæèå îáúåêòû? 
I Îáúåêòû, ïîõîæèå ïî ñâîèì ïðèçíàêàì (content-based). 
I Îáúåêòû, êîòîðûå ÷àñòî èñïîëüçóþò âìåñòå (¾êëèåíòû, 
êóïèâøèå i, òàêæå ïîêóïàëè j¿). 
I Ðåêîìåíäàöèè äëÿ ïîëüçîâàòåëÿ, êîòîðîìó ïîíðàâèëñÿ 
äàííûé îáúåêò. 
I Ðåêîìåíäàöèè, â êîòîðûõ äàííûé îáúåêò âûñòóïàåò â 
êà÷åñòâå êîíòåêñòà. 
33
Ïëàí 
Âèäû è îáëàñòè ïðèìåíåíèÿ ðåêîìåíäàòåëüíûõ ñèñòåì 
Ïðîñòåéøèå àëãîðèòìû 
Ââåäåíèå â ëèíåéíóþ àëãåáðó 
Àëãîðèòì SVD 
Èçìåðåíèå êà÷åñòâà ðåêîìåíäàöèé 
Íàïðàâëåíèÿ ðàçâèòèÿ 
34
Êîíöåïòóàëüíûå âîïðîñû 
35
Êîíöåïòóàëüíûå âîïðîñû 
I Êàê ñòðîèòü ñïèñêè ðåêîìåíäàöèé íà îñíîâå 
ïðåäñêàçàíèé? 
35
Êîíöåïòóàëüíûå âîïðîñû 
I Êàê ñòðîèòü ñïèñêè ðåêîìåíäàöèé íà îñíîâå 
ïðåäñêàçàíèé? 
I Êàê óëó÷øàòü êà÷åñòâî èìåííî ðåêîìåíäàöèé, à íå 
ïðåäñêàçàíèé? 
35
Êîíöåïòóàëüíûå âîïðîñû 
I Êàê ñòðîèòü ñïèñêè ðåêîìåíäàöèé íà îñíîâå 
ïðåäñêàçàíèé? 
I Êàê óëó÷øàòü êà÷åñòâî èìåííî ðåêîìåíäàöèé, à íå 
ïðåäñêàçàíèé? 
I Êàê èçìåðÿòü ïîõîæåñòè îáúåêòîâ? 
35
Êîíöåïòóàëüíûå âîïðîñû 
I Êàê ñòðîèòü ñïèñêè ðåêîìåíäàöèé íà îñíîâå 
ïðåäñêàçàíèé? 
I Êàê óëó÷øàòü êà÷åñòâî èìåííî ðåêîìåíäàöèé, à íå 
ïðåäñêàçàíèé? 
I Êàê èçìåðÿòü ïîõîæåñòè îáúåêòîâ? 
I Êàê îáîñíîâûâàòü ðåêîìåíäàöèè? 
35
Òåõíè÷åñêèå âîïðîñû 
36
Òåõíè÷åñêèå âîïðîñû 
I Êàê ðåøàòü ïðîáëåìó õîëîäíîãî ñòàðòà äëÿ íîâûõ 
ïîëüçîâàòåëåé è íîâûõ îáúåêòîâ? 
36
Òåõíè÷åñêèå âîïðîñû 
I Êàê ðåøàòü ïðîáëåìó õîëîäíîãî ñòàðòà äëÿ íîâûõ 
ïîëüçîâàòåëåé è íîâûõ îáúåêòîâ? 
I Êàê áûñòðî îáíîâëÿòü ðåêîìåíäàöèè? 
36
Òåõíè÷åñêèå âîïðîñû 
I Êàê ðåøàòü ïðîáëåìó õîëîäíîãî ñòàðòà äëÿ íîâûõ 
ïîëüçîâàòåëåé è íîâûõ îáúåêòîâ? 
I Êàê áûñòðî îáíîâëÿòü ðåêîìåíäàöèè? 
I Êàê áûñòðî íàõîäèòü îáúåêòû ñ íàèáîëüøèì 
ïðåäñêàçàíèåì? 
36
Òåõíè÷åñêèå âîïðîñû 
I Êàê ðåøàòü ïðîáëåìó õîëîäíîãî ñòàðòà äëÿ íîâûõ 
ïîëüçîâàòåëåé è íîâûõ îáúåêòîâ? 
I Êàê áûñòðî îáíîâëÿòü ðåêîìåíäàöèè? 
I Êàê áûñòðî íàõîäèòü îáúåêòû ñ íàèáîëüøèì 
ïðåäñêàçàíèåì? 
I Êàê èçìåðÿòü êà÷åñòâî îíëàéí-ðåêîìåíäàöèé? 
36
Òåõíè÷åñêèå âîïðîñû 
I Êàê ðåøàòü ïðîáëåìó õîëîäíîãî ñòàðòà äëÿ íîâûõ 
ïîëüçîâàòåëåé è íîâûõ îáúåêòîâ? 
I Êàê áûñòðî îáíîâëÿòü ðåêîìåíäàöèè? 
I Êàê áûñòðî íàõîäèòü îáúåêòû ñ íàèáîëüøèì 
ïðåäñêàçàíèåì? 
I Êàê èçìåðÿòü êà÷åñòâî îíëàéí-ðåêîìåíäàöèé? 
I Êàê ìàñøòàáèðîâàòü ñèñòåìó? 
36
Êàê ó÷èòûâàòü äîïîëíèòåëüíóþ èíôîðìàöèþ? 
37
Êàê ó÷èòûâàòü äîïîëíèòåëüíóþ èíôîðìàöèþ? 
I Êàê ó÷èòûâàòü íå òîëüêî ÿâíûé (explicit), íî è íåÿâíûé 
(implicit) ôèäáåê? 
37
Êàê ó÷èòûâàòü äîïîëíèòåëüíóþ èíôîðìàöèþ? 
I Êàê ó÷èòûâàòü íå òîëüêî ÿâíûé (explicit), íî è íåÿâíûé 
(implicit) ôèäáåê? 
I Êàê ó÷èòûâàòü êîíòåêñò? (Context-aware recommendations) 
37
Êàê ó÷èòûâàòü äîïîëíèòåëüíóþ èíôîðìàöèþ? 
I Êàê ó÷èòûâàòü íå òîëüêî ÿâíûé (explicit), íî è íåÿâíûé 
(implicit) ôèäáåê? 
I Êàê ó÷èòûâàòü êîíòåêñò? (Context-aware recommendations) 
I Êàê ó÷èòûâàòü ïðèçíàêè îáúåêòîâ? (Ãèáðèäíûå ñèñòåìû) 
37
Êàê ó÷èòûâàòü äîïîëíèòåëüíóþ èíôîðìàöèþ? 
I Êàê ó÷èòûâàòü íå òîëüêî ÿâíûé (explicit), íî è íåÿâíûé 
(implicit) ôèäáåê? 
I Êàê ó÷èòûâàòü êîíòåêñò? (Context-aware recommendations) 
I Êàê ó÷èòûâàòü ïðèçíàêè îáúåêòîâ? (Ãèáðèäíûå ñèñòåìû) 
I Êàê ó÷èòûâàòü ñâÿçè ìåæäó îáúåêòàìè (òàêñîíîìèþ)? 
37
Êàê ó÷èòûâàòü äîïîëíèòåëüíóþ èíôîðìàöèþ? 
I Êàê ó÷èòûâàòü íå òîëüêî ÿâíûé (explicit), íî è íåÿâíûé 
(implicit) ôèäáåê? 
I Êàê ó÷èòûâàòü êîíòåêñò? (Context-aware recommendations) 
I Êàê ó÷èòûâàòü ïðèçíàêè îáúåêòîâ? (Ãèáðèäíûå ñèñòåìû) 
I Êàê ó÷èòûâàòü ñâÿçè ìåæäó îáúåêòàìè (òàêñîíîìèþ)? 
I Êàê ó÷èòûâàòü ïðèçíàêè è ñâÿçè ïîëüçîâàòåëåé? 
37
Êàê ó÷èòûâàòü äîïîëíèòåëüíóþ èíôîðìàöèþ? 
I Êàê ó÷èòûâàòü íå òîëüêî ÿâíûé (explicit), íî è íåÿâíûé 
(implicit) ôèäáåê? 
I Êàê ó÷èòûâàòü êîíòåêñò? (Context-aware recommendations) 
I Êàê ó÷èòûâàòü ïðèçíàêè îáúåêòîâ? (Ãèáðèäíûå ñèñòåìû) 
I Êàê ó÷èòûâàòü ñâÿçè ìåæäó îáúåêòàìè (òàêñîíîìèþ)? 
I Êàê ó÷èòûâàòü ïðèçíàêè è ñâÿçè ïîëüçîâàòåëåé? 
I Êàê ó÷èòûâàòü èíôîðìàöèþ èç äðóãèõ ïðåäìåòíûõ 
îáëàñòåé? (Cross-domain recommendations) 
37
Ëèòåðàòóðà 
I Ââåäåíèå â àëãåáðó, Êîñòðèêèí À.È. 
I Ìàòåìàòè÷åñêèé àíàëèç, Çîðè÷ Â.À. 
I Êóðñ òåîðèè âåðîÿòíîñòåé, Ãíåäåíêî Á.Â. 
I Ìàøèííîå îáó÷åíèå, Âîðîíöîâ Ê.Â., êóðñ ëåêöèé 
38
Ñïàñèáî! 
39

Михаил Ройзнер - Рекомендательные системы и факторизационые модели

  • 1.
  • 2.
    Ðåêîìåíäàòåëüíûå ñèñòåìû è ôàêòîðèçàöèîííûå ìîäåëè Ìèõàèë Ðîéçíåð 20 ñåíòÿáðÿ 2014 ã. 2
  • 3.
    Ïëàí Âèäû èîáëàñòè ïðèìåíåíèÿ ðåêîìåíäàòåëüíûõ ñèñòåì Ïðîñòåéøèå àëãîðèòìû Ââåäåíèå â ëèíåéíóþ àëãåáðó Àëãîðèòì SVD Èçìåðåíèå êà÷åñòâà ðåêîìåíäàöèé Íàïðàâëåíèÿ ðàçâèòèÿ 3
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
    È äðóãèå êàòåãîðèè I Çàâåäåíèÿ íà êàðòå I Íîâîñòè, ñòàòüè, ñàéòû I Êîíöåðòû, òåàòðû, âûñòàâêè I Âèäåî I Êíèãè I Ïðèëîæåíèÿ I Èãðû I Ïóòåøåñòâèÿ I Ñîöèàëüíûå ñâÿçè I . . . 7
  • 11.
    Âèäû ðåêîìåíäàòåëüíûõ ñèñòåì I Content-based I Ïîëüçîâàòåëþ ðåêîìåíäóþòñÿ îáúåêòû, ïîõîæèå íà òå, êîòîðûå ýòîò ïîëüçîâàòåëü óæå óïîòðåáèë. I Ïîõîæåñòè îöåíèâàþòñÿ ïî ïðèçíàêàì ñîäåðæèìîãî îáúåêòîâ. I Ñèëüíàÿ çàâèñèìîñòü îò ïðåäìåòíîé îáëàñòè, ïîëåçíîñòü ðåêîìåíäàöèé îãðàíè÷åíà. 8
  • 12.
    Âèäû ðåêîìåíäàòåëüíûõ ñèñòåì I Content-based I Ïîëüçîâàòåëþ ðåêîìåíäóþòñÿ îáúåêòû, ïîõîæèå íà òå, êîòîðûå ýòîò ïîëüçîâàòåëü óæå óïîòðåáèë. I Ïîõîæåñòè îöåíèâàþòñÿ ïî ïðèçíàêàì ñîäåðæèìîãî îáúåêòîâ. I Ñèëüíàÿ çàâèñèìîñòü îò ïðåäìåòíîé îáëàñòè, ïîëåçíîñòü ðåêîìåíäàöèé îãðàíè÷åíà. I Êîëëàáîðàòèâíàÿ ôèëüòðàöèÿ (Collaborative Filtering) I Äëÿ ðåêîìåíäàöèé èñïîëüçóåòñÿ èñòîðèÿ îöåíîê êàê ñàìîãî ïîëüçîâàòåëÿ, òàê è äðóãèõ ïîëüçîâàòåëåé. I Áîëåå óíèâåðñàëüíûé ïîäõîä, ÷àñòî äàåò ëó÷øèé ðåçóëüòàò. I Åñòü ñâîè ïðîáëåìû (íàïðèìåð, õîëîäíûé ñòàðò). 8
  • 13.
    Âèäû ðåêîìåíäàòåëüíûõ ñèñòåì I Content-based I Ïîëüçîâàòåëþ ðåêîìåíäóþòñÿ îáúåêòû, ïîõîæèå íà òå, êîòîðûå ýòîò ïîëüçîâàòåëü óæå óïîòðåáèë. I Ïîõîæåñòè îöåíèâàþòñÿ ïî ïðèçíàêàì ñîäåðæèìîãî îáúåêòîâ. I Ñèëüíàÿ çàâèñèìîñòü îò ïðåäìåòíîé îáëàñòè, ïîëåçíîñòü ðåêîìåíäàöèé îãðàíè÷åíà. I Êîëëàáîðàòèâíàÿ ôèëüòðàöèÿ (Collaborative Filtering) I Äëÿ ðåêîìåíäàöèé èñïîëüçóåòñÿ èñòîðèÿ îöåíîê êàê ñàìîãî ïîëüçîâàòåëÿ, òàê è äðóãèõ ïîëüçîâàòåëåé. I Áîëåå óíèâåðñàëüíûé ïîäõîä, ÷àñòî äàåò ëó÷øèé ðåçóëüòàò. I Åñòü ñâîè ïðîáëåìû (íàïðèìåð, õîëîäíûé ñòàðò). I Ãèáðèäíûå ñèñòåìû I Ñî÷åòàþò îáà ïîäõîäà. 8
  • 14.
    Netflix Prize Ðàññâåòðåêîìåíäàòåëüíûõ ñèñòåì Netflix Prize1. I 480 189 ïîëüçîâàòåëåé; I 17 770 ôèëüìîâ; I 100 480 507 îöåíîê f1; 2; 3; 4; 5g; I çàäà÷à: óìåíüøèòü RMSE (ñðåäíå-êâàäðàòè÷íîå îòêëîíåíèå) c 0.9514 äî 0.8563 (íà 10%); I 2 îêòÿáðÿ 2006 21 ñåíòÿáðÿ 2009; 1www.netflixprize.com 9
  • 15.
    Netflix Prize Ðàññâåòðåêîìåíäàòåëüíûõ ñèñòåì Netflix Prize1. I 480 189 ïîëüçîâàòåëåé; I 17 770 ôèëüìîâ; I 100 480 507 îöåíîê f1; 2; 3; 4; 5g; I çàäà÷à: óìåíüøèòü RMSE (ñðåäíå-êâàäðàòè÷íîå îòêëîíåíèå) c 0.9514 äî 0.8563 (íà 10%); I 2 îêòÿáðÿ 2006 21 ñåíòÿáðÿ 2009; I ïðèç $1 000 000. 1www.netflixprize.com 9
  • 16.
    Ïëàí Âèäû èîáëàñòè ïðèìåíåíèÿ ðåêîìåíäàòåëüíûõ ñèñòåì Ïðîñòåéøèå àëãîðèòìû Ââåäåíèå â ëèíåéíóþ àëãåáðó Àëãîðèòì SVD Èçìåðåíèå êà÷åñòâà ðåêîìåíäàöèé Íàïðàâëåíèÿ ðàçâèòèÿ 10
  • 17.
    Ôîðìàëüíàÿ ïîñòàíîâêà Èìååòñÿ: I Ïîëüçîâàòåëè (users, u 2 U) I Îáúåêòû (items, i 2 I) I Ñîáûòèÿ (events, (rui; u; i; : : :) 2 D) 11
  • 18.
    Ôîðìàëüíàÿ ïîñòàíîâêà Èìååòñÿ: I Ïîëüçîâàòåëè (users, u 2 U) I Îáúåêòû (items, i 2 I) I Ñîáûòèÿ (events, (rui; u; i; : : :) 2 D) Òðåáóåòñÿ: I Ïðåäñêàçàòü ïðåäïî÷òåíèå: ^rui = Predict(u; i; : : :) rui 11
  • 19.
    Ôîðìàëüíàÿ ïîñòàíîâêà Èìååòñÿ: I Ïîëüçîâàòåëè (users, u 2 U) I Îáúåêòû (items, i 2 I) I Ñîáûòèÿ (events, (rui; u; i; : : :) 2 D) Òðåáóåòñÿ: I Ïðåäñêàçàòü ïðåäïî÷òåíèå: ^rui = Predict(u; i; : : :) rui I Ïåðñîíàëüíûå ðåêîìåíäàöèè: u7! (i1; : : : ; iK) = RecommendK(u; : : :) 11
  • 20.
    Ôîðìàëüíàÿ ïîñòàíîâêà Èìååòñÿ: I Ïîëüçîâàòåëè (users, u 2 U) I Îáúåêòû (items, i 2 I) I Ñîáûòèÿ (events, (rui; u; i; : : :) 2 D) Òðåáóåòñÿ: I Ïðåäñêàçàòü ïðåäïî÷òåíèå: ^rui = Predict(u; i; : : :) rui I Ïåðñîíàëüíûå ðåêîìåíäàöèè: u7! (i1; : : : ; iK) = RecommendK(u; : : :) I Ïîõîæèå îáúåêòû: i7! (i1; : : : ; iM) = SimilarM(i) 11
  • 21.
    Òàáëèöà îöåíîê Item1 Item 2 Item 3 Item 4 Item 5 Item 6 User 1 5 4 5 User 2 4 5 User 3 3 5 4 User 4 3 4 User 5 4 2 4 User 6 3 5 12
  • 22.
    Òàáëèöà îöåíîê Item1 Item 2 Item 3 Item 4 Item 5 Item 6 User 1 5 4 5 User 2 4 ? 5 User 3 3 5 ? 4 User 4 ? 3 4 User 5 ? 4 2 4 ? User 6 3 5 12
  • 23.
    Êëàñòåðèçàöèÿ ïîëüçîâàòåëåé IÂûáåðåì íåêîòîðóþ ìåðó ñõîæåñòè ïîëüçîâàòåëåé ïî èõ èñòîðèè îöåíîê sim(u; v). 13
  • 24.
    Êëàñòåðèçàöèÿ ïîëüçîâàòåëåé IÂûáåðåì íåêîòîðóþ ìåðó ñõîæåñòè ïîëüçîâàòåëåé ïî èõ èñòîðèè îöåíîê sim(u; v). I Îáúåäåíèì ïîëüçîâàòåëåé â ãðóïïû (êëàñòåðû) òàê, ÷òîáû ïîõîæèå ïîëüçîâàòåëè îêàçûâàëèñü â îäíîì êëàñòåðå: u7! F(u) 13
  • 25.
    Êëàñòåðèçàöèÿ ïîëüçîâàòåëåé IÂûáåðåì íåêîòîðóþ ìåðó ñõîæåñòè ïîëüçîâàòåëåé ïî èõ èñòîðèè îöåíîê sim(u; v). I Îáúåäåíèì ïîëüçîâàòåëåé â ãðóïïû (êëàñòåðû) òàê, ÷òîáû ïîõîæèå ïîëüçîâàòåëè îêàçûâàëèñü â îäíîì êëàñòåðå: u7! F(u) I Îöåíêó ïîëüçîâàòåëÿ îáúåêòó áóäåì ïðåäñêàçûâàòü êàê ñðåäíþþ îöåíêó âñåãî êëàñòåðà ýòîìó îáúåêòó: ^rui = 1 jF(u)j X v2F(u) rvi 13
  • 26.
    Êëàñòåðèçàöèÿ ïîëüçîâàòåëåé IÂûáåðåì íåêîòîðóþ ìåðó ñõîæåñòè ïîëüçîâàòåëåé ïî èõ èñòîðèè îöåíîê sim(u; v). I Îáúåäåíèì ïîëüçîâàòåëåé â ãðóïïû (êëàñòåðû) òàê, ÷òîáû ïîõîæèå ïîëüçîâàòåëè îêàçûâàëèñü â îäíîì êëàñòåðå: u7! F(u) I Îöåíêó ïîëüçîâàòåëÿ îáúåêòó áóäåì ïðåäñêàçûâàòü êàê ñðåäíþþ îöåíêó âñåãî êëàñòåðà ýòîìó îáúåêòó: ^rui = 1 jF(u)j X v2F(u) rvi Ïðîáëåìû: I Íå÷åãî ðåêîìåíäîâàòü íîâûì/íåòèïè÷íûì ïîëüçîâàòåëÿì. I Íå ó÷èòûâàåòñÿ ñïåöèôèêà êàæäîãî ïîëüçîâàòåëÿ. I Åñëè â êëàñòåðå íèêòî íå îöåíèâàë îáúåêò, òî ïðåäñêàçàíèå ñäåëàòü íå ïîëó÷èòñÿ. 13
  • 27.
    User-based ^rui =ru + P sim(u; v)(rvi rv) P v2Ui v2Ui sim(u; v) 14
  • 28.
    User-based ^rui =ru + P sim(u; v)(rvi rv) P v2Ui v2Ui sim(u; v) Ïðîáëåìû: I Íå÷åãî ðåêîìåíäîâàòü íîâûì/íåòèïè÷íûì ïîëüçîâàòåëÿì. I Õîëîäíûé ñòàðò íîâûå îáúåêòû íèêîìó íå ðåêîìåíäóþòñÿ. 14
  • 29.
    Item-based ^rui =ri + P sim(i; j)(ruj rj) P j2Iu j2Iu sim(i; j) 15
  • 30.
    Item-based ^rui =ri + P sim(i; j)(ruj rj) P j2Iu j2Iu sim(i; j) Ïðîáëåìû: I Õîëîäíûé ñòàðò íîâûå îáúåêòû íèêîìó íå ðåêîìåíäóþòñÿ. I Ðåêîìåíäàöèè ÷àñòî òðèâèàëüíû. 15
  • 31.
    Îáùèå ïðîáëåìû IÕîëîäíûé ñòàðò I Ïëîõèå ïðåäñêàçàíèÿ äëÿ íîâûõ/íåòèïè÷íûõ ïîëüçîâàòåëåé/îáúåêòîâ I Òðèâèàëüíîñòü ðåêîìåíäàöèé I Ðåñóðñîåìêîñòü âû÷èñëåíèé 16
  • 32.
    Ïëàí Âèäû èîáëàñòè ïðèìåíåíèÿ ðåêîìåíäàòåëüíûõ ñèñòåì Ïðîñòåéøèå àëãîðèòìû Ââåäåíèå â ëèíåéíóþ àëãåáðó Àëãîðèòì SVD Èçìåðåíèå êà÷åñòâà ðåêîìåíäàöèé Íàïðàâëåíèÿ ðàçâèòèÿ 17
  • 33.
  • 34.
    Ââåäåíèå â ëèíåéíóþàëãåáðó I Âåêòîð: 18
  • 35.
    Ââåäåíèå â ëèíåéíóþàëãåáðó I Âåêòîð: 18
  • 36.
    Ââåäåíèå â ëèíåéíóþàëãåáðó I Âåêòîð: (x1; x2; : : : ; xn) 18
  • 37.
    Ââåäåíèå â ëèíåéíóþàëãåáðó I Âåêòîð: x = 0 BBB@ x1 x2 ... xn 1 CCCA 18
  • 38.
    Ââåäåíèå â ëèíåéíóþàëãåáðó I Âåêòîð: x = 0 BBB@ x1 x2 ... xn 1 CCCA I Ìàòðèöà: 18
  • 39.
    Ââåäåíèå â ëèíåéíóþàëãåáðó I Âåêòîð: x = 0 BBB@ x1 x2 ... xn 1 CCCA I Ìàòðèöà: 18
  • 40.
    Ââåäåíèå â ëèíåéíóþàëãåáðó I Âåêòîð: x = 0 BBB@ x1 x2 ... xn 1 CCCA I Ìàòðèöà: A nm = 0 BBB@ a11 a12 : : : a1m a21 a22 : : : a2m ... ... . . . ... an1 an2 : : : anm 1 CCCA 18
  • 41.
    Ââåäåíèå â ëèíåéíóþàëãåáðó I Ñëîæåíèå: A + B = 0 B@ a11 + b11 : : : an1 + bn1 ... . . . ... a1m + b1m : : : anm + bnm 1 CA 19
  • 42.
    Ââåäåíèå â ëèíåéíóþàëãåáðó I Ñëîæåíèå: A + B = 0 B@ a11 + b11 : : : an1 + bn1 ... . . . ... a1m + b1m : : : anm + bnm 1 CA I Òðàíñïîíèðîâàíèå: A = 0 BBB@ a11 a12 : : : a1m a21 a22 : : : a2m ... .... . . ... an1 an2 : : : anm 1 CCCA ; AT = 0 BBB@ a11 a21 : : : an1 a12 a22 : : : an2 ... ... . . . ... a1m a2m : : : anm 1 CCCA 19
  • 43.
    Ââåäåíèå â ëèíåéíóþàëãåáðó I Ñëîæåíèå: A + B = 0 B@ a11 + b11 : : : an1 + bn1 ... . . . ... a1m + b1m : : : anm + bnm 1 CA I Òðàíñïîíèðîâàíèå: A = 0 BBB@ a11 a12 : : : a1m a21 a22 : : : a2m ... .... . . ... an1 an2 : : : anm 1 CCCA ; AT = 0 BBB@ a11 a21 : : : an1 a12 a22 : : : an2 ... ... . . . ... a1m a2m : : : anm 1 CCCA I Åäèíè÷íàÿ ìàòðèöà: In = 0 1 0 : : : 0 0 1 : : : 0 BBB@ ... ... . . . ... 0 0 : : : 1 1 CCCA 19
  • 44.
    Ââåäåíèå â ëèíåéíóþàëãåáðó I Óìíîæåíèå: A nk B km = C ; cij = nm Xk l=1 ailblj 20
  • 45.
    Ââåäåíèå â ëèíåéíóþàëãåáðó I Óìíîæåíèå: A nk B km = C ; cij = nm Xk l=1 ailblj A nm Im = In A nm = A nm 20
  • 46.
    Ââåäåíèå â ëèíåéíóþàëãåáðó I Óìíîæåíèå: A nk B km = C ; cij = nm Xk l=1 ailblj A nm Im = In A nm = A nm I Äëèíà (íîðìà) âåêòîðà: kxk = Xn i=1 x2i !1=2 20
  • 47.
    Ââåäåíèå â ëèíåéíóþàëãåáðó I Óìíîæåíèå: A nk B km = C ; cij = nm Xk l=1 ailblj A nm Im = In A nm = A nm I Äëèíà (íîðìà) âåêòîðà: kxk = Xn i=1 x2i !1=2 I Ñêàëÿðíîå ïðîèçâåäåíèå: hx; yi = kxkkyk cos 20
  • 48.
    Ââåäåíèå â ëèíåéíóþàëãåáðó I Óìíîæåíèå: A nk B km = C ; cij = nm Xk l=1 ailblj A nm Im = In A nm = A nm I Äëèíà (íîðìà) âåêòîðà: kxk = Xn i=1 x2i !1=2 I Ñêàëÿðíîå ïðîèçâåäåíèå: cos = hx; yi kxkkyk 20
  • 49.
    Ââåäåíèå â ëèíåéíóþàëãåáðó I Óìíîæåíèå: A nk B km = C ; cij = nm Xk l=1 ailblj A nm Im = In A nm = A nm I Äëèíà (íîðìà) âåêòîðà: kxk = Xn i=1 x2i !1=2 I Ñêàëÿðíîå ïðîèçâåäåíèå: hx; yi = Xn i=1 xiyi = xT y 20
  • 50.
    Ïëàí Âèäû èîáëàñòè ïðèìåíåíèÿ ðåêîìåíäàòåëüíûõ ñèñòåì Ïðîñòåéøèå àëãîðèòìû Ââåäåíèå â ëèíåéíóþ àëãåáðó Àëãîðèòì SVD Èçìåðåíèå êà÷åñòâà ðåêîìåíäàöèé Íàïðàâëåíèÿ ðàçâèòèÿ 21
  • 51.
  • 52.
    Singular Value Decomposition I Ñèíãóëÿðíîå ðàçëîæåíèå ìàòðèöû: A nm = U nn nm V T mm ; U, V îðòîãîíàëüíûå, äèàãîíàëüíàÿ: UUT = In; V V T = Im; 1; : : : ; min(n;m) = diag ; 1 : : : min(n;m) 0: 22
  • 53.
    Singular Value Decomposition I Ñèíãóëÿðíîå ðàçëîæåíèå ìàòðèöû: A nm = U nn nm V T mm ; U, V îðòîãîíàëüíûå, äèàãîíàëüíàÿ: UUT = In; V V T = Im; 1; : : : ; min(n;m) = diag ; 1 : : : min(n;m) 0: I Óñå÷åííîå ðàçëîæåíèå ðàíãà d: d+1; : : : ; min(n;m) := 0; A0 nm = U0 nd 0 dd V 0T dm A 22
  • 54.
    Singular Value Decomposition I Ñèíãóëÿðíîå ðàçëîæåíèå ìàòðèöû: A nm = U nn nm V T mm ; U, V îðòîãîíàëüíûå, äèàãîíàëüíàÿ: UUT = In; V V T = Im; 1; : : : ; min(n;m) = diag ; 1 : : : min(n;m) 0: I Óñå÷åííîå ðàçëîæåíèå ðàíãà d: d+1; : : : ; min(n;m) := 0; A0 nm = U0 nd 0 dd V 0T dm A I A0 íàèëó÷øåå “íèçêîðàíãîâîå” ïðèáëèæåíèå ñ òî÷êè çðåíèÿ ñðåäíå-êâàäðàòè÷íîãî îòêëîíåíèÿ. 22
  • 55.
  • 56.
  • 57.
    SVD äëÿ ðåêîìåíäàöèé ^rui = hpu; qii I Âûÿâëåíèå ñêðûòûõ ïðèçíàêîâ îáúåêòîâ è èíòåðåñîâ ïîëüçîâàòåëåé! 23
  • 58.
    SVD äëÿ ðåêîìåíäàöèé ^rui = hpu; qii I Âûÿâëåíèå ñêðûòûõ ïðèçíàêîâ îáúåêòîâ è èíòåðåñîâ ïîëüçîâàòåëåé! I Ïðîáëåìû: I Ìàòðèöà îöåíîê R íàì ïîëíîñòüþ íå èçâåñòíà. I Ðàçëîæåíèå íå åäèíñòâåííîå: (U )(V )T = UV T 23
  • 59.
    Îáó÷åíèå I Ìîäåëü: ^rui() = pTu qi; = fpu; qi j u 2 U; i 2 Ig 24
  • 60.
    Îáó÷åíèå I Ìîäåëü: ^rui() = pTu qi; = fpu; qi j u 2 U; i 2 Ig I Õîòèì îïòèìèçèðîâàòü êà÷åñòâî ïðåäñêàçàíèé â áóäóùåì: E(u;i) ^rui() rui 2 ! min 24
  • 61.
    Îáó÷åíèå I Ìîäåëü: ^rui() = pTu qi; = fpu; qi j u 2 U; i 2 Ig I Õîòèì îïòèìèçèðîâàòü êà÷åñòâî ïðåäñêàçàíèé â áóäóùåì: E(u;i) ^rui() rui 2 ! min I Èìååì òîëüêî îöåíêè èç ïðîøëîãî (îáó÷àþùàÿ âûáîðêà): X (u;i)2D ^rui() rui 2 | {z } êà÷åñòâî íà îáó÷àþùåé âûáîðêå + X 2 2 | {z } ðåãóëÿðèçàöèÿ ! min 24
  • 62.
  • 63.
    Çà÷åì íóæíà ðåãóëÿðèçàöèÿ? Ïåðåîáó÷åíèå ÿâëåíèå, êîãäà ïîñòðîåííàÿ ìîäåëü õîðîøî îáúÿñíÿåò ïðèìåðû èç îáó÷àþùåé âûáîðêè, íî äîñòàòî÷íî ïëîõî ðàáîòàåò íà ïðèìåðàõ, íå ó÷àñòâîâàâøèõ â îáó÷åíèè. 25
  • 64.
    Çà÷åì íóæíà ðåãóëÿðèçàöèÿ? Ïåðåîáó÷åíèå ÿâëåíèå, êîãäà ïîñòðîåííàÿ ìîäåëü õîðîøî îáúÿñíÿåò ïðèìåðû èç îáó÷àþùåé âûáîðêè, íî äîñòàòî÷íî ïëîõî ðàáîòàåò íà ïðèìåðàõ, íå ó÷àñòâîâàâøèõ â îáó÷åíèè. Êàê èçáåãàòü ïåðåîáó÷åíèÿ? 25
  • 65.
    Çà÷åì íóæíà ðåãóëÿðèçàöèÿ? Ïåðåîáó÷åíèå ÿâëåíèå, êîãäà ïîñòðîåííàÿ ìîäåëü õîðîøî îáúÿñíÿåò ïðèìåðû èç îáó÷àþùåé âûáîðêè, íî äîñòàòî÷íî ïëîõî ðàáîòàåò íà ïðèìåðàõ, íå ó÷àñòâîâàâøèõ â îáó÷åíèè. Êàê èçáåãàòü ïåðåîáó÷åíèÿ? I Ïðîñòûå ìîäåëè 25
  • 66.
    Çà÷åì íóæíà ðåãóëÿðèçàöèÿ? Ïåðåîáó÷åíèå ÿâëåíèå, êîãäà ïîñòðîåííàÿ ìîäåëü õîðîøî îáúÿñíÿåò ïðèìåðû èç îáó÷àþùåé âûáîðêè, íî äîñòàòî÷íî ïëîõî ðàáîòàåò íà ïðèìåðàõ, íå ó÷àñòâîâàâøèõ â îáó÷åíèè. Êàê èçáåãàòü ïåðåîáó÷åíèÿ? I Ïðîñòûå ìîäåëè I Ðåãóëÿðèçàöèÿ 25
  • 67.
    ×èñëåííàÿ îïòèìèçàöèÿ J()= X (u;i)2D pTu qi rui 2 + X u kpuk2 + X i kqik2 26
  • 68.
    ×èñëåííàÿ îïòèìèçàöèÿ J()= X (u;i)2D pTu qi rui 2 + X u kpuk2 + X i kqik2 I Ãðàäèåíò: rJ() = @J @1 ; @J @2 ; : : : ; @J @n T 26
  • 69.
    ×èñëåííàÿ îïòèìèçàöèÿ J()= X (u;i)2D pTu qi rui 2 + X u kpuk2 + X i kqik2 I Ãðàäèåíò: rJ() = @J @1 ; @J @2 ; : : : ; @J @n T 26
  • 70.
  • 71.
  • 72.
    Ãðàäèåíòíûé ñïóñê t+1= t rJ() Ïðîáëåìû: I Ðàáîòàåò î÷åíü ìåäëåííî. I Íàõîäèò ëîêàëüíûé ìèíèìóì, à íå ãëîáàëüíûé. 27
  • 73.
    Alternating Least Squares I L çàâèñèò îò âñåõ ïàðàìåòðîâ êâàäðàòè÷íî. Ïî êàæäîìó ïàðàìåòðó ìîæíî íàéòè òî÷íûé îïòèìóì. 28
  • 74.
    Alternating Least Squares I L çàâèñèò îò âñåõ ïàðàìåòðîâ êâàäðàòè÷íî. Ïî êàæäîìó ïàðàìåòðó ìîæíî íàéòè òî÷íûé îïòèìóì. I Äëÿ êàæäîãî ïîëüçîâàòåëÿ è äëÿ êàæäîãî îáúåêòà çàäà÷à îïòèìèçàöèè â òî÷íîñòè ìåòîä íàèìåíüøèõ êâàäðàòîâ. p u() = arg min pu J() = (QTu Qu + I)1QTu ru; qi () = arg min qi J() = (PTi Pi + I)1PTi ri: 28
  • 75.
    Alternating Least Squares I L çàâèñèò îò âñåõ ïàðàìåòðîâ êâàäðàòè÷íî. Ïî êàæäîìó ïàðàìåòðó ìîæíî íàéòè òî÷íûé îïòèìóì. I Äëÿ êàæäîãî ïîëüçîâàòåëÿ è äëÿ êàæäîãî îáúåêòà çàäà÷à îïòèìèçàöèè â òî÷íîñòè ìåòîä íàèìåíüøèõ êâàäðàòîâ. p u() = arg min pu J() = (QTu Qu + I)1QTu ru; qi () = arg min qi J() = (PTi Pi + I)1PTi ri: I Èòåðàòèâíûé àëãîðèòì ALS: 8u 2 U p2t+1 u = p u(2t); 8i 2 I q2t+2 i = qi (2t+1): 28
  • 76.
    Alternating Least Squares I L çàâèñèò îò âñåõ ïàðàìåòðîâ êâàäðàòè÷íî. Ïî êàæäîìó ïàðàìåòðó ìîæíî íàéòè òî÷íûé îïòèìóì. I Äëÿ êàæäîãî ïîëüçîâàòåëÿ è äëÿ êàæäîãî îáúåêòà çàäà÷à îïòèìèçàöèè â òî÷íîñòè ìåòîä íàèìåíüøèõ êâàäðàòîâ. p u() = arg min pu J() = (QTu Qu + I)1QTu ru; qi () = arg min qi J() = (PTi Pi + I)1PTi ri: I Èòåðàòèâíûé àëãîðèòì ALS: 8u 2 U p2t+1 u = p u(2t); 8i 2 I q2t+2 i = qi (2t+1): I Êàæäûé øàã ìîæíî ðàñïàðàëëåëèòü. 28
  • 77.
    Ïëàí Âèäû èîáëàñòè ïðèìåíåíèÿ ðåêîìåíäàòåëüíûõ ñèñòåì Ïðîñòåéøèå àëãîðèòìû Ââåäåíèå â ëèíåéíóþ àëãåáðó Àëãîðèòì SVD Èçìåðåíèå êà÷åñòâà ðåêîìåíäàöèé Íàïðàâëåíèÿ ðàçâèòèÿ 29
  • 78.
  • 79.
    Ìåòðèêè Òî, ÷òîíåëüçÿ èçìåðèòü, íåëüçÿ è óëó÷øèòü. 30
  • 80.
    Ìåòðèêè Òî, ÷òîíåëüçÿ èçìåðèòü, íåëüçÿ è óëó÷øèòü. Ìåòðèêà ïðåäñêàçàíèÿ îöåíêè: RMSE = vuut 1 jDj X (u;i)2D (^rui rui)2 30
  • 81.
    Ìåòðèêè Òî, ÷òîíåëüçÿ èçìåðèòü, íåëüçÿ è óëó÷øèòü. Ìåòðèêà ïðåäñêàçàíèÿ îöåíêè: RMSE = vuut 1 jDj X (u;i)2D (^rui rui)2 Íåäîñòàòêè: I Ó êàæäîãî ïîëüçîâàòåëÿ ñâîå ïðåäñòàâëåíèå î øêàëå îöåíîê. I Îøèáêà â ïðåäñêàçàíèè âûñîêîé îöåíêè èìååò òàêîé æå âåñ, ÷òî è îøèáêà â ïðåäñêàçàíèè íèçêîé îöåíêè. I Ìîæíî èìåòü ïî÷òè èäåàëüíóþ ìåòðèêó RMSE, íî èìåòü î÷åíü ïëîõîå êà÷åñòâî ðàíæèðîâàíèÿ, è íàîáîðîò. 30
  • 82.
  • 83.
    Ìåòðèêè ðàíæèðîâàíèÿ ÏóñòüR ìíîæåñòâî ðåêîìåíäîâàííûõ îáúåêòîâ, P ìíîæåñòâî îáúåêòîâ, êîòîðûå íà ñàìîì äåëå ïîëüçîâàòåëþ ïîíðàâÿòñÿ. Precision = jR Pj jRj Recall = jR Pj jPj 31
  • 84.
    Ìåòðèêè ðàíæèðîâàíèÿ ÏóñòüR ìíîæåñòâî ðåêîìåíäîâàííûõ îáúåêòîâ, P ìíîæåñòâî îáúåêòîâ, êîòîðûå íà ñàìîì äåëå ïîëüçîâàòåëþ ïîíðàâÿòñÿ. Precision = jR Pj jRj Recall = jR Pj jPj Ïðîáëåìû: I Íåò äàííûõ ïðî ðåêîìåíäîâàííûå îáúåêòû, êîòîðûå ïîëüçîâàòåëü íå îöåíèâàë. I Îïòèìèçèðîâàòü ýòè ìåòðèêè íàïðÿìóþ ïî÷òè íåâîçìîæíî. 31
  • 85.
    Äðóãèå ñâîéñòâà ðåêîìåíäàöèé Æåëàåìûå ñâîéñòâà ðåêîìåíäàöèé, êîòîðûå, âîçìîæíî, íå âûðàæàþòñÿ êà÷åñòâîì ïðåäñêàçàíèÿ îöåíêè: 32
  • 86.
    Äðóãèå ñâîéñòâà ðåêîìåíäàöèé Æåëàåìûå ñâîéñòâà ðåêîìåíäàöèé, êîòîðûå, âîçìîæíî, íå âûðàæàþòñÿ êà÷åñòâîì ïðåäñêàçàíèÿ îöåíêè: I Diversity (ðàçíîîáðàçèå) 32
  • 87.
    Äðóãèå ñâîéñòâà ðåêîìåíäàöèé Æåëàåìûå ñâîéñòâà ðåêîìåíäàöèé, êîòîðûå, âîçìîæíî, íå âûðàæàþòñÿ êà÷åñòâîì ïðåäñêàçàíèÿ îöåíêè: I Diversity (ðàçíîîáðàçèå) 32
  • 88.
    Äðóãèå ñâîéñòâà ðåêîìåíäàöèé Æåëàåìûå ñâîéñòâà ðåêîìåíäàöèé, êîòîðûå, âîçìîæíî, íå âûðàæàþòñÿ êà÷åñòâîì ïðåäñêàçàíèÿ îöåíêè: I Diversity (ðàçíîîáðàçèå) I Serendipity (íåîæèäàííîñòü) 32
  • 89.
    Äðóãèå ñâîéñòâà ðåêîìåíäàöèé Æåëàåìûå ñâîéñòâà ðåêîìåíäàöèé, êîòîðûå, âîçìîæíî, íå âûðàæàþòñÿ êà÷åñòâîì ïðåäñêàçàíèÿ îöåíêè: I Diversity (ðàçíîîáðàçèå) I Serendipity (íåîæèäàííîñòü) 32
  • 90.
    Äðóãèå ñâîéñòâà ðåêîìåíäàöèé Æåëàåìûå ñâîéñòâà ðåêîìåíäàöèé, êîòîðûå, âîçìîæíî, íå âûðàæàþòñÿ êà÷åñòâîì ïðåäñêàçàíèÿ îöåíêè: I Diversity (ðàçíîîáðàçèå) I Serendipity (íåîæèäàííîñòü) I Novelty (íîâèçíà) 32
  • 91.
    Äðóãèå ñâîéñòâà ðåêîìåíäàöèé Æåëàåìûå ñâîéñòâà ðåêîìåíäàöèé, êîòîðûå, âîçìîæíî, íå âûðàæàþòñÿ êà÷åñòâîì ïðåäñêàçàíèÿ îöåíêè: I Diversity (ðàçíîîáðàçèå) I Serendipity (íåîæèäàííîñòü) I Novelty (íîâèçíà) 32
  • 92.
    Äðóãèå ñâîéñòâà ðåêîìåíäàöèé Æåëàåìûå ñâîéñòâà ðåêîìåíäàöèé, êîòîðûå, âîçìîæíî, íå âûðàæàþòñÿ êà÷åñòâîì ïðåäñêàçàíèÿ îöåíêè: I Diversity (ðàçíîîáðàçèå) I Serendipity (íåîæèäàííîñòü) I Novelty (íîâèçíà) I Coverage, Trust, Utility, Robustness, Adaptivity, Scalability, . . . 32
  • 93.
    Ïîõîæèå îáúåêòû ×òîòàêîå ïîõîæèå îáúåêòû? 33
  • 94.
    Ïîõîæèå îáúåêòû ×òîòàêîå ïîõîæèå îáúåêòû? I Îáúåêòû, ïîõîæèå ïî ñâîèì ïðèçíàêàì (content-based). 33
  • 95.
    Ïîõîæèå îáúåêòû ×òîòàêîå ïîõîæèå îáúåêòû? I Îáúåêòû, ïîõîæèå ïî ñâîèì ïðèçíàêàì (content-based). I Îáúåêòû, êîòîðûå ÷àñòî èñïîëüçóþò âìåñòå (¾êëèåíòû, êóïèâøèå i, òàêæå ïîêóïàëè j¿). 33
  • 96.
    Ïîõîæèå îáúåêòû ×òîòàêîå ïîõîæèå îáúåêòû? I Îáúåêòû, ïîõîæèå ïî ñâîèì ïðèçíàêàì (content-based). I Îáúåêòû, êîòîðûå ÷àñòî èñïîëüçóþò âìåñòå (¾êëèåíòû, êóïèâøèå i, òàêæå ïîêóïàëè j¿). I Ðåêîìåíäàöèè äëÿ ïîëüçîâàòåëÿ, êîòîðîìó ïîíðàâèëñÿ äàííûé îáúåêò. 33
  • 97.
    Ïîõîæèå îáúåêòû ×òîòàêîå ïîõîæèå îáúåêòû? I Îáúåêòû, ïîõîæèå ïî ñâîèì ïðèçíàêàì (content-based). I Îáúåêòû, êîòîðûå ÷àñòî èñïîëüçóþò âìåñòå (¾êëèåíòû, êóïèâøèå i, òàêæå ïîêóïàëè j¿). I Ðåêîìåíäàöèè äëÿ ïîëüçîâàòåëÿ, êîòîðîìó ïîíðàâèëñÿ äàííûé îáúåêò. I Ðåêîìåíäàöèè, â êîòîðûõ äàííûé îáúåêò âûñòóïàåò â êà÷åñòâå êîíòåêñòà. 33
  • 98.
    Ïëàí Âèäû èîáëàñòè ïðèìåíåíèÿ ðåêîìåíäàòåëüíûõ ñèñòåì Ïðîñòåéøèå àëãîðèòìû Ââåäåíèå â ëèíåéíóþ àëãåáðó Àëãîðèòì SVD Èçìåðåíèå êà÷åñòâà ðåêîìåíäàöèé Íàïðàâëåíèÿ ðàçâèòèÿ 34
  • 99.
  • 100.
    Êîíöåïòóàëüíûå âîïðîñû IÊàê ñòðîèòü ñïèñêè ðåêîìåíäàöèé íà îñíîâå ïðåäñêàçàíèé? 35
  • 101.
    Êîíöåïòóàëüíûå âîïðîñû IÊàê ñòðîèòü ñïèñêè ðåêîìåíäàöèé íà îñíîâå ïðåäñêàçàíèé? I Êàê óëó÷øàòü êà÷åñòâî èìåííî ðåêîìåíäàöèé, à íå ïðåäñêàçàíèé? 35
  • 102.
    Êîíöåïòóàëüíûå âîïðîñû IÊàê ñòðîèòü ñïèñêè ðåêîìåíäàöèé íà îñíîâå ïðåäñêàçàíèé? I Êàê óëó÷øàòü êà÷åñòâî èìåííî ðåêîìåíäàöèé, à íå ïðåäñêàçàíèé? I Êàê èçìåðÿòü ïîõîæåñòè îáúåêòîâ? 35
  • 103.
    Êîíöåïòóàëüíûå âîïðîñû IÊàê ñòðîèòü ñïèñêè ðåêîìåíäàöèé íà îñíîâå ïðåäñêàçàíèé? I Êàê óëó÷øàòü êà÷åñòâî èìåííî ðåêîìåíäàöèé, à íå ïðåäñêàçàíèé? I Êàê èçìåðÿòü ïîõîæåñòè îáúåêòîâ? I Êàê îáîñíîâûâàòü ðåêîìåíäàöèè? 35
  • 104.
  • 105.
    Òåõíè÷åñêèå âîïðîñû IÊàê ðåøàòü ïðîáëåìó õîëîäíîãî ñòàðòà äëÿ íîâûõ ïîëüçîâàòåëåé è íîâûõ îáúåêòîâ? 36
  • 106.
    Òåõíè÷åñêèå âîïðîñû IÊàê ðåøàòü ïðîáëåìó õîëîäíîãî ñòàðòà äëÿ íîâûõ ïîëüçîâàòåëåé è íîâûõ îáúåêòîâ? I Êàê áûñòðî îáíîâëÿòü ðåêîìåíäàöèè? 36
  • 107.
    Òåõíè÷åñêèå âîïðîñû IÊàê ðåøàòü ïðîáëåìó õîëîäíîãî ñòàðòà äëÿ íîâûõ ïîëüçîâàòåëåé è íîâûõ îáúåêòîâ? I Êàê áûñòðî îáíîâëÿòü ðåêîìåíäàöèè? I Êàê áûñòðî íàõîäèòü îáúåêòû ñ íàèáîëüøèì ïðåäñêàçàíèåì? 36
  • 108.
    Òåõíè÷åñêèå âîïðîñû IÊàê ðåøàòü ïðîáëåìó õîëîäíîãî ñòàðòà äëÿ íîâûõ ïîëüçîâàòåëåé è íîâûõ îáúåêòîâ? I Êàê áûñòðî îáíîâëÿòü ðåêîìåíäàöèè? I Êàê áûñòðî íàõîäèòü îáúåêòû ñ íàèáîëüøèì ïðåäñêàçàíèåì? I Êàê èçìåðÿòü êà÷åñòâî îíëàéí-ðåêîìåíäàöèé? 36
  • 109.
    Òåõíè÷åñêèå âîïðîñû IÊàê ðåøàòü ïðîáëåìó õîëîäíîãî ñòàðòà äëÿ íîâûõ ïîëüçîâàòåëåé è íîâûõ îáúåêòîâ? I Êàê áûñòðî îáíîâëÿòü ðåêîìåíäàöèè? I Êàê áûñòðî íàõîäèòü îáúåêòû ñ íàèáîëüøèì ïðåäñêàçàíèåì? I Êàê èçìåðÿòü êà÷åñòâî îíëàéí-ðåêîìåíäàöèé? I Êàê ìàñøòàáèðîâàòü ñèñòåìó? 36
  • 110.
  • 111.
    Êàê ó÷èòûâàòü äîïîëíèòåëüíóþèíôîðìàöèþ? I Êàê ó÷èòûâàòü íå òîëüêî ÿâíûé (explicit), íî è íåÿâíûé (implicit) ôèäáåê? 37
  • 112.
    Êàê ó÷èòûâàòü äîïîëíèòåëüíóþèíôîðìàöèþ? I Êàê ó÷èòûâàòü íå òîëüêî ÿâíûé (explicit), íî è íåÿâíûé (implicit) ôèäáåê? I Êàê ó÷èòûâàòü êîíòåêñò? (Context-aware recommendations) 37
  • 113.
    Êàê ó÷èòûâàòü äîïîëíèòåëüíóþèíôîðìàöèþ? I Êàê ó÷èòûâàòü íå òîëüêî ÿâíûé (explicit), íî è íåÿâíûé (implicit) ôèäáåê? I Êàê ó÷èòûâàòü êîíòåêñò? (Context-aware recommendations) I Êàê ó÷èòûâàòü ïðèçíàêè îáúåêòîâ? (Ãèáðèäíûå ñèñòåìû) 37
  • 114.
    Êàê ó÷èòûâàòü äîïîëíèòåëüíóþèíôîðìàöèþ? I Êàê ó÷èòûâàòü íå òîëüêî ÿâíûé (explicit), íî è íåÿâíûé (implicit) ôèäáåê? I Êàê ó÷èòûâàòü êîíòåêñò? (Context-aware recommendations) I Êàê ó÷èòûâàòü ïðèçíàêè îáúåêòîâ? (Ãèáðèäíûå ñèñòåìû) I Êàê ó÷èòûâàòü ñâÿçè ìåæäó îáúåêòàìè (òàêñîíîìèþ)? 37
  • 115.
    Êàê ó÷èòûâàòü äîïîëíèòåëüíóþèíôîðìàöèþ? I Êàê ó÷èòûâàòü íå òîëüêî ÿâíûé (explicit), íî è íåÿâíûé (implicit) ôèäáåê? I Êàê ó÷èòûâàòü êîíòåêñò? (Context-aware recommendations) I Êàê ó÷èòûâàòü ïðèçíàêè îáúåêòîâ? (Ãèáðèäíûå ñèñòåìû) I Êàê ó÷èòûâàòü ñâÿçè ìåæäó îáúåêòàìè (òàêñîíîìèþ)? I Êàê ó÷èòûâàòü ïðèçíàêè è ñâÿçè ïîëüçîâàòåëåé? 37
  • 116.
    Êàê ó÷èòûâàòü äîïîëíèòåëüíóþèíôîðìàöèþ? I Êàê ó÷èòûâàòü íå òîëüêî ÿâíûé (explicit), íî è íåÿâíûé (implicit) ôèäáåê? I Êàê ó÷èòûâàòü êîíòåêñò? (Context-aware recommendations) I Êàê ó÷èòûâàòü ïðèçíàêè îáúåêòîâ? (Ãèáðèäíûå ñèñòåìû) I Êàê ó÷èòûâàòü ñâÿçè ìåæäó îáúåêòàìè (òàêñîíîìèþ)? I Êàê ó÷èòûâàòü ïðèçíàêè è ñâÿçè ïîëüçîâàòåëåé? I Êàê ó÷èòûâàòü èíôîðìàöèþ èç äðóãèõ ïðåäìåòíûõ îáëàñòåé? (Cross-domain recommendations) 37
  • 117.
    Ëèòåðàòóðà I Ââåäåíèåâ àëãåáðó, Êîñòðèêèí À.È. I Ìàòåìàòè÷åñêèé àíàëèç, Çîðè÷ Â.À. I Êóðñ òåîðèè âåðîÿòíîñòåé, Ãíåäåíêî Á.Â. I Ìàøèííîå îáó÷åíèå, Âîðîíöîâ Ê.Â., êóðñ ëåêöèé 38
  • 118.