0% found this document useful (0 votes)
456 views

Data Mining

The document discusses various proximity measures that can be used to calculate similarity and dissimilarity between data objects in data mining. It explains that similarity measures how alike two objects are while dissimilarity measures how different they are. Different measures are used depending on the data type, such as nominal, binary, numeric, and ordinal attributes. Formulas for calculating dissimilarity are provided for each data type. Examples using sample datasets are also given to illustrate applying the measures.

Uploaded by

Dea Valentina
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
456 views

Data Mining

The document discusses various proximity measures that can be used to calculate similarity and dissimilarity between data objects in data mining. It explains that similarity measures how alike two objects are while dissimilarity measures how different they are. Different measures are used depending on the data type, such as nominal, binary, numeric, and ordinal attributes. Formulas for calculating dissimilarity are provided for each data type. Examples using sample datasets are also given to illustrate applying the measures.

Uploaded by

Dea Valentina
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 32

Similarity-Dissimilarity

Why Similarity & Dissimilarity?


• Teknik dalam Data Mining menggunakan similarity &
dissimilarity
• Similarity/dissimilarity  seberapa mirip/tidak mirip
suatu data dibanding data yang lain
• Contoh: cluster merupakan kumpulan dari data yang
saling mirip satu dengan yang lainnya.
• Pengukuran similarity/dissimilarity disebut juga
proximity measure
• Obyek i dan j dikatakan tidak mirip jika memiliki
similarity measure mendekati 0, dan sebaliknya
dikatakan mirip jika nilai similarity measure-nya >> 0
• Dissimilarity measure  kebalikan dari simmilarity
measure
Similarity
• Similarity between two objects is a numerical
measure of the degree to which the two objects
are alike.
• Consequently, similarities are higher for pairs of
objects that are more alike.
• Similarities are usually non-negative and are
often between 0 (no similarity) and 1 (complete
similarity).
Dissimilarity
• Dissimilarity between two objects is a numerical
measure of the degree to which the two objects are
different.
• Dissimilarities are lower for more similar pairs of
objects.
• Frequently, the term distance is used as a synonym
for dissimilarity, although, as we shall see, distance
is often used to refer to a special class of
dissimilarities.
• Dissimilarities sometimes fall in the interval [0,1],
but it is also common for them to range from 0 to ∞
Data Matrix vs Dissimilarity Matrix
• Jika diketahui ada sebanyak n obyek yang memiliki sejumlah
p atribut/fitur, maka obyek x1 = (x11, x12, …, x1p), x2 = (x21, x22,
…, x2p), dst, dimana xij adalah nilai dari obyek xi/obyek i pada
atribut ke-j.
• Data matrix (object-by-attribute structure): Matriks yang
berisi n data objects dalam bentuk tabel relasional, atau n-by-
p matrix (n objects x p attributes):

é x ... x ù
ê 11 1p ú
ê ... ... ... ú
ê ú
ê xn1 ... xnp ú
ë û
Data Matrix vs Dissimilarity Matrix
(cont)
• Dissimilarity matrix (object-by-object structure): Matriks
yang berisi kumpulan dari nilai dissimilarity sepasang obyek
sebanyak n obyek, disebut juga n-by-n table:

dimana d(i,j) adalah nilai dissimilarity atau jarak antar obyek i


dan j.
Data Matrix vs Dissimilarity Matrix
(cont)
• Nilai similarity dapat dinyatakan dengan fungsi
dissimilarity.
• Untuk data nominal:
sim(i, j) =1- d(i, j)
dimana sim(i,j) adalah similarity antara obyek i dan j.
• Data Matrix  2 entitas (two-mode matrix), baris
(obyek) dan kolom (atribut)
• Dissimilarity Matrix  1 entitas (one-mode matrix).
• Clustering, nearest-neighbour  sering menggunakan
dissimilarity matrix
• Data matrix dapat dikonversi ke dissimilarity matrix
Proximity Measure Atribut Nominal
• Atribut nominal dapat memiliki dua atau lebih
nilai/state. Contoh: warna
• Nilai/state dalam atribut nominal memiliki derajat yang
sama.
• Dissimilarity antara obyek i dan j dapat dihitung
menggunakan rumus:
p-m
d(i, j) =
p
dimana m adalah jumlah nilai/state yang sama antara i
dan j, sedangkan p adalah jumlah atribut dalam dataset.
• Bobot dapat ditambahkan untuk menaikkan
pengaruh/efek dari m.
Dataset-1
• Dataset dengan tipe nilai atribut campuran:
Contoh kasus
• Menggunakan data pada Dataset-1 (hanya atribut
identifier dan test-1 yg digunakan), maka dapat
dihitung dissimilarity matrix sbb:
é 0 ù
ê ú
ê 1 0 ú
ê 1 1 0 ú
ê ú
ë 0 1 1 0 û

1- 0 1-1
d(2,1) = =1 d(4,1) = =0
1 1
Proximity Measure Atribut Biner
• Atribut biner  0 (absent) dan 1 (present)
• Jika seluruh atribut data dalam dataset memiliki bobot
yang sama, maka dapat digunakan Tabel Contigency:

dimana q adalah jumlah data obyek i dan j yang


mempunyai nilai atribut 1, r adalah jumlah data obyek i
bernilai 1 sedang obyek j bernilai 0, dst.
Proximity Measure Atribut Biner (cont)
• Maka dissimilarity antara i dan j untuk data
atribut simetris dapat dihitung dengan rumus:
r+s
d(i, j) =
q+r+s+t
• Untuk data atribut asimetris:
r+s atau sim(i, j) = 1- d(i, j) =
q
d(i, j) =
q+r+s q+r+ s
• Simetris  semua nilai sama derajatnya
• Asimetris  nilai 1 dan 0 memiliki derajat
berbeda
Dataset-2
• Data pasien yang mempunyai atribut name,
gender, fever, cough, test-1, test-2, test-3, dan
test-4, dimana name sebagai identifier, atribut
gender adalah atribut simetris sedang atribut
lainnya adalah atribut asimetris.
Contoh kasus
• Menggunakan data pada Dataset-2, maka nilai Y (yes)
dan P (positif) di set 1, dan nilai N (no atau negatif) di set
0.
• Maka dapat dihitung jarak antar pasien dalam dataset:
1+1 0 +1
d(Jack, Jim) = = 0,67 d(Jack,Mary) = = 0,33
1+1+1 2 + 0 +1
1+ 2
d(Jim,Mary) = = 0,75
1+1+ 2
• Kesimpulan: Jack dan Mary memiliki kemiripan jenis
penyakit (nilai similarity-nya tinggi)
Dissimilarity Data Numerik
• Mayoritas metode yang digunakan: Euclidean,
Manhattan, Minkowski, Supremum.
• Rumus Euclidean Distance:
d(i, j) = (xi1 - x j1 )2 + (xi 2 - x j 2 )2 +...+ (xip - x jp )2
• Rumus Manhattan Distance:
d(i, j) = xi1 - x j1 + xi2 - x j 2 +...+ xip - x jp
• Rumus Minkowski Distance:
h h h
d(i, j) = h xi1 - x j1 + xi 2 - x j 2 +...+ xip - x jp

dimana h adalah jumlah atribut, h bilangan real dan h>1.


Dissimilarity Data Numerik (cont)
• Rumus Supremum Distance:
1
æ p ö
h h
p
d(i, j) = lim ççå xif - x jf ÷÷ = max xif - x jf
h®¥
è f =1 ø f

• Supremum Distance menghitung jarak maksimum


diantara jarak masing-masing nilai atribut

• Rumus Weighted Euclidean Distance:


2 2 2
d(i, j) = w1 xi1 - x j1 + w2 xi 2 - x j 2 +...+ wm xip - x jp
Contoh kasus
• Dua buah titik x1=(1,2) dan x2=(3,5). Maka jarak
antara dua titik dapat dihitung:
Proximity Measure Atribut Ordinal
• Nilai atribut ordinal mempunyai derajat yang berbeda-beda 
dapat dirangking
• Contoh: atribut ukuran (small, medium, large)
• Jika M adalah jumlah jenis nilai/state pada atribut ordinal, maka
data diurutkan 1,…,Mf, dimana f merupakan nilai atribut ordinal.
• Langkah-langkah menghitung dissimilarity:
1. Nilai atribut f untuk obyek ke-i adalah xif, dan f mempunyai
sejumlah Mf urutan state yang merepresentasikan
rif Î {1,...,M f }
urutan/rangking 1,…,Mf. Ganti xif dengan urutan rankingnya,
2. Normalisasi range tiap atribut ke dalam range [0,0 , 1,0] sehingga
mempunyai bobot yang sama. Ganti nilai rif dengan zif
menggunakan rumus Normalisasi: rif -1
zif =
M f -1
1. Dissimilarity kemudian dapat dihitung menggunakan rumus
perhitungan jarak untuk data numerik.
Contoh kasus
• Menggunakan data pada Dataset-1 (hanya atribut identifier
dan test-2 yang digunakan), maka dapat dihitung
dissimilarity matrix sbb:
é 0 ù
ê ú
ê 1,0 0 ú
ê 0,5 0,5 0 ú
ê ú
êë 0 1,0 0,5 0 úû
• Atribut test-2 mempunyai 3 state  fair, good, excellent,
maka Mf = 3
Contoh kasus (cont)
• Langkah 1: Ganti tiap nilai dengan nilai rankingnya,
fair 1, good2, excellent3
• Langkah 2: Normalisasi data ke range [0,0 , 1,0]
1-1 2 -1
z1 f =
3-1
= 1 z2 f = =0 z3 f = = 0,5
3-1 3-1 3-1
• Langkah 3: Hitung dissimilarity matrix
menggunakan rumus jarak Euclidean
é 0 ù
ê ú
ê 1,0 0 ú
ê 0,5 0,5 0 ú
ê ú
êë 0 1,0 0,5 0 úû
Proximity Measure Atribut Campuran
• Data riil  atribut campuran
• Perhitungan nilai atribut campuran  cara terpisah per
masing-masing atribut (hasilnya harus kompatibel), dan cara
dihitung semua atribut sekaligus
• Misal dataset terdiri dari p jumlah atribut bertipe campuran,
maka dissimilarity antara obyek i dan j adalah:
å f =1 ij dij
p
d (f) (f)

d(i, j) =
å f =1 ij
p
d (f)

dimana δij(f)=0 jika (1) xif atau xjf missing, atau


(2) xif = xjf = 0 dan atribut f biner asimetris
selain itu δij(f)=1
Proximity Measure Atribut Campuran
(cont)
• Sedangkan untuk perhitungan dissimilarity
antara obyek i dan j (dij(f)) dihitung berdasarkan
tipe atributnya:
xif - x jf
▫ Jika f numerik: d (f)
=
ij
max h xhf - min h xhf

▫ Jika f nominal atau biner: dij( f ) = 0 jika xif = xjf selain itu
dij( f ) = 1
▫ Jika f ordinal: hitung rif dan zif
rif -1
zif =
M f -1
Contoh kasus
• Menggunakan data pada Dataset-1 (seluruh
atribut digunakan) maka dapat dihitung
dissimilarity matrix sbb:
▫ Untuk atribut test-1 dan test-2 telah dihitung
sebelumnya
▫ Untuk aribut test-3 (numerik) maka nilai dij(3):

22 - 45 64 - 45
d (3)
= = 0,55 d (3)
= = 0,45
21
64 - 22 31
64 - 22
dengan nilai maxhxh = 64 dan minhxh = 22
Contoh kasus (cont)
• Maka didapatkan dissimilarity matrix untuk atribut
test-3 sbb:
é 0 ù
ê ú
ê 0,55 0 ú
ê 0,45 1,00 0 ú
ê ú
êë 0,40 0,14 0,86 0 úû

• Maka dapat dihitung dissimilarity matrix untuk


ketiga atribut dengan rumus:
å f =1 ij dij
p
d (f) (f)

d(i, j) =
å f =1 ij
p
d (f)
Contoh kasus (cont)
• Nilai δij(f)=1 untuk masing-masing atribut:

1(1) +1(0,50) +1(0,45)


d(3,1) = = 0,65
3
• Sehingga menghasilkan matrix dissimilarity:
é 0 ù
ê ú
ê 0,85 0 ú
ê 0,65 0,83 0 ú
ê ú
êë 0,13 0,71 0,79 0 úû
Cosine Similarity
• Cosine similarity  nonmetric measure
• Digunakan untuk data asimetris, spare data
(memiliki banyak nilai 0)  vektor term-frequency
(jumlah kata dalam dokumen)
• Aplikasi  information retrieval, text document
clustering, biological taxonomy, gene feature
mapping
• Perhitungan jarak (ex. Euclidean, dll) tidak cocok
untuk data sparse  dua vektor term-frequency
dapat memiliki banyak kesamaan nilai 0, tetapi
tidak mengindikasikan kesamaan antara keduanya
Cosine Similarity (cont)
• Cosine similarity  dapat digunakan untuk
membandingkan dokumen, merangking dokumen
berdasarkan kata yang ada
x× y x × y = å ai bi = a1b1 + a2b2 +...+ anbn
n
• Rumus:
sim(x, y) = i=1
x y
dimana ||x|| adalah nilai Euclidean norm dari vektor x =
(x1, x2,…, xp)  x 2 + x 2 +...+ x 2
1 2 p

• Nilai cosine 0 artinya kedua vektor berada pada 90


derajat satu sama lain dan tidak ada kesamaan.
• Nilai cosine semakin mendekati 1 artinya semakin kecil
sudutnya dan semakin banyak kesamaannya.
Dataset-3
• Data perbandingan antar dokumen berdasarkan
kemunculan kata dalam dokumen
Contoh kasus
• Menggunakan data pada Dataset-3, misal x dan
y adalah dua vektor term-frequency paertama
dalam dataset, x = (5,0,3,0,2,0,0,2,0,0), y =
(3,0,2,0,1,1,0,1,0,1), maka seberapa mirip x dan
y? Dengan menggunakan rumus cosine
similarity:
x × y = 5´ 3+ 0 ´ 0 + 3´ 2 + 0 ´ 0 + 2 ´1+ 0 ´1+ 0 ´ 0 + 2 ´1+ 0 ´ 0 + 0 ´1= 25
x = 52 + 02 + 32 + 02 + 22 + 02 + 02 + 22 + 02 + 02 = 6,48

y = 32 + 02 + 22 + 02 +12 +12 + 02 +12 + 02 +12 = 4,12


sim(x, y) = 0,94
Tugas
Diketahui dua obyek dengan titik (22,1,42,10) dan
(20,0,36,8). Hitung jarak kedua titik tsb
menggunakan:
• Euclidean Distance
• Manhattan Distance
• Minkowski Distance
• Supremum Distance
Tugas
• Diketahui dataset dengan 2
dimensi seperti dalam tabel
disamping.
• Diketahui sebuah titik x = (1,4 ,
1,6), urutkan data pada tabel
berdasarkan kemiripannya
dengan titik x menggunakan
Euclidean distance, Manhattan
distance, Supremum distance,
dan Cosine similarity.

You might also like