Jak obliczyć podobieństwo cosinus w r
Podobieństwo cosinusowe jest miarą podobieństwa między dwoma wektorami przestrzeni iloczynu wewnętrznego.
Dla dwóch wektorów A i B podobieństwo cosinus oblicza się w następujący sposób:
Cosinus podobieństwo = ΣA i B i / (√ΣA i 2 √ΣB i 2 )
W tym samouczku wyjaśniono, jak obliczyć podobieństwo cosinus między wektorami w R przy użyciu funkcji cosinus() z biblioteki lsa .
Podobieństwo cosinusowe między dwoma wektorami w R
Poniższy kod pokazuje, jak obliczyć podobieństwo cosinus między dwoma wektorami w R:
library (lsa) #definevectors 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
Cosinus podobieństwa między dwoma wektorami wynosi 0,965195 .
Cosinus podobieństwa macierzy w R
Poniższy kod pokazuje, jak obliczyć podobieństwo cosinus między macierzą wektorów:
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) ABC a 1.0000000 0.9651950 0.9812406 b 0.9651950 1.0000000 0.9573478 c 0.9812406 0.9573478 1.0000000
Oto jak zinterpretować wynik:
- Cosinus podobieństwa między wektorami a i b wynosi 0,9651950 .
- Cosinus podobieństwa między wektorami a i c wynosi 0,9812406 .
- Cosinus podobieństwa między wektorami b i c wynosi 0,9573478 .
Uwagi
1. Funkcja cosinus() będzie działać z macierzą kwadratową o dowolnym rozmiarze.
2. Funkcja cosinus() będzie działać na macierzy, ale nie na ramce danych. Można jednak łatwo przekonwertować ramkę danych na macierz w R za pomocą funkcji as.matrix() .
3. Odwiedźtę stronę Wikipedii, aby dowiedzieć się więcej o podobieństwie cosinusa.