Panoramica della generazione dei candidati

La generazione dei candidati è la prima fase della raccomandazione. Data una query, il sistema genera un insieme di candidati pertinenti. La tabella seguente mostra due approcci comuni alla generazione dei candidati:

TipoDefinizioneEsempio
filtro basato sui contenuti Utilizza la somiglianza tra gli elementi per consigliare elementi simili a ciò che piace all'utente. Se l'utente A guarda due video di gatti carini, il sistema può consigliare a questi utenti dei video di animali adorabili.
filtro collaborativo Per fornire consigli, utilizza le somiglianze tra query ed elementi contemporaneamente. Se l'utente A è simile all'utente B e all'utente B piace il video 1, il sistema può consigliare il video 1 all'utente A (anche se l'utente A non ha visto video simili al video 1).

Incorporamento dello spazio

I filtri sia basati sia sui contenuti mappano ogni elemento e ogni query (o contesto) a un vettore di incorporamento in uno spazio di incorporamento comune \(E = \mathbb R^d\). In genere, lo spazio di incorporamento è di dimensioni ridotte (ovvero, \(d\) è molto più piccolo delle dimensioni del corpus) e acquisisce una struttura latente dell'elemento o del set di query. Elementi simili, come i video di YouTube, che di solito vengono guardati dallo stesso utente, si avvicinano nello spazio di incorporamento. Il concetto di "vicinanza" è definito da una misura di somiglianza.

Misure di somiglianza

Una misura di similitudine è una funzione \(s : E \times E \to \mathbb R\) che prende una coppia di incorporamenti e restituisce una scala che misura la loro somiglianza. Gli incorporamenti possono essere utilizzati per la generazione dei candidati come segue: in presenza di incorporamenti di query \(q \in E\), il sistema cerca incorporamenti di elementi\(x \in E\) che sono vicini ad \(q\), ovvero incorporazioni con elevata somiglianza \(s(q, x)\).

Per determinare il grado di somiglianza, la maggior parte dei sistemi di consigli si basa su uno o più dei seguenti elementi:

  • coseno
  • prodotto con più punti
  • Distanza euclidea

Coseno

Questo è semplicemente il coseno dell'angolo tra i due vettori, \(s(q, x) = \cos(q, x)\)

Prodotto con punti

Il prodotto con punti di due vettori è\(s(q, x) = \langle q, x \rangle = \sum_{i = 1}^d q_i x_i\). È anche dato da \(s(q, x) = \|x\| \|q\| \cos(q, x)\) (il coseno dell'angolo moltiplicato per il prodotto di norme). Pertanto, se gli incorporamenti sono normalizzati, allora il prodotto a punti e il coseno coincidono.

Distanza euclidea

Questa è la distanza abituale nello spazio euclideo, \(s(q, x) = \|q - x\| = \left[ \sum_{i = 1}^d (q_i - x_i)^2\right]^{\frac{1}{2}}\). Una distanza minore indica una maggiore somiglianza. Tieni presente che, quando gli incorporamenti sono normalizzati, la distanza euclidea al quadrato coincide con il punto-prodotto (e il coseno) fino a una costante, dato che in quel caso \(\frac{1}{2}\|q - x\|^2 = 1 - \langle q, x \rangle\).

Immagine che mostra uno spazio di incorporamento bidimensionale, che contiene un incorporamento della query e tre elementi candidati.

Confronto di misure di somiglianza

Considera l'esempio nella figura a destra. Il vettore nero illustra l'incorporamento della query. Gli altri tre vettori di incorporamento (elemento A, elemento B, elemento C) rappresentano gli elementi candidati. A seconda della misura di somiglianza utilizzata, il ranking degli elementi può essere diverso.

Utilizzando l'immagine, prova a determinare il ranking dell'articolo utilizzando tutte e tre le misure di somiglianza: coseno, punto con prodotto e distanza euclidea.

Quale misurazione per la somiglianza scegliere?

Rispetto al coseno, la somiglianza del prodotto con punti è sensibile alla norma dell'incorporamento. In altre parole, maggiore è la norma di un incorporamento, maggiore è la somiglianza (per gli elementi con un'angolazione acuta) e maggiore è la probabilità che l'elemento venga consigliato. Questo può influire sui consigli come segue:

  • Gli elementi che appaiono molto spesso nel set di addestramento (ad esempio, i video di YouTube più popolari) tendono a includere incorporamenti con norme di grandi dimensioni. Se è auspicabile acquisire informazioni sulla popolarità, devi preferire un punto. Tuttavia, se non fai attenzione, gli elementi più apprezzati potrebbero finire per dominare i consigli. In pratica, puoi utilizzare altre varianti di misure di somiglianza che mettono meno in evidenza la norma dell'elemento. Ad esempio, definisci\(s(q, x) = \|q\|^\alpha \|x\|^\alpha \cos(q, x)\) per alcuni \(\alpha \in (0, 1)\).

  • Gli elementi che vengono visualizzati molto raramente potrebbero non essere aggiornati di frequente durante l'addestramento. Di conseguenza, se vengono inizializzati con una norma di grandi dimensioni, il sistema può consigliare gli elementi rari rispetto agli elementi più pertinenti. Per evitare questo problema, fai attenzione a incorporare l'inizializzazione e utilizza la regolarizzazione appropriata. Analizzeremo il problema nel primo esercizio.