Vous disposez désormais d'embeddings pour n'importe quelle paire d'exemples. Une mesure de similarité supervisée prend ces représentations vectorielles continues et renvoie un nombre qui mesure leur similarité. N'oubliez pas que les représentations vectorielles continues sont des vecteurs de nombres. Pour trouver la similarité entre deux vecteurs \(A = [a_1,a_2,...,a_n]\) et \(B = [b_1,b_2,...,b_n]\), choisissez l'une des trois mesures de similarité suivantes:
Mesurer | Signification | Formule | À mesure que la similarité augmente, cette mesure... |
---|---|---|---|
Distance euclidienne | Distance entre les extrémités des vecteurs | \(\sqrt{(a_1-b_1)^2+(a_2-b_2)^2+...+(a_N-b_N)^2}\) | Diminue |
Cosinus | Cosinus de l'angle \(\theta\) entre les vecteurs | \(\frac{a^T b}{|a| \cdot |b|}\) | Augmente |
Produit scalaire | Cosinus multiplié par la longueur des deux vecteurs | \(a_1b_1+a_2b_2+...+a_nb_n\) \(=|a||b|cos(\theta)\) | Augmente. Il augmente également avec la longueur des vecteurs. |
Choisir une mesure de similarité
Contrairement au cosinus, le produit scalaire est proportionnel à la longueur du vecteur. Cela est important, car les exemples qui apparaissent très fréquemment dans l'ensemble d'entraînement (par exemple, les vidéos YouTube populaires) ont tendance à avoir des vecteurs d'encapsulation de grande longueur. Si vous souhaitez mesurer la popularité, choisissez le produit scalaire. Toutefois, le risque est que des exemples populaires puissent fausser la métrique de similarité. Pour équilibrer cette distorsion, vous pouvez élever la longueur à une puissance \(\alpha\ < 1\) pour calculer le produit scalaire comme \(|a|^{\alpha}|b|^{\alpha}\cos(\theta)\).
Pour mieux comprendre comment la longueur du vecteur modifie la mesure de similarité, normalisez les longueurs des vecteurs à 1 et remarquez que les trois mesures deviennent proportionnelles les unes aux autres.
- Distance euclidienne = \(||a-b|| = \sqrt{||a||^2 + ||b||^2 - 2a^{T}b} = \sqrt{2-2\cos(\theta_{ab})}\).
- Produit scalaire = \( |a||b| \cos(\theta_{ab}) = 1\cdot1\cdot \cos(\theta_{ab}) = cos(\theta_{ab})\).
- Cosinus = \(\cos(\theta_{ab})\).
Examen des mesures de similarité
Une mesure de similarité quantifie la similarité entre une paire d'exemples par rapport à d'autres paires d'exemples. Les deux types, manuel et supervisé, sont comparés ci-dessous:
Type | Comment créer | Application idéale | Conséquences |
---|---|---|---|
Manuel | Combiner manuellement les données des éléments géographiques | Petits ensembles de données avec des fonctionnalités faciles à combiner | Fournit des insights sur les résultats des calculs de similarité. Si les données des éléments géographiques changent, vous devez mettre à jour manuellement la mesure de similarité. |
Supervisé | Mesurez la distance entre les représentations vectorielles continues générées par un DNN supervisé. | Ensembles de données volumineux avec des fonctionnalités difficiles à combiner | Ne fournit aucune information sur les résultats. Toutefois, un RNN peut s'adapter automatiquement aux données de fonctionnalités en constante évolution. |