Mesurer la similarité à partir des représentations vectorielles continues

Vous disposez maintenant de représentations vectorielles continues pour chaque paire d'exemples. Une similarité supervisée La mesure prend ces représentations vectorielles continues et renvoie un nombre mesurant leur similarité. Rappelez-vous que les représentations vectorielles continues sont des vecteurs de nombres. Pour trouver la similitude entre deux vecteurs \(A = [a_1,a_2,...,a_n]\) et \(B = [b_1,b_2,...,b_n]\), choisissez l'une de ces trois mesures de similarité:

MesurerSignificationFormule À mesure que la similarité augmente, cette mesure...
Distance euclidienneDistance entre les extrémités de vecteurs \(\sqrt{(a_1-b_1)^2+(a_2-b_2)^2+...+(a_N-b_N)^2}\) Diminution
CosinusCosinus de l'angle \(\theta\) entre deux vecteurs \(\frac{a^T b}{|a| \cdot |b|}\) Augmentations
Produit scalaireCosinus multiplié par la longueur des deux vecteurs \(a_1b_1+a_2b_2+...+a_nb_n\) \(=|a||b|cos(\theta)\) Augmente. Elle augmente également avec la longueur des vecteurs.

Choisir une mesure de similarité

Contrairement au cosinus, le produit scalaire est proportionnel à la longueur du vecteur. C'est important, car les exemples qui apparaissent très fréquemment dans l'entraînement (des vidéos YouTube populaires, par exemple) ont tendance à comporter des vecteurs de représentation vectorielle continue avec de grandes longueurs. Si vous vous voulez saisir la popularité, puis sélectionnez produit scalaire. Cependant, le risque est que les exemples populaires peuvent fausser la métrique de similarité. Pour équilibrer ce décalage, vous pouvez élevez la longueur à un exposant \(\alpha\ < 1\) pour calculer le produit scalaire en tant que \(|a|^{\alpha}|b|^{\alpha}\cos(\theta)\).

Pour mieux comprendre comment la longueur du vecteur modifie la mesure de similarité, normalisez les longueurs des vecteurs sur 1 et nous remarquons que les trois mesures deviennent proportionnelles les uns aux autres.

Preuve: proportionnalité des mesures de similarité
Après avoir normalisé a et b de telle sorte que \(||a||=1\) et \(||b||=1\), ces trois mesures sont liées comme suit:
  • 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})\).
Ainsi, les trois mesures de similarité sont équivalentes car elles sont proportionnel à \(cos(\theta_{ab})\).

Examen des mesures de similarité

Une mesure de similarité quantifie la similarité entre une paire de par rapport à d'autres paires d'exemples. Les deux types, les manuels et les supervisés, sont comparés ci-dessous:

TypeComment créerApplication idéaleConséquences
Manuelcombiner manuellement les données des caractéristiques ; Petits ensembles de données avec des fonctionnalités faciles à combiner Donne un aperçu des résultats des calculs de similarité. Si la fonctionnalité modifications des données, 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é. Grands ensembles de données avec des caractéristiques difficiles à combiner. Ne donne aucun aperçu des résultats. Toutefois, un DNN peut s'adapter automatiquement à l'évolution des données de caractéristiques.