Recupero

Supponiamo di avere un modello di incorporamento. Dato che un utente, come faresti per decidere quali articoli consigliare?

Al momento della pubblicazione, data una query, inizi eseguendo una delle seguenti operazioni:

  • Per un modello di fattorizzazione matriciale, l'incorporamento della query (o dell'utente) è noto in modo statico e il sistema può semplicemente di incorporamento dell'utente.
  • Per un modello DNN, il sistema calcola l'incorporamento della query \(\psi(x)\) al momento della pubblicazione eseguendo la rete sul vettore di caratteristiche \(x\).

Dopo aver ottenuto l'incorporamento della query \(q\), cerca gli incorporamenti degli elementi \(V_j\) vicino a \(q\) nello spazio di incorporamento. Questo è il problema del vicino più prossimo. Ad esempio, puoi restituire top-k elementi in base al punteggio di somiglianza \(s(q, V_j)\).

Immagine di uno spettro bidimensionale con diversi film e utenti disposti
dai film per bambini ai film per adulti, dai film d'essai ai film di successo. Un utente è
evidenziato nonché due film vicini.

Puoi utilizzare un approccio simile nei consigli sugli articoli correlati. Ad esempio: quando l'utente sta guardando un video di YouTube, il sistema può prima cercare incorporamento di quell'elemento, quindi cerca incorporamenti di altri elementi \(V_j\) ravvicinate nello spazio di incorporamento.

Recupero su larga scala

Per calcolare i vicini più prossimi nello spazio di incorporamento, il sistema possono valutare in modo esaustivo ogni potenziale candidato. Punteggio esaustivo può essere costoso per corpora molto grande, ma puoi utilizzare uno dei le seguenti strategie per renderlo più efficiente:

  • Se l'incorporamento della query è noto in modo statico, il sistema può eseguire il punteggio offline, il precomputing e l'archiviazione di un elenco i candidati migliori per ogni query. Questa è una pratica comune suggerimento sull'articolo correlato.
  • Usa i vicini più prossimi approssimati.