Ora hai gli embedding per qualsiasi coppia di esempi. Una misura della somiglianza supervisionata prende questi incorporamenti e restituisce un numero che ne misura la somiglianza. Ricorda che gli embedding sono vettori di numeri. Per trovare la somiglianza tra due vettori \(A = [a_1,a_2,...,a_n]\) e \(B = [b_1,b_2,...,b_n]\), scegli una di queste tre misure di somiglianza:
Misura | Significato | Formula | Man mano che la somiglianza aumenta, questa misura... |
---|---|---|---|
Distanza euclidea | Distanza tra le estremità dei vettori | \(\sqrt{(a_1-b_1)^2+(a_2-b_2)^2+...+(a_N-b_N)^2}\) | Diminuisce |
Coseno | Coseno dell'angolo \(\theta\) tra vettori | \(\frac{a^T b}{|a| \cdot |b|}\) | Aumenta |
Prodotto scalare | Il coseno moltiplicato per le lunghezze di entrambi i vettori | \(a_1b_1+a_2b_2+...+a_nb_n\) \(=|a||b|cos(\theta)\) | Aumenta. Aumenta anche con la lunghezza dei vettori. |
Scegliere una misura di somiglianza
A differenza del coseno, il prodotto scalare è proporzionale alla lunghezza del vettore. Questo è importante perché gli esempi che compaiono molto spesso nell'insieme di addestramento (ad esempio i video di YouTube più popolari) tendono ad avere vettori di embedding di lunghezze elevate. Se vuoi acquisire popolarità, scegli il prodotto in punto. Tuttavia, il rischio è che gli esempi più popolari possano distorcere la metrica di somiglianza. Per bilanciare questo scostamento, puoi elevare la lunghezza a un esponente \(\alpha\ < 1\) per calcolare il prodotto scalare \(|a|^{\alpha}|b|^{\alpha}\cos(\theta)\).
Per comprendere meglio in che modo la lunghezza del vettore modifica la misura della somiglianza, normalizza le lunghezze dei vettori a 1 e nota che le tre misure diventano proporzionali tra loro.
- Distanza euclidea = \(||a-b|| = \sqrt{||a||^2 + ||b||^2 - 2a^{T}b} = \sqrt{2-2\cos(\theta_{ab})}\).
- Prodotto scalare = \( |a||b| \cos(\theta_{ab}) = 1\cdot1\cdot \cos(\theta_{ab}) = cos(\theta_{ab})\).
- Coseno = \(\cos(\theta_{ab})\).
Revisione delle misure di somiglianza
Una misura della somiglianza quantifica la somiglianza tra una coppia di esempi rispetto ad altre coppie di esempi. I due tipi, manuale e supervisionato, sono confrontati di seguito:
Tipo | Come creare | Ideale per | Implicazioni |
---|---|---|---|
Manuale | Combina manualmente i dati delle funzionalità. | Set di dati di piccole dimensioni con funzionalità facili da combinare. | Fornisce informazioni sui risultati dei calcoli di somiglianza. Se i dati delle funzionalità cambiano, devi aggiornare manualmente la misura della somiglianza. |
Supervisionato | Misura la distanza tra gli embedding generati da una rete neurale a doppia espansione supervisionata. | Set di dati di grandi dimensioni con funzionalità difficili da combinare. | Non fornisce informazioni sui risultati. Tuttavia, una rete neurale di tipo DNN può adattarsi automaticamente ai dati delle funzionalità in evoluzione. |