Łatwo zauważyć, że metoda oferuje dokładnie to, czego potrzebujemy. Dla każdego filmu j G M postępujemy następująco. Każdemu użytkownikowi i € Mj przyporządkowujemy jeden wiersz, a każdemu filmowi k G Mo jedną kolumnę macierzy A. Następnie w każdej komórce umieszczamy odpowiednią wartość r,fc, a wektor b wypełniamy kolejnymi ocenami r{j. Wtedy twierdzenie 4.1.1 pozwala nam znaleźć optymalne wartości - są to po prostu kolejne współrzędne wektora xo-
W praktyce często stosuje się nieco rozszerzoną wersję powyższego twierdzenia określaną angielskim terminem ridge regression (zob. [8]). Zamiast dążyć do zminimalizowania wartości ||Ar — 6|| dążymy do zminimalizowania następującej sumy:
\\Ax - b||2 + A||x||2, (4.3)
dla pewnego A G M. Intuicyjnie rozumując, ten rodzaj regularyzacji powoduje zbliżenie wartości x do zera tym mocniej im większy jest parametr A. Pozwala to uniknąć nadmiernego dopasowywania się współczynników modelu do danych treningowych (przeuczenia). Inną ważną zaletą tej metody jest lepsza stabilność numeryczna obliczeń spowodowana przez odsunięcie wartości własnych odwracanej macierzy ATA od zera. Faktycznie, wzór na optymalny wektor xo w zmodyfikowanej wersji wygląda następująco:
10 = A(AtA + \I)~1ATb (4.4)
Dowód przebiega analogicznie jak poprzednio.
Ponieważ czas działania algorytmu mocno zależy od rozmiaru zbioru Mo, więc w praktyce ograniczyłem się do zbioru złożonego z 25 najczęściej ocenianych filmów. Tabela 4.1 prezentuje zależność osiągniętego wyniku w zależności od wartości parametru A.
A |
RMSE |
500 |
0.968531 |
1000 |
0.968433 |
1500 |
0.968422 |
2000 |
0.968439 |
2500 |
0.968469 |
Tabela 4.1: Wartość RMSE na zbiorze Test\ w zależności parametru A.
Ciekawą modyfikacją tego algorytmu (zaproponowaną m.in. w pracy [4]) jest wykorzystanie jedynie danych binarnych - zamiast wartości ry we wzorze 4.1 wstawiamy 1 jeśli (i,j) G Train, a 0 w przeciwnym przypadku, ignorując zupełnie wartość oceny. Tak określony model samodzielnie sprawdza się nieco gorzej, jednak pozwala nieco poprawnie końcowy wynik. Tabela 4.2 prezentuje zależność osiągniętego rezultatu w zależności od parametru regularyzacji A.