• Sonuç bulunamadı

Web Madenciliği (Web Mining)

N/A
N/A
Protected

Academic year: 2021

Share "Web Madenciliği (Web Mining)"

Copied!
30
0
0

Yükleniyor.... (view fulltext now)

Tam metin

(1)

Web Madenciliği (Web Mining)

Hazırlayan: M. Ali Akcayol Gazi Üniversitesi

Bilgisayar Mühendisliği Bölümü

Bu dersin sunumları, “Web Data Mining: Exploring Hyperlinks, Contents, and Usage Data, Bing Liu, Springer, 2011.” kitabı kullanılarak hazırlanmıştır.

Konular

Sınıflandırıcıların Değerlendirilmesi

Skorlar

Karışıklık matrisi

Accuracy

Precision

Recall

Specificity

F-Score

Eğitim ve Test Kümeleri

Hold-out set

Multiple random sampling

k-fold cross validation

Bootstrap

(2)

3

Bir sınıflandırıcı geliştirildiğinde doğruluk değerinin belirlenmesi gereklidir.

Doğruluğu test edilmeden bir sınıflandırıcı gerçek hayattaki problemlerde kullanılamaz.

Bir sınıflandırıcının değerlendirilmesi için çok sayıda farklı yöntem ve ölçüt vardır.

Temel değerlendirme ölçütü sınıflandırmadaki doğruluk oranıdır (accuracy).

Sınıflandırıcıların Değerlendirilmesi

Bazı uygulamalarda hata oranı (error rate) değeri kullanılmaktadır.

Bir problem için birden fazla sınıflandırıcı varsa doğruluk oranı yüksek olan seçilir.

Genellikle istatistiksel testler kullanılarak farklı sınıflandırıcıların hangisinin daha uygun olduğuna karar verilebilir.

Birden fazla sınıflandırıcının değerlendirilmesi için aynı eğitim verisi ve aynı test verisi kullanılarak doğruluk oranları elde edilir.

Sınıflandırıcıların Değerlendirilmesi

accuracy rate

error  1

(3)

5

Sınıflandırma probleminde, giriş değerleri ile çıkış sınıfları arasında ilişkilendirme yapan bir fonksiyon bulunur.

Sınıflandırıcıların Değerlendirilmesi

Eğitim kümesinde girişler ve çıkış/lar arasında ilişkilendirmeler sağlanır.

Sınıflandırıcıların Değerlendirilmesi

(4)

7

Sınıflandırma modeli, eğitim kümesinde giriş/ler ile çıkış/lar arasında bir fonksiyon oluşturur.

Sınıflandırıcıların Değerlendirilmesi

Sınıflandırma modeli, yeni girişler için anlamlı sınıflandırma etiketleri belirler.

Sınıflandırıcıların Değerlendirilmesi

(5)

9

Farklı sınıflandırma yaklaşımları kullanılabilir.

Sınıflandırıcıların Değerlendirilmesi

Underfit, fit ve overfit

Underfit, eğitim kümesi için iyi düzeyde sınıflandırma yapamaz.

Fit, hem eğitim kümesi hem de test kümesi için iyi düzeyde sınıflandırma yapabilir.

Overfit, eğitim kümesi için iyi sınıflandırma yapar ancak test kümesi için iyi sınıflandırma yapamaz.

Sınıflandırıcıların Değerlendirilmesi

(6)

11

Konular

Sınıflandırıcıların Değerlendirilmesi

Skorlar

Karışıklık matrisi

Accuracy

Precision

Recall

Specificity

F-Score

Eğitim ve Test Kümeleri

Hold-out set

Multiple random sampling

k-fold cross validation

Bootstrap

Bir sınıflandırıcının ne derece doğru sınıflandırma yaptığının gerçek uygulamada kullanılmasından önce belirlenmesi gereklidir.

Farklı eğitim kümeleri için bir sınıflandırıcı farklı çözümler üretebilir.

Aynı eğitim kümesi için de farklı sınıflandırıcılar farklı çözüm üretebilir ve bunların en uygun olanının seçilmesi gereklidir.

Bir eğitim kümesi için aynı sınıflandırıcı modeli, farklı parametre değerleri için de farklı çözümler üretebilir. Uygun parametre değerlerinin belirlenmesi gereklidir.

Sınıflandırıcıların kullanım amaçlarına, problemin büyüklüğüne ve beklenen doğruluk düzeyine göre farklı skor değerleri

kullanılarak sınıflandırıcılar değerlendirilebilir.

Skorlar

(7)

13

Konular

Sınıflandırıcıların Değerlendirilmesi

Skorlar

Karışıklık matrisi

Accuracy

Precision

Recall

Specificity

F-Score

Eğitim ve Test Kümeleri

Hold-out set

Multiple random sampling

k-fold cross validation

Bootstrap

Karışıklık (confusion) matrisi örnek kümesindeki gerçek sınıf etiketi ile tahmin edilen sınıf etiketi sayılarını içerir.

Karışıklık matrisi

(8)

15

Çok sayıdaki sınıf için örnek aşağıdadır.

Karışıklık matrisi

Konular

Sınıflandırıcıların Değerlendirilmesi

Skorlar

Karışıklık matrisi

Accuracy

Precision

Recall

Specificity

F-Score

Eğitim ve Test Kümeleri

Hold-out set

Multiple random sampling

k-fold cross validation

Bootstrap

(9)

17

Bir sınıflandırıcının doğru sınıflandırdığı örnek sayısının toplam örnek sayısına oranıdır.

Doğruluk değerlendirmesi test kümesi kullanılarak hesaplanır.

Eğitim sırasında kullanılmayan test verilerinde doğru sınıflandırdığı örnek sayısı alınarak doğruluk düzeyi hesaplanır.

Accuracy

İyi bir sınıflandırıcının test kümesindeki tüm sınıfları doğru tahmin etmesi beklenir.

Accuracy

(10)

19

İki sınıfa sahip bir sınıflandırıcı örneği.

Accuracy

İki sınıfa sahip bir sınıflandırıcı örneği.

Accuracy = (TP + TN) / (N) = (10 + 8) / 22 = 0,82

Hata = (FP + FN) / (N) = (2 + 2) / 22 = 0,18

Accuracy

(11)

21

Accuracy

İki sınıfa sahip bir sınıflandırıcı örneği.

Accuracy = (TP + TN) / (N) = (0 + 993) / 1005= 0,99

Accuracy

(12)

23

İki sınıfa sahip bir sınıflandırıcı örneği.

Accuracy = (TP + TN) / (N) = (0 + 1000) / 1005= 0,995

Hata = (FP + FN) / (N) = (0 + 5) / 1005 = 0,005 (Çok daha düşük hata !!!)

Accuracy

Konular

Sınıflandırıcıların Değerlendirilmesi

Skorlar

Karışıklık matrisi

Accuracy

Precision

Recall

Specificity

F-Score

Eğitim ve Test Kümeleri

Hold-out set

Multiple random sampling

k-fold cross validation

Bootstrap

(13)

25

Precision, gerçek değeri pozitif olup pozitif değere sınıflandırılan sayısının, pozitif değere sınıflandırılanların toplamına oranıdır.

Precision

FP TP

TP

  Precision

Precision

7 0 0

Precision 0 

 

 

FP TP

TP

(Çok kötü precison değeri !!!)

(14)

27

Konular

Sınıflandırıcıların Değerlendirilmesi

Skorlar

Karışıklık matrisi

Accuracy

Precision

Recall

Specificity

F-Score

Eğitim ve Test Kümeleri

Hold-out set

Multiple random sampling

k-fold cross validation

Bootstrap

Recall, gerçek değeri pozitif olup pozitif değere sınıflandırılan sayısının, gerçek değeri pozitif olanların tümüne oranıdır.

Recall

FN TP

TP

 

Recall

(15)

29

Recall

5 0 0

Recall 0 

 

 

FN TP

TP

(Çok kötü recall değeri !!!)

Spam filtreleme

Precision: spam kutusuna alınanlardan gerçekte spam olanların sayısının spam kutusundaki tüm mesajlara oranıdır.

Recall: gerçekte spam olup da spam kutusuna alınan mesajların, tüm spam mesajlara oranıdır.

Duygu analizi

Precision: gerçekte pozitif olup da pozitif sınıflandırılanların sayısının tüm pozitif olrak sınıflandırılanlara oranıdır.

Recall: gerçekte pozitif olup da pozitif sınıflandırılanların sayısının tüm pozitif olanlara oranıdır.

Precision ve Recall Karşılaştırma

TP

  Recall TP

  Precision

(16)

31

Precision ve Recall Karşılaştırma

Konular

Sınıflandırıcıların Değerlendirilmesi

Skorlar

Karışıklık matrisi

Accuracy

Precision

Recall

Specificity

F-Score

Eğitim ve Test Kümeleri

Hold-out set

Multiple random sampling

k-fold cross validation

Bootstrap

(17)

33

Specifity, gerçek değeri negatif olup negatif sınıflandırılan sayısının, gerçek değeri negatif olanların tümüne oranıdır.

Specificity

FP TN

TN

  y Specificit

Specificity

99 , 7 0 993 y 993

Specificit 

 

 

FP TN

TN

(18)

35

Specificity

00 , 0 1 1000 y 1000

Specificit 

 

 

FP TN

TN

Konular

Sınıflandırıcıların Değerlendirilmesi

Skorlar

Karışıklık matrisi

Accuracy

Precision

Recall

Specificity

F-Score

Eğitim ve Test Kümeleri

Hold-out set

Multiple random sampling

k-fold cross validation

Bootstrap

(19)

37

F1-score (Harmonic mean), iki sınıflandırıcının tek ölçüt ile değerlendirilmesi için kullanılır.

x ve y için f1-score değişimi

F-Score

Recall Precision

.Recall .Precision F 2

Recall) (Precision

Recall Precision.

) 1 F (

1

2 2

score score

Recall Precision

.Recall .Precision 2

Recall 1 Precision

1 2

mean

Harmonic

n

1 k

1 xk

mean harmonic

x n

F-Score

0 0 0

0 . 0 . 2 Recall Precision

n.Recall 2.Precisio

score -

F

1

 

 

(20)

39

F-Score

1 1 1

1 . 1 . 2 Recall Precision

n.Recall 2.Precisio

score -

F

1

 

 

0 1 10

Recall 10 

 

 

FN TP

TP

0 1 10

Precision 10 

 

 

FP TP

TP

F-Score

0 0 0

0 . 0 . 2 Recall Precision

n.Recall 2.Precisio

score -

F

1

 

 

10 0 0

Recall 0 

 

 

FN TP

TP

5 0 0

Precision 0 

 

 

FP TP

TP

(21)

41

F-Score

5 , 5 0

, 0 5 , 0

) 5 , 0 ).(

5 , 0 .(

2 Recall Precision

n.Recall 2.Precisio

score -

F

1

 

 

5 , 5 0 5

Recall 5 

 

 

FN TP

TP

5 , 5 0 5

Precision 5 

 

 

FP TP

TP

F-Score

4 , 1 0 25 , 0

1 ).

25 , 0 .(

2 Recall Precision

n.Recall 2.Precisio

score -

F

1

 

 

0 1 5

Recall 5 

 

 

FN TP

TP

25 , 15 0 5

Precision 5 

 

 

FP TP

TP

(22)

43

F-Score

n

1 k

1 xk

hm

x n

n k

gm x

x

n

1

k

n

1 k

1

k

am x

x n

Konular

Sınıflandırıcıların Değerlendirilmesi

Skorlar

Karışıklık matrisi

Accuracy

Precision

Recall

Specificity

F-Score

Eğitim ve Test Kümeleri

Hold-out set

Multiple random sampling

k-fold cross validation

Bootstrap

(23)

45

Bir sınıflandırıcının eğitimi ve testi için sınırlı sayıda veri elde edilebilir.

Eğitim verisi arttıkça daha iyi öğrenme ve genelleme sağlanabilmektedir.

Test verisi arttıkça sınıflandırıcının hata olasılığı daha iyi tahmin edilebilmektedir.

Eğitim ve test verileri birbirinden farklı oluşturulmalıdır.

Bir eğitim döngüsü içerisinde aynı değerlere sahip eğitim ve test veri kümesi kullanılmamalıdır.

Eğitim ve Test Kümeleri

Konular

Sınıflandırıcıların Değerlendirilmesi

Skorlar

Karışıklık matrisi

Accuracy

Precision

Recall

Specificity

F-Score

Eğitim ve Test Kümeleri

Hold-out set

Multiple random sampling

k-fold cross validation

Bootstrap

(24)

47

Kullanılabilir veri kümesi D, eğitim (Dtrain) ve test (Dtest) olmak üzere iki ayrı kümeye ayrılır.

D = Dtrain Dtest , Dtrain Dtest= 

Oluşturulan test kümesi holdout set olarak adlandırılır.

Bu yöntem veri kümesi D büyükse kullanılabilir.

D veri kümesindeki tüm veriler bir sınıf etiketine atanmıştır.

Train set sınıflandırıcının eğitimi için, test set ise sınıflandırıcının değerlendirilmesi için kullanılır.

Train set için yüksek doğruluk oranına sahip olan sınıflandırıcı, test set için düşük doğruluk düzeyine sahipse overfit yapılmıştır.

İki küme için %50’şer veya 2/3 train ve 1/3 test için alınabilir.

Hold-out set

Kullanılabilir veri kümesi D, eğitim (Dtrain) ve test (Dtest) olmak üzere iki ayrı kümeye ayrılır.

Hold-out set

(25)

49

Konular

Sınıflandırıcıların Değerlendirilmesi

Skorlar

Karışıklık matrisi

Accuracy

Precision

Recall

Specificity

F-Score

Eğitim ve Test Kümeleri

Hold-out set

Multiple random sampling

k-fold cross validation

Bootstrap

Kullanılabilir veri kümesi D çok küçük boyutta ise, test kümesi çok daha küçük boyutta olacağından güvenilir sonuç vermez.

Veri kümesinin küçük boyutta olduğu bu gibi durumlarda n kez rastgele örnekleme ile eğitim ve test kümesi oluşturulur.

Bu durumda n tane doğruluk değeri elde edilir.

Sonuç doğruluk değeri, elde edilen doğruluk değerlerinin ortalaması alınarak hesaplanır.

Multiple random sampling

(26)

51

Konular

Sınıflandırıcıların Değerlendirilmesi

Skorlar

Karışıklık matrisi

Accuracy

Precision

Recall

Specificity

F-Score

Eğitim ve Test Kümeleri

Hold-out set

Multiple random sampling

k-fold cross validation

Bootstrap

Veri kümesi D küçük boyutta olduğunda sık kullanılan yöntemdir.

Bu yöntemde veri kümesi D, k adet eşit boyutta disjoint alt kümeye bölünür.

Her (k-1) küme eğitim için kullanılırken kalan bir küme test için kullanılır.

Bu işlem k kez tekrarlanır ve k adet doğruluk değeri elde edilir.

Sonuç doğruluk değeri tüm doğruluk değerlerinin ortalaması alınarak hesaplanır.

5-fold ve 10-fold cross-validation literatürde farklı uygulamalarda yaygın kullanılmaktadır.

Hold-out set yöntemine göre daha iyi sonuç vermektedir.

k-fold cross validation

(27)

53

k-fold cross validation

k-fold cross validation

(28)

55

k-fold cross validation

Leaving-one-out cross validation

k-fold cross validation yönteminin özel durumudur.

Eğitim kümesi, örnek sayısı kadar alt kümeye (k=N) bölünür.

Her iterasyonda 1 eleman dışarıda tutularak diğerlerinin tümü eğitim için kullanılır.

Kalan 1 eleman ise test için kullanılır.

Sonuç doğruluk değeri tüm doğruluk değerlerinin toplamı alınarak hesaplanır.

k-fold cross validation

(29)

57

Konular

Sınıflandırıcıların Değerlendirilmesi

Skorlar

Karışıklık matrisi

Accuracy

Precision

Recall

Specificity

F-Score

Eğitim ve Test Kümeleri

Hold-out set

Multiple random sampling

k-fold cross validation

Bootstrap

D veri kümesinden belirli sayıda değer rastgele seçilerek bir altküme elde edilir.

Elde edilen her altküme için ayrı model oluşturulur ve her birisinin doğruluk değeri ayrı ele alınır.

Sonuç doğruluk değeri ise tüm modellerden elde edilen doğruluk değerlerinin ortalaması alınarak hesaplanır.

Test ve eğitim verileri tekrarlı olabilir.

Overfit olma olasılığı vardır.

Bootstrap

(30)

59

Bootstrap

Sınıflandırıcıların değerlendirilmesi hakkında bir araştırma ödevi hazırlayınız.

Ödev

Referanslar

Benzer Belgeler

 Veri madenciliği: İşlenmiş olan verinin bir örüntü veya bilgi elde edilmesi için veri madenciliği algoritmalarıyla değerlendirilmesi yapılır.  Post-processing:

 Confidence değerine bağlı olarak bir frequent itemset için kural aşağıdaki gibi elde edilebilir:.  Burada f.count ile (f-  ).count tüm transaction kümesi T ’deki

 Elde edilen sıralı örüntülerden, sıralı kurallar, etiket sıralı kurallar ve sınıf sıralı kurallar oluşturulabilir.  Elde edilen kurallar özellikle Web

 C4.5 ile sayısal değerlere sahip nitelikler için karar ağacı oluşturmak için Quinlan tarafından geliştirilmiştir.  ID3 algoritmasından tek farkı nümerik

 K-means algoritması başlangıç merkez noktalarına bağlı kümeler oluşturur.

We propose a new combinatorial test data generator tool that combines fault data analysis to determine the right interaction strength for the specific domain of

Dünya Savaşı'nın yaklaştığı 1938 yı­ lında, ordu içindeki Hitlerci unsurlar, günün birinde Almanya 'nm yanında savaşa girecekleri hülyası ile ken­ dilerine

Bu geniş tanım bir yandan, milyonlarca siteden ve çevrimiçi (online) veritabanlarından veri ve kaynakların otomatik olarak aranması ve elde edilmesi işlemi olan Web