Comment calculer la similarité cosinus dans R
La similarité cosinus est une mesure de la similarité entre deux vecteurs d’un espace produit interne.
Pour deux vecteurs, A et B, la similarité cosinus est calculée comme suit :
Similarité cosinus = ΣA i B i / (√ΣA i 2 √ΣB i 2 )
Ce tutoriel explique comment calculer la similarité cosinus entre les vecteurs dans R à l’aide de la fonction cosine() de la bibliothèque lsa .
Similitude cosinus entre deux vecteurs dans R
Le code suivant montre comment calculer la similarité cosinus entre deux vecteurs dans R :
library(lsa) #define vectors a <- c(23, 34, 44, 45, 42, 27, 33, 34) b <- c(17, 18, 22, 26, 26, 29, 31, 30) #calculate Cosine Similarity cosine(a, b) [,1] [1,] 0.965195
La similarité cosinus entre les deux vecteurs s’avère être 0,965195 .
Similitude cosinus d’une matrice dans R
Le code suivant montre comment calculer la similarité cosinus entre une matrice de vecteurs :
library(lsa) #define matrix a <- c(23, 34, 44, 45, 42, 27, 33, 34) b <- c(17, 18, 22, 26, 26, 29, 31, 30) c <- c(34, 35, 35, 36, 51, 29, 30, 31) data <- cbind(a, b, c) #calculate Cosine Similarity cosine(data) a b c a 1.0000000 0.9651950 0.9812406 b 0.9651950 1.0000000 0.9573478 c 0.9812406 0.9573478 1.0000000
Voici comment interpréter le résultat :
- La similarité cosinus entre les vecteurs a et b est 0,9651950 .
- La similarité cosinus entre les vecteurs a et c est 0,9812406 .
- La similarité cosinus entre les vecteurs b et c est 0,9573478 .
Remarques
1. La fonction cosine() fonctionnera avec une matrice carrée de n’importe quelle taille.
2. La fonction cosine() fonctionnera sur une matrice, mais pas sur une trame de données. Cependant, vous pouvez facilement convertir un bloc de données en matrice dans R en utilisant la fonction as.matrix() .
3. Reportez-vous àcette page Wikipédia pour en savoir plus sur la similarité cosinus.