We wszystkich nowoczesnych systemach rekomendujących, które widziałem, które opierają się na faktoryzacji macierzy, nieujemna faktoryzacja macierzy jest wykonywana na matrycy filmu użytkownika. Rozumiem, dlaczego brak negatywności jest ważny dla interpretacji i / lub jeśli chcesz rzadkich czynników. Ale jeśli zależy ci tylko na wydajności przewidywania, jak na przykład w konkursie z nagrodą Netflix, po co nakładać ograniczenie nieujemności? Wydaje się, że jest to zdecydowanie gorsze niż dopuszczenie ujemnych wartości również w faktoryzacji.
Ten artykuł jest jednym z najczęściej cytowanych przykładów zastosowania nieujemnego rozkładania macierzy w filtrowanie kooperacyjne.
Odpowiedzi:
Nie jestem specjalistą od systemów rekomendujących, ale o ile rozumiem, założenie tego pytania jest błędne.
Brak negatywności nie jest tak ważny dla wspólnego filtrowania.
Nagrodę Netflix wygrał w 2009 roku zespół BellKor. Oto artykuł opisujący ich algorytm: Rozwiązanie BellKor 2008 dla nagrody Netflix . Jak łatwo zauważyć, wykorzystują podejście oparte na SVD:
Zobacz także ten bardziej popularny opis tego samego zespołu Techniki faktoryzacji macierzy dla systemów rekomendujących . Mówią dużo o SVD, ale w ogóle nie wspominają o NNMF.
Zobacz także ten popularny wpis na blogu Aktualizacja Netflix: Wypróbuj to w domu od 2006 roku, wyjaśniając także pomysły SVD.
Oczywiście masz rację i jest też trochę pracy nad użyciem NNMF do wspólnego filtrowania. Więc co działa lepiej, SVD lub NNMF? Nie mam pojęcia, ale oto wniosek z badania porównawczego algorytmów filtrowania opartego na współpracy z 2012 r .:
źródło