Web Madenciliği
(Web Mining)
Hazırlayan: M. Ali Akcayol
Gazi Üniversitesi
Bilgisayar Mühendisliği Bölümü
Konular
Denetimsiz Öğrenmenin Temelleri
Kümeleme
Uzaklık Fonksiyonları
Öklid Uzaklığı
Manhattan Uzaklığı
Minkowski Uzaklığı
K-means Algoritması
Kümelerin Gösterimi
Hiyerarşik Kümeleme
Veri Standartlaştırma
Kümeleme Değerlendirmesi
2
1
Denetimsiz Öğrenmenin Temelleri
Denetimli öğrenme giriş verileri ile çıkış niteliği arasındaki ilişkiyi
ortaya çıkartır.
Elde edilen model ile yeni verilerle ileriye dönük tahmin yapılması
amaçlanmaktadır.
Denetimsiz öğrenmede eğitim sürecinde hedef nitelik
bulunmamaktadır.
Denetimsiz öğrenmede veriler arasında bazı yapısal ilişkilerin
veya örüntülerin ortaya çıkartılması amaçlanmaktadır.
3
Konular
Denetimsiz Öğrenmenin Temelleri
Kümeleme
Uzaklık Fonksiyonları
Öklid Uzaklığı
Manhattan Uzaklığı
Minkowski Uzaklığı
K-means Algoritması
Kümelerin Gösterimi
Hiyerarşik Kümeleme
Veri Standartlaştırma
Kümeleme Değerlendirmesi
4
2
Kümeleme
Kümeleme (Clustering), veri içerisinde benzer grupların (küme)
bulunmasını sağlayan teknikleri kullanır.
Kümelemede veri içerisindeki benzer örneklerin yakınlıklarına göre
kümeler oluşturulur.
Birbirine belirlenmiş bir seviyeden daha uzak olanlar ayrı kümelere
atanır.
Kümeleme, denetimsiz öğrenme (unsupervised learning) olarak
adlandırılır.
Apriori algoritması ile yapılan birliktelik kural madenciliği
unsupervised learning olarak nitelendirilir.
5
Kümeleme
Aşağıdaki veri kümesinde uzaklıklara göre üç küme görülmektedir.
Bu şekilde yapılan kümelemeye partitional clustering denilir.
Farklı özellikler gözönüne alınırsa küme sayısı daha fazla veya daha
az olabilir.
Sağlık, psikoloji, tarım, sosyoloji, biyoloji, arkeoloji, pazarlama,
sigortacılık, kütüphane gibi çok farklı alanlarda kullanılmaktadır.
6
3
Kümeleme
Örnek
Her gün haber ajansları tarafından Dünya genelinde çok sayıda
haber metni oluşturulur. Bir Web sitesi ile bu haberlerin alınması
ve ait oldukları konulara göre sınıflandırılması gereklidir.
Bu kadar çok sayıdaki haber metninin manuel olarak
sınıflandırılması mümkün değildir.
Sınıflandırılmadan tüm kullanıcılara sunulması da kullanıcıların ilgili
olduklarını seçmeleri zor olacağından uygun değildir.
Dokümanların konulara göre hiyerarşik kümelenmesi için
clustering algoritmaları kullanılabilir.
Bu şekilde sınıflandırmaya hiyerarşik kümeleme denilmektedir.
Kümeleme algoritmalarının temelinde uzaklık ölçümü yer alır.
7
Konular
Denetimsiz Öğrenmenin Temelleri
Kümeleme
Uzaklık Fonksiyonları
Öklid Uzaklığı
Manhattan Uzaklığı
Minkowski Uzaklığı
K-means Algoritması
Kümelerin Gösterimi
Hiyerarşik Kümeleme
Veri Standartlaştırma
Kümeleme Değerlendirmesi
8
4
Uzaklık Fonksiyonları
Kümeleme problemlerinde problemin yapısına ve niteliklerin
değerlerine bağlı olarak farklı uzaklık ölçümler kullanılabilir.
Yaygın kullanılan uzaklık ölçümleri:
Öklid uzaklığı
Manhattan uzaklığı
Minkowski uzaklığı
9
Konular
Denetimsiz Öğrenmenin Temelleri
Kümeleme
Uzaklık Fonksiyonları
Öklid Uzaklığı
Manhattan Uzaklığı
Minkowski Uzaklığı
K-means Algoritması
Kümelerin Gösterimi
Hiyerarşik Kümeleme
Veri Standartlaştırma
Kümeleme Değerlendirmesi
10
5
Öklid Uzaklığı
Uygulamada en çok kullanılan uzaklık ölçüsü Öklid uzaklık bağıntısı adıyla
bilinmektedir.
Bu uzaklık, şekilde üzerinde görüldüğü gibi, iki boyutlu uzayda Pisagor
teoreminin bir uygulamasıdır.
A ve B noktaları arasındaki Öklid uzaklığı şu şekilde olacaktır:
Bu bağıntı genelleştirilecek olursak, i ve j noktaları için şu şekilde bir
bağıntıya ulaşılır:
11
Konular
Denetimsiz Öğrenmenin Temelleri
Kümeleme
Uzaklık Fonksiyonları
Öklid Uzaklığı
Manhattan Uzaklığı
Minkowski Uzaklığı
K-means Algoritması
Kümelerin Gösterimi
Hiyerarşik Kümeleme
Veri Standartlaştırma
Kümeleme Değerlendirmesi
12
6
Manhattan Uzaklığı
Manhattan uzaklık ölçütünde, gözlemler arasındaki mutlak uzaklıkların
toplamı alınarak hesaplanır.
Aşağıdaki şekilde ifade edilir:
13
Konular
Denetimsiz Öğrenmenin Temelleri
Kümeleme
Uzaklık Fonksiyonları
Öklid Uzaklığı
Manhattan Uzaklığı
Minkowski Uzaklığı
K-means Algoritması
Kümelerin Gösterimi
Hiyerarşik Kümeleme
Veri Standartlaştırma
Kümeleme Değerlendirmesi
14
7
Minkowski Uzaklığı
p sayıda değişken göz önüne alınarak gözlem değerleri arasındaki uzaklığın
hesaplanması söz konusu ise Minkowski uzaklık bağıntısı kullanılabilir.
Söz konusu uzaklık şu şekilde hesaplanır:
Burada, m=2 için Öklid uzaklık bağıntısı ve m=1 için Manhattan uzaklık
bağıntısı elde edilir.
15
Örnek
Aşağıdaki tabloda 5 gözlem değeri için 3 niteliğin değerleri görülmektedir.
Gözlem değerleri arasındaki hesaplanan uzaklıklar, farklı ölçüm
yöntemlerinde farklı olmaktadır.
16
8
Örnek
Öklid uzaklıkları
Manhattan uzaklıkları
Minkowski uzaklıkları
m=3
17
Konular
Denetimsiz Öğrenmenin Temelleri
Kümeleme
Uzaklık Fonksiyonları
Öklid Uzaklığı
Manhattan Uzaklığı
Minkowski Uzaklığı
K-means Algoritması
Kümelerin Gösterimi
Hiyerarşik Kümeleme
Veri Standartlaştırma
Kümeleme Değerlendirmesi
18
9
K-means algoritması
Kümeleme algoritmalarının kalitesinin ölçümü için iki kriter
vardır:
Inter-cluster uzaklık (maksimize edilir.)
Intra-cluster uzaklık (minimize edilir.)
Kümelerin arasında mesafe olabildiği kadar fazla olmalıdır.
Kümelere ait elemanlar arasındaki uzaklık olabildiği kadar az
olmalıdır.
Uzaklık ölçüm yöntemi her problem için ayrı tanımlanabilir ve
uygun olanın seçilmesi gereklidir.
K-means algoritması partitional clustering yapmaktadır.
19
K-means algoritması
K-means algoritması başlangıçta k değeri kadar küme oluşturur.
Her küme bir merkez noktasına (centroid) sahiptir.
Kümeye ait elemanların tümü bu orta noktaya diğer kümelerin
orta noktalarından daha yakındır.
Algoritma başlangıçta rastgele k adet veri noktasını küme
merkezleri olarak seçer.
Her merkez noktaya yakın noktalar bu kümeye ait olarak alınırlar.
Tüm kümelerin merkez noktaları tekrar hesaplanır.
Yeni merkez noktalara göre yeniden küme elemanları belirlenir.
Kümelerarası eleman değişimi olmayıncaya veya merkez
noktalarda değişim olmayıncaya kadar işlemler devam eder.
20
10
K-means algoritması
Veri kümesi D = {x1, x2, …, xn} olsun. Her bir x noktası ise,
xi = (xi1, xi2, …, xir) şeklinde tanımlanan bir reel sayılar
vektörüdür.
X Rr ve r nitelik sayısıdır.
Algoritma kümelerdeki hataların karelerinin toplamını (sum of
squared error) minimize etmeye çalışır.
Burada, k küme sayısını, Cj j.kümeyi, x Cj kümesine ait nitelikler
kümesini, mj j.kümenin orta noktasıdır.
dist(x, mj) kümenin orta noktasına x noktalarının uzaklığıdır.
21
K-means algoritması
Kümelerin orta noktası ise aşağıdaki gibi hesaplanır.
Burada, bir kümeye ait olan tüm x noktalarının nitelik değerlerinin
ortalamaları hesaplanır.
| Cj | kümeye ait nokta sayısıdır.
Kümeye ait noktaların merkez noktaya uzaklıkları ise aşağıdaki gibi
hesaplanır. Burada, mj j. kümenin orta noktasıdır.
22
11
K-means algoritması
Algoritma
23
K-means algoritması
Örnek
Başlangıç merkez noktaları
Yeni merkez noktaları
24
12
K-means algoritması
Örnek
Yeni merkez noktaları
Yeni merkez noktaları
Yeni merkez noktaları
25
K-means algoritması
K-means algoritmasının zayıf yönleri
K-means algoritması başlangıç merkez noktalarına bağlı kümeler
oluşturur.
Başlangıç merkez noktaları
Kötü kümeleme
26
13
K-means algoritması
K-means algoritmasının zayıf yönleri
K-means algoritması başlangıç merkez noktalarına bağlı kümeler
oluşturur.
Başlangıç merkez noktaları
İyi kümeleme
27
K-means algoritması
K-means algoritmasının zayıf yönleri
Outlier dataya karşı hassastır.
28
14
K-means algoritması
K-means algoritmasının zayıf yönleri
Bazı durumlarda doğal olarak kümeler oluşmuş durumdadır.
Uzaklığa dayalı kümeleme doğal yapıya uygun olmayabilir.
Bu durumlarda komşulukları gözönüne alan algoritmalar kullanılır.
29
Konular
Denetimsiz Öğrenmenin Temelleri
Kümeleme
Uzaklık Fonksiyonları
Öklid Uzaklığı
Manhattan Uzaklığı
Minkowski Uzaklığı
K-means Algoritması
Kümelerin Gösterimi
Hiyerarşik Kümeleme
Veri Standartlaştırma
Kümeleme Değerlendirmesi
30
15
Kümelerin Gösterimi
Bazen kümelerin farklı şekillerde gösterimi gerekebilir.
Bazı uygulamalarda sadece kümelerin merkez noktalarının ve
yarıçaplarının gösterimi yeterlidir.
Dairesel küme yapısına sahip durumlarda faydalıdır ve kümenin
yarıçapı kapsadığı alanı gösterir.
Dairesel olmayan kümeler için uygun gösterime sahip değildir.
31
Kümelerin Gösterimi
Bazı uygulamalarda sınıflandırma modelleri ile kümeler
gösterilebilir.
Kümelerin gösterimi karar ağaçları ile yapılabilir.
32
16
Konular
Denetimsiz Öğrenmenin Temelleri
Kümeleme
Uzaklık Fonksiyonları
Öklid Uzaklığı
Manhattan Uzaklığı
Minkowski Uzaklığı
K-means Algoritması
Kümelerin Gösterimi
Hiyerarşik Kümeleme
Veri Standartlaştırma
Kümeleme Değerlendirmesi
33
Hiyerarşik Kümeleme
Hiyerarşik kümeleme diğer bir kümeleme yaklaşımıdır ve ağaç
şeklinde gösterilir (dendrogram).
Elemanlar birbirine benzerlik durumuna göre hiyerarşik kümelenir.
En alt seviyede tek elemanlar bulunur.
34
17
Hiyerarşik Kümeleme
Hiyerarşik kümeleme için 2 farklı yöntem kullanılmaktadır.
Agglomerative (bottom up) clustering
Öncelikle en yakın ikili elemanlar ile kümeler oluşturulur.
Daha sonra yakın olan kümeler birleştirilerek yeni kümeler oluşturulur.
Divisive (top down) clustering
Öncelikle tüm elemanlar tek küme alınır.
Küme iki parçaya ayrılarak iki küme elde edilir.
Elde edilen kümelerde recursive olarak tek elemanlara ulaşıncaya kadar
parçalanır.
k-means algoritması veya diğer algoritmalar kullanılabilir.
35
Hiyerarşik Kümeleme
Örnek
36
18
Konular
Denetimsiz Öğrenmenin Temelleri
Kümeleme
Uzaklık Fonksiyonları
Öklid Uzaklığı
Manhattan Uzaklığı
Minkowski Uzaklığı
K-means Algoritması
Kümelerin Gösterimi
Hiyerarşik Kümeleme
Veri Standartlaştırma
Kümeleme Değerlendirmesi
37
Veri Standartlaştırma
Verilerin standartlaştırılması bazı uygulamalarda gereklidir.
Öklid uzaklığına dayalı bir kümelemede veri standartlaştırma
zorunludur.
Örnek
İki nitelik değerinden birisinin aralığı 0-1, diğerinin ise 0-1000
arasında olsun.
xi = (0.9, 720) ve xj= (0.1, 20) ise aralarındaki uzaklık,
olur.
İki nitelik değerleri de 0-1 aralığında ölçeklenirse,
20 -> 0,02 ve 720 -> 0,72 olur. Uzaklık değeri ise 1,063 olur.
38
19
Veri Standartlaştırma
Interval-scaled attributes
Aralıklı ölçeklendirme yönteminde en yaygın olarak aşağıdaki
yöntemler kullanılır:
range (min-max)
z-score
39
Veri Standartlaştırma
range (min-max)
Her nitelik için değerler minimum ve maksimum değerler
arasındaki değere göre, 0-1 arasında değer alır.
Burada, min(f) f niteliğinin minimum değerini, max(f) f niteliğinin
maksimum değerini ve xif ise i. gözlemin f. nitelik değerini ifade
eder.
40
20
Veri Standartlaştırma
z-score
Her nitelik için ortalama değerden uzaklığa ve nitelik
değerlerindeki standart sapmaya göre yeni değeri hesaplanır.
Burada, f f niteliğinin standart sapması, µf f niteliğinin
ortalama değeri ve z(xif ) ise i. gözlemin f. nitelik değerinin yeni
değerini ifade eder.
41
Veri Standartlaştırma
Ratio-scaled attributes
Bazı uygulamalarda nitelik değeri üssel değişebilir.
Burada, A ve B katsayılar ve t nitelik değeridir.
Bu tür durumlarda logaritmik değer ile standartlaştırma yapılır.
42
21
Konular
Denetimsiz Öğrenmenin Temelleri
Kümeleme
Uzaklık Fonksiyonları
Öklid Uzaklığı
Manhattan Uzaklığı
Minkowski Uzaklığı
K-means Algoritması
Kümelerin Gösterimi
Hiyerarşik Kümeleme
Veri Standartlaştırma
Kümeleme Değerlendirmesi
43
Kümeleme Değerlendirmesi
Kümeleme sonuçlarının değerlendirilmesi için uygulama alanına
göre farklı yöntemler kullanılmaktadır.
Bunlardan yaygın kullanılanlar;
User inspection
Ground truth
Entropy
Purity
Indirect evaluation
44
22
Kümeleme Değerlendirmesi
User inspection
Bir grup uzman tarafından yapılan skorlama ile değerlendirme
yapılır.
Değerlendirme kişisel olduğundan tüm skorların ortalaması alınır.
Değerlendirme süreci uzun süre alabilir.
Metin sınıflandırma gibi uygulamalarda faydalı olabilir.
Ancak milyonlarca veriye sahip bir VTYS üzerinde kümeleme
işleminin değerlendirilmesi oldukça uzun zaman alır ve doğru
değerlendirme yapılamayabilir.
45
Kümeleme Değerlendirmesi
Ground truth
Verilerin küme sayısı belirli ise elde edilen sonuç ona göre
değerlendirilir.
Her küme içerisinde doğru atanmış elemanlara göre de
değerlendirme yapılabilir.
46
23
Kümeleme Değerlendirmesi
Entropy
Her küme için entropi hesaplanır.
Burada, Di i. küme, Pri(cj) j. küme etiketinin olasılığıdır.
Tüm kümeler için entropi hesaplanır.
|Di | i. Kümedeki eleman sayısıdır. |D| toplam eleman sayısıdır.
47
Kümeleme Değerlendirmesi
Purity
Her küme için purity hesaplanır.
Burada, Di i. küme, Pri(cj) j. küme etiketinin olasılığıdır.
Tüm kümeler için purity hesaplanır.
|Di | i. kümedeki eleman sayısıdır. |D| toplam eleman sayısıdır.
48
24
Kümeleme Değerlendirmesi
Örnek
D kümesi 900 dokümana sahiptir. Tüm dokümanlar Science, Sports
ve Politics olarak 3 konuya ayrılmaktadır.
Her konu 300 dokümana sahiptir.
False Pozitif
Tahmin Science
Tahmin Sports
Tahmin Politics
False Negatif
True Pozitif
E (
250
250 20
20 10
10
log
log
log
) 0,589
280
280 280
280 280
280
Precision, recall ve f-skor değerleri de hesaplanabilir.
49
Kümeleme Değerlendirmesi
Indirect evaluation
Bazı uygulamalarda oluşuturulan kümeler yerine başka
parametreler kullanılarak değerlendirme yapılabilir.
Bir kitap tavsiye sisteminde müşteriler profil bilgilerine ve
geçmişte ilgilendikleri ürünlere göre kümelenebilir.
Ancak, değerlendirme tavsiye edilen kitapların seçilme oranına
göre yapılır.
50
25