3.1 Ukuran Kemiripan
Ukuran kemiripan digunakan untuk mengukur tingkat kesamaan antara dua objek dalam ruang vektor berdasarkan atribut atau fitur tertentu. Konsep ini sangat penting dalam berbagai bidang, seperti analisis teks untuk menentukan kesamaan antar dokumen atau kalimat, sistem rekomendasi untuk menyarankan item yang relevan berdasarkan preferensi pengguna, serta dalam analisis cluster untuk mengelompokkan data dengan karakteristik serupa. Berbagai metrik, seperti cosine similarity, Jaccard similarity, dan Euclidean distance, sering digunakan untuk menghitung kemiripan, tergantung pada jenis data dan tujuan analisis.
3.1.1 Cosine Similarity
Cosine similarity adalah ukuran yang digunakan untuk menentukan seberapa mirip dua vektor dalam ruang multidimensi. Ukuran ini sering digunakan dalam analisis teks dan pengolahan bahasa alami untuk mengukur kesamaan antara dokumen atau kata-kata. Cosine similarity mengukur sudut antara dua vektor, bukan jarak antar vektor, sehingga dapat memberikan hasil yang lebih baik dalam konteks data yang memiliki dimensi tinggi.
Cosine similarity antara dua vektor \(A\) dan \(B\) didefinisikan dengan rumus:
\[ \text{Cosine Similarity} = \frac{A \cdot B}{\|A\| \|B\|} \]
Di mana:
\(A \cdot B\) adalah hasil kali dot (dot product) antara vektor \(A\) dan \(B\).
\(\|A\|\) dan \(\|B\|\) adalah norma (magnitudo) dari vektor \(A\) dan \(B\).
Nilai cosine similarity berkisar antara -1 hingga 1:
1: Vektor identik (sama arah).
0: Vektor ortogonal (tidak ada kesamaan).
-1: Vektor berlawanan arah.
Misalkan kita memiliki dua vektor:
\(A = [1, 2, 3]\)
\(B = [4, 5, 6]\)
Langkah-langkah perhitungan cosine similarity adalah sebagai berikut:
1. Hitung dot product \(A \cdot B\): \[ A \cdot B = (1 \times 4) + (2 \times 5) + (3 \times 6) = 4 + 10 + 18 = 32 \]
2. Hitung norma \(\|A\|\) dan \(\|B\|\): \[ \|A\| = \sqrt{1^2 + 2^2 + 3^2} = \sqrt{1 + 4 + 9} = \sqrt{14} \] \[ \|B\| = \sqrt{4^2 + 5^2 + 6^2} = \sqrt{16 + 25 + 36} = \sqrt{77} \]
3. Hitung cosine similarity: \[ \text{Cosine Similarity} = \frac{32}{\sqrt{14} \times \sqrt{77}} \approx 0.974 \]
Contoh Penerapan cosine similarity dengan R
# Memuat library yang diperlukan
library(lsa)
# Mendefinisikan vektor A dan B
A <- c(1, 2, 3)
B <- c(4, 5, 6)
# Menghitung dot product
dot_product <- sum(A * B)
# Menghitung norma A dan B
norm_A <- sqrt(sum(A^2))
norm_B <- sqrt(sum(B^2))
# Menghitung cosine similarity
cosine_similarity <- dot_product / (norm_A * norm_B)
# Menampilkan hasil
list(dot_product = dot_product, norm_A = norm_A, norm_B = norm_B, cosine_similarity = cosine_similarity)
#> $dot_product
#> [1] 32
#>
#> $norm_A
#> [1] 3.741657
#>
#> $norm_B
#> [1] 8.774964
#>
#> $cosine_similarity
#> [1] 0.9746318
3.1.2 Pearson Correlation Coefficient
Pearson Correlation Coefficient adalah ukuran statistik yang digunakan untuk menentukan tingkat kemiripan atau hubungan linear antara dua variabel numerik. Koefisien ini memiliki nilai dalam rentang \([-1,1]\), di mana nilai \(+1\) menunjukkan hubungan positif sempurna, \(0\) menandakan tidak ada hubungan linear, dan \(-1\) menunjukkan hubungan negatif sempurna. Dalam konteks analisis kemiripan, Pearson Correlation mengukur sejauh mana perubahan pada satu variabel berhubungan secara proporsional dengan perubahan pada variabel lainnya. Koefisien ini dihitung menggunakan rumus yang membandingkan kovarians dari dua variabel dengan hasil kali standar deviasi masing-masing variabel. Nilai yang mendekati \(+1\) menunjukkan pola yang serupa antara dua variabel, sedangkan nilai mendekati \(-1\) menunjukkan pola yang berlawanan. Pearson Correlation banyak digunakan dalam berbagai bidang, termasuk analisis cluster dan machine learning
Rumus untuk menghitung Pearson Correlation Coefficient antara dua variabel \(X\) dan \(Y\) adalah sebagai berikut:
\[ r = \frac{n(\sum XY) - (\sum X)(\sum Y)}{\sqrt{[n \sum X^2 - (\sum X)^2][n \sum Y^2 - (\sum Y)^2]}} \]
Di mana:
\(n\) adalah jumlah pasangan data,
\(\sum XY\) adalah jumlah hasil kali dari setiap pasangan data,
\(\sum X\) dan \(\sum Y\) adalah jumlah dari masing-masing variabel,
\(\sum X^2\) dan \(\sum Y^2\) adalah jumlah kuadrat dari masing-masing variabel.
Misalkan kita memiliki dua variabel \(X\) dan \(Y\) dengan data sebagai berikut:
\(X = \{1, 2, 3, 4 5\}\)
\(Y = \{2, 3, 5, 4, 5\}\)
Langkah-langkah perhitungan Pearson Correlation Coefficient adalah sebagai berikut:
- Hitung jumlah \(n\), \(\sum X\), \(\sum Y\), \(\sum XY\), \(\sum X^2\), dan \(\sum Y^2\).
- Masukkan nilai-nilai tersebut ke dalam rumus Pearson Correlation Coefficient.
Langkah-langkah Perhitungan
\(n = 5\)
\(\sum X = 1 + 2 + 3 + 4 + 5 = 15\)
\(\sum Y = 2 + 3 + 5 + 4 + 5 = 19\)
\(\sum XY = (1 \times 2) + (2 \times 3) + (3 \times 5) + (4 \times 4) + (5 \times 5) = 2 + 6 + 15 + 16 + 25 = 64\)
\(\sum X^2 = 1^2 + 2^2 + 3^2 + 4^2 + 5^2 = 1 + 4 + 9 + 16 + 25 = 55\)
\(\sum Y^2 = 2^2 + 3^2 + 5^2 + 4^2 + 5^2 = 4 + 9 + 25 + 16 + 25 = 79\)
Masukkan ke dalam rumus: \[ r = \frac{5(64) - (15)(19)}{\sqrt{[5(55) - (15)^2][5(79) - (19)^2]}} \] \[ r = \frac{320 - 285}{\sqrt{[275 - 225][395 - 361]}} = \frac{35}{\sqrt{50 \times 34}} = \frac{35}{\sqrt{1700}} \approx \frac{35}{41.23} \approx 0.848 \]
Contoh Penerapan earson Correlation Coefficient dengan R
3.1.3 Extended Jaccard Similarity (Tanimoto Coefficient)
Extended Jaccard Similarity, juga dikenal sebagai Tanimoto Coefficient, adalah ukuran kesamaan antara dua set atau dua vektor. Ukuran ini digunakan untuk mengukur seberapa mirip dua objek berdasarkan elemen yang mereka miliki. Tanimoto Coefficient sering digunakan dalam analisis data, pengolahan citra, dan pengenalan pola. Rumus untuk menghitung Tanimoto Coefficient antara dua vektor \(A\) dan \(B\) adalah sebagai berikut:
\[ T(A, B) = \frac{|A \cap B|}{|A \cup B|} = \frac{a}{a + b + c} \]
Di mana:
\(|A \cap B|\) adalah jumlah elemen yang ada di kedua set (interseksi).
\(|A \cup B|\) adalah jumlah elemen yang ada di set \(A\) dan set \(B\) (union).
\(a\) adalah jumlah elemen yang sama di kedua set.
\(b\) adalah jumlah elemen yang ada di set \(A\) tetapi tidak di set \(B\).
\(c\) adalah jumlah elemen yang ada di set \(B\) tetapi tidak di set \(A\).
Nilai Tanimoto Coefficient berkisar antara 0 hingga 1:
1: Dua set identik (semua elemen sama).
0: Dua set tidak memiliki elemen yang sama.
Misalkan kita memiliki dua set:
\(A = \{1, 2, 3, 4\}\)
\(B = \{3, 4, 5, 6\}\)
Langkah-langkah perhitungan Tanimoto Coefficient adalah sebagai berikut:
- Hitung interseksi \(|A \cap B|\):
- \(|A \cap B| = \{3, 4\}\) → \(a = 2\)
- Hitung union \(|A \cup B|\):
- \(|A \cup B| = \{1, 2, 3, 4, 5, 6\}\) → \(a + b + c = 6\)
- Di mana \(b = 2\) (elemen di \(A\) tetapi tidak di \(B\): \(\{1, 2\}\)) dan \(c = 2\) (elemen di \(B\) tetapi tidak di \(A\): \(\{5, 6\}\)).
- Hitung Tanimoto Coefficient: \[ T(A, B) = \frac{2}{6} \approx 0.333 \]
Contoh Penerapan Tanimoto Coefficient dengan R
# Mendefinisikan dua set
A <- c(1, 2, 3, 4)
B <- c(3, 4, 5, 6)
# Menghitung interseksi dan union
intersection <- length(intersect(A, B))
union <- length(union(A, B))
# Menghitung Tanimoto Coefficient
tanimoto_coefficient <- intersection / union
# Menampilkan hasil
tanimoto_coefficient
#> [1] 0.3333333
3.1.4 Dice Coefficient
Dice Coefficient, juga dikenal sebagai Dice Similarity Coefficient (DSC), adalah ukuran kesamaan antara dua set atau dua vektor. Ukuran ini sering digunakan dalam analisis data, pengolahan citra, dan pengenalan pola. Dice Coefficient memberikan bobot yang lebih besar pada elemen yang sama dibandingkan dengan ukuran kesamaan lainnya, seperti Jaccard Index. Rumus untuk menghitung Dice Coefficient antara dua set \(A\) dan \(B\) adalah sebagai berikut:
\[ D(A, B) = \frac{2|A \cap B|}{|A| + |B|} \]
Di mana:
\(|A \cap B|\) adalah jumlah elemen yang ada di kedua set (interseksi).
\(|A|\) adalah jumlah elemen di set \(A\).
\(|B|\) adalah jumlah elemen di set \(B\).
Nilai Dice Coefficient berkisar antara 0 hingga 1:
1: Dua set identik (semua elemen sama).
0: Dua set tidak memiliki elemen yang sama.
Misalkan kita memiliki dua set:
\(A = \{1, 2, 3, 4\}\) -
\(B = \{3, 4, 5, 6\}\)
Langkah-langkah perhitungan Dice Coefficient adalah sebagai berikut:
- Hitung interseksi \(|A \cap B|\):
- \(|A \cap B| = \{3, 4\}\) → \(|A \cap B| = 2\)
- Hitung ukuran set:
- \(|A| = 4\)
- \(|B| = 4\)
- Hitung Dice Coefficient: \[ D(A, B) = \frac{2 \times 2}{4 + 4} = \frac{4}{8} = 0.5 \]
Contoh Penerapan Dice Coefficient dengan R
# Mendefinisikan dua set
A <- c(1, 2, 3, 4)
B <- c(3, 4, 5, 6)
# Menghitung interseksi
intersection <- length(intersect(A, B))
# Menghitung ukuran set
size_A <- length(A)
size_B <- length(B)
# Menghitung Dice Coefficient
dice_coefficient <- (2 * intersection) / (size_A + size_B)
# Menampilkan hasil
dice_coefficient
#> [1] 0.5