ich die Collaborative Filtering-Algorithmus in Funken implementiert Ausprobieren und leite in das folgende Problem:Funken MLLib Collaborative Filtering mit neuen Benutzer
Angenommen, ich trainiere ein Modell mit den folgenden Daten:
u1|p1|3
u1|p2|3
u2|p1|2
u2|p2|3
Nun, wenn ich testen sie es mit den folgenden Daten:
u1|p1|1
u3|p1|2
u3|p2|3
ich nie Bewertungen für den Benutzer ‚u3‘ sehen, vermutlich weil die Nutzer nicht in den Trainingsdaten angezeigt wird. Liegt das an dem Kaltstartproblem? Ich hatte den Eindruck, dass dieses Problem nur für ein neues Produkt gelten würde. In diesem Fall hätte ich eine Vorhersage für 'u3' erwartet, da 'u1' und 'u2' in den Trainingsdaten ähnliche Bewertungsinformationen wie 'u3' haben. Ist dies der Unterschied zwischen modellbasierter und speicherbasierter kollaborativer Filterung?
konnten Sie mit Benutzer und Produkt als Nicht-Ganzzahlen trainieren? Wenn ich versuche, in diesem Format zu trainieren, erhalte ich den Fehler: Rating, (int (self.user), int (self.product), float (self.rating)) – jKraut
Sieht aus, als ob wir ähnliche Probleme haben neue Benutzer, ohne das ganze Modell umschulen zu müssen? –