Angenommen, Sie haben ein Einbettungsmodell. Wie würden Sie bei einem Nutzer welche Artikel Sie empfehlen sollten?
Zum Zeitpunkt der Bereitstellung führen Sie für eine Abfrage einen der folgenden Schritte aus:
- Bei einem Matrixfaktorisierungsmodell ist die Abfrage- oder Nutzereinbettung bekannt. statisch werden und das System sie einfach vom die Matrix für die Nutzereinbettung.
- Bei einem DNN-Modell berechnet das System die Abfrageeinbettung \(\psi(x)\) bei der Bereitstellung, indem das Netzwerk auf dem Featurevektor \(x\)ausgeführt wird.
Nachdem Sie die Abfrageeinbettung \(q\)erstellt haben, suchen Sie nach Elementeinbettungen. \(V_j\) die sich in der Nähe \(q\) des Einbettungsbereichs befinden. Dies ist das Problem des nächsten Nachbarn. Sie können z. B. das obere k zurückgeben. Elemente entsprechend dem Ähnlichkeitswert \(s(q, V_j)\).
Bei Empfehlungen für ähnliche Artikel können Sie einen ähnlichen Ansatz verfolgen. Beispiel: Wenn ein Nutzer sich ein YouTube-Video ansieht, kann das System zuerst dieses Objekts einzubetten und dann nach Einbettungen anderer Objekte zu suchen. \(V_j\) , die sich in der Nähe des Einbettungsbereichs befinden.
Datenabruf in großem Umfang
Um die nächsten Nachbarn im Einbettungsbereich zu berechnen, alle potenziellen Kandidat*innen vollständig bewerten. Überflüssige Bewertung kann für sehr große Korpora teuer sein, aber Sie können die folgenden Strategien, um sie effizienter zu machen:
- Wenn die Abfrageeinbettung statisch bekannt ist, kann das System vollständige Bewertung offline, Vorabberechnung und Speicherung einer Liste Top-Kandidaten für jede Suchanfrage. Dies ist eine gängige Praxis bei Empfehlungen für ähnliche Artikel.
- Verwenden Sie die ungefähren nächsten Nachbarn.