Jaccard benzerlik indeksinin basit bir açıklaması
Jaccard benzerlik indeksi, iki veri kümesi arasındaki benzerliğin bir ölçüsüdür.
Paul Jaccard tarafından geliştirilen endeks 0 ile 1 arasında değişmektedir. 1’e ne kadar yakınsa iki veri seti de o kadar benzerdir.
Jaccard benzerlik indeksi şu şekilde hesaplanır:
Jaccard benzerliği = (her iki kümedeki gözlem sayısı) / (her iki kümedeki sayı)
Veya notasyon biçiminde yazılmış:
J(A, B) = |A∩B| / |A∪B|
İki veri kümesi tam olarak aynı üyeleri paylaşıyorsa Jaccard benzerlik indeksi 1 olacaktır. Tersine, ortak üyeleri yoksa benzerlikleri 0 olacaktır.
Aşağıdaki örnekler birkaç farklı veri kümesi için Jaccard benzerlik indeksinin nasıl hesaplanacağını göstermektedir.
Örnek 1: Jaccard benzerliği
Aşağıdaki iki veri kümesine sahip olduğumuzu varsayalım:
A = [0, 1, 2, 5, 6, 8, 9] B = [0, 2, 3, 4, 5, 7, 9]
Aralarındaki Jaccard benzerliğini hesaplamak için önce her iki kümedeki toplam gözlem sayısını buluruz, ardından her iki kümedeki toplam gözlem sayısına böleriz:
- Her ikisinde de gözlem sayısı: {0, 2, 5, 9} = 4
- Her ikisindeki gözlem sayısı: {0, 1, 2, 3, 4, 5, 6, 7, 8, 9} = 10
- Jaccard benzerliği: 4/10 = 0,4
Jaccard benzerlik indeksi 0,4 olarak çıkıyor.
Örnek 2: Jaccard benzerliği (devam)
Aşağıdaki iki veri kümesine sahip olduğumuzu varsayalım:
C = [0, 1, 2, 3, 4, 5] D = [6, 7, 8, 9, 10]
Aralarındaki Jaccard benzerliğini hesaplamak için önce her iki kümedeki toplam gözlem sayısını buluruz, ardından her iki kümedeki toplam gözlem sayısına böleriz:
- Her ikisinde de gözlem sayısı: {} = 0
- Her ikisindeki gözlem sayısı: {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10} = 11
- Jaccard benzerliği: 0/11 = 0
Jaccard benzerlik indeksi 0 olarak çıkıyor. Bu, iki veri kümesinin herhangi bir ortak üyeyi paylaşmadığını gösterir.
Örnek 3: Karakterler için Jaccard benzerliği
Jaccard benzerlik indeksini sayı yerine karakter içeren veri kümeleri için de kullanabileceğimizi unutmayın.
Örneğin, aşağıdaki iki veri kümesine sahip olduğumuzu varsayalım:
E = ['cat', 'dog', 'hippo', 'monkey'] F = ['monkey', 'rhino', 'ostrich', 'salmon']
Aralarındaki Jaccard benzerliğini hesaplamak için önce her iki kümedeki toplam gözlem sayısını buluruz, ardından her iki kümedeki toplam gözlem sayısına böleriz:
- Her ikisinde de gözlem sayısı: {‘maymun’} = 1
- Birindeki veya diğerindeki gözlem sayısı: {‘kedi’, ‘köpek’, su aygırı’, ‘maymun’, ‘gergedan’, ‘devekuşu’, ‘somon’} = 7
- Jaccard benzerliği: 1/7 = 0,142857
Jaccard benzerlik endeksinin 0,142857 olduğu ortaya çıktı. Bu sayının oldukça düşük olması iki setin oldukça farklı olduğunu gösteriyor.
Jaccard mesafesi
Jaccard mesafesi, iki veri kümesi arasındaki farklılığı ölçer ve aşağıdaki şekilde hesaplanır:
Jaccard Mesafesi = 1 – Jaccard Benzerliği
Bu ölçüm bize iki veri kümesinin ne kadar farklı olduğuna veya ne kadar farklı olduğuna dair bir fikir verir.
Örneğin, iki veri kümesinin Jaccard benzerliği %80 ise, bu durumda Jaccard mesafesi 1 – 0,8 = 0,2 veya %20 olacaktır.
Ek kaynaklar
Aşağıdaki eğitimlerde farklı istatistiksel yazılımlar kullanılarak Jaccard benzerliğinin nasıl hesaplanacağı açıklanmaktadır:
R’de Jaccard benzerliği nasıl hesaplanır
Python’da Jaccard benzerliği nasıl hesaplanır