Anda di halaman 1dari 188

6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

Halaman 1

Isi

Kata pengantar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . vii

Ucapan Terima Kasih ................................................. ....... ix

Tentang Penulis ................................................... ......... xi

Kontributor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xiii

1 C4.5. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
Naren Ramakrishnan

2 K - Berarti. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Joydeep Ghosh dan Alexander Liu

3 SVM: Mendukung Mesin Vektor. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37


Hui Xue, Qiang Yang, dan Songcan Chen

4 Apriori. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
Hiroshi Motoda dan Kouzou Ohara

5 EM. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
Geoffrey J. McLachlan dan Shu-Kay Ng

6 PageRank. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
Bing Liu dan Philip S. Yu

7 AdaBoost. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
Zhi-Hua Zhou dan Yang Yu

8 k NN: k- Tetangga Terdekat. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151


Michael Steinbach dan Pang-Ning Tan

© 2009 oleh Taylor & Francis Group, LLC

https://translate.googleusercontent.com/translate_f 1/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

Halaman 2

vi Isi

9 Naıve Bayes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163


David J. Hand

10 CART: Pohon Klasifikasi dan Regresi. . . . . . . . . . . . . . . . . . . . . . . . . . . . .179


Dan Steinberg

Indeks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203

© 2009 oleh Taylor & Francis Group, LLC

https://translate.googleusercontent.com/translate_f 2/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

Halaman 3

Kata pengantar

Dalam upaya mengidentifikasi beberapa algoritma yang paling berpengaruh yang telah banyak
digunakan dalam komunitas data mining, Konferensi Internasional IEEE tentang Data
Penambangan (ICDM, http://www.cs.uvm.edu/∼icdm/) mengidentifikasi 10 algoritma teratas dalam
penambangan data untuk presentasi di ICDM '06 di Hong Kong. Buku ini menyajikan top ini
10 algoritma penambangan data: C4.5, k -Means, SVM, Apriori, EM, PageRank, AdaBoost,
k NN, Naıve Bayes, dan CART.
Sebagai langkah pertama dalam proses identifikasi, pada bulan September 2006 kami mengundang ACM
Pemenang KDD Innovation Award dan IEEE ICDM Research Contribution Award
masing-masing menominasikan hingga 10 algoritma paling terkenal dalam penambangan data. Semua kecuali satu
set pemenang penghargaan ini merespons undangan kami. Kami bertanya masing-masing
nominasi untuk memberikan informasi berikut: (a) nama algoritma, (b) brief
pembenaran, dan (c) referensi publikasi yang representatif. Kami juga menyarankan masing-masing
Algoritma yang dinominasikan seharusnya telah banyak dikutip dan digunakan oleh peneliti lain
di lapangan, dan nominasi dari setiap nominator sebagai kelompok harus memiliki a
representasi wajar dari berbagai bidang dalam penambangan data.
Setelah nominasi pada langkah 1, kami memverifikasi setiap nominasi untuk kutipannya pada
Google Cendekia pada akhir Oktober 2006, dan menghapus nominasi yang tidak
memiliki setidaknya 50 kutipan. Semua nominasi (18) yang tersisa kemudian diorganisir dalam
10 topik: analisis asosiasi, klasifikasi, pengelompokan, pembelajaran statistik, mengantongi
dan meningkatkan, pola berurutan, penambangan terintegrasi, set kasar, penambangan tautan, dan
penambangan grafik. Untuk beberapa dari 18 algoritma ini, seperti k- berarti, representatif
publikasi tidak harus merupakan makalah asli yang memperkenalkan algoritma, tetapi
makalah baru-baru ini yang menyoroti pentingnya teknik ini. Perwakilan ini
publikasi tersedia di situs Web ICDM (http://www.cs.uvm.edu/∼icdm/
algoritma / CandidateList.shtml).
Pada langkah ketiga dari proses identifikasi, kami memiliki keterlibatan yang lebih luas dari
komunitas penelitian. Kami mengundang anggota Komite Program KDD-06 (the
Konferensi Internasional ACM SIGKDD 2006 tentang Penemuan Pengetahuan dan Data
Mining), ICDM '06 (Konferensi Internasional IEEE 2006 tentang Penambangan Data), dan
SDM '06 (Konferensi Internasional SIAM 2006 tentang Penambangan Data), serta
ACM KDD Innovation Award dan IEEE ICDM Research Contribution Award
pemenang untuk setiap suara hingga 10 algoritma terkenal dari 18-algoritma
daftar kandidat. Hasil pemungutan suara dari langkah ini disajikan di panel ICDM '06
pada Top 10 Algoritma dalam Penambangan Data.
Di panel ICDM '06 21 Desember 2006, kami juga mengambil suara terbuka dengan semua
145 peserta pada 10 algoritma teratas dari daftar kandidat 18-algoritma di atas,

vii

© 2009 oleh Taylor & Francis Group, LLC

Halaman 4

https://translate.googleusercontent.com/translate_f 3/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

viii Kata pengantar

dan 10 algoritma teratas dari pemungutan suara terbuka ini sama dengan hasil pemungutan suara
dari langkah ketiga di atas. Panel tiga jam diselenggarakan sebagai sesi terakhir
konferensi ICDM '06, bersamaan dengan tujuh sesi presentasi makalah
Konferensi Web Intelligence (WI '06) dan Intelligent Agent Technology (IAT '06)
di lokasi yang sama, dan menarik 145 peserta.
Setelah ICDM '06, kami mengundang penulis asli dan beberapa panel presen-
ters dari 10 algoritma ini untuk menulis artikel jurnal untuk memberikan deskripsi masing-masing
algoritma, membahas dampak algoritma, dan meninjau penelitian saat ini dan selanjutnya
pada algoritma. Artikel jurnal diterbitkan pada Januari 2008 di Knowledge
dan Sistem Informasi [1]. Buku ini berkembang pada artikel jurnal ini, dengan a
struktur umum untuk setiap bab pada setiap algoritma, dalam hal deskripsi algoritma-
tion, perangkat lunak yang tersedia, contoh dan aplikasi ilustrasi, topik lanjutan, dan
latihan.
Setiap bab buku ditinjau oleh dua pengulas independen dan satu
dua editor buku. Beberapa bab melewati revisi besar berdasarkan ulasan ini
sebelum penerimaan terakhir mereka.
Kami berharap identifikasi 10 algoritma teratas dapat mempromosikan penambangan data
aplikasi dunia nyata yang lebih luas, dan menginspirasi lebih banyak peneliti dalam penambangan data untuk lebih lanjut
jelajahi 10 algoritma ini, termasuk dampaknya dan masalah penelitian baru. 10 ini
algoritma mencakup klasifikasi, pengelompokan, pembelajaran statistik, analisis asosiasi,
dan penambangan tautan, yang semuanya merupakan salah satu topik terpenting dalam penelitian penambangan data
dan pengembangan, serta untuk desain kurikulum untuk data mining terkait, mesin
kursus pembelajaran, dan kecerdasan buatan.

© 2009 oleh Taylor & Francis Group, LLC

Halaman 5

https://translate.googleusercontent.com/translate_f 4/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

Ucapan Terima Kasih

Inisiatif mengidentifikasi 10 algoritma penambangan data teratas dimulai pada Mei 2006
keluar dari sebuah diskusi antara Dr. Jiannong Cao di Departemen Komputer di
Universitas Politeknik Hong Kong (PolyU) dan Dr. Xindong Wu, ketika Dr. Wu berada
memberikan seminar tentang 10 Masalah yang Menantang dalam Penelitian Data Mining [2] di PolyU.
Wu dan Dr. Vipin Kumar melanjutkan diskusi ini di KDD-06 pada Agustus 2006
dengan berbagai orang, dan mendapat dukungan yang sangat antusias.
Naila Elliott di Departemen Ilmu dan Teknik Komputer di
University of Minnesota mengumpulkan dan menyusun nominasi algoritma dan
hasil pemungutan suara dalam proses identifikasi tiga langkah. Yan Zhang di Departemen
Ilmu Komputer di University of Vermont mengkonversi 10 bagian yang diserahkan
Sion dalam format yang berbeda ke dalam format LaTeX yang sama, yang memakan waktu
proses.

Xindong Wu dan Vipin Kumar


15 September 2008

Referensi
[1] Xindong Wu, Vipin Kumar, J. Ross Quinlan, Joydeep Ghosh, Qiang Yang,
Hiroshi Motoda, Geoffrey J. McLachlan, Angus Ng, Bing Liu, Philip S.
Yu, Zhi-Hua Zhou, Michael Steinbach, David J. Hand, dan Dan Steinberg,
10 algoritma teratas dalam penambangan data, Pengetahuan dan Sistem Informasi ,
14 (2008), 1: 1–37.

[2] Qiang Yang dan Xindong Wu (Kontributor: Pedro Domingos, Charles Elkan,
Johannes Gehrke, Jiawei Han, David Heckerman, Daniel Keim, Jiming
Liu, David Madigan, Gregory Piatetsky-Shapiro, Vijay V. Raghavan, Rajeev
Rastogi, Salvatore J. Stolfo, Alexander Tuzhilin, dan Benjamin W. Wah),
10 masalah yang menantang dalam penelitian penambangan data, International Journal of
Teknologi Informasi & Pengambilan Keputusan , 5, 4 (2006), 597–604.

ix

© 2009 oleh Taylor & Francis Group, LLC

Halaman 6

https://translate.googleusercontent.com/translate_f 5/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

Tentang Penulis

Xindong Wu adalah seorang profesor dan ketua Departemen Ilmu Komputer di


Universitas Vermont, Amerika Serikat. Ia meraih gelar PhD dalam Kecerdasan Buatan
dari Universitas Edinburgh, Inggris. Minat penelitiannya meliputi penambangan data,
sistem berbasis pengetahuan, dan eksplorasi informasi Web. Dia telah menerbitkan lebih dari
170 makalah yang dirujuk dalam bidang ini di berbagai jurnal dan konferensi, termasuk IEEE
TKDE, TPAMI, ACM TOIS, DMKD, KAIS, IJCAI, AAAI, ICML, KDD, ICDM, dan
WWW, serta 18 buku dan acara konferensi. Ia memenangkan IEEE ICTAI-
2005 Best Paper Award dan IEEE ICDM-2007 Best Theory / Algorithms Paper
Runner Up Award.
Dr. Wu adalah pemimpin redaksi Transaksi IEEE tentang Pengetahuan dan Data.
gineering (TKDE , oleh IEEE Computer Society), pendiri dan Pengarah saat ini
Ketua Komite Konferensi Internasional IEEE tentang Penambangan Data (ICDM) , the
pendiri dan pemimpin redaksi kehormatan saat ini Sistem Pengetahuan dan Informasi
(KAIS, oleh Springer), kursi pendiri (2002–2006) dari IEEE Computer Soci-
ety Komite Teknis Cerdas Informatika (TCII), dan editor seri
Seri Buku Springer tentang Pemrosesan Informasi dan Pengetahuan Lanjut (AI&KP).
Dia menjabat sebagai ketua komite program untuk ICDM '03 (2003 IEEE International
Konferensi tentang Penambangan Data) dan ketua komite program untuk KDD-07 (tanggal 13)
ACM SIGKDD Konferensi Internasional tentang Penemuan Pengetahuan dan Penambangan Data).
Dia adalah pemenang Penghargaan Layanan ACM SIGKDD 2004, IEEE ICDM Out 2006
pemenang Penghargaan Layanan berdiri, dan seorang profesor ketua 2005 di Changjiang (atau
Sungai Yangtze) Program Beasiswa di Universitas Teknologi Hefei
bosan oleh Departemen Pendidikan Cina dan Yayasan Li Ka Shing. Dia
telah menjadi pembicara yang diundang / keynote di berbagai konferensi internasional termasuk
NSF-NGDM'07, PAKDD-07, IEEE EDOC'06, IEEE ICTAI'04, IEEE / WIC / ACM
WI'04 / IAT'04, SEKE 2002, dan PADD-97.

Vipin Kumar saat ini adalah profesor William Norris dan kepala Ilmu Komputer
ence dan Departemen Teknik di University of Minnesota. Dia menerima BE
gelar dalam bidang elektronik dan teknik komunikasi dari Indian Institute of Tech-
nology, Roorkee (sebelumnya, University of Roorkee), India, pada tahun 1977, gelar ME di
teknik elektronik dari Philips International Institute, Eindhoven, Belanda,
pada tahun 1979, dan PhD dalam ilmu komputer dari University of Maryland, College Park,
pada tahun 1982. Minat penelitian Kumar saat ini meliputi penambangan data, bioinformatika, dan
komputasi kinerja tinggi. Penelitiannya telah menghasilkan pengembangan
konsep isoefficiency metric untuk mengevaluasi skalabilitas algoritma paralel, sebagai
serta algoritma dan perangkat lunak paralel yang sangat efisien untuk faktorisasi matriks jarang

xi

© 2009 oleh Taylor & Francis Group, LLC

Halaman 7

xii Tentang Penulis

(PSPASES) dan partisi grafik (METIS, ParMetis, hMetis). Dia telah menulis
200 artikel penelitian, dan telah coedited atau coauthored 9 buku, termasuk banyak digunakan
buku teks Pengantar Komputasi Paralel dan Pengantar Penambangan Data , keduanya
diterbitkan oleh Addison-Wesley. Kumar telah menjabat sebagai kursi / kursi untuk banyak konferensi.
ences / workshop di bidang penambangan data dan komputasi paralel, termasuk IEEE
Konferensi Internasional tentang Penambangan Data (2002), Paralel Internasional dan Dis-
tributed Processing Simposium (2001), dan Konferensi Internasional SIAM tentang Data

https://translate.googleusercontent.com/translate_f 6/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
Mining (2001).
Konferensi Kumar
nasional menjabat
tentang sebagai ketua
Penambangan Datakomite
, dan pengarah
merupakanSIAM Inter-
anggota komite pengarah dari
yang Konferensi Internasional IEEE pada Data Mining dan IEEE International Con-
ferensi pada Bioinformatika dan Biomedis . Kumar adalah coeditor-in-chief pendiri
dari Jurnal Analisis Statistik dan Data Mining , editor-in-chief dari IEEE Intellistudio
gent Informatics Bulletin , dan editor Data Mining dan Knowledge Discovery Book
Seri , diterbitkan oleh CRC Press / Chapman Hall. Kumar juga melayani atau telah melayani di
dewan redaksi Penambangan Data dan Penemuan Pengetahuan , Pengetahuan dan Informasi
Sistem , Buletin Intelijen Komputasi IEEE , Ulasan Tahunan Intelejen
Informatika , Komputasi Paralel , Jurnal Komputasi Paralel dan Terdistribusi ,
Transaksi IEEE Teknik Data dan Pengetahuan (1993–1997), IEEE Concur-
rency (1997-2000), dan IEEE Parallel and Distributed Technology (1995-1997). Dia
adalah sesama dari ACM, IEEE, dan AAAS, dan anggota SIAM. Kumar diterima
penghargaan Prestasi Teknis IEEE Computer Society 2005 untuk kontribusi
untuk desain dan analisis algoritma paralel, partisi-grafik, dan penambangan data.

© 2009 oleh Taylor & Francis Group, LLC

Halaman 8

Kontributor

Songcan Chen, Universitas Aeronautika dan Astronautika Nanjing, Nanjing, Cina


Joydeep Ghosh, Universitas Texas di Austin, Austin, TX
David J. Hand, Imperial College, London, Inggris

https://translate.googleusercontent.com/translate_f 7/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
Alexander Liu, Universitas Texas di Austin, Austin, TX
Bing Liu, Universitas Illinois di Chicago, Chicago, IL
Geoffrey J. McLachlan, Universitas Queensland, Brisbane, Australia

Hiroshi Motoda, ISIR, Universitas Osaka dan AFOSR / AOARD, Penelitian Angkatan Udara
Laboratorium, Jepang

Shu-Kay Ng, Universitas Griffith, Meadowbrook, Australia


Kouzou Ohara, ISIR, Universitas Osaka, Jepang
Naren Ramakrishnan, Virginia Tech, Blacksburg, VA
Michael Steinbach, Universitas Minnesota, Minneapolis, MN
Dan Steinberg, Sistem Salford, San Diego, CA
Pang-Ning Tan, Universitas Negeri Michigan, Lansing Timur, MI

Hui Xue, Universitas Aeronautika dan Astronautika Nanjing, Nanjing, Cina


Qiang Yang, Universitas Sains dan Teknologi Hong Kong, Clearwater Bay,
Kowloon, Hong Kong
Philip S. Yu, Universitas Illinois di Chicago, Chicago, IL
Yang Yu, Universitas Nanjing, Nanjing, Cina
Zhi-Hua Zhou, Universitas Nanjing, Nanjing, Cina

xiii

© 2009 oleh Taylor & Francis Group, LLC

Halaman 9

Bab 1
C4.5

Naren Ramakrishnan

Isi

1.1 Pendahuluan ................................................ .............. 1


1.2 Deskripsi Algoritma ............................................... ..... 3
1.3 C4 .5 Fitur ............................................. ................ 7
1.3.1 Pemangkasan Pohon ............................................. ......... 7
1.3.2 Peningkatan Penggunaan Atribut Berkelanjutan ............................ 8

https://translate.googleusercontent.com/translate_f 8/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
1.3.3 Menangani Nilai yang Hilang .............................................. 9
1.3.4 Menginduksi Aturan ............................................. ... 10
1.4 Diskusi tentang Implementasi Perangkat Lunak yang Tersedia ...................... 10
1.5 Dua Contoh Ilustrasi .................................................. . 11
1.5.1 Golf Dataset ............................................. ........ 11
1.5.2 Kedelai Kedelai ............................................. .... 12
1.6 Topik Tingkat Lanjut ............................................... ......... 13
1.6.1 Menambang dari Penyimpanan Sekunder ...................................... 13
1.6.2 Pohon Keputusan Miring .............................................. 13
1.6.3 Pemilihan Fitur ................................................. ... 13
1.6.4 Metode Ensemble ............................................. . 14
1.6.5 Aturan Klasifikasi ............................................. . 14
1.6.6 Redescription .................................................. ..... 15
1.7 Latihan ................................................ ............... 15
Referensi ................................................. .................. 17

1.1 Pendahuluan
C4.5 [30] adalah serangkaian algoritma untuk masalah klasifikasi dalam pembelajaran mesin dan
penambangan data. Ini ditargetkan untuk pembelajaran terawasi: Diberikan dataset bernilai atribut
di mana instance dijelaskan oleh koleksi atribut dan milik salah satu set
dari kelas yang saling eksklusif , C4.5 mempelajari pemetaan dari nilai atribut ke kelas
yang dapat diterapkan untuk mengklasifikasikan instance baru yang tidak terlihat. Sebagai contoh, lihat Gambar 1.1
di mana baris menunjukkan hari tertentu, atribut menunjukkan kondisi cuaca pada yang diberikan
hari, dan kelas menunjukkan apakah kondisinya kondusif untuk bermain golf.
Jadi, setiap baris menunjukkan sebuah instance, dijelaskan oleh nilai-nilai untuk atribut seperti Out-
look (variabel acak ternary-dihargai) Temperatur (bernilai kontinu), Kelembaban

© 2009 oleh Taylor & Francis Group, LLC

Halaman 10

2 C4.5

Hari Pandangan Suhu Kelembaban Berangin Bermain golf?


1 Cerah 85 85 Salah Tidak
2 Cerah 80 90 Benar Tidak
3 Mendung 83 78 Salah Iya
4 Hujan 70 96 Salah Iya
5 Hujan 68 80 Salah Iya
6 Hujan 65 70 Benar Tidak
7 Mendung 64 65 Benar Iya
8 Cerah 72 95 Salah Tidak
9 Cerah 69 70 Salah Iya
10 Hujan 75 80 Salah Iya
11 Cerah 75 70 Benar Iya
12 Mendung 72 90 Benar Iya
13 Mendung 81 75 Salah Iya
14 Hujan 71 80 Benar Tidak

Gambar 1.1 Contoh input dataset ke C4.5.

(juga bernilai kontinu), dan Windy (biner), dan kelasnya adalah Boolean PlayGolf?
variabel kelas. Semua data pada Gambar 1.1 merupakan "data pelatihan," sehingga data
maksudnya adalah mempelajari pemetaan menggunakan dataset ini dan menerapkannya pada instance baru lainnya
https://translate.googleusercontent.com/translate_f 9/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
yang menyajikan nilai hanya atribut untuk memprediksi nilai untuk kelas acak
variabel.
C4.5, dirancang oleh J. Ross Quinlan, dinamakan demikian karena merupakan keturunan dari
Pendekatan ID3 untuk menginduksi pohon keputusan [25], yang pada gilirannya adalah inkarnasi ketiga di Indonesia
serangkaian "dikotomisasi iteratif." Sebuah pohon keputusan adalah serangkaian pertanyaan systemat-
ically diatur sehingga setiap pertanyaan kueri atribut (misalnya, Outlook ) dan cabang
berdasarkan nilai atribut. Di daun pohon ditempatkan prediksi
variabel kelas (di sini, PlayGolf? ). Pohon keputusan karenanya tidak berbeda dengan seri
pertanyaan pemecahan masalah yang mungkin Anda temukan di manual mobil Anda untuk membantu menentukan apa
bisa salah dengan kendaraan. Selain menginduksi pohon, C4.5 juga dapat menyatakannya kembali
pohon dalam bentuk aturan yang dapat dipahami. Selanjutnya, aturan operasi postpruning didukung
oleh C4.5 biasanya menghasilkan pengklasifikasi yang tidak bisa disajikan kembali sebagai pohon keputusan.
Silsilah historis C4.5 menawarkan studi yang menarik tentang betapa berbedanya sub-
komunitas berkumpul pada solusi yang kurang lebih sama untuk klasifikasi. ID3
dikembangkan secara independen dari algoritma induksi pohon asli yang dikembangkan oleh
Friedman [13], yang kemudian berkembang menjadi CART [4] dengan partisipasi Breiman,
Olshen, dan Stone. Tapi, dari banyak referensi ke CART di [30], desain
keputusan yang mendasari C4.5 tampaknya telah dipengaruhi oleh (untuk memperbaiki) bagaimana
CART menyelesaikan masalah serupa, seperti prosedur untuk menangani jenis khusus
upeti. (Untuk alasan ini, karena tumpang tindih dalam ruang lingkup, kami akan berusaha meminimalkan dengan
materi yang dibahas dalam bab CART, Bab 10, dan tunjukkan perbedaan utama
di persimpangan yang tepat.) Dalam [25] dan [36], Quinlan juga mengakui pengaruhnya
kerangka CLS (Concept Learning System [16]) dalam pengembangan sejarah

© 2009 oleh Taylor & Francis Group, LLC

Halaman 11

1.2 Deskripsi Algoritma 3

ID3 dan C4.5. Hari ini, C4.5 digantikan oleh sistem See5 / C5.0, sebuah iklan
produk yang ditawarkan oleh Rulequest Research, Inc.
Fakta bahwa dua dari 10 algoritma teratas adalah algoritma berbasis pohon membuktikan
popularitas metode tersebut dalam penambangan data yang tersebar luas. Aplikasi asli dari
pohon keputusan berada di domain dengan nilai nominal atau data kategorikal tetapi hari ini
mereka menjangkau banyak domain dengan atribut numerik, simbolik, dan tipe campuran.
Contohnya termasuk pengambilan keputusan klinis, manufaktur, analisis dokumen, bio-
informatika, pemodelan data spasial (sistem informasi geografis), dan secara praktis
domain mana batas keputusan antara kelas dapat ditangkap dalam hal
dekomposisi seperti pohon atau daerah yang diidentifikasi oleh aturan.

1.2 Deskripsi Algoritma


C4.5 bukan satu algoritma melainkan rangkaian algoritma — C4.5, C4.5-no-pruning,
dan aturan C4.5 — dengan banyak fitur. Kami menyajikan algoritma dasar C4.5 pertama dan
fitur-fitur khusus nanti.
Deskripsi umum tentang cara kerja C4.5 ditunjukkan pada Algoritma 1.1. Semua pohon
metode induksi dimulai dengan simpul akar yang mewakili seluruh dataset yang diberikan dan
secara rekursif membagi data menjadi himpunan bagian yang lebih kecil dengan menguji atribut yang diberikan di masing-masing
simpul Subpohon menunjukkan partisi dari dataset asli yang memenuhi yang ditentukan
tes nilai atribut. Proses ini biasanya berlanjut hingga himpunan bagian "murni," itu
adalah, semua contoh dalam himpunan bagian jatuh dalam kelas yang sama, di mana saat pohon tumbuh
dihentikan.

https://translate.googleusercontent.com/translate_f 10/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

Algoritma 1.1 C4.5 (D)


Input: dataset bernilai atribut D
1: Tree = {}
2: jika D “murni” ATAU kriteria berhenti lainnya terpenuhi maka
3: mengakhiri
4: akhiri jika
5: untuk semua atribut a ∈ D do
6: Hitung kriteria informasi-teoretis jika kita membagi pada a
7: akhir untuk
8: a best = Atribut terbaik sesuai dengan kriteria yang dihitung di atas
9: Tree = Buat simpul keputusan yang menguji yang terbaik di root
10: D v= Sub-dataset yang diinduksi dari D berdasarkan yang terbaik
11: untuk semua D v do
12: Pohon v = C4.5 ( D v )
13: Lampirkan Pohon v ke cabang Tree yang sesuai
14: berakhir untuk
15: kembali Tree

© 2009 oleh Taylor & Francis Group, LLC

Halaman 12

4 C4.5

Pandangan

Cerah Hujan

Mendung

Kelembaban Berangin
Iya

<= 75 > 75 Benar Salah

Iya Tidak Tidak Iya

Gambar 1.2 Pohon keputusan yang diinduksi oleh C4.5 untuk dataset Gambar 1.1 .

Gambar 1.1 menyajikan dataset “golf” klasik, yang dibundel dengan C4.5
instalasi. Seperti yang dinyatakan sebelumnya, tujuannya adalah untuk memprediksi apakah kondisi cuaca
pada hari tertentu kondusif untuk bermain golf. Ingatlah bahwa beberapa fitur adalah
bernilai kontinu sementara yang lain bersifat kategoris.
Gambar 1.2 menggambarkan pohon yang diinduksi oleh C4.5 menggunakan Gambar 1.1 sebagai data pelatihan
(dan opsi default). Mari kita lihat berbagai pilihan yang terlibat dalam mendorong hal itu
pohon dari data.
r
Apa jenis tes yang mungkin? Seperti yang ditunjukkan Gambar 1.2, C4.5 tidak dibatasi
untuk mempertimbangkan tes biner, dan memungkinkan tes dengan dua hasil atau lebih. Jika
atribut adalah Boolean, tes menginduksi dua cabang. Jika atributnya kategorikal,
tes ini multinilai, tetapi nilai yang berbeda dapat dikelompokkan ke dalam kelompok yang lebih kecil
opsi dengan satu kelas diprediksi untuk setiap opsi. Jika atributnya numerik,
https://translate.googleusercontent.com/translate_f 11/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
maka tes-tes tersebut kembali bernilai biner, dan dalam bentuk {≤ θ ? ,> θ ?}, di mana θ
adalah ambang batas yang sesuai untuk atribut itu.
r
Bagaimana tes dipilih? C4.5 menggunakan kriteria informasi-teoretis seperti perolehan
(pengurangan entropi distribusi kelas karena menerapkan tes) dan
mendapatkan rasio (cara untuk mengoreksi kecenderungan mendapatkan untuk mendukung tes dengan banyak
hasil). Kriteria default adalah rasio gain. Pada setiap titik dalam penanaman pohon,
tes dengan kriteria terbaik dipilih dengan rakus.
r
Bagaimana ambang uji dipilih? Seperti yang dinyatakan sebelumnya, untuk Boolean dan kategorikal
atribut, nilai tes hanyalah contoh yang mungkin berbeda dari itu
atribut. Untuk atribut numerik, ambang diperoleh dengan mengurutkannya
atribut dan memilih pemisahan antara nilai-nilai berturut-turut yang memaksimalkan
kriteria di atas. Fayyad dan Irani [10] menunjukkan bahwa tidak semua nilai berturut-turut perlu
untuk dipertimbangkan. Untuk dua nilai berturut-turut v i dan v i +1 bernilai kontinu

© 2009 oleh Taylor & Francis Group, LLC

Halaman 13

1.2 Deskripsi Algoritma 5

atribut, jika semua instance yang melibatkan v i dan semua instance yang melibatkan v i +1 milik
kelas yang sama, kemudian memisahkan di antara mereka tidak mungkin meningkatkan informasi-
gain tion (atau rasio keuntungan).
r
Bagaimana penanaman pohon dihentikan? Cabang dari sebuah simpul dinyatakan memimpin
ke daun jika semua contoh yang ditutupi oleh cabang itu murni. Cara lain
di mana penanaman pohon diakhiri adalah jika jumlah contoh jatuh di bawah a
ambang batas yang ditentukan.
r
Bagaimana label kelas ditugaskan ke daun? Kelas mayoritas instance
ditugaskan untuk daun dianggap sebagai prediksi kelas dari sub cabang dari
pohon.

Pertanyaan di atas dihadapkan pada pendekatan klasifikasi yang dimodelkan setelah pohon dan
keputusan serupa, atau masuk akal lainnya, dibuat oleh sebagian besar algoritma induksi pohon.
Utilitas praktis C4.5, bagaimanapun, berasal dari serangkaian fitur yang membangun
berdasarkan algoritma induksi pohon dasar di atas. Tetapi sebelum kami menyajikan fitur-fitur ini,
instruktif untuk instantiate Algoritma 1.1 untuk dataset sederhana seperti yang ditunjukkan pada
Gambar 1.1 .
Kami akan bekerja secara rinci bagaimana pohon Gambar 1.2 diinduksi dari
Gambar 1.1. Amati bagaimana atribut pertama yang dipilih untuk tes keputusan adalah Outlook
atribut. Untuk melihat alasannya, mari kita perkirakan entropi variabel acak kelas
( PlayGolf? ). Variabel ini mengambil dua nilai dengan probabilitas 9/14 (untuk "Ya") dan
5/14 (untuk “Tidak”). Entropi variabel acak kelas yang mengambil nilai c dengan
probabilitas p 1 , p 2 , ..., p c diberikan oleh:

∑c
- p i log 2 p i
i=1

Entropi PlayGolf? demikian

- (9 / 14) log 2 (9 / 14) - (5 / 14) log 2 (5 / 14)

atau 0,940. Ini berarti bahwa rata-rata 0,940 bit harus ditransmisikan untuk berkomunikasi
informasi tentang PlayGolf? variabel acak. Tujuan dari induksi pohon C4.5 adalah
untuk mengajukan pertanyaan yang tepat sehingga entropi ini berkurang. Kami mempertimbangkan setiap atribut dalam
beralih untuk menilai peningkatan dalam entropi yang diberikannya. Untuk variabel acak yang diberikan,
katakanlah Outlook , peningkatan dalam entropi, direpresentasikan sebagai Keuntungan (Outlook) , dihitung

https://translate.googleusercontent.com/translate_f 12/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
sebagai: ∑ |Dv|
Entropy ( PlayGolf? Dalam D ) - Entropy ( PlayGolf? Dalam D v )
|D|
v

di mana v adalah himpunan nilai yang mungkin (dalam hal ini, tiga nilai untuk Outlook ), D menyatakan
seluruh dataset, D v adalah himpunan bagian dari dataset yang atribut Outlook memiliki yang
nilai, dan notasi | · | menunjukkan ukuran dataset (dalam jumlah instance).
Perhitungan ini akan menunjukkan bahwa Keuntungan (Outlook) adalah 0 . 940−0 . 694 = 0 . 246. Demikian pula,
kita dapat menghitung bahwa Keuntungan (Berangin) adalah 0 . 940 - 0 . 892 = 0 . 048. Mengerjakan hal di atas
perhitungan untuk atribut lainnya secara sistematis akan mengungkapkan bahwa memang Outlook

© 2009 oleh Taylor & Francis Group, LLC

Halaman 14

6 C4.5

atribut terbaik untuk cabang. Perhatikan bahwa ini adalah pilihan serakah dan tidak mengambil
memperhitungkan efek dari keputusan masa depan. Seperti yang dinyatakan sebelumnya, pertumbuhan pohon berlanjut
sampai kriteria terminasi seperti kemurnian subdataset terpenuhi. Dalam contoh di atas,
bercabang pada nilai "Overcast" untuk Outlook menghasilkan dataset murni, yaitu, semua
contoh yang memiliki nilai ini untuk Outlook memiliki nilai "Ya" untuk variabel kelas
Bermain golf? ; karenanya, pohon itu tidak tumbuh lebih jauh ke arah itu. Namun, dua lainnya
nilai untuk Outlook masih menginduksi dataset tidak murni. Oleh karena itu algoritma berulang, tetapi
amati bahwa Outlook tidak dapat dipilih lagi (mengapa?). Untuk cabang yang berbeda, berbeda
kriteria pengujian dan pemisahan dipilih, meskipun, secara umum, duplikasi subtree dapat
mungkin terjadi untuk dataset lain.
Kami sebutkan sebelumnya bahwa kriteria pemisahan standar sebenarnya adalah rasio keuntungan, bukan
keuntungan. Untuk memahami perbedaannya, anggaplah kita memperlakukan kolom Hari pada Gambar 1.1
seolah-olah itu fitur "nyata". Selanjutnya, asumsikan bahwa kami memperlakukannya sebagai nilai nominal
atribut. Tentu saja, setiap hari adalah unik, jadi Day benar-benar bukan atribut yang berguna
cabang di. Namun demikian, karena ada 14 nilai berbeda untuk Day dan masing-masing
mereka menginduksi dataset "murni" (dataset sepele yang hanya melibatkan satu instance), Day
akan dipilih secara tidak adil sebagai atribut terbaik untuk cabang. Karena informasi
mendapatkan atribut nikmat yang mengandung sejumlah besar nilai, Quinlan mengusulkan
dapatkan rasio sebagai koreksi untuk memperhitungkan efek ini. Rasio gain untuk atribut a adalah
didefinisikan sebagai:

Keuntungan ( a )
GainRatio ( a ) =
Entropi ( a )

Perhatikan bahwa entropi ( a ) tidak bergantung pada informasi kelas dan hanya mengambil
memperhitungkan distribusi nilai yang mungkin untuk atribut a , sedangkan gain ( a ) tidak
memperhitungkan informasi kelas. (Juga, ingat bahwa semua perhitungan di sini adalah
tergantung pada dataset yang digunakan, meskipun kami belum membuat ini secara eksplisit dalam notasi.)
Misalnya, GainRatio ( Outlook ) = 0 . 246 / 1 . 577 = 0 . 156. Demikian pula, rasio keuntungan
untuk atribut lainnya dapat dihitung. Kami membiarkannya sebagai latihan bagi pembaca
lihat apakah Outlook akan kembali dipilih untuk membentuk tes keputusan root.
Pada titik ini dalam diskusi, harus disebutkan bahwa pohon keputusan tidak bisa
modelkan semua batas keputusan antar kelas secara ringkas. Misalnya,
meskipun mereka dapat memodelkan fungsi Boolean apa pun, pohon yang dihasilkan mungkin tidak perlu
kompleks. Pertimbangkan, misalnya, memodelkan XOR pada sejumlah besar Boolean
atribut. Dalam hal ini setiap atribut perlu diuji sepanjang setiap jalur dan
ukuran pohon akan eksponensial. Contoh lain dari masalah yang sulit untuk
pohon keputusan adalah fungsi yang disebut " m- of- n " di mana kelas diprediksi oleh siapa saja
m of n atribut, tanpa spesifik tentang atribut yang harus berkontribusi
keputusan. Solusi seperti pohon keputusan miring, yang disajikan kemudian, atasi itu
https://translate.googleusercontent.com/translate_f 13/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
kekurangannya Selain kesulitan ini, masalah kedua dengan pohon keputusan diinduksi oleh
C4.5 adalah duplikasi subtitle karena pilihan rakus pemilihan atribut.
Di luar pencarian lengkap untuk atribut terbaik dengan sepenuhnya menumbuhkan pohon, ini
Masalahnya tidak bisa dipecahkan secara umum.

© 2009 oleh Taylor & Francis Group, LLC

Halaman 15

1.3 Fitur C4.5 7

1.3 Fitur C4.5


1.3.1 Pemangkasan Pohon
Pemangkasan pohon diperlukan untuk menghindari overfitting data. Untuk menggerakkan titik ini, Quinlan
memberikan contoh dramatis dalam [30] dari dataset dengan 10 atribut Boolean, masing-masing
mengasumsikan nilai 0 atau 1 dengan akurasi yang sama. Nilai kelas juga biner: "ya"
dengan probabilitas 0,25 dan "tidak" dengan probabilitas 0,75. Dari set awal 1.000
contoh, 500 digunakan untuk pelatihan dan 500 sisanya digunakan untuk pengujian.
Quinlan mengamati bahwa C4.5 menghasilkan pohon yang melibatkan 119 node (!) Dengan tingkat kesalahan
lebih dari 35% bila pohon yang lebih sederhana akan cukup untuk mencapai akurasi yang lebih besar.
Pemangkasan pohon karenanya penting untuk meningkatkan akurasi classifier pada instance yang tidak terlihat.
Ini biasanya dilakukan setelah pohon dewasa, dan secara bottom-up.
Memor laboratorium MIT AI 1986 yang ditulis oleh Quinlan [26] menguraikan berbagai pilihan
tersedia untuk pemangkasan pohon dalam konteks penelitian sebelumnya. Algoritma CART menggunakan
apa yang dikenal sebagai pemangkasan kompleksitas biaya di mana serangkaian pohon ditanam, masing-masing
diperoleh dari sebelumnya dengan mengganti satu atau lebih subtrees dengan daun. Yang terakhir
pohon dalam seri hanya terdiri dari satu daun yang memprediksi kelas tertentu. Biaya-
Kompleksitas adalah metrik yang memutuskan sub pohon mana yang harus diganti oleh sebuah daun
memprediksi nilai kelas terbaik. Masing-masing pohon kemudian dievaluasi secara terpisah
dataset uji, dan berdasarkan pengukuran keandalan yang berasal dari kinerja pengujian
dataset, pohon "terbaik" dipilih.
Reduksi kesalahan pemangkasan adalah penyederhanaan dari pendekatan ini. Seperti sebelumnya, menggunakan a
pisahkan dataset uji tetapi secara langsung menggunakan pohon yang terinduksi sepenuhnya untuk mengklasifikasikan instance dalam
dataset uji. Untuk setiap subtree tanpa daun di pohon yang diinduksi, strategi ini dievaluasi
apakah bermanfaat untuk mengganti subtree dengan daun terbaik. Jika pohon dipangkas
memang akan memberikan jumlah kesalahan yang sama atau lebih kecil dari pohon yang tidak ditandai dan
subtree yang diganti tidak dengan sendirinya mengandung subtree lain dengan properti yang sama
subtree diganti. Proses ini dilanjutkan sampai penggantian lebih lanjut sebenarnya
menambah kesalahan pada set data tes.
Pemangkasan pesimis adalah inovasi dalam C4.5 yang tidak memerlukan set tes terpisah.
Sebaliknya ia memperkirakan kesalahan yang mungkin terjadi berdasarkan jumlah kesalahan klasifikasi
di set pelatihan. Pendekatan ini secara rekursif memperkirakan tingkat kesalahan yang terkait dengan
sebuah simpul berdasarkan estimasi tingkat kesalahan cabang-cabangnya. Untuk daun dengan N instance
dan kesalahan E (yaitu, jumlah instance yang bukan milik kelas yang diprediksi
oleh daun itu), pemangkasan pesimis pertama menentukan tingkat kesalahan empiris pada daun
sebagai rasio ( E 0 . 5) / N . Untuk subtree dengan L daun dan E dan N yang sesuai
kesalahan dan jumlah instance lebih dari ini daun, tingkat kesalahan untuk seluruh subtree
diperkirakan ( E + 0 . 5 * L ) / N . Sekarang, asumsikan bahwa subtree diganti oleh
daun terbaik dan bahwa J adalah jumlah kasus dari set pelatihan yang salah klasifikasi.
Pemangkasan pesimis menggantikan subtree dengan daun terbaik ini jika ( J + 0 . 5) adalah dalam satu
standar deviasi ( E + 0 . 5 * L ).
Pendekatan ini dapat diperluas untuk memangkas berdasarkan interval kepercayaan yang diinginkan (CI).
Kita dapat memodelkan tingkat kesalahan e di daun sebagai variabel acak Bernoulli dan untuk

https://translate.googleusercontent.com/translate_f 14/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

© 2009 oleh Taylor & Francis Group, LLC

Halaman 16

8 C4.5

X1 X2 X3

X T1 T2 T3

X1 X2 X3

T1 T2 T3
T2

Prediksi daun
kelas yang paling mungkin

Gambar 1.3. Berbagai pilihan dalam pemangkasan pohon keputusan. Pohon di sebelah kiri bisa
dipertahankan seperti itu atau digantikan oleh hanya salah satu sub pohon atau oleh satu daun.

ambang batas kepercayaan yang diberikan CI , batas atas e max dapat ditentukan sedemikian rupa
e <e max dengan probabilitas 1 - CI . (C4.5 menggunakan CI default 0,25.) Kita bisa impas
lebih jauh dan perkiraan e dengan distribusi normal (untuk N besar ), dalam hal ini
C4.5 menentukan batas atas pada kesalahan yang diharapkan sebagai:

e
e + z2
2N+ z N- e2 N+ z2 4N2
(1.1)
1 + z2 N

di mana z dipilih berdasarkan interval kepercayaan yang diinginkan untuk estimasi, dengan asumsi
variabel acak normal dengan nol mean dan varians unit, yaitu, N (0 , 1)).
Apa yang masih harus disajikan adalah cara yang tepat di mana pemangkasan dilakukan.
Satu bottom-up pass dilakukan. Perhatikan Gambar 1.3, yang menggambarkan pemangkasan
proses di tengah jalan sehingga pemangkasan telah dilakukan pada sub pohon T 1 , T 2 , dan
T 3 . Tingkat kesalahan diperkirakan untuk tiga kasus seperti yang ditunjukkan pada Gambar 1.3 (kanan). Itu
Kasus pertama adalah menjaga pohon itu apa adanya. Kasus kedua adalah hanya mempertahankan subtree
sesuai dengan hasil X yang paling sering (dalam hal ini, cabang tengah).
Kasus ketiga adalah hanya memiliki lembaran berlabel kelas paling sering dalam pelatihan
Himpunan data. Pertimbangan ini dilanjutkan dari bawah ke atas sampai kita mencapai akar pohon.

1.3.2 Peningkatan Penggunaan Atribut Berkelanjutan


Kemampuan yang lebih canggih untuk menangani atribut kontinu dicakup oleh
Quinlan dalam [31]. Ini dimotivasi oleh keuntungan yang dimiliki oleh nilai yang terus menerus
atribut lebih dari yang diskrit, yaitu bahwa mereka dapat bercabang pada lebih banyak kriteria keputusan
yang mungkin memberi mereka keuntungan yang tidak adil atas atribut diskrit. Satu pendekatan, dari
Tentu saja, adalah dengan menggunakan rasio gain di tempat keuntungan seperti sebelumnya. Namun, kami mengalami
teka-teki di sini karena rasio gain juga akan dipengaruhi oleh ambang sebenarnya
digunakan oleh atribut bernilai kontinu. Secara khusus, jika ambang batas membagikan

© 2009 oleh Taylor & Francis Group, LLC

https://translate.googleusercontent.com/translate_f 15/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

Halaman 17

1.3 Fitur C4.5 9

contoh hampir sama, maka rasio gain minimal (karena entropi variabel
bisa jatuh dalam penyebut). Oleh karena itu, pendukung Quinlan kembali ke kebiasaan
informasi gain untuk memilih ambang batas tetapi melanjutkan penggunaan rasio gain untuk
memilih atribut di tempat pertama. Pendekatan kedua didasarkan pada Risannen
Prinsip MDL (panjang deskripsi minimum). Dengan melihat pohon sebagai teori, Quinlan
mengusulkan perdagangan kompleksitas pohon versus kinerjanya. Secara khusus,
kompleksitas dihitung karena biaya pengkodean pohon ditambah pengecualian untuk
pohon (yaitu, contoh pelatihan yang tidak didukung oleh pohon). Tes empiris
menunjukkan bahwa pendekatan ini tidak terlalu mendukung atribut bernilai kontinu.

1.3.3 Menangani Nilai yang Hilang


Nilai atribut yang hilang memerlukan akomodasi khusus baik dalam fase pembelajaran
dan dalam klasifikasi selanjutnya dari instance baru. Quinlan [28] menawarkan
gambaran umum tentang berbagai masalah yang harus dipertimbangkan. Seperti yang dinyatakan di sana, di sana
ada tiga masalah utama: (i) Ketika membandingkan atribut dengan cabang, beberapa di antaranya
memiliki nilai yang hilang untuk beberapa contoh, bagaimana kita memilih pemisahan yang sesuai
atribut ting? (ii) Setelah atribut pemisahan untuk tes keputusan dipilih, latih
contoh dengan nilai yang hilang tidak dapat dikaitkan dengan hasil keputusan apa pun
uji. Asosiasi ini diperlukan untuk melanjutkan prosedur penanaman pohon.
Oleh karena itu, pertanyaan kedua adalah: Bagaimana hal seperti itu harus diperlakukan ketika membagi
dataset ke dalam subdataset? (iii) Akhirnya, ketika pohon digunakan untuk mengklasifikasikan suatu
berdiri, bagaimana kita melanjutkan turun pohon ketika tes pohon pada atribut yang nilainya
hilang untuk contoh baru ini? Perhatikan bahwa dua masalah pertama melibatkan pembelajaran /
mendorong pohon sedangkan masalah ketiga melibatkan penerapan pohon belajar pada yang baru
contoh. Seperti yang bisa diharapkan, ada beberapa kemungkinan untuk masing-masing pertanyaan ini.
tions. Dalam [28], Quinlan menyajikan banyak pilihan untuk masing-masing dari tiga di atas
masalah sehingga pendekatan terpadu untuk menangani nilai-nilai yang hilang dapat diperoleh
Instansiasi khusus dari solusi untuk masing-masing masalah di atas. Quinlan menghadirkan a
skema pengkodean dalam [28] untuk merancang strategi kombinatorial untuk menangani nilai yang hilang.
Untuk masalah pertama mengevaluasi kriteria pohon keputusan berdasarkan atribut a , kami
dapat: (I) mengabaikan kasus dalam data pelatihan yang memiliki nilai yang hilang untuk a ; (C) pengganti
nilai paling umum (untuk atribut biner dan kategorikal) atau dengan rata-rata
nilai yang diketahui (untuk atribut numerik); (R) mendiskontokan rasio gain / gain untuk atribut a
dengan proporsi kasus yang telah hilang nilai-nilai untuk sebuah ; atau (S) "mengisi" yang hilang
nilai dalam data pelatihan. Ini bisa dilakukan baik dengan memperlakukan mereka sebagai berbeda, baru
nilai, atau dengan metode yang berusaha menentukan nilai yang hilang berdasarkan nilai-nilai
atribut lain yang diketahui [28]. Gagasan pengganti pengganti dalam CART (lihat Bab 10)
dapat dilihat sebagai salah satu cara untuk mengimplementasikan ide terakhir ini.
Untuk masalah kedua mempartisi, set pelatihan sambil berulang kali membuat
pohon keputusan, jika pohon itu bercabang pada suatu yang satu atau lebih kasus pelatihan
memiliki nilai yang hilang, kita dapat: (I) mengabaikan instance; (C) bertindak seolah-olah instance ini memiliki
nilai paling umum untuk atribut yang hilang; (F) menugaskan instance, fraksional, ke
setiap subdataset, sebanding dengan jumlah instance dengan nilai yang diketahui di masing-masing
dari subdataset; (A) tetapkan ke semua subdataset; (U) mengembangkan cabang terpisah dari

© 2009 oleh Taylor & Francis Group, LLC

https://translate.googleusercontent.com/translate_f 16/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

Halaman 18

10 C4.5

pohon untuk kasus dengan nilai yang hilang untuk a ; atau (S) menentukan nilai yang paling mungkin
dari sebuah (seperti sebelumnya, menggunakan metode dirujuk dalam [28]) dan menetapkan ke yang sesuai
subdataset. Dalam [28], Quinlan menawarkan variasi pada (F) juga, di mana instans berada
ditugaskan hanya untuk satu subdataset tetapi sekali lagi secara proporsional dengan jumlah instance
dengan nilai yang diketahui di subdataset itu.
Akhirnya, ketika mengklasifikasikan instance dengan nilai yang hilang untuk atribut a , opsinya
adalah: (U) jika ada cabang terpisah untuk nilai yang tidak diketahui untuk a , ikuti cabang;
(C) cabang di nilai paling umum untuk sebuah ; (S) menerapkan tes seperti sebelumnya dari [28] ke
menentukan kemungkinan nilai sebagian besar yang dan cabang di atasnya; (F) jelajahi semua cabang simul-
lekat, menggabungkan hasil mereka untuk menunjukkan probabilitas relatif berbeda
hasil [27]; atau (H) mengakhiri dan menetapkan instance ke kelas yang paling mungkin.
Seperti yang mungkin ditebak pembaca, beberapa kombinasi lebih alami, dan lainnya
kombinasi tidak masuk akal. Untuk opsi penugasan proporsional, selama
karena bobot bertambah hingga 1, ada cara alami untuk menggeneralisasi perhitungan
perolehan informasi dan rasio perolehan.

1.3.4 Mendorong Aturan


Fitur khas C4.5 adalah kemampuannya untuk memangkas berdasarkan aturan yang diturunkan dari
pohon yang diinduksi. Kita dapat memodelkan pohon sebagai kombinasi aturan konjungtif disjungtif,
di mana setiap aturan berhubungan dengan jalur di pohon dari akar ke daun. Pendahulunya
dalam aturan adalah kondisi keputusan di sepanjang jalan dan konsekuensinya adalah yang diprediksi
label kelas. Untuk setiap kelas dalam dataset, C4.5 terlebih dahulu membentuk aturan dari (unsuned)
pohon. Kemudian, untuk setiap aturan, ia melakukan pencarian mendaki bukit untuk melihat apakah ada
anteseden dapat dihapus. Karena penghapusan anteseden mirip dengan “mengetuk
keluar ”simpul dalam pohon keputusan yang diinduksi, metode pemangkasan pesimistis C4.5 digunakan
sini. Subset dari aturan yang disederhanakan dipilih untuk setiap kelas. Di sini minimum
prinsip deskripsi panjang (MDL) digunakan untuk mengkodifikasi biaya teori yang terlibat
dalam mengkodekan aturan dan membuat peringkat aturan potensial. Jumlah aturan yang dihasilkan
biasanya jauh lebih kecil dari jumlah daun (jalur) di pohon asli. Juga
amati bahwa karena semua anteseden dianggap untuk dihapus, bahkan node di dekat
bagian atas pohon mungkin dipangkas dan aturan yang dihasilkan mungkin tidak dapat dikompres
kembali menjadi satu pohon kompak. Salah satu kelemahan dari aturan C4.5 adalah bahwa mereka diketahui
menyebabkan peningkatan cepat dalam waktu belajar dengan peningkatan ukuran dataset.

1.4 Diskusi tentang Implementasi Perangkat Lunak yang Tersedia


Implementasi asli C4.5 dari J. Ross Quinlan tersedia di situs pribadinya:
http://www.rulequest.com/Personal/. Namun, implementasi ini memiliki hak cipta
perangkat lunak dan karenanya dapat dikomersialkan hanya di bawah lisensi dari penulis.
Namun demikian, izin yang diberikan kepada individu untuk menggunakan kode untuk pribadi mereka
penggunaan telah membantu menjadikan C4.5 sebagai standar di lapangan. Banyak implementasi domain publik
C4.5 tersedia, misalnya, perpustakaan MLC ++ Ronny Kohavi [17], yang sekarang

© 2009 oleh Taylor & Francis Group, LLC

Halaman 19

https://translate.googleusercontent.com/translate_f 17/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

1.5 Dua Contoh Ilustrasi 11

bagian dari rangkaian penambangan data Mineset SGI, dan paket penambangan data Weka [35] dari
University of Waikato, Selandia Baru (http://www.cs.waikato.ac.nz/ml/weka/). Itu
(Java) implementasi C4.5 di Weka disebut sebagai J48. Penerapan komersial
C4.5 termasuk ODBCMINE dari Intelligent Systems Research, LLC, yang
antarmuka dengan database ODBC dan Rulequest's See5 / C5.0, yang membaik
C4.5 dalam banyak hal dan yang juga dilengkapi dengan dukungan untuk konektivitas ODBC.

1.5 Dua Contoh Ilustrasi


1.5.1 Golf Dataset
Kami menjelaskan secara rinci fungsi C4.5 pada dataset golf. Saat dijalankan dengan
opsi default, yaitu:

> c4.5 -f golf

C4.5 menghasilkan output berikut:

C4.5 [release 8] generator pohon keputusan Rab 16 Apr 09:33:21 2008


----------------------------------------

Pilihan:
Batang file <golf>

Baca 14 case (4 atribut) dari golf.data

Pohon Keputusan:

outlook = mendung: Mainkan (4.0)


pandangan = cerah:
| kelembaban <= 75: Mainkan (2.0)
| kelembaban> 75: Don't Play (3.0)
pandangan = hujan:
| windy = true: Don't Play (2.0)
| windy = false: Mainkan (3.0)

Pohon disimpan

Evaluasi data pelatihan (14 item):

Sebelum Pemangkasan Setelah Pemangkasan


---------------- ---------------------------
Ukuran Kesalahan Ukuran Kesalahan Memperkirakan

8 0 (0,0%) 8 0 (0,0%) (38,5%) <<

© 2009 oleh Taylor & Francis Group, LLC

Halaman 20

https://translate.googleusercontent.com/translate_f 18/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
12 C4.5

Mengacu kembali ke output dari C4.5, amati statistik yang disajikan terhadap
akhir pelarian. Mereka menunjukkan ukuran pohon (dalam hal jumlah node, di mana
baik node dan daun internal dihitung) sebelum dan sesudah pemangkasan. Kesalahan selesai
dataset pelatihan diperlihatkan untuk pohon yang tidak dipangkas dan ditebang seperti yang diperkirakan
kesalahan setelah pemangkasan. Dalam hal ini, seperti yang diamati, tidak ada pemangkasan dilakukan.
The v pilihan untuk C4.5 meningkatkan tingkat bertele-tele dan menyediakan rinci, langkah-demi-
informasi langkah tentang perhitungan gain. Perangkat lunak c4.5rules menggunakan yang serupa
opsi tetapi menghasilkan aturan dengan kemungkinan postpruning, seperti dijelaskan sebelumnya. Untuk golf
dataset, tidak ada pemangkasan terjadi dengan opsi default dan karenanya empat aturan adalah output
(sesuai dengan semua kecuali satu dari jalur Gambar 1.2) bersama dengan aturan default.
Pohon dan aturan yang diinduksi kemudian harus diterapkan pada dataset "test" yang tidak terlihat
menilai kinerja generalisasinya. The -u pilihan C4.5 memungkinkan penyediaan
menguji data untuk mengevaluasi kinerja pohon / aturan yang diinduksi.

1.5.2 Dataset Kedelai


Dataset kedelai Michalski adalah dataset tes pembelajaran mesin klasik dari UCI
Repositori Machine Learning [3]. Ada 307 contoh dengan 35 atribut dan
banyak nilai yang hilang. Dari uraian di situs UCI:

Ada 19 kelas, hanya 15 kelas pertama yang telah digunakan sebelumnya


kerja. Cerita rakyat tampaknya adalah bahwa empat kelas terakhir tidak dapat dibenarkan
oleh data karena mereka memiliki begitu sedikit contoh. Ada 35 kategori
atribut, beberapa nominal dan beberapa dipesan. Nilai "dna" berarti tidak
tidak berlaku. Nilai untuk atribut dikodekan secara numerik, dengan
nilai pertama dikodekan sebagai "0," yang kedua sebagai "1," dan sebagainya. Tidak dikenal
nilai dikodekan sebagai "?"

Tujuan pembelajaran dari dataset ini adalah untuk membantu diagnosis penyakit kedelai berdasarkan
mengamati ciri-ciri morfologis.
Pohon yang diinduksi terlalu rumit untuk diilustrasikan di sini; oleh karena itu, kami menggambarkan evaluasi-
asi ukuran dan kinerja pohon sebelum dan sesudah pemangkasan:

Sebelum Pemangkasan Setelah Pemangkasan


---------------- ---------------------------
Ukuran Kesalahan Ukuran Kesalahan Memperkirakan

177 15 (2,2%) 105 26 (3,8%) (15,5%) <<

Seperti dapat dilihat di sini, pohon yang tidak ditandai dengan pohon tidak dengan sempurna mengklasifikasikan data pelatihan
dan pemangkasan yang signifikan telah terjadi setelah pohon penuh diinduksi. Evaluasi yang ketat
Prosedur tion seperti validasi silang harus diterapkan sebelum sampai pada "final"
penggolong.

© 2009 oleh Taylor & Francis Group, LLC

Halaman 21

1.6 Topik Tingkat Lanjut 13

1.6 Topik Tingkat Lanjut

https://translate.googleusercontent.com/translate_f 19/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
Dengan penekanan data besar-besaran dari penambangan data modern, banyak penelitian menarik
masalah dalam penambangan pohon / pengklasifikasi berbasis aturan telah menjadi yang terdepan. Ada beberapa
dibahas di sini dan beberapa dijelaskan dalam latihan. Prosiding konferensi
seperti KDD, ICDM, ICML, dan SDM menampilkan yang terbaru di banyak bidang ini.

1.6.1 Penambangan dari Penyimpanan Sekunder


Kumpulan data modern yang dipelajari di komunitas KDD tidak cocok dengan memori utama
dan karenanya implementasi algoritma pembelajaran mesin harus sepenuhnya
dipikirkan kembali agar dapat memproses data dari penyimpanan sekunder. Khususnya,
algoritma dirancang untuk meminimalkan jumlah lintasan yang diperlukan untuk menginduksi a
pengklasifikasi. Algoritma BOAT [14] didasarkan pada bootstrap. Mulai dari yang kecil
dalam memori subset dari dataset asli, ia menggunakan sampling untuk membuat banyak pohon, yang
kemudian dilapis di atas satu sama lain untuk mendapatkan pohon dengan kriteria pemisahan "kasar".
Pohon ini kemudian disempurnakan menjadi penggolong akhir dengan melakukan satu pemindaian lengkap
dataset. Kerangka kerja Rainforest [15] adalah pendekatan terpadu untuk instantiate
berbagai pilihan konstruksi pohon keputusan dan menerapkannya secara scalable
ke dataset besar. Algoritma lain yang ditujukan untuk menambang dari penyimpanan sekunder adalah
SLIQ [21], SPRINT [34], dan PUBLIC [33].

1.6.2 Pohon Keputusan Miring


Sebuah pohon keputusan miring , cocok untuk data kontinu-dihargai, dinamakan demikian karena
batas keputusannya dapat diposisikan sewenang-wenang dan miring sehubungan dengan
koordinasikan sumbu (lihat juga Latihan 2 nanti). Misalnya, alih-alih kriteria keputusan
seperti sebuah 1 ≤ 6? pada atribut a 1 , kita dapat menggunakan kriteria berdasarkan dua atribut dalam
satu simpul, seperti 3 a 1 - 2 a 2 ≤ 6? Referensi klasik tentang pohon keputusan yang digunakan
kombinasi linear dari atribut adalah sistem OC1 yang dijelaskan dalam Murthy, Kasif, dan
Salzberg [22], yang mengakui CART sebagai dasar penting untuk OC1. Dasar
ide adalah untuk memulai dengan perpecahan sumbu-paralel dan kemudian "perturb" untuk mencapai
perpecahan yang lebih baik. Hal ini dilakukan dengan terlebih dahulu casting split sumbu-paralel sebagai kombinasi linear dari
nilai atribut dan kemudian secara iteratif menyesuaikan koefisien kombinasi linear
untuk sampai pada kriteria keputusan yang lebih baik. Tak perlu dikatakan, masalah seperti estimasi kesalahan,
pemangkasan, dan penanganan nilai yang hilang harus ditinjau kembali dalam konteks ini. OC1 adalah a
kombinasi yang hati-hati dari pendakian bukit dan pengacakan untuk mengubah koefisien.
Pendekatan lain untuk menginduksi pohon keputusan miring dicakup, misalnya, [5].

1.6.3 Pemilihan Fitur


Sejauh ini, kami belum menyoroti pentingnya pemilihan fitur sebagai hal yang penting
prekursor pembelajaran yang diawasi menggunakan pohon dan / atau aturan. Beberapa fitur bisa jadi

© 2009 oleh Taylor & Francis Group, LLC

Halaman 22

14 C4.5

tidak relevan untuk memprediksi kelas yang diberikan dan fitur lainnya masih bisa berlebihan
diberikan fitur lain. Pemilihan fitur adalah ide mempersempit yang lebih kecil
set fitur untuk digunakan dalam induksi. Beberapa metode pemilihan fitur berfungsi secara bersamaan
dengan algoritma pembelajaran khusus sedangkan metode seperti yang dijelaskan dalam Koller dan
Sahami [18] adalah algoritma pembelajaran-agnostik.

1.6.4 Metode Ensemble


https://translate.googleusercontent.com/translate_f 20/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
Metode ensemble telah menjadi andalan dalam pembelajaran mesin dan penambangan data
literatur. Mengantongi dan meningkatkan (lihat Bab 7) adalah pilihan populer. Bagging didasarkan
pada resampling acak, dengan penggantian, dari data pelatihan, dan mendorong satu pohon
dari masing-masing sampel. Prediksi pohon kemudian digabungkan menjadi satu output, untuk
Misalnya, dengan memilih. Dalam meningkatkan [12], seperti yang dipelajari dalam Bab 7, kami menghasilkan serangkaian
pengklasifikasi, di mana data pelatihan untuk satu tergantung pada pengklasifikasi dari pra-
langkah awal. Secara khusus, contoh diprediksi secara salah oleh penggolong dalam langkah yang diberikan
lebih tertimbang di langkah berikutnya. Prediksi terakhir sekali lagi berasal dari
gerbang prediksi masing-masing pengklasifikasi. Sistem C5.0 mendukung varian
meningkatkan, di mana ansambel pengklasifikasi dibangun dan yang kemudian memilih
menghasilkan klasifikasi akhir. Opitz dan Maclin [23] menyajikan perbandingan ensemble
metode untuk pohon keputusan serta jaringan saraf. Dietterich [8] menyajikan sebuah
membandingkan metode ini dengan satu sama lain dan dengan "pengacakan," di mana internal
keputusan yang dibuat oleh algoritma pembelajaran itu sendiri secara acak. Bolak-balik
algoritme decision tree [11] pasangan yang tumbuh dan meningkatkan pohon dalam cara yang lebih ketat:
Selain node yang menguji kondisi, pohon keputusan bergantian memperkenalkan
"Node prediksi" yang menambah skor yang dihitung di samping jalur dari
root ke daun. Hasil percobaan menunjukkan bahwa itu sama kuatnya dengan pohon keputusan yang dikuatkan.

1.6.5 Aturan Klasifikasi


Ada dua untaian penelitian berbeda yang bertujuan untuk mengidentifikasi aturan untuk klasifikasi
serupa semangatnya dengan aturan C4.5. Mereka secara longgar dapat diklasifikasikan berdasarkan asal mereka: as
prediktif versus pengklasifikasi deskriptif, tetapi penelitian terbaru telah mengaburkan batas.
Garis prediktif penelitian termasuk algoritma seperti CN2 [6] dan RIPPER [7].
Algoritma ini dapat diatur sebagai pendekatan bottom-up atau top-down dan
biasanya diatur sebagai paradigma "penemuan berurutan" di mana aturan ditambang,
contoh yang dicakup oleh aturan akan dihapus dari set pelatihan, aturan baru diinduksi,
dan seterusnya. Dalam pendekatan bottom-up, aturan diinduksi dengan menggabungkan atribut
dan nilai-nilai kelas dari sebuah instance. Atribut yang membentuk konjungsi dari
aturan kemudian dihapus secara sistematis untuk melihat apakah akurasi prediksi aturan tersebut
ditingkatkan. Biasanya pencarian balok lokal dilakukan sebagai lawan pencarian global.
Setelah aturan ini ditambahkan ke teori, contoh yang dicakup oleh aturan akan dihapus, dan a
aturan baru diinduksi dari data yang tersisa. Secara analogi, pendekatan top-down dimulai
dengan aturan yang memiliki anteseden kosong yang memprediksi nilai kelas dan secara sistematis
menambahkan tes atribut untuk mengidentifikasi aturan yang sesuai.

© 2009 oleh Taylor & Francis Group, LLC

Halaman 23

1.7 Latihan 15

Garis deskriptif penelitian berasal dari aturan asosiasi, teknologi populer


di komunitas KDD [1, 2] (lihat Bab 4). Secara tradisional, asosiasi adalah
antara dua set, X dan Y , item, dilambangkan dengan X → Y , dan dievaluasi dengan langkah-langkah
seperti dukungan (fraksi instance dalam dataset yang memiliki X dan Y ) dan
kepercayaan diri (fraksi instance dengan X yang juga memiliki Y ). Tujuan dari asosiasi
Penambangan aturan asi adalah untuk menemukan semua asosiasi yang memuaskan diberikan dukungan dan kepercayaan diri
ambang batas. CBA (Klasifikasi berdasarkan Aturan Asosiasi) [20] adalah adaptasi
aturan asosiasi untuk klasifikasi, di mana tujuannya adalah untuk menentukan semua asosiasi
aturan yang memiliki label kelas tertentu sebagai konsekuensinya. Aturan-aturan ini kemudian digunakan untuk
membangun classifier. Pemangkasan dilakukan mirip dengan metode estimasi kesalahan di C4.5. Itu
Perbedaan utama antara CBA dan C4.5 adalah pencarian lengkap untuk semua aturan yang mungkin
dan algoritma yang efisien diadaptasi dari penambangan aturan asosiasi ke aturan ranjau. Ini

https://translate.googleusercontent.com/translate_f 21/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
utas penelitian sekarang menjadi aktif di komunitas KDD dengan varian baru dan
aplikasi.

1.6.6 Redescription
Redescription adalah generalisasi aturan untuk kesetaraan, diperkenalkan pada [32]. Sebagai
namanya menunjukkan, untuk mendeskripsikan ulang sesuatu adalah untuk menggambarkan yang baru atau untuk mengekspresikan
konsep yang sama dalam kosa kata yang berbeda. Diberikan kosakata deskriptor, tujuan dari
penambangan redescription adalah untuk membangun dua ekspresi dari kosakata yang mendorong
subset objek yang sama. Premis yang mendasarinya adalah set yang memang bisa
didefinisikan dalam (setidaknya) dua cara yang cenderung menunjukkan perilaku bersama dan, karenanya,
menarik. Algoritma CARTwheels untuk penambangan redescription tumbuh dua C4.5-
seperti pohon di arah yang berlawanan sehingga mereka cocok di dedaunan. Pada dasarnya,
satu pohon memperlihatkan partisi objek melalui pilihan subset dan pohon lainnya
mencoba tumbuh agar sesuai dengan partisi ini menggunakan pilihan himpunan bagian yang berbeda. Jika partisi
korespondensi dibuat, kemudian jalur yang bergabung dapat dibaca sebagai deskripsi ulang.
CARTwheels mengeksplorasi ruang dari kemungkinan kecocokan pohon melalui proses pergantian
di mana pohon berulang kali ditanam kembali untuk mencocokkan partisi yang diekspos oleh yang lain
pohon. Penambangan redescription telah digeneralisasi ke berbagai arah [19, 24, 37].

1.7 Latihan
1. Hitung dengan cermat kompleksitas waktu induksi pohon keputusan besar-Oh
C4.5. Jelaskan kompleksitas dalam hal jumlah atribut dan
jumlah instance pelatihan. Pertama, ikat kedalaman pohon dan kemudian dilemparkan
waktu yang diperlukan untuk membangun pohon dalam hal ikatan ini. Nilai biaya
pemangkasan juga.
2. Desain dataset dengan atribut bernilai kontinu di mana batas keputusan
antar kelas bukan isothetic, artinya tidak paralel dengan koordinat mana pun

© 2009 oleh Taylor & Francis Group, LLC

Halaman 24

16 C4.5

kapak. Terapkan C4.5 pada dataset ini dan komentar pada kualitas yang diinduksi
pohon. Pertimbangkan faktor-faktor seperti akurasi, ukuran pohon, dan kelengkapannya
Akun.
3. Cara alternatif untuk menghindari overfitting adalah dengan membatasi pertumbuhan pohon
dari memangkas kembali pohon yang sudah dewasa ke ukuran yang diperkecil. Jelaskan mengapa demikian
persiapan awal mungkin bukan ide yang baik.
4. Buktikan bahwa ukuran pengotor yang digunakan oleh C45 (yaitu, entropi) adalah cekung. Kenapa
Apakah penting bahwa itu cekung?
5. Turunkan Persamaan (1.1). Seperti yang dinyatakan dalam teks, gunakan perkiraan normal untuk
variabel acak Bernoulli memodelkan tingkat kesalahan.
6. Alih-alih menggunakan perolehan informasi, pelajari bagaimana induksi pohon keputusan akan
terpengaruh jika kita langsung memilih atribut dengan akurasi prediksi tertinggi.
Lebih jauh, bagaimana jika kita membuat aturan dengan hanya satu pendahulunya? Petunjuk: Kamu
sedang menelusuri kembali percobaan Robert Holte seperti yang dijelaskan dalam R. Holte, Very
Aturan Klasifikasi Sederhana Berkinerja Baik pada Kumpulan Data Paling Umum Digunakan,
Pembelajaran Mesin , vol. 11, hlm. 63–91, 1993.

https://translate.googleusercontent.com/translate_f 22/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
7. Dalam beberapa aplikasi pembelajaran mesin, atribut ditetapkan bernilai, misalnya, an
objek dapat memiliki beberapa warna dan untuk mengklasifikasikan objek itu mungkin penting untuk
warna model sebagai atribut set-dihargai daripada sebagai atribut bernilai instance.
Identifikasi tes keputusan yang dapat dilakukan pada atribut set-nilai dan jelaskan
yang dapat dengan mudah dimasukkan ke dalam sistem C4.5 untuk pengambilan keputusan
pohon.
8. Daripada mengklasifikasikan instance ke dalam satu kelas, anggap tujuan kita adalah untuk memperoleh
peringkat kelas sesuai dengan probabilitas (posterior) keanggotaan
contoh di berbagai kelas. Baca F. Provost dan P. Domingos, Induksi Pohon
untuk Pemeringkatan Berbasis Probabilitas, Pembelajaran Mesin , vol. 52, tidak. 3, hlm. 199–215,
2003, yang menjelaskan mengapa pohon-pohon yang diinduksi oleh C4.5 tidak cocok untuk menyediakan
estimasi probabilitas yang andal; mereka juga menyarankan beberapa cara untuk memperbaiki masalah ini
menggunakan metode pemulusan probabilitas. Lakukan keberatan dan solusi yang sama
Strategi juga berlaku untuk aturan C4.5? Eksperimen dengan set data dari UCI
gudang.
9. (Diadaptasi dari S. Nijssen dan E. Fromont, Pohon Keputusan Optimal Penambangan
dari Itemset Lattices, Prosiding ACM SIGKDD International ke-13
Konferensi Penemuan Pengetahuan dan Penambangan Data , hlm. 530–539, 2007.)
Pohon-pohon yang diinduksi oleh C4.5 didorong oleh pilihan heuristik tetapi menganggap itu milik kita
tujuannya adalah untuk mengidentifikasi pohon yang optimal. Optimalitas dapat diajukan dalam berbagai hal
pertimbangan; dua pertimbangan tersebut adalah pohon paling akurat hingga a
kedalaman maksimum tertentu dan pohon terkecil di mana setiap daun setidaknya mencakup
k instans dan akurasi yang diharapkan dimaksimalkan dari contoh yang tidak terlihat.
Jelaskan algoritma yang efisien untuk menginduksi pohon optimal tersebut.
10. Logika orde pertama adalah notasi yang lebih ekspresif daripada representasi atribut-nilai
Sentimen dipertimbangkan dalam bab ini. Diberikan koleksi hubungan tingkat pertama,
menggambarkan bagaimana pendekatan algoritmik dasar C4.5 dapat digeneralisasi untuk digunakan

© 2009 oleh Taylor & Francis Group, LLC

Halaman 25

Referensi 17

fitur orde pertama. Solusi Anda harus memungkinkan induksi pohon atau aturan
formulir:

kakek-nenek (X, Z): - orangtua (X, Y), orangtua (Y, Z).

yaitu, X adalah kakek dari Z jika ada Y sedemikian rupa sehingga Y adalah induknya
X dan Z adalah induk dari Y . Beberapa masalah baru dihasilkan dari pilihan pertama-
memesan logika sebagai bahasa representasional. Pertama, tidak seperti nilai atribut
situasi, fitur orde pertama (seperti induk (X, Y) ) tidak siap diberikan
dan harus digeneralisasi dari instance khusus. Kedua, dimungkinkan untuk
dapatkan pohon atau aturan yang tidak masuk akal jika variabel berpartisipasi dalam kepala aturan
tetapi bukan tubuh, misalnya:

kakek-nenek (X, Y): - orang tua (X, Z).

Jelaskan bagaimana Anda dapat menempatkan checks and balances ke dalam proses induksi
sehingga teori orde pertama yang lengkap dapat diinduksi dari data. Petunjuk: Anda
menjelajahi bidang pemrograman logika induktif [9], khususnya, algoritma
seperti FOIL [29].

https://translate.googleusercontent.com/translate_f 23/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

Referensi
[1] R. Agrawal, T. Imielinski, dan AN Swami. Aturan asosiasi pertambangan antara
set item dalam database besar. Dalam Prosiding ACM SIGMOD International
Konferensi Nasional tentang Pengelolaan Data (SIGMOD'93) , hlm. 207–216, Mei
1993

[2] R. Agrawal dan R. Srikant. Algoritma cepat untuk aturan asosiasi pertambangan pada umumnya
basis data. Dalam Prosiding Konferensi Internasional ke-20 tentang Sangat Besar
Database (VLDB'94) , hlm. 487-499, September 1994.

[3] A. Asuncion dan DJ Newman. Repositori Pembelajaran Mesin UCI, 2007.


http://www.ics.uci.edu/∼mlearn/MLRepository.html. Universitas California,
Irvine, Sekolah Informasi dan Ilmu Komputer.

[4] L. Breiman, J. Friedman, CJ Stone, dan RA Olshen. Klasifikasi dan


Pohon Regresi . Chapman & Hall / CRC, Januari 1984.

[5] CE Brodely dan PE Utgoff. Pohon Keputusan Multivarian. Pembelajaran mesin ,


19: 45–77, 1995.

[6] P. Clark dan T. Niblett. Algoritma Induksi CN2. Pembelajaran mesin ,


3 (4): 261–283, 1999.

[7] W. Cohen. Induksi Aturan Efisien Cepat. Dalam Prosiding Keduabelas Inter-
Konferensi nasional tentang Pembelajaran Mesin , hlm. 115–123, 1995.

© 2009 oleh Taylor & Francis Group, LLC

Halaman 26

18 C4.5

[8] TG Dietterich. Perbandingan Eksperimental Tiga Metode untuk Kon


menyusun Ensemble of Decision Trees: Bagging, Boosting, dan Randomiza-
tion. Pembelajaran Mesin , 40 (2): 139–157, 2000.

[9] S. Dzeroski dan N. Lavrac, eds. Penambangan Data Relasional . Springer, Berlin, 2001.

[10] UM Fayyad dan KB Irani. Tentang Penanganan Atribut yang Berkelanjutan


dalam Generasi Pohon Keputusan. Pembelajaran Mesin , 8 (1): 87-102, Januari 1992.

[11] Y. Freund dan L. Mason. Algoritma Pembelajaran Pohon Keputusan Bergantian.


Dalam Prosiding Konferensi Internasional Keenam Belas tentang Pembelajaran Mesin
(ICML 1999) , hlm. 124–133, 1999.

[12] Y. Freund dan RE Schapire. Pengantar Singkat untuk Meningkatkan. Jurnal


Masyarakat Jepang untuk Kecerdasan Buatan , 14 (5): 771-780, September 1999.

[13] JH Friedman. Aturan Keputusan Partisi Rekursif untuk Nonparametrik


Klasifikasi. Transaksi IEEE di Komputer , 26 (4): 404-408, April 1977.

[14] J. Gehrke, V. Ganti, R. Ramakrishnan, dan W.-H. Loh. PERAHU: Desain Optimis
Konstruksi Pohon cision. Dalam Prosiding ACM SIGMOD International
Konferensi Pengelolaan Data (SIGMOD'99) , hlm. 169–180, 1999.

[15] J. Gehrke, R. Ramakrishnan, dan V. Ganti. RainForest: Kerangka untuk Cepat


Konstruksi Pohon Keputusan dari Kumpulan Data Besar. Penambangan dan Pengetahuan Data
Discovery , 4 (2/3): 127–162, 2000.

[16] EB Hunt, J. Marin, dan PJ Stone. Eksperimen dalam Induksi . Pers Akademik,
New York, 1966.

[17] R. Kohavi, D. Sommerfield, dan J. Dougherty. Penambangan Data Menggunakan MLC ++: A
Perpustakaan Pembelajaran Mesin di C ++. Dalam Prosiding Internasional Kedelapan

https://translate.googleusercontent.com/translate_f 24/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
Konferensi Alat Bantu dengan Kecerdasan Buatan (ICTAI '96) , hlm. 234–245, 1996.
[18] D. Koller dan M. Sahami. Menuju Pemilihan Fitur Optimal. Dalam Prosiding
Konferensi Internasional Ketigabelas tentang Pembelajaran Mesin (ICML'96) ,
hlm. 284–292, 1996.

[19] D. Kumar, N. Ramakrishnan, RF Helm, dan M. Potts. Algoritma untuk Sto-


rytelling. Dalam Prosiding Keduabelas ACM SIGKDD International Con-
ference pada Knowledge Discovery dan Data Mining (KDD'06) , hlm. 604–610,
Agustus 2006.

[20] B. Liu, W. Hsu, dan Y. Ma. Mengintegrasikan Klasifikasi dan Aturan Asosiasi
Pertambangan. Dalam Prosiding Konferensi Internasional Keempat tentang Pengetahuan
Penemuan dan Penambangan Data (KDD'98) , hlm. 80–86, Agustus 1998.

[21] M. Mehta, R. Agrawal, dan J. Rissanen. SLIQ: Klasifikasi Scalable Cepat untuk
Penambangan Data. Dalam Prosiding Konferensi Internasional ke-5 tentang Perpanjangan
Teknologi Basis Data (EDBT'96) , hlm. 18–32, Maret 1996.

[22] SK Murthy, S. Kasif, dan S. Salzberg. Suatu Sistem untuk Induksi Oblique
Pohon Keputusan. Jurnal Riset Kecerdasan Buatan , 2: 1–32, 1994.

© 2009 oleh Taylor & Francis Group, LLC

Halaman 27

Referensi 19

[23] DW Opitz dan R. Maclin. Metode Ensemble Populer: Sebuah Studi Empiris.
Jurnal Riset Kecerdasan Buatan , 11: 169–198, 1999.

[24] L. Parida dan N. Ramakrishnan. Redescription Mining: Teori Struktur dan


Algoritma. Dalam Prosiding Konferensi Nasional Twentieth tentang Buatan
Intelligence (AAAI'05) , hlm. 837–844, Juli 2005.

[25] JR Quinlan. Induksi Pohon Keputusan. Pembelajaran Mesin , 1 (1): 81-106,


1986.

[26] JR Quinlan. Pohon Keputusan yang Menyederhanakan. Laporan Teknis 930, MIT AI Lab
Memo, Desember 1986.

[27] JR Quinlan. Pohon Keputusan sebagai Penggolong Probabilistik. Dalam P. Langley, ed.,
Prosiding Lokakarya Internasional Keempat tentang Pembelajaran Mesin . Lebih
Gan Kaufmann, CA, 1987.

[28] JR Quinlan. Nilai Atribut Tidak Diketahui di Induksi. Laporan teknis, Basser
Departemen Ilmu Komputer, Universitas Sydney, 1989.

[29] JR Quinlan. Mempelajari Definisi Logika dari Hubungan. Pembelajaran mesin ,


5: 239–266, 1990.

[30] JR Quinlan. C4.5: Program untuk Pembelajaran Mesin . Morgan Kaufmann, 1993.

[31] JR Quinlan. Peningkatan Penggunaan Atribut Berkelanjutan di C4.5. Jurnal dari


Penelitian Kecerdasan Buatan , 4: 77–90, 1996.

[32] N. Ramakrishnan, D. Kumar, B. Mishra, M. Potts, dan RF Helm. Berputar


CARTwheels: Algoritma Bolak-balik untuk Mining Redescription. Dalam Pro-
salam Konferensi Internasional Sepuluh ACM SIGKDD tentang Pengetahuan
Penemuan dan Penambangan Data (KDD'04) , hlm. 266–275, Agustus 2004.

[33] R. Rastogi dan K. Shim. PUBLIC: Klasifikasi Pohon Keputusan yang Terintegrasi
Bangunan dan Pemangkasan. Dalam Prosiding Konferensi Internasional ke 24 pada
Basis Data Sangat Besar (VLDB'98) , hlm. 404-415, Agustus 1998.

[34] JC Shafer, R. Agrawal, dan M. Mehta. SPRINT: Klasifikasi Paralel yang Dapat diskalakan
https://translate.googleusercontent.com/translate_f 25/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
untuk Penambangan Data. Dalam Prosiding Konferensi Internasional ke-22 tentang Sangat
Basis Data Besar (VLDB'96) , hlm. 544–555, September 1996.

[35] IH Witten dan E. Frank. Penambangan Data: Alat Pembelajaran Mesin Praktis dan
Teknik . Morgan Kaufmann, 2005.

[36] X. Wu, V. Kumar, JR Quinlan, J. Ghosh, Q. Yang, H. Motoda, GJ McLachlan,


A. Ng, B. Liu, PS Yu, Z.-H. Zhou, M. Steinbach, DJ Hand, dan D. Steinberg.
10 Algoritma Terbaik dalam Penambangan Data. Pengetahuan dan Sistem Informasi ,
14: 1–37, 2008.

[37] L. Zhao, M. Zaki, dan N. Ramakrishnan. BLOSOM: Kerangka Kerja Penambangan


Ekspresi Boolean Sewenang-wenang atas Set Atribut. Dalam Prosiding
ACM SIGKDD Konferensi Internasional tentang Penemuan Pengetahuan dan
Penambangan Data (KDD'06) , hlm. 827–832, Agustus 2006.

© 2009 oleh Taylor & Francis Group, LLC

Halaman 29
28

Bab 2
K-Means

Joydeep Ghosh dan Alexander Liu

Isi

2.1 Pendahuluan ................................................ ............ 21


2.2 Algoritma k-means ............................................ ..... 22
2.3 Perangkat Lunak yang Tersedia ................................................... ....... 26
2.4 Contoh ................................................ ............... 27
2.5 Topik Tingkat Lanjut ............................................... ......... 30
2.6 Ringkasan ................................................ ............... 32
2.7 Latihan ................................................ ............... 33
Referensi ................................................. .................. 34

2.1 Pendahuluan
Pada bab ini, kami menggambarkan algoritma k-means , secara langsung dan luas
digunakan algoritma clustering. Diberikan seperangkat objek (catatan), tujuan pengelompokan
atau segmentasi adalah untuk membagi objek-objek ini menjadi kelompok-kelompok atau "cluster" sedemikian rupa sehingga objek
dalam suatu kelompok cenderung lebih mirip satu sama lain dibandingkan dengan objek yang dimiliki
ke berbagai kelompok. Dengan kata lain, algoritma pengelompokan menempatkan titik yang serupa di
kluster yang sama sambil menempatkan titik yang berbeda dalam kelompok yang berbeda. Perhatikan bahwa, berbeda
untuk tugas-tugas yang diawasi seperti regresi atau klasifikasi di mana ada gagasan tentang a
nilai target atau label kelas, objek yang membentuk input ke prosedur pengelompokan
jangan datang dengan target terkait. Karena itu, clustering sering disebut
sebagai pembelajaran tanpa pengawasan. Karena tidak perlu untuk data berlabel, tanpa pengawasan

https://translate.googleusercontent.com/translate_f 26/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
algoritma cocok untuk banyak aplikasi di mana data berlabel sulit diperoleh.
Tugas yang tidak diawasi seperti pengelompokan juga sering digunakan untuk mengeksplorasi dan mengkarakterisasi
dataset sebelum menjalankan tugas belajar yang diawasi. Karena clustering tidak berguna
label kelas, beberapa gagasan tentang kesamaan harus didefinisikan berdasarkan atribut dari
benda. Definisi kesamaan dan metode pengelompokan poin berbeda
berdasarkan algoritma clustering yang diterapkan. Jadi, algoritma clustering berbeda
cocok untuk berbagai jenis dataset dan tujuan yang berbeda. Clustering "terbaik"
Algoritma yang digunakan karena itu tergantung pada aplikasi. Sudah lazim untuk dicoba
beberapa algoritma berbeda dan pilih tergantung mana yang paling berguna.

21

© 2009 oleh Taylor & Francis Group, LLC

Halaman 30

22 K-Means

The k-means algoritma adalah algoritma clustering yang berulang sederhana yang partisi
dataset yang diberikan ke jumlah cluster yang ditentukan pengguna, k . Algoritma itu sederhana
untuk menerapkan dan menjalankan, relatif cepat, mudah beradaptasi, dan umum dalam praktik. ini
secara historis salah satu algoritma terpenting dalam penambangan data.
Secara historis, k-means dalam bentuk dasarnya telah ditemukan oleh beberapa peneliti.
pencari di berbagai disiplin ilmu, terutama oleh Lloyd (1957, 1982) [16], 1
Forgey (1965) [9], Friedman dan Rubin (1967) [10], dan McQueen (1967) [17]. SEBUAH
sejarah rinci k-means bersama dengan deskripsi dari beberapa variasi diberikan
dalam Jain dan Dubes [13]. Gray dan Neuhoff [11] memberikan latar belakang sejarah yang bagus
untuk k-means ditempatkan dalam konteks yang lebih besar dari algoritma mendaki bukit.
Di sisa bab ini, kami akan menjelaskan cara kerja k-means , mendiskusikan batasan
tations dari k-means , memberikan beberapa contoh dari k-means pada dataset buatan dan nyata,
dan diskusikan secara singkat beberapa ekstensi pada algoritma k-means . Kita harus perhatikan itu
daftar ekstensi kami untuk k-means masih jauh dari lengkap, dan pembaca dianjurkan
untuk melanjutkan penelitian mereka sendiri pada aspek k-means yang paling menarik bagi mereka.

2.2 Algoritma k-means


The k-means algoritma berlaku untuk benda-benda yang diwakili oleh poin dalam
d- ruang vektor dimensi. Dengan demikian, itu mengelompokkan satu set vektor d- dimensi, D =
{ x i | i = 1 , ..., N }, di mana x i ∈ d menunjukkan objek ke- i atau "titik data." Seperti yang dibahas
dalam pengantar, k-means adalah algoritma pengelompokan yang mem- partisi D menjadi k
ters poin. Artinya, algoritma k-means mengelompokkan semua titik data dalam D
sedemikian sehingga setiap titik x i jatuh dalam satu dan hanya satu dari partisi k . Seseorang bisa tetap
melacak titik mana di mana cluster dengan menetapkan setiap titik ID cluster. Poin
dengan ID cluster yang sama berada di cluster yang sama, sedangkan poin dengan cluster berbeda
ID berada dalam kelompok yang berbeda. Satu dapat menunjukkan ini dengan vektor keanggotaan cluster m
dengan panjang N , di mana m i adalah ID cluster x i .
Nilai k adalah input ke algoritma basis. Biasanya, nilai untuk k didasarkan
pada kriteria seperti pengetahuan sebelumnya tentang berapa banyak cluster sebenarnya muncul di D , bagaimana
banyak kluster yang diinginkan untuk aplikasi saat ini, atau jenis kluster yang ditemukan oleh
menjelajahi / bereksperimen dengan nilai-nilai k yang berbeda . Bagaimana k dipilih tidak perlu
untuk memahami bagaimana k-berarti mempartisi dataset D , dan kita akan membahas caranya
untuk memilih k ketika tidak ditentukan sebelumnya di bagian selanjutnya.
Dalam k-means , masing-masing klaster k diwakili oleh satu titik di d . Biarkan kami
menunjukkan set perwakilan cluster ini sebagai set C = { c j | j = 1 , ..., k }. Ini k
perwakilan klaster juga disebut sarana klaster atau kluster centroid ; kami akan
diskusikan alasannya setelah menjelaskan fungsi objektif k-means .
https://translate.googleusercontent.com/translate_f 27/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

1 Lloyd pertama kali menggambarkan algoritma dalam laporan teknis Bell Labs 1957, yang akhirnya diterbitkan pada
1982.

© 2009 oleh Taylor & Francis Group, LLC

Halaman 31

2.2 Algoritma k-means 23

Dalam algoritma pengelompokan, poin dikelompokkan berdasarkan beberapa gagasan "kedekatan" atau
"kesamaan." Dalam k-means , ukuran standar kedekatan adalah jarak Euclidean.
Secara khusus, orang dapat dengan mudah menunjukkan bahwa k-means berupaya meminimalkan hal-hal berikut
fungsi biaya tidak negatif:
∑N
Biaya = ( argmin j || x i - c j || 2 (2.1)
2)
i=1

Dengan kata lain, k-berarti upaya untuk meminimalkan jarak Euclidean kuadrat total
antara setiap titik x i dan perwakilan kluster terdekatnya c j . Persamaan 2.1 sering
disebut sebagai fungsi objektif k-means .
The k-means algoritma, digambarkan dalam Algoritma 2.1, cluster D dalam berulang
mode, bergantian antara dua langkah: (1) menugaskan kembali gugus ID dari semua titik di
D dan (2) memperbarui perwakilan klaster berdasarkan poin data di masing-masing klaster.
Algoritma bekerja sebagai berikut. Pertama, perwakilan cluster diinisialisasi oleh
memilih titik k dalam d . Teknik untuk memilih benih awal ini termasuk pengambilan sampel
secara acak dari dataset, menetapkannya sebagai solusi pengelompokan sebagian kecil
dari data, atau mengganggu rata-rata global dari data k kali. Dalam Algoritma 2.1, kita
inisialisasi dengan memilih secara acak poin k . Algoritma kemudian beralih di antara dua langkah
sampai konvergensi.

Langkah 1: Penugasan data. Setiap titik data ditugaskan ke pusat massa terdekatnya , dengan
ikatan rusak secara sewenang-wenang. Ini menghasilkan partisi data.
Langkah 2: Relokasi "berarti." Setiap perwakilan gugus dipindahkan ke
pusat (yaitu, rata-rata aritmatika) dari semua titik data yang ditetapkan untuk itu. Dasar pemikirannya
langkah ini didasarkan pada pengamatan bahwa, diberikan satu set poin, tunggal terbaik
representatif untuk set ini (dalam arti meminimalkan jumlah kuadrat
Jarak Euclidean antara setiap titik dan perwakilan) tidak lain adalah
rata-rata poin data. Ini juga mengapa perwakilan cluster sering
secara bergantian disebut sebagai cluster mean atau cluster centroid , dan di mana
algoritma mendapatkan namanya dari.

Algoritma konvergen ketika tugas (dan karenanya c j nilai-nilai) tidak lagi


perubahan. Seseorang dapat menunjukkan bahwa fungsi objektif k-means didefinisikan dalam Persamaan 2.1
akan berkurang setiap kali ada perubahan dalam penugasan atau langkah relokasi,
dan konvergensi dijamin dalam jumlah iterasi yang terbatas.
Perhatikan bahwa setiap iterasi membutuhkan perbandingan N × k , yang menentukan waktu
kompleksitas satu iterasi. Jumlah iterasi yang diperlukan untuk konvergensi bervariasi
dan mungkin bergantung pada N , tetapi sebagai potongan pertama, k-means dapat dianggap linier dalam
ukuran dataset. Selain itu, karena operasi perbandingannya linear dalam d , algoritmanya adalah
juga linier dalam dimensi data.

Keterbatasan. Sifat serakah-turun dari k-means pada peningkatan biaya non-konveks


mengatakan bahwa konvergensi hanya untuk optimal lokal, dan memang algoritma
biasanya cukup sensitif terhadap lokasi sentroid awal. Dengan kata lain,

https://translate.googleusercontent.com/translate_f 28/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

© 2009 oleh Taylor & Francis Group, LLC

Halaman 32

24 K-Means

Algoritma 2.1 The k-means algoritma


Input: Dataset D , jumlah cluster k
Output: Set perwakilan cluster C , vektor keanggotaan cluster m
/ * Menginisialisasi perwakilan cluster C * /
Pilih titik data k secara acak dari D
5: Gunakan poin k ini sebagai set awal perwakilan klaster C
ulang
/ * Penugasan Data * /
Tetapkan kembali poin dalam D ke mean klaster terdekat
Perbarui m sehingga m i adalah klaster ID dari i titik th di D
10: / * Relokasi sarana * /
Perbarui C sedemikian rupa sehingga c j adalah
∑ rata-rata
N
titik dalam klaster j
sampai konvergensi fungsi tujuan
i=1( argmin j || x i - c j || 2 2)

menginisialisasi set perwakilan cluster C berbeda dapat menyebabkan sangat


cluster yang berbeda, bahkan pada dataset yang sama D . Inisialisasi yang buruk dapat menyebabkan
untuk kelompok yang sangat miskin. Kita akan melihat contohnya di bagian selanjutnya ketika
kita melihat contoh k-means yang diterapkan pada data buatan dan nyata. Lingkungan setempat
masalah minimum dapat diatasi sampai batas tertentu dengan menjalankan algoritma
beberapa kali dengan centroid awal yang berbeda dan kemudian memilih hasil terbaik,
atau dengan melakukan pencarian lokal terbatas tentang solusi konvergen. Pendekatan lain
termasuk metode seperti yang dijelaskan dalam [14] yang berusaha untuk menjaga k-means
dari konvergen ke minimum lokal. [8] juga berisi daftar metode yang berbeda
inisialisasi, serta diskusi tentang batasan lain dari k-means .

Seperti disebutkan, memilih nilai optimal k mungkin sulit. Jika seseorang memiliki pengetahuan
tentang dataset, seperti jumlah partisi yang secara alami terdiri dari dataset,
maka pengetahuan itu dapat digunakan untuk memilih k . Kalau tidak, seseorang harus menggunakan yang lain
kriteria untuk memilih k , sehingga memecahkan masalah pemilihan model . Satu solusi naif
adalah mencoba beberapa nilai k yang berbeda dan memilih pengelompokan yang meminimalkan
k-berarti fungsi objektif (Persamaan 2.1). Sayangnya, nilai tujuannya
fungsi tidak informatif seperti yang diharapkan dalam kasus ini. Misalnya biaya
dari solusi optimal berkurang dengan bertambahnya k hingga mencapai nol ketika jumlahnya
cluster sama dengan jumlah titik data yang berbeda. Ini membuatnya lebih sulit
gunakan fungsi objektif untuk (a) membandingkan secara langsung solusi dengan angka yang berbeda
cluster dan (b) menemukan nilai optimal k . Jadi, jika yang diinginkan k tidak diketahui
sebelumnya, seseorang biasanya menjalankan k-means dengan nilai k yang berbeda , dan kemudian menggunakannya
beberapa kriteria lain yang lebih cocok untuk memilih salah satu hasil. Misalnya, SAS
menggunakan kriteria cube-clustering, sedangkan X-means menambahkan istilah kompleksitas (yang
meningkat dengan k ) ke fungsi biaya asli (Persamaan 2.1) dan kemudian mengidentifikasi k
yang meminimalkan biaya yang disesuaikan ini [20]. Atau, seseorang dapat semakin meningkat
jumlah cluster, dalam hubungannya dengan kriteria berhenti yang cocok. Membelah dua
k-means [21] mencapai ini dengan pertama-tama meletakkan semua data ke dalam satu cluster, dan kemudian
secara rekursif memisahkan cluster terkecil menjadi dua kelompok menggunakan 2-cara. Itu

© 2009 oleh Taylor & Francis Group, LLC

https://translate.googleusercontent.com/translate_f 29/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

Halaman 33

2.2 Algoritma k-means 25

merayakan algoritma LBG [11] yang digunakan untuk kuantisasi vektor menggandakan jumlah
cluster sampai ukuran kode-buku yang sesuai diperoleh. Dengan demikian kedua pendekatan ini meringankan
kebutuhan untuk mengetahui k sebelumnya. Banyak peneliti lain telah mempelajari masalah ini,
seperti [18] dan [12].
Selain keterbatasan di atas, k-means menderita beberapa masalah lain
yang bisa dipahami dengan terlebih dahulu mencatat bahwa masalah pemasangan data menggunakan campuran
dari k Gaussians dengan identik, matriks kovarians isotropik (= σ 2 I ), di mana saya berada
matriks identitas, menghasilkan versi "lunak" dari k-means . Lebih tepatnya, jika lunak
alih-alih penugasan titik data ke komponen campuran dari model semacam itu
mengeras sehingga setiap titik data semata-mata dialokasikan ke komponen yang paling mungkin
[3], maka seseorang memperoleh algoritma k-means . Dari hubungan ini terbukti bahwa
k-means secara inheren mengasumsikan bahwa dataset terdiri dari campuran bola k atau
hyperspheres data, dan masing-masing cluster k sesuai dengan salah satu campuran
komponen. Karena asumsi tersirat ini, k-means akan goyah kapan saja
data tidak dijelaskan dengan baik oleh superposisi bola yang cukup terpisah
Distribusi Gaussian. Sebagai contoh, k-means akan mengalami masalah jika ada
cluster berbentuk cembung dalam data. Masalah ini dapat diatasi dengan menyelamatkan
data untuk "memutihkan" itu sebelum pengelompokan, atau dengan menggunakan ukuran jarak yang berbeda itu
lebih tepat untuk dataset. Sebagai contoh, pengelompokan informasi-teori menggunakan
divergensi KL untuk mengukur jarak antara dua titik data yang mewakili dua
distribusi probabilitas diskrit. Baru-baru ini ditunjukkan bahwa jika seseorang mengukur
jarak dengan memilih anggota dari kelas divergensi yang sangat besar yang disebut Bregman
divergensi selama langkah penugasan dan tidak membuat perubahan lain, yang penting
sifat-sifat k-means , termasuk konvergensi yang dijamin, batas pemisahan linier-
aries, dan skalabilitas, dipertahankan [1]. Hasil ini menjadikan k-means efektif untuk a
kelas dataset yang jauh lebih besar asalkan divergensi yang sesuai digunakan.
Metode lain untuk menangani cluster nonconvex adalah dengan memasangkan k-means dengan
algoritma lain. Sebagai contoh, pertama dapat mengelompokkan data menjadi sejumlah besar
kelompok menggunakan k-means . Kelompok-kelompok ini kemudian diaglomerasi menjadi kelompok yang lebih besar menggunakan
pengelompokan hierarki tautan tunggal, yang dapat mendeteksi bentuk kompleks. Pendekatan ini
juga membuat solusi kurang sensitif terhadap inisialisasi, dan karena hirarkis
Metode memberikan hasil pada berbagai resolusi, seseorang tidak perlu khawatir
memilih nilai yang tepat untuk k juga; alih-alih, kita bisa menggunakan nilai besar untuk k
saat membuat cluster awal.
Algoritma ini juga sensitif terhadap keberadaan pencilan, karena “rata-rata” bukan a
statistik yang kuat. Langkah preprocessing untuk menghapus outlier dapat membantu. Pengolahan pasca
hasilnya, misalnya, untuk menghilangkan cluster kecil, atau untuk menggabungkan cluster dekat menjadi
sekelompok besar, juga diinginkan. Algoritma Ball and Hall ISODATA dari tahun 1967
efektif digunakan baik pra dan pasca pengolahan pada k-means .
Masalah potensial lainnya adalah masalah cluster "kosong" [4]. Saat menjalankan k-
berarti , terutama dengan nilai k yang besar dan / atau ketika data berada di tempat yang sangat tinggi
ruang dimensi, ada kemungkinan bahwa di beberapa titik eksekusi, ada sebuah cluster
representatif c j sehingga semua poin x i dalam D lebih dekat ke beberapa representasi cluster lainnya
sentatif yang bukan c j . Ketika titik dalam D ditugaskan ke kluster terdekat mereka, j th
cluster akan memiliki titik nol yang ditetapkan untuk itu. Yaitu, cluster j sekarang adalah cluster kosong.

© 2009 oleh Taylor & Francis Group, LLC

https://translate.googleusercontent.com/translate_f 30/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

Halaman 34

26 K-Means

Algoritma standar tidak melindungi terhadap cluster kosong, tetapi ekstensi sederhana
(seperti menginisialisasi ulang perwakilan klaster dari kluster kosong atau "mencuri"
beberapa poin dari cluster terbesar) dimungkinkan.

2.3 Perangkat Lunak yang Tersedia


Karena kesederhanaan, keefektifan, dan pentingnya historis algoritma k-means
Tance, perangkat lunak untuk menjalankan algoritma k-means sudah tersedia dalam beberapa bentuk. Itu
adalah fitur standar dalam banyak paket perangkat lunak penambangan data yang populer. Misalnya saja
dapat ditemukan di Weka atau SAS di bawah prosedur FASTCLUS. Itu juga biasa
termasuk sebagai tambahan untuk perangkat lunak yang ada. Sebagai contoh, beberapa implementasi dari
k-means tersedia sebagai bagian dari berbagai kotak peralatan di M ATLAB . k-means adalah
juga tersedia di Microsoft Excel setelah menambahkan XLMiner. Akhirnya, beberapa berdiri sendiri
versi k-means ada dan dapat dengan mudah ditemukan di Internet.
Algoritma juga mudah untuk kode, dan pembaca didorong untuk membuatnya
implementasi k-means mereka sendiri sebagai latihan.

−2

−4

−6
−6 −4 −2 0 2 4 6 8
Gambar 2.1 Dataset buatan yang digunakan dalam contoh kita; data diambil dari a
campuran empat Gaussians.

© 2009 oleh Taylor & Francis Group, LLC

Halaman 35

https://translate.googleusercontent.com/translate_f 31/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

2.4 Contoh 27

2.4 Contoh
Mari kita tunjukkan contoh k-means pada dataset buatan untuk menggambarkan caranya
k-means berfungsi. Kami akan menggunakan data buatan yang diambil dari empat Gaussians 2-D dan
gunakan nilai k = 4; dataset diilustrasikan pada Gambar 2 .1. Data diambil dari a
Gaussian tertentu diplot dengan warna yang sama pada Gambar 2.1. Data biru terdiri
200 poin yang diambil dari Gaussian dengan mean at (−3 , −3) dan ma kovarian
trix . 0625 × I , di mana saya adalah matriks identitas. Data hijau terdiri dari 200 poin
diambil dari Gaussian dengan mean di (3 , -3) dan kovarians matriks saya . Akhirnya, kita
memiliki data kuning dan merah yang tumpang tindih yang diambil dari dua Gauss terdekat. Kuning
data terdiri dari 150 poin yang diambil dari Gaussian dengan rata-rata ( , 1 , 2) dan kovarian
matriks I , sedangkan data merah terdiri dari 150 poin yang diambil dari Gaussian dengan rata-rata
(1,2) dan kovarians matriks saya . Meskipun tumpang tindih antara titik merah dan kuning,
orang akan mengharapkan k-berarti melakukan dengan baik karena kita memiliki nilai k dan nilai yang tepat
data dihasilkan oleh campuran Gaussians bola, sehingga cocok dengan
asumsi yang mendasari algoritma.
Langkah pertama dalam k-means adalah menginisialisasi perwakilan cluster. Ini adalah ilus-
ditunjukkan pada Gambar 2.2a , di mana k poin dalam dataset telah dipilih secara acak. Di dalam
gambar dan gambar-gambar berikut, gugus berarti C akan diwakili oleh besar
lingkaran berwarna dengan garis hitam. Warnanya sesuai dengan ID cluster itu
cluster tertentu, dan semua titik yang ditugaskan untuk cluster tersebut diwakili sebagai poin
warnanya sama. Warna-warna ini tidak memiliki koneksi yang pasti dengan warna pada Gambar 2.1
(lihat Latihan 7). Karena poin belum ditetapkan ID cluster pada Gambar 2.2a, mereka
diplot dalam warna hitam.
Langkah selanjutnya adalah menetapkan semua poin ke perwakilan kluster terdekat; ini adalah
diilustrasikan pada Gambar 2.2b, di mana setiap titik telah diplot agar sesuai dengan warna
perwakilan klaster terdekat. Langkah ketiga dalam k-means adalah memperbarui k cluster
perwakilan untuk sesuai dengan rata-rata semua poin yang saat ini ditugaskan untuk
ter. Langkah ini diilustrasikan pada Gambar 2.2c. Secara khusus, kami telah merencanakan kluster lama
perwakilan dengan simbol "X" hitam dan perwakilan kluster yang baru dan diperbarui
sebagai lingkaran berwarna besar dengan garis hitam. Ada juga jalur penghubung yang lama
mean cluster dengan mean cluster baru yang diperbarui. Orang dapat mengamati bahwa cluster
perwakilan telah bergerak untuk mencerminkan centroid saat ini dari masing-masing cluster.
The k-means algoritma sekarang iterates antara dua langkah sampai konvergensi: reas-
menandatangani poin D untuk perwakilan kluster terdekat dan memperbarui klaster k
perwakilan. Kami telah mengilustrasikan empat iterasi pertama k-means dalam Gambar
2.2 dan 2.3. Cluster akhir setelah konvergensi ditunjukkan pada Gambar 2.3d . Catat itu
contoh ini membutuhkan delapan iterasi untuk bertemu. Namun secara visual, ada sedikit perubahan
dalam diagram antara iterasi 4 dan 8, dan gambar-gambar ini dihilangkan untuk ruang
alasan. Seperti yang dapat dilihat dengan membandingkan Gambar 2.3d dengan Gambar 2.1, cluster ditemukan
dengan k-means cocok dengan benar, distribusi yang mendasarinya.
Pada bagian sebelumnya, kami menyebutkan bahwa k-means sensitif terhadap poin awal
dipilih sebagai cluster. Pada Gambar 2 .4, kami menunjukkan apa yang terjadi ketika perwakilan k berada

© 2009 oleh Taylor & Francis Group, LLC

Halaman 36

https://translate.googleusercontent.com/translate_f 32/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
28 K-Means

Cluster awal artinya Iterasi 1: Menetapkan ID cluster


6 6

4 4

2 2

0 0

−2 −2

−4 −4

−6 −6
−6 −4 −2 0 2 4 6 8 −6 −4 −2 0 2 4 6 8

(Sebuah) (b)

Iterasi 2: Menetapkan ID cluster


Iterasi 1: Memperkirakan berarti cluster
6 6

4
4

2
2

0 0

−2
−2

−4 −4

−6 −6
−6 −4 −2 0 2 4 6 8 −6 −4 −2 0 2 4 6 8
(c) (d)

Iterasi 2: Memperkirakan berarti cluster Iterasi 3: Menetapkan ID cluster


6 6

4 4

2 2

0 0

−2 −2

−4 −4

−6 −6
−6 −4 −2 0 2 4 6 8 −6 −4 −2 0 2 4 6 8

(e) (f)

Gambar 2.2 k-means pada data buatan.

© 2009 oleh Taylor & Francis Group, LLC

Halaman 37

2.4 Contoh 29

Iterasi 3: Memperkirakan berarti cluster Iterasi 4: Menetapkan ID cluster


6 6

4 4

https://translate.googleusercontent.com/translate_f 33/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

2 2

0 0

−2 −2

−4 −4

−6 −6
−6 −4 −2 0 2 4 6 8 −6 −4 −2 0 2 4 6 8
(Sebuah) (b)

Cluster setelah konvergensi


Iterasi 4: Memperkirakan berarti cluster 6
6

4
4

2
2

0
0

−2
−2

−4
−4

−6
−6 −4 −2 0 2 4 6 8
−6
−6 −4 −2 0 2 4 6 8 (d)
(c)

Gambar 2.3 k-means pada data buatan. (Lanjutan dari Gambar 2.2.)

diinisialisasi buruk pada dataset buatan yang sama yang digunakan dalam Gambar 2.2 dan 2.3. Gambar 2.4a
dan c menunjukkan dua inisialisasi yang mengarah pada kelompok miskin pada Gambar 2.4b dan d. Ini
hasilnya dianggap buruk karena tidak sesuai dengan yang mendasarinya
distribusi.
Akhirnya, mari kita periksa kinerja k-means di bangku sederhana, klasik.
tandai dataset. Dalam contoh kami, kami menggunakan dataset Iris (tersedia dari data UCI
mining repository), yang berisi 150 titik data dari tiga kelas. Setiap perwakilan kelas
membenci spesies bunga Iris yang berbeda, dan ada 50 poin dari setiap kelas.
Sementara ada empat dimensi (mewakili lebar sepal, panjang sepal, lebar kelopak,
dan panjang petal), hanya dua dimensi (lebar petal dan panjang petal) yang diperlukan
untuk membedakan tiga kelas. Kumpulan data Iris diplot pada Gambar 2.5a di sepanjang
dimensi lebar kelopak dan panjang kelopak.
Pada Gambar 2.5b, kami menunjukkan contoh algoritma k-means yang dijalankan pada Iris
dataset dengan k = 3, hanya menggunakan atribut lebar kelopak dan panjang kelopak. Itu

© 2009 oleh Taylor & Francis Group, LLC

Halaman 38

30 K-Means

Cluster awal artinya Cluster setelah konvergensi


6 6

4 4

2 2

0 0

−2 −2

https://translate.googleusercontent.com/translate_f 34/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

−4 −4

−6 −6
−6 −4 −2 0 2 4 6 8 −6 −4 −2 0 2 4 6 8
(Sebuah) (b)

Cluster awal artinya Cluster setelah konvergensi


6 6

4 4

2 2

0 0

−2 −2

−4 −4

−6 −6
−6 −4 −2 0 2 4 6 8 −6 −4 −2 0 2 4 6 8

(c) (d)

Gambar 2.4 Contoh pengelompokan yang buruk setelah inisialisasi yang buruk; hasil ini
cluster dianggap "miskin" dalam arti bahwa mereka tidak cocok dengan yang benar,
distribusi yang mendasarinya.

Algoritma k-means mampu mengelompokkan titik-titik data sedemikian rupa sehingga masing-masing cluster terkompilasi
sebagian besar pose bunga dari spesies yang sama.

2.5 Topik Tingkat Lanjut


Di bagian ini, kami membahas beberapa generalisasi, koneksi, dan ekstensi yang dimiliki
telah dibuat untuk algoritma k-means . Namun, kita harus perhatikan bahwa bagian ini
jauh dari lengkap. Penelitian tentang k-means telah luas dan masih aktif.
Sebaliknya, tujuan dari bagian ini adalah untuk melengkapi beberapa yang telah dibahas sebelumnya
masalah tentang k-means .

© 2009 oleh Taylor & Francis Group, LLC

Halaman 39

2.5 Topik Tingkat Lanjut 31

Iris Dataset Kumpulan data iris: kluster setelah konvergensi


2.5 2.5

2 2

1.5 1.5

1 1
Lebar Kelopak Lebar Kelopak

0,5 0,5

0 0
1 2 3 4 5 6 7 1 2 3 4 5 6 7
Panjang Petal Panjang Petal

(Sebuah) (b)

https://translate.googleusercontent.com/translate_f 35/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

Gambar 2.5 (a) Iris dataset; setiap warna adalah spesies Iris yang berbeda; (B) Hasil
k-means pada dataset Iris; setiap warna adalah cluster yang berbeda; perhatikan bahwa tidak ada
tentu korespondensi antara warna dalam (a) dan (b) (lihat Latihan 7).

Seperti disebutkan sebelumnya, k-means terkait erat dengan pemasangan campuran k isotropik
Gauss untuk data. Apalagi generalisasi ukuran jarak untuk semua
Divergensi Bregman terkait dengan pemasangan data dengan campuran komponen k
dari keluarga distribusi eksponensial. Generalisasi luas lainnya adalah melihat
"berarti" sebagai model probabilistik bukan titik dalam R d . Di sini, dalam penugasan
langkah, setiap titik data ditugaskan ke model yang paling mungkin menghasilkannya. Dalam
Langkah "relokasi", parameter model diperbarui agar paling sesuai dengan dataset yang ditugaskan.
K-means berbasis model seperti itu [23] memungkinkan seseorang untuk memenuhi data yang lebih kompleks, untuk
contoh, urutan dijelaskan oleh model Hidden Markov.
Seseorang juga dapat “kernelize” k-means [5]. Padahal batas antar cluster adalah
masih linear dalam ruang dimensi tinggi implisit, mereka dapat menjadi nonlinier ketika
diproyeksikan kembali ke ruang asli, sehingga memungkinkan kernel k-means untuk berurusan dengan
cluster yang lebih kompleks. Dhillon et al. [5] telah menunjukkan hubungan yang erat antara
kernel k-means dan spektral clustering. The K-medoid [15] algoritma ini mirip dengan
k-means , kecuali bahwa centroid harus milik dataset yang dikelompokkan.
Fuzzy c-means [6] juga serupa, kecuali ia menghitung fungsi keanggotaan fuzzy
untuk setiap cluster daripada yang sulit.
Untuk menangani dataset yang sangat besar, upaya yang substansial juga telah mempercepat
meningkatkan k-means , terutama dengan menggunakan pohon-kd [19] atau mengeksploitasi segitiga
ketidaksetaraan [7] untuk menghindari membandingkan setiap titik data dengan semua centroid selama
langkah penugasan.
Akhirnya, kami membahas dua ekstensi langsung dari k-means . Yang pertama adalah a
varian k-means yang disebut soft k-means . Dalam algoritma k-means standar ,
setiap titik x i milik satu dan hanya satu cluster. Dalam k-means lunak , kendala ini
santai, dan setiap titik x i dapat menjadi milik setiap cluster dengan beberapa probabilitas yang tidak diketahui.
Dalam k-means lunak , untuk setiap titik x i , satu mempertahankan seperangkat probabilitas atau bobot k

© 2009 oleh Taylor & Francis Group, LLC

Halaman 40

32 K-Means

yang menggambarkan kemungkinan bahwa x i milik masing-masing cluster. Bobot ini didasarkan
pada jarak x i untuk masing-masing perwakilan kelompok C , di mana probabilitas
bahwa x i adalah dari klaster j sebanding dengan kesamaan antara x i dan c j . Cluster
Perwakilan dalam hal ini ditemukan dengan mengambil nilai rata-rata dari klaster rata-rata
atas semua poin dalam dataset D .
Perpanjangan kedua dari k-means berkaitan dengan pembelajaran semi-diawasi. Dalam pengantar
Duction, kami membuat perbedaan antara pembelajaran terawasi dan pembelajaran tanpa pengawasan
ing. Singkatnya, pembelajaran terawasi menggunakan label kelas sementara pembelajaran tanpa pengawasan
tidak. The k-means algoritma adalah algoritma murni tanpa pengawasan. Di sana juga
ada kategori algoritma pembelajaran yang disebut algoritma semisupervised. Semi
Algoritma pembelajaran yang diperintahkan mampu memanfaatkan label dan tidak berlabel
data. Pembelajaran semi-diawasi adalah kompromi yang bermanfaat antara murni diawasi
metode dan metode murni tanpa pengawasan. Metode pembelajaran yang diawasi biasanya
membutuhkan jumlah data berlabel yang sangat besar; metode semi-diawasi berguna ketika
sangat sedikit contoh berlabel yang tersedia. Metode pembelajaran tanpa pengawasan, yang dapat dilakukan
tidak melihat label kelas, dapat mempelajari model yang tidak sesuai untuk aplikasi yang ada.
Saat menjalankan k-means , seseorang tidak memiliki kendali atas gugus akhir yang ditemukan.

https://translate.googleusercontent.com/translate_f 36/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
ered; klaster-klaster ini mungkin cocok atau tidak sesuai dengan beberapa konsep yang mendasarinya
seseorang tertarik. Sebagai contoh, pada Gambar 2.5b , inisialisasi yang buruk mungkin dimiliki
menghasilkan cluster yang tidak sesuai dengan spesies Iris dalam dataset.
Metode semi-diawasi, yang dapat mengambil panduan dalam bentuk poin berlabel, adalah
lebih mungkin untuk membuat cluster yang sesuai dengan satu set label kelas yang diberikan.
Penelitian ke varian semisupervised dari k-means termasuk [22] dan [2]. Salah satunya
algoritma dari [2] disebut seeded k-means adalah ekstensi sederhana untuk k-means
yang menggunakan data berlabel untuk membantu menginisialisasi nilai k dan perwakilan cluster
C . Dalam pendekatan ini, k dipilih sama dengan jumlah kelas dalam label
data, sedangkan c j diinisialisasi sebagai rata-rata dari semua titik berlabel di kelas j . Perhatikan bahwa,
tidak seperti k-means yang tidak diawasi , sekarang ada korespondensi yang diketahui antara
klaster j dan kelas j . Setelah inisialisasi, seeded k-berarti iterates over
dua langkah yang sama dengan k-means (memperbarui keanggotaan klaster dan memperbarui klaster
berarti) sampai konvergensi.

2.6 Ringkasan
The k-means algoritma adalah sederhana berulang pengelompokan algoritma yang partisi sebuah
dataset ke dalam k cluster. Pada intinya, algoritma ini bekerja dengan mengulangi dua langkah: (1)
mengelompokkan semua titik dalam dataset berdasarkan jarak antara setiap titik dan titiknya
perwakilan klaster terdekat dan (2) memperkirakan ulang perwakilan klaster. Limita-
Tions dari algoritma k-means termasuk sensitivitas k-means untuk inisialisasi
dan menentukan nilai k .
Terlepas dari kekurangannya, k-means tetap menjadi klaster partisi yang paling banyak digunakan
algoritma tering dalam praktek. Algoritma ini sederhana, mudah dimengerti, dan

© 2009 oleh Taylor & Francis Group, LLC

Halaman 41

2.7 Latihan 33

cukup skalabel, dan dapat dengan mudah dimodifikasi untuk menghadapi berbagai skenario seperti itu
sebagai pembelajaran semisupervisi atau streaming data. Perbaikan berkelanjutan dan umum-
Pengaitan algoritma dasar telah memastikan relevansinya yang berkelanjutan dan secara bertahap
meningkatkan efektivitasnya juga.

2.7 Latihan
1. Menggunakan dataset Iris tolok ukur standar (tersedia online dari UCI
dataset repository), jalankan k-means untuk mendapatkan hasil yang mirip dengan Gambar 2.5b. ini
cukup untuk melihat hanya atribut "kelopak lebar" dan "kelopak panjang."
Apa yang terjadi ketika seseorang menggunakan nilai untuk k selain tiga? Bagaimana caranya berbeda
inisialisasi klaster mempengaruhi klaster akhir? Mengapa hasil ini berpotensi
berbeda dengan hasil yang diberikan pada Gambar 2.5b?
2. Buktikan bahwa nilai fungsi objektif k-means menyatu ketika k-
berarti dijalankan.
3. Jelaskan tiga keunggulan dan tiga kelemahan k-means dibandingkan dengan
metode pengelompokan lainnya (misalnya, pengelompokan aglomeratif).
4. Jelaskan atau plot contoh dua dimensi di mana k-means tidak akan

https://translate.googleusercontent.com/translate_f 37/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
cocok untuk mencari cluster.
5. Dalam k-means , setelah cluster artinya telah konvergen, seperti apa bentuknya
batas cluster? Bagaimana ini terkait dengan tesselations Voronoi?
6. Apakah k-means menjamin bahwa poin-poin dalam cluster yang sama lebih mirip
daripada poin dari berbagai kelompok? Yaitu, buktikan atau bantah bahwa, setelah k-
berarti telah konvergen, jarak Euclidean kuadrat antara dua titik di
cluster yang sama selalu kurang dari jarak Euclidean kuadrat antara
dua poin dari kelompok yang berbeda.
7. Assumeoneisgivenahypotheticaldataset D yang terdiri dari 10 poin. k-means
dijalankan dua kali pada dataset ini. Mari kita menunjukkan ID cluster dari 10 poin dalam D
sebagai vektor m , di mana m i , yang saya th masuk dalam vektor, adalah cluster ID dari i th
menunjuk D .
ID cluster 10 poin dari k-means pertama kali dijalankan adalah
m 1 = [1 , 1 , 1 , 2 , 2 , 2 , 3 , 3 , 3 , 3], sedangkan ID cluster diperoleh dari yang kedua
run of k-means adalah m 2 = [3 , 3 , 3 , 1 , 1 , 1 , 2 , 2 , 2 , 2].
Apa perbedaan antara dua set ID cluster? Lakukan yang sebenarnya
ID cluster titik-titik dalam D berarti sesuatu? Apa artinya ini saat
membandingkan hasil berbagai algoritma pengelompokan? Apa artinya ini
ketika membandingkan hasil algoritma pengelompokan dengan label kelas yang dikenal?
8. Buat implementasi k-means Anda sendiri dan metode menciptakan artifi-
data penting diambil dari k distribusi Gaussian. Uji kode Anda pada buatan
data dan melacak berapa banyak iterasi yang diperlukan untuk k-means untuk bertemu.

© 2009 oleh Taylor & Francis Group, LLC

Halaman 42

34 K-Means

9. Menggunakan kode yang dihasilkan dalam latihan sebelumnya, plot jarak rata-rata
dari setiap titik dari rata-rata klusternya versus jumlah cluster k . Adalah
jarak rata-rata suatu titik dari kelompoknya berarti metode yang baik secara otomatis
menentukan jumlah cluster k ? Mengapa atau mengapa tidak? Apa yang berpotensi
terjadi ketika jumlah cluster k sama dengan jumlah poin dalam
Himpunan data?
10. Penelitian dan jelaskan ekstensi ke algoritma k-means standar .
Tergantung pada minat individu, ini dapat mencakup pekerjaan terbaru tentang
ing k-means lebih efisien secara komputasi, bekerja untuk memperluas k-means
untuk belajar semi-diawasi, bekerja mengadaptasi metrik jarak lain ke dalam
k-means , atau banyak kemungkinan lainnya.

Referensi
[1] A. Banerjee, S. Merugu, I. Dhillon, dan J. Ghosh. "Berkelompok dengan Bregman
divergences, ” Journal of Machine Learning Research ( JMLR ), vol. 6, hlm. 1705–
1749, 2005.

[2] S. Basu, A. Banerjee, dan R. Mooney. “Pengelompokan semi-diawasi oleh seeding,”


Konferensi Internasional tentang Pembelajaran Mesin 2002 , hlm. 27–34, 2002.

[3] CM Bishop. Pengenalan Pola dan Pembelajaran Mesin (Ilmu Informasi)


dan Statistik) . 2006

https://translate.googleusercontent.com/translate_f 38/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
[4] PS Bradley, KP Bennett, dan A. Demiriz. "K-means yang terbatas mengelompok,"
Laporan Teknis MSR-TR-2000-65 , 2000.

[5] IS Dhillon, Y. Guan, dan B. Kulis. "K-means Kernel: Pengelompokan spektral dan
pemotongan yang dinormalisasi, ” KDD 2004 , hlm. 551–556, 2004.

[6] JC Dunn. “Kerabat fuzzy dari proses ISODATA dan penggunaannya dalam mendeteksi
cluster yang terpisah dengan baik, ” Journal of Cybernetics , vol. 3, hlm. 32–57,
1974.

[7] C. Elkan. "Menggunakan ketimpangan segitiga untuk mempercepat k-means," Internasional


Konferensi tentang Pembelajaran Mesin 2003 , hlm. 147–153, 2003.

[8] C. Elkan. “Mengelompokkan dengan k-means: Lebih cepat, lebih cerdas, lebih murah,” Keynote berbicara di
Workshop Pengelompokan Data Dimensi Tinggi, SIAM International Confer-
ence tentang Data Mining , 2004.

[9] E. Forgey. “Analisis cluster data multivarian: Efisiensi vs interpretabilitas


klasifikasi, ” Biometrics , 21, hlm. 768, 1965.

[10] HP Friedman dan J. Rubin. "Pada beberapa kriteria invarian untuk pengelompokan data,"
Jurnal Asosiasi Statistik Amerika , 62, hlm. 1159–1178, 1967.

© 2009 oleh Taylor & Francis Group, LLC

Halaman 43

Referensi 35

[11] RM Gray dan DL Neuhoff. “Kuantisasi,” Transaksi IEEE pada Informasi


Teori mation, vol. 44, tidak. 6, hlm. 2325–2384, 1998.

[12] G. Hamerly dan C. Elkan. "Belajar k dalam k-means," Informasi Saraf


Sistem Pemrosesan , 2003.

[13] AK Jain dan RC Dubes. Algoritma untuk Data Clustering , Prentice Hall,
1988.

[14] T. Kanungo, DM Mount, N. Netanyahu, C. Piatko, R. Silverman, dan AY


Wu. “Algoritma pendekatan pencarian lokal untuk k-means clustering,” Com-
putational Geometry: Theory and Applications , 28 (2004), hlm. 89–112, 2004.

[15] L. Kaufman dan PJ Rousseeuw. Menemukan Grup dalam Data: Pengantar untuk
Analisis Cluster , 1990.

[16] SP Lloyd. "Kuantisasi kuadrat terkecil dalam PCM," Bell Lab tidak dipublikasikan. Tech.
Catatan, bagian disajikan di Institut Statistik Matematika.,
Atlantic City, NJ, September 1957. Juga, IEEE Trans. Memberitahu. Teori (Edisi Khusus
pada Kuantisasi), vol. IT-28, hlm. 129–137, Maret 1982.

[17] J. McQueen. “Beberapa metode untuk klasifikasi dan analisis mutivariat


pengamatan, " Proc. 5 th Berkeley Symp. Matematika., Statistik dan Peluang , 1,
hlm. 281–296, 1967.

[18] GW Milligan. “Validasi pengelompokan: Hasil dan implikasi untuk diterapkan


menganalisis, ” Clustering dan Klasifikasi , P. Arabie, LJ Hubery, dan G. De
Soete, ed., Hlm. 341–375, 1996.

[19] D. Pelleg dan A. Moore. “Mempercepat algoritma k-means dengan geometri


alasan rasional, ” KDD 1999 , hlm. 227–281, 1999.

[20] D. Pelleg dan A. Moore. “X-means: Memperluas k-means dengan estimasi efisien
jumlah cluster, ” Konferensi Internasional tentang Pembelajaran Mesin
2000 , hlm. 727-734, 2000.

[21] M. Steinbach, G. Karypis, dan V. Kumar. “Suatu perbandingan pengelompokan dokumen

https://translate.googleusercontent.com/translate_f 39/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
teknik, " Proc. Lokakarya KDD tentang Penambangan Teks , 2000.
[22] K. Wagstaff, C. Cardie, S. Rogers, S. Schrödl. “K-means terkelompok
dengan latar belakang pengetahuan, ” Konferensi Internasional tentang Pembelajaran Mesin
2001 , hlm. 577–584, 2001.

[23] S. Zhong dan J. Ghosh. “Kerangka kerja terpadu untuk pengelompokan berbasis model,”
Jurnal Penelitian Pembelajaran Mesin ( JMLR ), vol. 4, hlm. 1001-1037, 2003.

© 2009 oleh Taylor & Francis Group, LLC

Halaman 45
44

bagian 3
SVM: Mendukung Mesin Vektor

Hui Xue, Qiang Yang, dan Songcan Chen

Isi

3.1 Mendukung Vektor Klasifikasi .............................................. .. 37


3.2 SVC dengan Soft Margin dan Optimasi ................................. 41
3.3 Trik Kernel ............................................... ............. 42
3.4 Yayasan Teoritis ............................................... .. 47
3.5 Mendukung Vektor Regulator .............................................. . 50
3.6 Implementasi Perangkat Lunak ............................................... 52
3.7 Penelitian Saat Ini dan Masa Depan ............................................ 52
3.7.1 Efisiensi Komputasi ........................................ 52
3.7.2 Pemilihan Kernel ............................................. .... 53
3.7.3 Analisis Generalisasi .............................................. 53
3.7.4 Pembelajaran SVM Struktural ........................................ 54
3.8 Latihan ................................................ ............... 55
Referensi ................................................. .................. 56

Support vector Machines (SVMs), termasuk support vector classifier (SVC) dan dukungan
port vector regressor (SVR), adalah salah satu metode yang paling kuat dan akurat di
semua algoritma penambangan data terkenal. SVM, yang awalnya dikembangkan oleh
Vapnik pada 1990-an [1-11], memiliki dasar teori yang kuat yang berakar pada statistik
teori belajar, hanya membutuhkan sedikitnya selusin contoh untuk pelatihan, dan sedang
sering tidak peka terhadap jumlah dimensi. Dalam dekade terakhir, SVM telah
dikembangkan dengan langkah cepat baik dalam teori maupun praktik.

https://translate.googleusercontent.com/translate_f 40/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

3.1 Mendukung Klasifikasi Vektor


Untuk tugas belajar terpisah dua kelas linier, tujuan SVC adalah untuk menemukan hyperplane
yang dapat memisahkan dua kelas sampel yang diberikan dengan margin maksimal yang telah
terbukti mampu menawarkan kemampuan generalisasi terbaik. Mengacu pada kemampuan generalisasi
fakta bahwa classifier tidak hanya memiliki kinerja klasifikasi yang baik (misalnya, akurasi)
pada data pelatihan, tetapi juga menjamin akurasi prediksi tinggi untuk data masa depan
dari distribusi yang sama dengan data pelatihan.

37

© 2009 oleh Taylor & Francis Group, LLC

Halaman 46

38 SVM: Mendukung Mesin Vektor

x2

x1
r*

r*
Hyperplane optimal
w x+b=0
T

Gambar 3.1 Ilustrasi hyperplane optimal dalam SVC untuk dipisahkan secara linear
kasus.

Secara intuitif, margin dapat didefinisikan sebagai jumlah ruang, atau pemisahan
dua kelas sebagaimana didefinisikan oleh hyperplane. Secara geometris, margin sesuai
ke jarak terpendek antara titik data terdekat ke titik mana pun di hyper-
pesawat. Gambar 3.1 menggambarkan konstruksi geometrik yang sesuai optimal
hyperplane dalam kondisi di atas untuk ruang input dua dimensi.
Misalkan w dan b menunjukkan vektor bobot dan bias dalam hyperplane optimal, masing-masing
secara aktif. Hyperplane yang sesuai dapat didefinisikan sebagai

wTx+b=0 (3.1)

Jarak geometri arah yang diinginkan dari sampel x ke optimal


hyperplane [12,13] adalah

g(x)
r= (3.2)
w

di mana g ( x ) = w T x + b adalah fungsi diskriminan [7] sebagaimana didefinisikan oleh hyperplane


dan juga disebut margin fungsional x yang diberikan w dan b .
Akibatnya, SVC bertujuan untuk menemukan parameter w dan b untuk hyperplane optimal
untuk memaksimalkan margin pemisahan [ ρ dalam Persamaan (3.5)] yang ditentukan

oleh jarak geometris terpendek r dari dua kelas, masing-masing, sehingga SVC
juga disebut classifier margin maksimal . Sekarang tanpa kehilangan keumuman, kami memperbaiki
margin fungsional [7] sama dengan 1; yaitu, diberikan satu set pelatihan { x i , y i } n
i=1∈

https://translate.googleusercontent.com/translate_f 41/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
R m × {± 1}, kita memiliki
w T x i + b ≥ 1 untuk y i = +1
(3.3)
w T x i + b ≤ −1 untuk y i = −1

© 2009 oleh Taylor & Francis Group, LLC

Halaman 47

3.1 Mendukung Klasifikasi Vektor 39

Poin data tertentu ( x i , y i ) yang persamaannya bagian pertama atau kedua


dalam Persamaan (3.3) puas disebut dukungan vektor , yang persis paling dekat
data menunjuk ke hyperplane optimal [13]. Kemudian, geometris yang sesuai

jarak dari vektor dukungan x ke hyperplane optimal adalah

⎢⎢⎨ 1
∗ jika y ∗ = +1
∗=
g(x ) w
r = (3.4)
w ⎢⎢⎝ 1
- jika y ∗ = −1
w

Dari Gambar 3.1, jelas margin pemisahan ρ adalah

∗=
2
ρ=2r (3.5)
w

Untuk memastikan bahwa hyperplane margin maksimum dapat ditemukan, SVC berupaya untuk
memaksimalkan ρ sehubungan dengan w dan b :

2
maks
b,b w (3.6)
( )
st i i wTxi+b ≥ 1 , i = 1 , ..., n

Setara,

1
min b2
b,b 2 (3.7)
st y i ( w T x i + b ) ≥ 1 , i = 1 , ..., n

Di sini, kita sering menggunakan w 2 alih-alih w untuk kenyamanan menjalankan


langkah optimasi selanjutnya.
Secara umum, kami memecahkan masalah optimisasi terbatas di Persamaan (3.7), yang diketahui
sebagai masalah utama , dengan menggunakan metode pengganda Lagrange. Kami membangun
fungsi Lagrange berikut:

∑n [ ( ) ]
1
L ( w , b, α ) = wTw- αi yi wTxi+b -1 (3.8)
2 i=1

dengan α i adalah pengganda Lagrange sehubungan dengan ketidaksetaraan ke- i .


Membedakan L ( w , b, α ) sehubungan dengan w dan b , dan mengatur hasilnya sama dengan
nol, kita mendapatkan dua kondisi optimalitas berikut:

⎢⎢⎨ ∂L ( w , b, α )
=0
∂b
(3.9)
⎢⎢⎝ ∂L ( w , b, α )
=0
∂b

https://translate.googleusercontent.com/translate_f 42/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

© 2009 oleh Taylor & Francis Group, LLC

Halaman 48

40 SVM: Mendukung Mesin Vektor

Lalu kita dapatkan



⎢⎢⎢⎢⎢⎨ ∑n
w= αiyixi
i=1

⎢⎢⎢⎢⎢⎝∑n (3.10)
αiyi=0
i=1

Mengganti Persamaan (3.10) ke dalam persamaan Fungsi Lagrange (3.8), bisa kita dapatkan
masalah ganda yang sesuai :

∑n ∑n ∑n
1
maks W(α)= αi- α i α j y saya y j x T
α saya x j
i=1
2 i=1 j=1

∑n
st αiyi=0
i=1
α i ≥ 0 , i = 1 , ..., n (3.11)

Dan pada saat yang sama, kondisi pelengkap Karush-Kuhn-Tucker adalah

[ ( ) ]
αi yi wTxi+b -1 = 0 , i = 1 , ..., n (3.12)

Akibatnya, hanya vektor dukungan ( x i , y i ) yang merupakan titik data terdekat ke


hyperplane optimal dan menentukan margin maksimal, sesuai dengan nol itu
α i s. Semua α i lainnya sama dengan nol.
Masalah ganda dalam Persamaan (3.11) adalah pemrograman kuadratik cembung khas
masalah optimasi . Dalam banyak kasus, ini dapat secara efisien menyatu ke optimal global
dengan mengadopsi beberapa teknik optimasi yang sesuai, seperti sekuensial minimal
algoritma optimasi (SMO) [7].
Setelah menentukan pengganda Lagrange optimal α ∗
∗ i, kita bisa menghitung secara optimal
vektor berat w dengan Persamaan (3.10):

∑n
∗= α∗
w (3.13)
iyixi
i=1

Kemudian, dengan memanfaatkan vektor dukungan positif x s , yang sesuai optimal



Bias b dapat ditulis sebagai [13]:

b∗ = 1 - w ∗Txs
untuk y s = +1 (3.14)

© 2009 oleh Taylor & Francis Group, LLC

https://translate.googleusercontent.com/translate_f 43/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

Halaman 49

3,2 SVC dengan Soft Margin dan Optimasi 41

3,2 SVC dengan Soft Margin dan Optimasi


Margin maksimal SVC, termasuk SVR berikut, mewakili awal yang asli
titik algoritma SVM. Namun, dalam banyak masalah di dunia nyata, mungkin juga demikian
kaku untuk mengharuskan semua titik dipisahkan secara linear, terutama di banyak kompleks
kasus klasifikasi tidak linier. Ketika sampel tidak dapat sepenuhnya dipisahkan secara linear
Jika naik, margin mungkin negatif. Dalam kasus-kasus ini, wilayah primal layak
masalah kosong, dan dengan demikian masalah ganda yang sesuai adalah tujuan tanpa batas
fungsi. Ini membuatnya tidak mungkin untuk menyelesaikan masalah optimisasi [7].
Untuk mengatasi masalah yang tidak terpisahkan ini, kita umumnya mengadopsi dua pendekatan. Pertama
satu adalah untuk mengendurkan ketidaksetaraan yang kaku dalam Persamaan (3.7) dan dengan demikian mengarah pada apa yang disebut
optimasi margin lunak. Metode lain adalah menerapkan trik kernel untuk linierisasi
masalah-masalah nonlinier. Pada bagian ini, kami pertama kali memperkenalkan optimasi margin lembut.
Akibatnya, relatif terhadap SVC margin lunak, kami biasanya nama SVC berasal
masalah optimasi [Persamaan (3,7)] margin keras SVC.
Bayangkan kasus di mana ada beberapa poin dari kelas yang berlawanan dicampur bersama
dalam data. Poin-poin ini mewakili kesalahan pelatihan yang ada bahkan untuk maksimum
margin hyperplane. Gagasan "margin lunak" bertujuan untuk memperluas algoritma SVC juga
bahwa hyperplane memungkinkan beberapa data berisik tersebut ada. Secara khusus, kendur
variabel ξ i diperkenalkan untuk menjelaskan jumlah pelanggaran klasifikasi oleh
penggolong:

∑n
1
min w2+C ξ saya
b,b 2
i=1
( )
st i i wTxi+b ≥ 1 - ξ i , ξ i ≥ 0 , i = 1 , ..., n (3.15)

di mana parameter C mengontrol trade-off antara kompleksitas mesin dan


jumlah poin yang tidak terpisahkan. Ini dapat dilihat sebagai parameter "regularisasi"
dan dipilih oleh pengguna baik secara eksperimen atau analitik.
Variabel slack ξ i memiliki penjelasan geometris langsung melalui jarak dari
contoh data kesalahan klasifikasi ke hyperplane. Jarak ini mengukur deviasi
dari sampel dari kondisi ideal pemisahan pola. Menggunakan metode yang sama
pengganda Lagrange yang diperkenalkan pada bagian di atas, dapat kita rumuskan
yang ganda masalah margin lembut seperti:

∑n ∑n ∑n
1
maks W(α)= αi- α i α j y saya y j x T
α saya x j
i=1
2 i=1 j=1

∑n
st αiyi=0
i=1

0 ≤ α i ≤ C, i = 1 , ..., n (3.16)

© 2009 oleh Taylor & Francis Group, LLC

https://translate.googleusercontent.com/translate_f 44/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

Halaman 50

42 SVM: Mendukung Mesin Vektor

Membandingkan Persamaan (3.11) dengan Persamaan (3.16), perlu diperhatikan bahwa slack
variabel ξ i s tidak muncul dalam masalah ganda. Perbedaan utama antara
kasing tidak dapat dipisahkan dan dipisahkan secara linear adalah bahwa kendala α i ≥ 0 diganti dengan
yang lebih ketat kendala 0 ≤ a i ≤ C . Kalau tidak, kedua kasus itu serupa,
termasuk perhitungan nilai-nilai optimal dari vektor bobot w dan bias b ,
terutama definisi vektor dukungan [7,13].
Kondisi komplementer Karush-Kuhn-Tucker dalam kasus yang tidak terpisahkan adalah
[ ( ) ]
αi yi wTxi+b -1+ξi = 0 , i = 1 , ..., n (3.17)

dan

γ i ξ i = 0 , i = 1 , ..., n (3.18)

di mana γ i adalah pengganda Lagrange yang sesuai dengan ξ i yang telah diperkenalkan
untuk menegakkan nonnegativitas dari ξ i [13]. Pada titik sadel di mana turunan dari
fungsi Lagrange untuk masalah primal sehubungan dengan ξ i adalah nol, evaluasi
dari hasil turunan

αi+γi=C (3.19)

Menggabungkan Persamaan (3.18) dan (3.19), kita miliki

ξ i = 0 jika α i <C (3.20)



Akibatnya, kita memiliki berat badan optimal w sebagai berikut:

∑n
w∗= α∗ (3.21)
iyixi
i=1


Bias optimal b dapat diperoleh dengan mengambil titik data apa pun ( x i , y i ) dalam pelatihan
atur yang kita miliki 0 <α ∗
i <C dan ξ i = 0 yang sesuai, dan menggunakan data
titik dalam Persamaan (3.17) [13].

3.3 Trik Kernel


Trik kernel adalah teknik lain yang umum digunakan untuk menyelesaikan linear yang tidak dapat dipisahkan
masalah. Masalahnya adalah untuk mendefinisikan fungsi kernel yang sesuai berdasarkan pada bagian dalam
produk antara data yang diberikan, sebagai transformasi data nonlinear dari input
ruang ke ruang fitur dengan dimensi yang lebih tinggi (bahkan tak terbatas) untuk membuat
masalah dipisahkan secara linear. Pembenaran yang mendasari dapat ditemukan di the- Cover
orem pada pemisahan pola; yaitu, masalah klasifikasi pola yang kompleks
dilemparkan dalam ruang dimensi tinggi nonlinier lebih mungkin terpisah secara linear
daripada di ruang dimensi rendah [13].

© 2009 oleh Taylor & Francis Group, LLC

Halaman 51

https://translate.googleusercontent.com/translate_f 45/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

3.3 Trik Kernel 43

Misalkan Φ : X → H menunjukkan transformasi nonlinier dari ruang input X ⊂ R m


ke ruang fitur H di mana masalahnya dapat dipisahkan secara linear. Kami dapat mendefinisikan
hyperplane optimal yang sesuai sebagai berikut:

wΦ T Φ ( x ) + b = 0 (3.22)

Tanpa kehilangan keumuman, kami menetapkan bias b = 0, dan menyederhanakan Persamaan (3.22) sebagai:

wΦ T Φ ( x ) = 0 (3.23)


Serupa dengan kasing linier yang dapat dipisahkan, kami mencari vektor bobot optimal di
ruang fitur berdasarkan metode pengali Lagrange yang serupa, dan dapatkan:

∑n
wΦ ∗ = α∗ (3.24)
iyiΦ ( xi)
i=1

Dengan demikian, hyperplane optimal yang dihitung dalam ruang fitur adalah:

∑n
α∗ (3.25)
iyiΦT( xi) Φ ( x ) = 0
i=1

Istilah Φ T ( x i ) Φ ( x ) mewakili produk dalam dari dua vektor, Φ ( x ) dan Φ ( x i ).


Oleh karena itu, di sini kami menyimpulkan fungsi kernel produk dalam:

Definisi 3.3.1 (Kernel Produk Dalam) [7]. Kernel adalah fungsi K ( x , x ), untuk semua
x , x ∈ X ⊂ R m , puas:

K(x,x)=ΦT(x)Φ(x) (3.26)

di mana Φ adalah transformasi dari ruang input X ke ruang fitur H .

Pentingnya kernel adalah bahwa kita dapat menggunakannya untuk membangun hy


perplane di ruang fitur tanpa harus mempertimbangkan bentuk konkret dari
transformasi Φ , yang biasanya tidak perlu dirumuskan secara eksplisit dalam
ruang fitur mension (bahkan tak terbatas). Alhasil, aplikasi kernel bisa
membuat algoritma tidak peka terhadap dimensi, sehingga untuk melatih classifier linier dalam
ruang dengan dimensi yang lebih tinggi untuk menyelesaikan masalah yang tidak dapat dipisahkan secara linier secara efisien. Ini adalah
dilakukan dengan menggunakan K ( x i , x ) dalam Persamaan (3.25) untuk menggantikan Φ T ( x i ) Φ ( x ); maka optimal
hyperplane adalah:

∑n
α∗ (3.27)
iyiK ( xi, x ) = 0
i=1

Seperti yang ditunjukkan, trik kernel adalah metode yang menarik untuk menyederhanakan komputasi.
Dengan demikian, kita dapat menghindari komputasi ruang fitur yang kompleks secara langsung, tidak hanya
dalam perhitungan produk dalam tetapi juga dalam desain pengklasifikasi.

© 2009 oleh Taylor & Francis Group, LLC

Halaman 52

https://translate.googleusercontent.com/translate_f 46/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
44 SVM: Mendukung Mesin Vektor

Namun, sebelum mengimplementasikan trik kernel, kita harus mempertimbangkan bagaimana


struct fungsi kernel, yaitu, fungsi kernel harus memenuhi karakteristik mana.
Untuk menjawab pertanyaan ini, pertama-tama kami perkenalkan teorema Mercer, yang menjadi ciri
properti dari fungsi K ( x , x ) ketika dianggap sebagai fungsi kernel sejati:

Teorema 3.3.2 Teorema Mercer [13] Misalkan K ( x , x ) menjadi simetris kontinu


kernel yang didefinisikan dalam interval tertutup a ≤ x ≤ b dan juga untuk x . Kernel
K ( x , x ) dapat diperluas dalam seri

∑∞
K(x,x)= λiϕi(x)ϕi(x) (3.28)
i=1

dengan koefisien positif, λ i > 0 untuk semua i. Agar ekspansi ini valid dan untuk itu
konvergen, perlu dan cukup bahwa kondisi
∫a ∫a

K(x,x)ψ(x)ψ(x)dxdx≥0 (3.29)
b b

berlaku untuk semua ψ (·) untuk itu


∫a
ψ2(x)dx<∞ (3.30)
b

Dalam terang teorema, kita dapat meringkas karakteristik yang paling berguna dalam
konstruksi kernel, yang disebut kernel Mercer. Artinya, untuk sembarang acak
himpunan bagian terbatas milik ruang input X , matriks yang sesuai dibangun
oleh fungsi kernel K ( x , x )
( ( )) n
K= K x i , x j i, j = 1 (3.31)

adalah matriks simetris dan semidefinit, yang disebut matriks Gram [7].
Di bawah persyaratan ini, masih ada beberapa kebebasan dalam memilih kernel
fungsi dalam praktek. Sebagai contoh, selain fungsi kernel linear, kita juga bisa mendefinisikan
fungsi kernel polinomial atau basis radial. Lebih banyak penelitian dalam beberapa tahun terakhir telah dilakukan
penelitian kernel yang berbeda untuk klasifikasi SVC dan banyak statistik lainnya
tes. Kami akan menyebutkan ini di bagian berikut.
Dalam Bagian 3.2, kami memperkenalkan soft margin SVC untuk menyelesaikan secara linear tidak terpisahkan
masalah. Dibandingkan dengan trik kernel, jelas bahwa kedua pendekatan tersebut sebenarnya
sekutu memecahkan masalah dengan cara yang berbeda. Margin lunak mengendurkan kendala
di ruang input asli dan memungkinkan beberapa kesalahan ada. Namun, ketika masalah
lem sangat tidak dapat dipisahkan secara linear dan kesalahan klasifikasi yang terlalu tinggi, lunak
margin tidak bisa dijalankan. Trik kernel memetakan data ke fitur dimensi tinggi
ruang secara implisit oleh fungsi kernel untuk membuat masalah yang tidak terpisahkan
dapat dipisahkan. Namun, sebenarnya trik kernel tidak selalu dapat menjamin masalah
menjadi benar-benar terpisah secara linier karena kompleksitas masalah. Karena itu,

© 2009 oleh Taylor & Francis Group, LLC

Halaman 53

3.3 Trik Kernel 45

dalam praktiknya kita sering mengintegrasikan mereka untuk mengerahkan keunggulan yang berbeda dari kedua teknologi tersebut.
niques dan selesaikan masalah linier yang tidak dapat dipisahkan dengan lebih efisien. Akibatnya,
bentuk ganda yang sesuai untuk masalah optimasi terbatas di kernel lunak

https://translate.googleusercontent.com/translate_f 47/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
margin SVC adalah sebagai berikut:
∑n ∑n ∑n
1
maks W(α)= αi- αiαjyiyjK(xi,xj)
α
2
i=1 i=1 j=1

∑n
st αiyi=0
i=1

0 ≤ α i ≤ C, i = 1 , ..., n (3.32)

Dengan mengikuti metode pengganda Lagrange yang serupa, kita dapat memperoleh yang optimal
penggolong:
∑n

f(x)= α∗ (3.33)
iyiK ( xi, x ) + b
i=1
∑n
∗= 1-
dimana b
i = 1 α ∗i y i K ( x i , x s ), untuk vektor dukungan positif y s = +1.

Contoh 3.3.3 (Contoh Ilustrasi) Masalah XOR sangat khas


masalah linear inseparabe dalam klasifikasi. Di sini kita menggunakannya untuk menggambarkan signifikansi
SVR soft margin dikombinasikan dengan trik kernel dalam klasifikasi kompleks
masalah. Dataset XOR dua dimensi dapat dibuat secara acak di bawah empat
distribusi Gaussian yang berbeda, di mana "*" dan "•" menunjukkan sampel dalam keduanya
kelas, masing-masing.
Seperti ditunjukkan dalam Gambar 3.2 sebuah , hard marjin SVC di kernel linear sepenuhnya
gagal dalam masalah XOR. Batas linear tidak dapat membedakan kedua kelas dan
dapat dilihat untuk membagi semua sampel menjadi dua bagian. Ini jelas tidak dapat mencapai
tujuan klasifikasi untuk masalah tersebut. Akibatnya, kami menggunakan SVC soft margin
dikombinasikan dengan kernel berbasis radial untuk memecahkan masalah
( )
2
x-xi
K ( x i , x ) = exp -
σ2

Kami memperbaiki parameter regularisasi C = 1 dan parameter kernel atau bandwidth


σ = 1. Batas diskriminan yang sesuai disajikan pada Gambar 3.2 b . Oleh
menggunakan trik kernel, batas tidak lagi linier, karena sekarang hanya mencakup satu
kelas. Dengan menilai sampel di dalam atau di luar batas, penggolong bisa
terlihat untuk mengklasifikasikan sampel secara akurat.

Contoh 3.3.4 Aplikasi Nyata Contoh algoritma SVC telah banyak digunakan
menghujani banyak bidang ilmiah penting, seperti bioinformatika, fisika, kimia,
iatrologi, astronomi, dan sebagainya. Di sini kami dengan hati-hati memilih lima dataset dalam iatrology
area dari Repositori Pembelajaran Mesin UCI (http://ida.first.fraunhofer.de/
proyek / bench / benchmarks.htm) untuk menggambarkan aplikasi nyata SVC. Kelima

© 2009 oleh Taylor & Francis Group, LLC

Halaman 54

46 SVM: Mendukung Mesin Vektor

12

10

https://translate.googleusercontent.com/translate_f 48/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
y 2

‒2
‒4
‒6
‒8
‒8 ‒6 ‒4 ‒2 0 2 4 6 8 10 12
k

(Sebuah)

12

10

y 2

‒2
‒4
‒6
‒8
‒8 ‒6 ‒4 ‒2 0 2 4 6 8 10 12
k

(b)

Gambar 3.2 Batas diskriminatif SVC dalam masalah XOR. (a) Yang sulit
margin SVC di kernel linear. (B) SVC margin lunak dalam kernel basis radial.

© 2009 oleh Taylor & Francis Group, LLC

Halaman 55

3.4 Yayasan Teoritis 47

TABEL 3.1 Hasil Algoritma SVC untuk Lima Set Data


Himpunan data
Tes Pelatihan Dimensi C σ SV Ketepatan
Kanker B. 9 200 77 1.519e + 01 5.000e + 01 138.80 0.7396 ± 4.74
Diabetes 8 468 300 1.500e + 01 2.000e + 01 308.60 0.7647 ± 1.73
Jantung 13 170 100 3.162e + 00 1.200e + 02 86.00 0.8405 ± 3.26
Tiroid 5 140 75 1.000e + 01 3.000e + 00 45.80 0.9520 ± 2.19
Sambatan 60 1000 2175 1.000e + 03 7.000e + 01 762.40 0.8912 ± 0.66

dataset, masing-masing, adalah B.-kanker (kanker payudara data Wisconsin), diabetes (Pima
Data diabetes India), jantung (data jantung), tiroid (data penyakit tiroid), dan sambungan

https://translate.googleusercontent.com/translate_f 49/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
(Data urutan gen sambungan-junction).
Dua hingga empat kolom pada Tabel 3.1 merangkum beberapa karakteristik tentang
dataset, di mana Dimensi menunjukkan dimensi sampel, dan Pelatihan dan
Pengujian menunjukkan jumlah pelatihan dan sampel pengujian dalam setiap dataset. Kita
melakukan 100 kali pengulangan secara mandiri dan 20 kali berturut-turut, untuk empat yang pertama
dataset dan splice dataset, yang telah ditawarkan oleh database. Kemudian av-
erage hasil eksperimen dari algoritma SVC telah dilaporkan di lima ke
delapan kolom pada Tabel 3.1. C dan σ adalah regularisasi optimal dan parameter kernel
eters dipilih oleh validasi silang. SV adalah jumlah rata-rata vektor dukungan.
Akurasi menunjukkan akurasi dan varian klasifikasi yang sesuai.
Seperti yang ditunjukkan pada Tabel 3.1, nilai SV biasanya kurang dari angka
sampel pelatihan, yang memvalidasi tingkat algoritma yang baik. Selanjutnya,
akurasi tinggi menunjukkan kinerja klasifikasi yang baik; sementara itu, relatif
varian rendah menunjukkan stabilitas SVC yang baik dalam aplikasi nyata.

3.4 Yayasan Teoritis


Pada bagian di atas, kami telah menjelaskan algoritma SVC baik secara linear
kasing dan kasing tak terpisahkan. Pengenalan trik kernel semakin meningkat
kinerja ekspresi dari classifier, yang dapat menjaga properti linear yang melekat
masuk dalam ruang fitur dimensi tinggi dan menghindari kutukan dimensi yang mungkin .
Pada bagian ini, kita akan membahas landasan teoritis SVC. Oleh Vapnik-
Teori Chervonenkis (VC) [4,5], pertama-tama kita akan menyajikan batasan kesalahan umum linear
classifier yang dapat memandu secara global bagaimana mengontrol kompleksitas classifier. Kami akan
kemudian menyimpulkan batas generalisasi konkret dari SVC untuk menjelaskan signifikansi
dari margin maksimum dalam SVC untuk menjamin kapasitas generalisasi yang baik dari
algoritme.
Teori VC menggeneralisasikan pembelajaran yang mungkin kira-kira benar (PAC)
model dalam pembelajaran statistik dan langsung mengarah ke proposal SVM. Itu menyediakan

© 2009 oleh Taylor & Francis Group, LLC

Halaman 56

48 SVM: Mendukung Mesin Vektor

batasan generalisasi analitis yang dapat digunakan untuk memperkirakan kesalahan generalisasi
dengan mendefinisikan ukuran kompleksitas baru, yang dikenal sebagai dimensi VC [14,15].
Konkretnya, asumsikan bahwa data pelatihan dan pengujian dihasilkan sesuai dengan yang diperbaiki
tetapi distribusi probabilitas D tidak diketahui , kami mendefinisikan kesalahan err D ( h ) klasifikasi
fungsi h pada D sebagai

err D ( h ) = D {( x , y ): h ( x ) = y } (3.34)

yang mengukur kesalahan yang diharapkan [7].


Model PAC mengikat distribusi variabel acak kesalahan generalisasi
err D ( h s ) dan sesuai PAC terikat memiliki bentuk ε = ε ( n, H, δ ); itu adalah
Model PAC menganggap bahwa dalam hipotesis h s , probabilitas kesalahan dalam
data pelatihan S memuaskan [7]:

D n { S : err D ( h s ) > ε ( n, H, δ )} <δ (3.35)

Jika ada | H | hipotesis memiliki kesalahan besar dalam himpunan S , maka batas PAC adalah

1 |H|

https://translate.googleusercontent.com/translate_f 50/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
ε = ε ( n, H, δ ) = n dalam
δ (3.36)

PAC terikat menyajikan bahwa fungsi kelas H dapat secara langsung mempengaruhi kesalahan
terikat. Teori VC selanjutnya menggeneralisasikan PAC yang terikat pada kelas fungsi tanpa batas
dan memperkenalkan konsep dimensi VC d . Dimensi VC d diukur
jumlah maksimum data pelatihan tempat kelas fungsi masih dapat digunakan
belajar dengan sempurna, dengan memperoleh tingkat kesalahan nol pada data pelatihan, untuk setiap tugas
label kelas ke titik-titik ini. Kemudian PAC umum digeneralisasikan dari sebuah classifier linier
dapat digambarkan sebagai berikut:

Teorema 3.4.1 Vapnik dan Chervonenkis [7] Biarkan H menunjukkan ruang hipotesis
yang dimensi VC-nya d. Untuk distribusi probabilitas acak D pada X × {−1 , 1} ,
dengan probabilitas 1 - δ, kesalahan generalisasi hipotesis acak h ∈ H pada
set pelatihan S tidak lebih dari
( )
2 2 2 id
err D ( h ) ≤ ε ( n, H, δ ) = catatan + d log (3.37)
n δ d

dalam kondisi bahwa d ≤ n, n> 2 / ε.

Dalam terang teorema, istilah pertama dari Persamaan (3.37) adalah kesalahan pelatihan, dan
istilah kedua sebanding dengan dimensi VC d . Jadi, teorema menunjukkan hal itu
jika kita dapat meminimalkan d , kita dapat meminimalkan kesalahan di masa depan, selama hipotesisnya h
mengontrol kesalahan risiko empiris dalam tingkat kecil.
Teorema 3.4.1 memberikan batasan kesalahan umum classifier linier dan memberikan
panduan global tentang cara mengontrol kerumitan classifier. Berikut ini, kami akan
menggeneralisasi batasan untuk algoritma SVC dan menyimpulkan general- terkait
asi kesalahan terikat dari SVC.

© 2009 oleh Taylor & Francis Group, LLC

Halaman 57

3.4 Yayasan Teoritis 49

Kami pertama kali memberikan definisi formal tentang margin:

Definisi 3.4.2 (Margin) [7]. Pertimbangkan untuk menggunakan fungsi nilai riil kelas F ke
mengklasifikasikan dalam ruang input X , dan nilai ambang adalah 0. Kami mendefinisikan margin
contoh ( x i , y i ) ∈ X × {−1 , 1} ke fungsi atau hyperplane f ∈ F sebagai:
γi=yif(xi) (3.38)

Perhatikan bahwa γ i > 0 menunjukkan bahwa contoh ( x i , y i ) diklasifikasikan dengan benar. Marginal
distribusi f yang sesuai dengan set pelatihan S adalah distribusi marginal dari
contoh dalam S . Minimum dari distribusi marginal disebut margin m S ( f )
dari f sesuai dengan training set S .

Meskipun dimensi VC d secara teori bermakna, dalam praktiknya d adalah


kali tak terbatas dan dengan demikian ikatan generalisasi tidak dapat diterapkan pada banyak masalah nyata.
Sebagai konsekuensinya, kami memperkenalkan ukuran yang serupa terkait dengan margin dalam SVC sebagai gantinya
dari dimensi VC tradisional:

Definisi 3.4.3 (Cover of Function Class) [7]. Biarkan F menjadi fungsi nilai nyata
kelas di X . Untuk serangkaian input data

S = { x 1 , x 2 , ..., x n }

The γ -cover dari F adalah terbatas fungsi set B , sehingga untuk semua f ∈ F , yang ada
g ∈ B , ada maks 1≤ i ≤ n (| f ( x i ) - g ( x i ) |) <γ . N ( F, S, γ ) menunjukkan ukuran minimal
https://translate.googleusercontent.com/translate_f 51/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
dari penutup. Jumlah data yang dicakup F adalah

N ( F, n, γ ) = maks N ( F, S, γ ) (3.39)
S∈Xn

Kemudian kita menggunakan N ( F, n, γ ) untuk merumuskan kembali Teorema 3.4.1 untuk kasus yang dihipotesiskan.
ESIS f adalah seperti yang m S ( f ) = γ pada training set S .

Teorema 3.4.4 Teorema VC dengan Margin [7] Pertimbangkan fungsi nilai riil yang dibatasi
+
ruang tion F dan perbaiki γ ∈ R . Untuk setiap distribusi probabilitas D pada X × {−1 , 1} , dengan
probabilitas 1 - δ, kesalahan generalisasi dari hipotesis f ∈ F pada set pelatihan
S, yang memiliki margin m S ( f ) ≥ gamma, memenuhi
( )
2 2
err D ( f ) ≤ ε ( n, F, δ, γ ) = catatan + log N ( F, 2 n, γ / 2) (3.40)
n δ

dengan syarat bahwa n> 2 / ε.

Teorema 3.4.4 menunjukkan bagaimana menggunakan m S ( f ) untuk terikat kesalahan generalisasi yang
dapat diperoleh dengan data pelatihan. N ( F, 2 n, γ / 2) dapat dilihat sebagai bentuk lain
dari dimensi VC, di mana lebih besar γ sesuai dengan yang lebih kecil N ( F, 2 n, γ / 2). Sebagai
hasilnya, kami dapat menarik kesimpulan bahwa margin yang besar dapat memastikan generalisasi yang baik
kinerja classifier untuk sampel ukuran kecil.
Meskipun Teorema 3.4.4 adalah generalisasi dari Teorema 3.4.1, nilai N ( F, 2 n,
γ / 2) tidak dapat diukur secara efisien dalam masalah dunia nyata. Akibatnya, kita
lebih lanjut menyimpulkan kesalahan lebih konkret terikat untuk algoritma SVC spesifik:

© 2009 oleh Taylor & Francis Group, LLC

Halaman 58

50 SVM: Mendukung Mesin Vektor

Teorema 3.4.5 Batas Generalisasi SVC [7] Asumsikan bahwa ruang input X adalah
suatu hyperball dalam ruang produk dalam H yang jari-jarinya adalah R, X = { x ∈ H : x H ≤ R } .
Pertimbangkan kelas fungsi:
{ }
= x↦→wTx:wH≤1,x∈X

+
Perbaiki γ ∈ R. Untuk distribusi probabilitas D pada X × {−1 , 1} , dengan probabilitas 1 - δ,
kesalahan generalisasi suatu hipotesis f ∈ pada set pelatihan S, yang memiliki
margin m S ( f ) ≥ γ, tidak lebih dari
( )
2 4 64 R 2 enγ 128 nR 2
err D ( f ) ≤ ε ( n,, δ, γ ) = catatan +
n δ γ 2 catatan
4R
catatan γ 2 (3.41)

dalam kondisi bahwa n> 2 / ε, 64 R 2 / γ 2 <n.

Perlu dicatat bahwa dimensi ruang input tidak muncul dalam batas.
Oleh karena itu, batas dapat digunakan dalam ruang dimensi tak terbatas, yang menunjukkan itu
batas dapat mengatasi kutukan dimensi. Selanjutnya saat sampel
mendistribusikan dengan baik, terikat dapat menjamin dalam probabilitas tinggi bahwa ada yang kecil
kesalahan untuk sampel pengujian acak. Dalam hal ini, margin γ dapat dilihat sebagai a
mengukur tentang kualitas distribusi sampel, dan dengan demikian dapat mengukur lebih lanjut
kinerja generalisasi dari algoritma SVC [7].

3.5 Mendukung Regulator Vektor


https://translate.googleusercontent.com/translate_f 52/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
Hingga saat ini, kami telah fokus pada metode SVC untuk tugas klasifikasi. Di
bagian ini, kami akan mempertimbangkan menggunakan SVM untuk menyelesaikan masalah regresi nonlinier ,
demikian disebut SVR. Mirip dengan algoritma klasifikasi, kami juga berharap untuk mengeksplorasi
karakteristik utama dari metode margin maksimum dengan mengeksploitasi nonlinear
fungsi, yang dapat diperoleh dengan menggunakan metode pembelajaran linear dan trik kernel.
Selain itu, algoritma yang sesuai harus efisien di bawah dimensi tinggi [7].
Namun, untuk masalah regresi, penaksir kuadrat terkecil tradisional mungkin tidak
cukup layak dengan adanya outliers, menghasilkan regressor untuk melakukan
buruk ketika distribusi yang mendasari kebisingan aditif memiliki ekor yang panjang [13].
Jadi kita perlu mengembangkan estimator kuat yang tidak sensitif terhadap perubahan kecil dalam model;
yaitu, kami mencari apa yang disebut fungsi kerugian sensitif - ε .

Definisi 3.5.1 ( ε -Insensitive Loss Function ) [7]


ε
Biarkan f menjadi fungsi bernilai nyata dalam X . The ε kerugian -insensitive fungsi L ( x , y, f ) adalah
didefinisikan sebagai:

ε
L. ( x , y, f ) = | y - f ( x ) | ε = maks (0 , | y - f ( x ) | - ε ) (3.42)

© 2009 oleh Taylor & Francis Group, LLC

Halaman 59

3.5 Mendukung Regulator Vektor 51

ε
Perhatikan bahwa ( x L, y, f ) = 0 jika nilai absolut dari penyimpangan tentang estimator
output f ( x ) dari respons yang diinginkan y kurang dari ε atau sama dengan nol. Itu sama dengan
nilai absolut dari deviasi dikurangi ε sebaliknya.

Sekarang pertimbangkan model regresi nonlinier


y=g(x)+v (3.43)

di mana istilah noise tambahan v secara statistik tidak tergantung dari vektor input x . Itu
Fungsi g (·) dan statistik kebisingan v tidak diketahui. Semua yang kami miliki tersedia
satu set data pelatihan
S = {( x 1 , y 1 ) , ..., ( x n , y n )}

dan kelas fungsi


F = { f ( x ) = w T x + b, w ∈ R m , b ∈ R }

Tujuannya adalah untuk memilih parameter yang sesuai w dan b , sehingga membuat f ( x )
perkiraan fungsi target yang tidak diketahui g ( x ). Masalah utama dapat diwakili
sebagai berikut:
∑n
1
min w2+C (Ξi+ξi)
b,b 2 i=1
( )
st wTxi+b -yi≤ε+ξi, i = 1 , ..., n
( )
yi- wTxi+b ≤ε+ξi, i = 1 , ..., n
ξi,ξi≥0 i = 1 , ..., n (3.44)

Menggunakan metode serupa dari pengganda Lagrange, masalah ganda adalah:


∑n ∑n ∑n ∑n
1
maks W ( α, α ) = yi(αi-αi)-ε (Αi+αi)- (Αi-αi)(αj-αj)xT
α, α saya x j
i=1 i=1
2 i=1 j=1

∑n
st (Αi-αi)=0
i=1

https://translate.googleusercontent.com/translate_f 53/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
0 ≤ α i , α i ≤ C, i = 1 , ..., n (3,45)
Kami selanjutnya dapat memperkenalkan kernel produk dalam dalam masalah optimasi
Persamaan (3,45), dan perluas algoritma regresi ke ruang fitur untuk membuatnya
fungsi nonlinear dapat diperoleh dengan menggunakan mesin pembelajaran linier
di ruang kernel.
Dibandingkan dengan SVC, SVR memiliki parameter bebas tambahan ε . Dua bagian gratis
rameter ε dan C mengontrol dimensi VC dari fungsi aproksimasi
∑n
f(x)=wTx= (Αi-αi)K(xi,x) (3.46)
i=1

ketika kita mengatur bias b = 0. ε dan C harus dipilih oleh pengguna dan secara langsung
mempengaruhi kontrol kompleksitas untuk regresi. Cara memilih ε dan C secara bersamaan
untuk mendapatkan fungsi perkiraan yang lebih baik adalah masalah penelitian terbuka.

© 2009 oleh Taylor & Francis Group, LLC

Halaman 60

52 SVM: Mendukung Mesin Vektor

3.6 Implementasi Perangkat Lunak


LibSVM [16] dan SVMlight [17] adalah dua perangkat lunak yang paling terkenal
implementasi algoritma SVM.
LibSVM tidak hanya menyediakan bahasa kompiler yang digunakan dalam sistem Windows, tetapi juga
juga kode sumber C ++ dan Java yang mudah untuk diperbaiki, direvisi, dan diterapkan di
sistem operasi lain. Khususnya, LibSVM memiliki parame merdu yang relatif lebih sedikit
ters terlibat dalam algoritma SVM daripada perangkat lunak lain dan menyediakan banyak default
parameter untuk menyelesaikan masalah aplikasi nyata secara efektif.
SVMlight adalah implementasi lain dalam bahasa C. Ini mengadopsi set efisien se
Teknik pemilihan berdasarkan keturunan layak yang paling curam, dan dua komputasi yang efektif
kebijakan “Shrinking” dan “Caching” dari evaluasi kernel. SVMlight terutama termasuk
dua program C: pembelajaran SVM, digunakan untuk mempelajari sampel pelatihan dan melatih perusahaan
menanggapi classifier, dan mengklasifikasi SVM, digunakan untuk mengklasifikasikan sampel pengujian. Itu
perangkat lunak juga menyediakan dua metode estimasi efisien untuk menilai
kinerja isasi: estimasi XiAlpha, dihitung pada dasarnya tidak ada komputasi
biaya tetapi bias secara konservatif, dan pengujian Leave-one-out, hampir tidak bias.
Selain itu, ada banyak kotak peralatan pembelajaran mesin yang lengkap, termasuk
Algoritma SVM, seperti Torch (dalam C ++), Spider (dalam M ATLAB ), dan Weka (di Jawa),
yang semuanya tersedia di http://www.kernel-machines.org.

3.7 Penelitian Saat Ini dan Masa Depan


Dalam dekade terakhir, SVM telah dikembangkan dengan sangat cepat baik secara teori maupun in
praktek. Masih banyak pekerjaan mendatang. Di bagian ini, kami menyebutkan beberapa mata pelajaran utama
arah penelitian di mana kemajuan besar sedang dibuat dan banyak masalah penelitian
masih terbuka.

3.7.1 Efisiensi Komputasi


Salah satu kelemahan awal dari SVM adalah kompleksitas komputasinya yang mahal
dalam fase pelatihan, yang mengarah pada algoritma yang tidak dapat diterapkan dalam dataset besar.

https://translate.googleusercontent.com/translate_f 54/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
Namun, masalah ini sedang diselesaikan dengan sukses besar. Salah satu pendekatan adalah mematahkan
masalah optimasi besar menjadi serangkaian masalah kecil, di mana setiap masalah
hanya melibatkan beberapa variabel yang dipilih dengan cermat sehingga optimisasi dapat dilakukan
dilakukan secara efisien. Proses ini berulang hingga semua masalah optimasi terurai
diselesaikan dengan sukses.
Pendekatan yang lebih baru adalah dengan mempertimbangkan masalah belajar SVM sebagai
menemukan perkiraan bola penutup minimum dari sekumpulan instance [18–21]. Ini
contoh, ketika dipetakan ke ruang dimensi- N , mewakili set inti yang bisa
digunakan untuk membangun perkiraan ke bola penutup minimum. Memecahkan SVM

© 2009 oleh Taylor & Francis Group, LLC

Halaman 61

3.7 Penelitian Saat Ini dan Masa Depan 53

mempelajari masalah pada perangkat inti ini dapat menghasilkan solusi perkiraan yang baik di
kecepatan sangat cepat. Misalnya, mesin vektor inti [18] dan vektor bola selanjutnya
mesin [21] dapat mempelajari SVM untuk jutaan data dalam hitungan detik.

3.7.2 Pemilihan Kernel


Dalam kernel SVM, pemilihan fungsi kernel umumnya diperlukan untuk memuaskan
teorema Mercer. Oleh karena itu, fungsi kernel yang umum melibatkan tiga jenis, yaitu
adalah, fungsi sigmoid, polinomial, dan basis radial, yang terkadang dapat membatasi
penerapan trik kernel. Baru-baru ini, Pekalska et al. memberikan pandangan baru untuk
merancang fungsi kernel berdasarkan pemetaan hubungan kedekatan umum [22]. Itu
Fungsi kernel baru tidak perlu dipenuhi oleh kondisi Mercer juga tidak
terbatas hanya pada satu ruang fitur, dan menunjukkan kinerja klasifikasi yang lebih baik daripada
kernel Mercer umum secara eksperimental. Namun, landasan teoretis PT
kernel generalisasi yang baru perlu penelitian lebih lanjut.
Selain itu, pendekatan populer lainnya adalah multiple kernel learning yang mempertimbangkan
ada lebih dari satu kernel; melalui kombinasi seseorang dapat mencapai hasil yang lebih baik
[23–29]. Ini mirip dengan menggunakan ensemble kernel. Dengan menetapkan objek yang tepat
Fungsi-fungsi ini, pemilihan parameter kernel yang lebih baik dapat dilakukan untuk memungkinkan campuran
kernel.

3.7.3 Analisis Generalisasi


Kami terbiasa menggunakan dimensi VC untuk memperkirakan kesalahan generalisasi.
atau terikat pada mesin kernel. Namun, ikatan melibatkan kompleksitas yang tetap
penalti yang tidak tergantung pada data pelatihan, yang akibatnya, tidak bisa
dibuat secara universal efektif [30]. Untuk mengatasi masalah ini, kompleksitas Rademacher adalah
diperkenalkan sebagai alternatif untuk mengevaluasi kompleksitas classifier bukan
Dimensi VC klasik [31-34], yang didasarkan pada intuisi yang dapat kita ukur
kapasitas (atau kompleksitas) dari classifier dengan kemampuannya untuk menyesuaikan data acak. Itu didefinisikan
sebagai berikut:

Definisi 3.7.1 (Kompleksitas Rademacher) [35]. Untuk sampel S =


{ x 1 , ..., x n } dihasilkan oleh distribusi D pada set X dan kelas fungsi nilai riil
F dengan domain X , kompleksitas Rademacher empiris dari F adalah variabel acak
[ ∣ ∥ ]
∣ ∥
∣ 2 ∑
n

Rn(F)=E sup ∣ σ i f ( x i )∥ x 1 , ..., x n (3.47)
f∈F
∣ n ∥
i=1

di mana = { σ 1 , ..., σ n } adalah seragam independen {± 1} -nilai (Rademacher) acak


variabel. Kompleksitas Rademacher dari F adalah
https://translate.googleusercontent.com/translate_f 55/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
[ ∣ ∣]
∣ ∑n ∣
∣2 ∣
R n ( F ) = E S [ R n ( F )] = E S sup ∣∣ σ i f ( x i )∣ (3.48)
f∈F n ∣
i=1

© 2009 oleh Taylor & Francis Group, LLC

Halaman 62

54 SVM: Mendukung Mesin Vektor

Bagian dukungan di dalam rumus harapan mengukur korelasi terbaik yang bisa
dapat ditemukan antara fungsi kelas dan label acak. Selanjutnya dalam
mesin kernel, kita dapat memperoleh batas atas kompleksitas Rademacher:

Teorema 3.7.2 Analisis Kompleksitas [35]. Jika k : X × X → R adalah kernel, dan


S = { x 1 , ..., x n } adalah contoh poin dari X , kemudian Rademacher empiris
kompleksitas dari classifier F B memenuhi


√ ∑n √
2B√ 2B
Rn(FB)≤ k(xi,xi)= tr ( K ) (3.49)
n i=1
n

di mana B adalah batas bobot w dalam classifier.

Patut dicatat bahwa batasan kompleksitas Rademacher hanya melibatkan


jejak matriks kernel yang sesuai, yang ditentukan oleh pelatihan nyata
data. Ini lebih layak untuk digunakan daripada dimensi VC tradisional untuk mengontrol
kompleksitas dari sebuah classifier serta memperkirakan kinerja generalisasi.

3.7.4 Pembelajaran SVM Struktural


Maksimalisasi margin adalah motivasi awal dari algoritma SVM [36]. Menipu-
secara berurutan, SVM (SVC) biasanya lebih fokus pada pemisahan antara
kelas sampel tetapi tidak cukup menggunakan informasi distribusi data sebelumnya
dalam kelas. Teorema "No Free Lunch" yang terkenal [12] menunjukkan hal itu
tidak ada metode klasifikasi pola yang secara inheren lebih unggul dari yang lain,
atau bahkan menebak secara acak tanpa menggunakan informasi tambahan. Ini adalah tipe
masalah, informasi sebelumnya, dan jumlah sampel pelatihan yang menentukan
bentuk classifier untuk diterapkan. Bahkan, sesuai dengan berbagai masalah dunia nyata,
kelas yang berbeda mungkin memiliki struktur data dasar yang berbeda. Klasifikasi harus disesuaikan
hanya batas-batas diskriminan agar sesuai dengan struktur yang penting untuk klasifikasi,
terutama untuk kapasitas generalisasi dari classifier. Namun tradisional
SVM tidak membedakan struktur, dan keputusan hyperplane yang diambil terletak
tepat di tengah-tengah vektor dukungan [36,37], yang dapat menyebabkan a
classifier tidak optimal dalam masalah dunia nyata.
Baru-baru ini, beberapa algoritma telah dikembangkan untuk memberikan perhatian lebih kepada struk
informasi budaya daripada SVM tradisional. Mereka memberikan pandangan baru untuk mendesain a
classifier, di mana classifier dapat peka terhadap struktur distribusi data
tion. Algoritma ini terutama dibagi menjadi dua pendekatan. Pendekatan pertama adalah
melalui bermacam-macam pembelajaran. Diasumsikan bahwa data benar-benar hidup di submanifold di
ruang input, dan algoritma yang paling khas melibatkan Laplacian support vector ma-
chines (LapSVM) [38,39]. Kita dapat membangun LapSVM terlebih dahulu melalui grafik Laplacian
di setiap kelas. Kemudian kami memperkenalkan struktur bermacam-macam data di dalam perusahaan.
meluas matriks Laplacian ke dalam kerangka kerja tradisional SVM sebagai tambahan
istilah.

https://translate.googleusercontent.com/translate_f 56/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

© 2009 oleh Taylor & Francis Group, LLC

Halaman 63

3.8 Latihan 55

Pendekatan kedua adalah dengan mengeksploitasi algoritma clustering [40] dengan mengasumsikan itu
data berisi beberapa kluster yang menyimpan informasi distribusi sebelumnya. Ini
asumsi tampaknya lebih umum daripada asumsi bermacam-macam, yang sebenarnya telah memimpin
ke beberapa mesin margin besar yang populer. Pendekatan terbaru dikenal sebagai terstruktur
mesin margin besar (SLMM) [37]. SLMM menerapkan teknik pengelompokan untuk ditangkap
informasi struktural di kelas yang berbeda terlebih dahulu. Itu kemudian menggunakan Mahalanobis
jarak sebagai pengukur jarak dari sampel ke hyperplanes keputusan, sebagai gantinya
jarak Euclidean tradisional, untuk memperkenalkan informasi struktur yang terlibat
ke dalam kendala. Beberapa mesin margin besar yang populer, seperti vektor dukungan
mesin mesin probabilitas minimum (MPM) [41], dan mesin margin maksimum
(M 4 ) [36], semuanya dapat dipandang sebagai kasus khusus SLMM. Secara eksperimental, SLMM
telah menunjukkan kinerja klasifikasi yang lebih baik. Namun, karena masalah optimasi
SLMM diformulasikan sebagai pemrograman urutan kerucut urutan kedua (SOCP)
daripada QP di SVM, SLMM memiliki biaya komputasi yang jauh lebih tinggi dalam waktu pelatihan
dibandingkan dengan SVM tradisional. Selain itu, tidak mudah untuk digeneralisasi ke
masalah skala atau multikelas. Akibatnya, mesin vektor dukungan struktural baru
(SSVM) dikembangkan pada [42] untuk mengeksploitasi kerangka kerja klasik SVM daripada
sebagai kendala dalam SLMM. Akibatnya, masalah optimasi yang sesuai bisa
masih diselesaikan oleh QP seperti pada SVM, dan menjaga solusi tidak hanya sparsity tetapi juga
skalabilitas. Selanjutnya, SSVM telah terbukti secara teoritis dan empiris
lebih baik dalam generalisasi daripada SVM dan SLMM.

3.8 Latihan
1. Pertimbangkan masalah klasifikasi biner sederhana:

c 1 : (1 , 1) T (−1 , 3) T (2 , 6) T

c 2 : (−1 , −2) T (1 , −3) T (−5 , −7) T

(A) Hitung hyperplane optimal dan margin geometris.


(B) Tunjukkan vektor dukungan.
(c) Dengan menggunakan metode pengganda Lagrange, hitung solusi dalam dual
ruang.
2. Pertimbangkan masalah klasifikasi biner lainnya:

c 1 : (1 , 1) T (3 , 7) T (5 , 9) T
c 2 : (−1 , −2) T (1 , 6) T (2 , −1) T

Gunakan SVC margin lunak untuk membangun hyperplane optimal dan menghitung
solusi yang sesuai di ruang ganda.
3. Bangun masalah XOR sederhana yang mirip dengan Contoh 3.3.3, dan bahas caranya
pemilihan parameter kernel dalam basis radial dapat mempengaruhi
kinerja klasifikasi.

© 2009 oleh Taylor & Francis Group, LLC

https://translate.googleusercontent.com/translate_f 57/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

Halaman 64

56 SVM: Mendukung Mesin Vektor

+
4. Biarkan K 1 dan K 2 menjadi kernel di X × X , X ⊆ R n , a ∈ R , f (·) menjadi nilai riil
fungsi dalam X :

φ:X→Rm

di mana K 3 adalah kernel di R m × R m , dan B adalah n × n simetris semidefinite


matriks. Buktikan fungsi-fungsi berikut adalah fungsi kernel:

(a) K ( x , z ) = K 1 ( x , z ) + K 2 ( x , z )
(b) K ( x , z ) = aK 1 ( x , z )
(c) K 1 ( x , z ) K 2 ( x , z )
(d) K ( x , z ) = f ( x ) f ( z )
(e) K ( x , z ) = K 3 ( φ ( x ) , φ ( z ))
(f) K ( x , z ) = x T Bz

5. Diskusikan batasan generalisasi SVR yang berasal dari teorema VC.


6. Kami telah membahas penggunaan SVC untuk masalah klasifikasi biner. Bahas
bagaimana memperluas SVC untuk memecahkan masalah klasifikasi multikelas.
7. Diskusikan sifat robustness dari algoritma SVM.
8. Diskusikan kasus-kasus dimana SVC tidak cukup menggunakan distribusi data sebelumnya
informasi dalam kelas, di mana hyperplane diskriminan yang dihasilkan berada
tepat di tengah-tengah vektor dukungan.

Referensi
[1] V. Vapnik. Sifat Teori Pembelajaran Statistik , Springer Verlag, 1995.

[2] V. Vapnik. Teori Belajar Statistik , Wiley, 1998.

[3] B. Schölkopf, CJC Burges, dan AJ Smola. Kemajuan dalam Metode Kernel—
Mendukung Pembelajaran Vektor , MIT Press, 1999.

[4] O. Chapelle, P. Haffner, dan V. Vapnik. Mendukung mesin vektor untuk histogram-
klasifikasi gambar berdasarkan. IEEE Trans. pada Neural Networks , vol. 10 (3.5),
1055–1064, 1999.

[5] C. Cortes dan V. Vapnik. Mendukung jaringan vektor. Pembelajaran Mesin , vol. 20,
273–297, 1995.

[6] N. Cristianini, C. Campbell, dan J. Shawe-Taylor. Pembaruan multiplikatif


algoritma untuk pelatihan mesin dukungan vektor. Dalam Prosiding Euro ke-6
simposium kacang tentang Jaringan Syaraf Tiruan (ESANN) , 1999.

[7] N. Cristianini dan J. Shawe-Taylor. Pengantar untuk Mendukung Mesin Vektor


dan Metode Pembelajaran Berbasis Kernel Lainnya , Cambridge University Press, 2000.

© 2009 oleh Taylor & Francis Group, LLC

https://translate.googleusercontent.com/translate_f 58/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

Halaman 65

Referensi 57

[8] MS Kearns, SA Solla, dan DA Cohn. Kemajuan dalam Informasi Saraf Tiruan
Sistem Pemrosesan , MIT Press, 1999.

[9] UM Fayyad, G. Piatetsky-Shapiro, P. Smythand, dan R. Uthurusamy. Iklan-


Perbedaan dalam Penemuan Pengetahuan dan Penambangan Data , MIT Press, 1996.

[10] AJ Smola, P. Bartlett, B. Schölkopf, dan C. Schuurmans. Uang Muka dalam Jumlah Besar
Pengukur Margin , MIT Press, 1999.

[11] B. Schölkopf. Mendukung Pembelajaran Vektor , R. Oldenbourg Verlag, 1997.

[12] RO Duda, PE Hart, dan DG Stork. Klasifikasi Pola , Wiley, 2001.

[13] S. Haykin. Jaringan Saraf Tiruan: Yayasan Komprehensif , Universitas Tsinghua


sity Press, 2001.

[14] V. Cherkassky, X. Shao, F. Mulier, dan V. Vapnik. Kontrol kompleksitas model


untuk regresi menggunakan batas generalisasi VC. Transaksi IEEE pada Neural
Jaringan , vol. 10, 1075-1089, 1999.

[15] V. Cherkassky dan F. Mulier. Belajar Dari Data: Konsep, Teori dan
Metode, Wiley, 1998.

[16] C.-C. Chang dan C.-J. Lin LibSVM: Perpustakaan untuk mesin vektor dukungan.
Perangkat lunak tersedia di http://www.csie.ntu.edu.tw/∼cjlin/libsvm, 2001.

[17] T. Joachims. Membuat pembelajaran SVM skala besar menjadi praktis. Kemajuan dalam Kernel
Metode — Mendukung Pembelajaran Vektor , B. Schölkopf, C. Burges, dan A. Smola
(eds.), MIT Press, 1999.

[18] IW Tsang, JT Kwok, dan P.-M. Cheung. Mesin vektor inti: SVM Cepat
pelatihan set data yang sangat besar. Jurnal Penelitian Pembelajaran Mesin , vol. 6,
363–392, 2005.

[19] IW Tsang, JT Kwok, dan KT Lai. Regresi vektor inti untuk sangat besar
masalah regresi. ICML , 913–920, 2005.

[20] IW Tsang dan JT Kwok. Regulator berjenis manifold berskala besar.


NIPS , Vancouver, Kanada, 2006.

[21] IW Tsang, A. Kocsor, dan JT Kwok. Mesin vektor inti yang lebih sederhana dengan
bola tertutup ICML , 2007.

[22] E. Pekalska, P. Paclik, dan RPW Duin. Pendekatan kernel umum


untuk klasifikasi berbasis perbedaan. Jurnal Penelitian Pembelajaran Mesin ,
vol. 2, 175–211, 2001.

[23] J. Bi, T. Zhang, dan K. Bennett. Metode peningkatan generasi kolom untuk
campuran kernel. KDD , 521–526, 2004.

[24] IM de Diego, JM Moguerza, dan A. Munoz. Menggabungkan informasi kernel


untuk mendukung klasifikasi vektor. Sistem Klasifikasi Berganda, 102–111, 2004.

[25] Y. Grandvalet dan S. Canu. Penskalaan adaptif untuk pemilihan fitur dalam SVM.
Sistem Pemrosesan Informasi Saraf Tiruan , 2002.

© 2009 oleh Taylor & Francis Group, LLC

Halaman 66

https://translate.googleusercontent.com/translate_f 59/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

58 SVM: Mendukung Mesin Vektor

[26] GRG Lanckriet, TD Bie, N. Cristianini, MI Jordan, dan WS Noble. SEBUAH


kerangka kerja statistik untuk fusi data genom. Bioinformatika , vol. 20 (3.16),
2626–2635, 2004.

[27] GRG Lanckriet, N. Cristianini, P. Bartlett, LE Ghaoui, dan MI Jordan.


Mempelajari matriks kernel dengan pemrograman semidefinite. JMLR , vol. 5, 27–
72, 2004.

[28] CS Ong, AJ Smola, dan RC Williamson. Mempelajari kernel dengan hyper-


kernel. JMLR , vol. 6, 1043-1071, 2005.

[29] Z. Wang, S. Chen, dan T. Sun. MultiK-MHKS: A novel multiple kernel learning
algoritma. Transaksi IEEE pada Analisis Pola dan Kecerdasan Mesin ,
vol. 30 (3.2), 348–353, 2008.

[30] PL Bartlett dan S. Mendelson. Kompleksitas Rademacher dan Gaussian: Risiko


batas dan hasil struktural. Jurnal Penelitian Pembelajaran Mesin , vol. 3,
463–482, 2002.

[31] PL Bartlett. Kompleksitas sampel klasifikasi pola dengan neural


jaringan: Ukuran bobot lebih penting daripada ukuran
jaringan. Transaksi IEEE pada Teori Informasi , vol. 44 (3.2), 525–536,
1998

[32] V. Koltchinskii. Denda Rademacher dan minimalisasi risiko struktural. IEEE


Teori Informasi Transaksi , vol. 47 (3.5), 1902–1914, 2001.

[33] V. Koltchinskii dan D. Panchenko. Distribusi dan pembatas margin empiris


kesalahan generalisasi dari penggolong gabungan. Laporan Teknis, Departemen
Matematika dan Statistik, Universitas New Mexico, 2000a.

[34] V. Koltchinskii dan D. Panchenko. Rademacher memproses dan mengikat


risiko pembelajaran fungsi. Dalam E. Gine, D. Mason, dan J. Wellner (ed.), High
Probabilitas Dimensi II , 443–459, 2000b.

[35] J. Shawe-Taylor dan N. Cristianini. Metode Kernel untuk Analisis Pola . Kamera
jembatan University Press, 2004.

[36] K. Huang, H. Yang, I. Raja, dan MR Lyu. Mempelajari pengklasifikasi margin besar
secara lokal dan global. ICML , 2004.

[37] DS Yeung, D. Wang, WWY Ng, ECC Tsang, dan X. Zhao. Terstruktur besar
mesin margin: Sensitif terhadap distribusi data. Pembelajaran Mesin , vol. 68,
171–200, 2007.

[38] M. Belkin, P. Niyogi, dan V. Sindhwani. Manifold regularisasi: A geomet-


Kerangka dasar untuk belajar dari contoh. Departemen Ilmu Komputer,
Universitas Chicago, Tek. Rep, TR-2004-06, 2004.

[39] M. Belkin, P. Niyogi, dan V. Sindhwani. Pada bermacam-macam regularisasi. Dalam Pro-
ceedings dari Lokakarya Internasional tentang Kecerdasan Buatan dan Statistik ,
2005

© 2009 oleh Taylor & Francis Group, LLC

Halaman 67

https://translate.googleusercontent.com/translate_f 60/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
Referensi 59
[40] P. Rigollet. Kesalahan generalisasi dibatasi dalam klasifikasi semi-diawasi di bawah
asumsi cluster. Jurnal Penelitian Pembelajaran Mesin , vol. 8, 1369–
1392, 2007.

[41] GRG Lanckriet, LE Ghaoui, C. Bhattacharyya, dan MI Jordan. Kuat


pendekatan minimax untuk klasifikasi. Jurnal Penelitian Pembelajaran Mesin ,
vol. 3, 555–582, 2002.

[42] H. Xue, S. Chen, dan Q. Yang. Mesin vektor dukungan struktural. Kelima
Simposium Internasional tentang Jaringan Saraf Tiruan , Bagian I, LNCS5263, 2008.

© 2009 oleh Taylor & Francis Group, LLC

Halaman 69
68

Bab 4
https://translate.googleusercontent.com/translate_f 61/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

Apriori

Hiroshi Motoda dan Kouzou Ohara

Isi

4.1 Pendahuluan ................................................ ............ 62


4.2 Deskripsi Algoritma ............................................... ... 62
4.2.1 Pola dan Aturan Asosiasi yang Sering Ditambang .................. 62
4.2.1.1 Apriori .............................................. ... 63
4.2.1.2 AprioriTid .................................................. 66
4.2.2 Pola Urutan Penambangan ....................................... 67
4.2.2.1 AprioriAll .................................................. 68
4.2.3 Diskusi .................................................. ......... 69
4.3 Diskusi tentang Implementasi Perangkat Lunak yang Tersedia ...................... 70
4.4 Dua Contoh Ilustrasi .................................................. . 71
4.4.1 Contoh Kerja ............................................. . 71
4.4.1.1 Itemet dan Asosiasi Aturan Umum Penambangan .......... 71
4.4.1.2 Penambangan Pola Berurutan ............................... 75
4.4.2 Evaluasi Kinerja .............................................. 76
4.5 Topik Tingkat Lanjut ............................................... ......... 80
4.5.1 Peningkatan dalam Penambangan Pola Frekuensi Tipe Apriori ........... 80
4.5.2 Penambangan Pola Yang Sering Tanpa Pembuatan Calon ........... 81
4.5.3 Pendekatan Tambahan ........................................... 82
4.5.4 Representasi Terkondensasi: Pola Tertutup
dan Pola Maksimal ............................................ 82
4.5.5 Aturan Asosiasi Kuantitatif ................................... 84
4.5.6 Menggunakan Ukuran Penting Lain / Menarik .............. 84
4.5.7 Peraturan Asosiasi Kelas .............................................. 85
4.5.8 Menggunakan Richer Expression: Sequences, Trees, dan Graphs .......... 86
4.6 Ringkasan ................................................ ............... 87
4.7 Latihan ................................................ ............... 88
Referensi ................................................. .................. 89

61

© 2009 oleh Taylor & Francis Group, LLC

Halaman 70

62 Apriori

4.1 Pendahuluan
Banyak algoritma pencarian pola seperti yang digunakan untuk pengambilan keputusan pohon, klasifikasi
induksi aturan sifikasi, dan pengelompokan data yang sering digunakan dalam penambangan data
telah dikembangkan di komunitas penelitian pembelajaran mesin. Pola yang sering
dan asosiasi penambangan aturan adalah salah satu dari sedikit pengecualian untuk tradisi ini. Itu memperkenalkan
Mendorong penelitian data mining dan dampaknya luar biasa. Algoritma dasar

https://translate.googleusercontent.com/translate_f 62/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
sederhana dan mudah diimplementasikan. Dalam bab ini algoritma paling mendasar dari
penambangan pola dan asosiasi aturan yang sering, dikenal sebagai Apriori dan AprioriTid [3, 4],
dan perpanjangan Apriori untuk penambangan pola berurutan, yang dikenal sebagai AprioriAll [6, 5],
dijelaskan berdasarkan makalah asli dengan contoh kerja, dan kinerja
analisis Apriori ditampilkan menggunakan implementasi yang tersedia secara bebas [1] untuk dataset
dalam repositori UCI [8]. Karena Apriori sangat mendasar dan bentuk database
terbatas pada transaksi pasar, ada banyak pekerjaan untuk meningkatkan kompetensi
efisiensi nasional, menemukan representasi yang lebih kompak, dan memperluas jenis
data yang bisa ditangani. Beberapa karya penting juga dijelaskan secara singkat sebagai
topik lanjutan.

4.2 Deskripsi Algoritma

4.2.1 Pola dan Aturan Asosiasi yang Sering Ditambang


Salah satu pendekatan penambangan data yang paling populer adalah dengan mencari itemet yang sering
dataset transaksi dan berasal aturan asosiasi. Masalahnya secara resmi dinyatakan sebagai
mengikuti. Biarkan saya = { i 1 , i 2 , ..., i m } menjadi satu set item. Biarkan D menjadi satu set transaksi,
di mana setiap transaksi t adalah seperangkat item sehingga t ⊆ saya . Setiap transaksi memiliki a
pengidentifikasi unik, yang disebut TID . Transaksi t berisi X , satu set beberapa item
di I , jika X ⊆ t . Aturan asosiasi adalah implikasi dari bentuk X ⇒ Y , di mana
X ⊂ I, Y ⊂ I , dan X ∩ Y = ∅. Aturan X ⇒ Y berlaku di D dengan keyakinan c
(0 ≤ c ≤ 1) jika fraksi transaksi itu juga mengandung Y pada yang mengandung
X dalam D adalah c . Aturan X ⇒ Y (dan ekuivalen X ∪ Y ) memiliki dukungan 1 s (0 ≤ s ≤ 1) dalam D
jika fraksi transaksi dalam D yang mengandung X ∪ Y adalah s . Diberikan satu set transaksi
D , masalah aturan asosiasi pertambangan adalah untuk menghasilkan semua aturan asosiasi itu
memiliki dukungan dan kepercayaan diri tidak kurang dari dukungan minimum yang ditentukan pengguna (disebut
minsup ) dan kepercayaan minimum ( masing-masing disebut minconf ).
Mencari 2 itemset yang sering (itemset dengan dukungan tidak kurang dari minsup ) bukanlah tiga
vial karena kompleksitas komputasi akibat ledakan kombinatorial. Sekali

1 Definisi dukungan alternatif adalah jumlah absolut frekuensi. Dalam bab ini definisi yang terakhir adalah
juga digunakan jika perlu.
2 Kertas Apriori [3] menggunakan "besar" untuk berarti "sering," tetapi besar sering dikaitkan dengan jumlah
item dalam itemset. Jadi, kami lebih suka menggunakan "sering."

© 2009 oleh Taylor & Francis Group, LLC

Halaman 71

4.2 Deskripsi Algoritma 63

sering itemet diperoleh, mudah untuk menghasilkan aturan asosiasi dengan


kepercayaan tidak kurang dari minconf . Apriori dan AprioriTid, diusulkan oleh R. Agrawal dan
R. Srikant, adalah algoritma seminal yang dirancang untuk bekerja untuk transaksi besar
dataset [3].

4.2.1.1 Apriori

Apriori adalah algoritma untuk menemukan semua set item (itemset) yang memiliki dukungan tidak kurang
dari minsup . Dukungan untuk itemset adalah rasio jumlah transaksi itu
berisi itemset dengan jumlah total transaksi. Item yang memenuhi minimum
kendala dukungan disebut frequent itemset . Apriori dicirikan sebagai level-bijaksana
lengkap pencarian (pencarian pertama luasnya) menggunakan properti anti-monotonicity
itemset: "Jika suatu itemset tidak sering, supersetnya tidak pernah sering," yaitu

https://translate.googleusercontent.com/translate_f 63/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
juga disebut properti penutupan bawah . Algoritma membuat beberapa melewati
data. Pada pass pertama, dukungan item individual dihitung dan item sering
ditentukan. Dalam setiap operan berikutnya, seperangkat set set item ditemukan sering
pada pass sebelumnya digunakan untuk menghasilkan itemset baru yang berpotensi sering, disebut
kandidat itemset , dan dukungan mereka yang sebenarnya dihitung selama melewati data.
Pada akhir pass, mereka yang memenuhi batasan dukungan minimum dikumpulkan,
yaitu, itemet yang sering ditentukan, dan mereka menjadi benih untuk lolos berikutnya.
Proses ini diulangi hingga tidak ada set item baru yang sering ditemukan.
Berdasarkan konvensi, Apriori mengasumsikan bahwa item dalam transaksi atau itemset diurutkan
dalam urutan leksikografis. Jumlah item dalam suatu itemset disebut ukuran dan
itemset ukuran k disebut k -itemset. Biarkan set item yang sering berukuran k menjadi F k
dan calon mereka menjadi C k . Kedua F k dan C k mempertahankan lapangan, jumlah dukungan.
Algoritma Apriori diberikan dalam Algoritma 4.1. Lulus pertama hanya menghitung item
kejadian untuk menentukan frekuensi 1-itemset. Lulus berikutnya terdiri dari dua
fase. Pertama, itemset yang sering F k −1 ditemukan pada ( k - 1) -th pass digunakan untuk
menghasilkan kandidat itemsets C k menggunakan fungsi apriori-gen. Selanjutnya, database
dipindai dan dukungan dari kandidat di C k dihitung. Fungsi subset digunakan
untuk penghitungan ini.
Fungsi apriori-gen mengambil argumen F k −1 , himpunan semua yang sering ( k - 1) -
itemset, dan mengembalikan superset dari himpunan semua k -itemsets yang sering . Pertama, di join
langkah-langkah, F k -1 bergabung dengan F k -1 .

masukkan ke C k
pilih p .fitemset 1 , p .fitemset 2 , ... , p .fitemset k −1 , q .fitemset k −1
dari F k −1 p, F k −1 q
di mana p .fitemset 1 = q .fitemset 1 , ..., hal .fitemset k −2 = q .fitemset k −2 ,
p .fitemset k −1 <q .fitemset k −1

Di sini, F k p berarti bahwa itemset p adalah sering k -itemset, dan p. fitemset k adalah
k -th item dari itemset sering p .
Kemudian, pada langkah prune, semua itemset c ∈ C k yang beberapa ( k - 1) -subset adalah
tidak di F k -1 dihapus.

© 2009 oleh Taylor & Francis Group, LLC

Halaman 72

64 Apriori

Algoritma 4.1 Algoritma Apriori

F 1 = { frequent 1-itemsets } ;
untuk ( k = 2; F k −1 = ∅; k + +) mulailah
C k = apriori-gen ( F k -1 ); // Calon baru
untuk setiap transaksi t ∈ D mulai
C t = bagian ( C k , t ); // Calon yang terkandung dalam t
foreach calon c ∈ C t do
c.count + +;
akhir
Fk={c∈Ck | c.count ≥ minsup} ;
akhir
Jawaban = ∪ k F k ;

https://translate.googleusercontent.com/translate_f 64/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
Fungsiitemset
kandidat bagianyang
mengambil
terdapatsebagai
dalam argumen
transaksi C dan transaksi
t .kUntuk t , dan cepat,
penghitungan kembali semuamengadopsi
Apriori
hash-pohon untuk menyimpan kandidat itemset C k . Itemet disimpan dalam dedaunan. Setiap
simpul awalnya merupakan simpul daun, dan kedalaman simpul akar didefinisikan sebagai 1. Kapan
jumlah itemset dalam simpul daun melebihi ambang yang ditentukan, simpul daun adalah
dikonversi menjadi simpul interior. Node interior pada kedalaman d menunjuk ke node pada kedalaman
d + 1. Yang cabang untuk tindak ditentukan dengan menerapkan fungsi hash ke d -th
item dari itemset. Dengan demikian, setiap simpul daun dipastikan mengandung paling banyak tertentu
jumlah itemset (tepatnya, ini benar hanya ketika membuat simpul interior
terjadi pada kedalaman d lebih kecil dari k ), dan sebuah itemet di simpul daun dapat dicapai
dengan berturut-turut hashing setiap item dalam itemset secara berurutan dari root. Setelah itu
pohon hash dibangun, fungsi himpunan bagian menemukan semua kandidat yang terkandung dalam a
transaksi t , mulai dari simpul akar. Pada simpul root, setiap item dalam t hash,
dan setiap cabang yang ditentukan diikuti satu kedalaman ke bawah. Jika simpul daun tercapai,
itemset di daun yang ada dalam transaksi t dicari dan yang ditemukan dibuat
referensi ke set jawaban. Jika simpul interior dicapai dengan mem-hashing item i , items
yang datang setelah saya dalam t hash secara rekursif sampai simpul daun tercapai. Itu terbukti
bahwa itemset di daun yang tidak pernah dijangkau tidak terkandung dalam t .
Jelas, setiap himpunan bagian dari itemset yang sering memenuhi batasan dukungan minimum.
Bergabung Operasi setara dengan memperluas F k -1 dengan setiap item dalam database dan
kemudian menghapus itemet yang setitnya ( k - 1) -items diperoleh dengan menghapus
( k −1) - item tidak dalam F k −1 . Kondisi p .fitemset k −1 <q .fitemset k −1 memastikan hal itu
tidak ada duplikasi yang dibuat. Langkah prune di mana semua itemset yang ( k - 1) -subset
tidak di F k -1 dihapus dari C k tidak menghapus itemset yang bisa di F k .
Dengan demikian, C k ⊇ F k , dan algoritma Apriori benar.
Tugas yang tersisa adalah menghasilkan aturan asosiasi yang diinginkan dari sering
itemset. Algoritma langsung untuk tugas ini adalah sebagai berikut. Untuk menghasilkan aturan,

© 2009 oleh Taylor & Francis Group, LLC

Halaman 73

4.2 Deskripsi Algoritma 65

semua himpunan bagian tak kosong dari setiap frequent itemset f yang disebutkan dan untuk setiap seperti
subset a , aturan bentuk a ⇒ ( f - a ) dihasilkan jika rasio dukungan ( f ) ke
dukungan ( a ) setidaknya minconf . Di sini, catatan bahwa kepercayaan dari aturan yang ⇒ ( f - a )
tidak bisa lebih besar dari kepercayaan dari sebuah ⇒ ( f - a ) untuk setiap satu ⊂ sebuah . Ini pada gilirannya berarti
bahwa untuk aturan ( f - a ) ⇒ a untuk terus, semua aturan dari bentuk ( f - a ) ⇒ suatu pegangan keharusan. Menggunakan
properti ini, algoritma untuk menghasilkan aturan asosiasi diberikan dalam Algoritma 4.2.

Algoritma 4.2 Algoritma Generasi Aturan Asosiasi

H 1 = ∅ // Inisialisasi
foreach ; sering k -itemset f k , k ≥ 2 lakukan mulai
A = ( k - 1) -itemsets sebuah k -1 sehingga sebuah k -1 ⊂ f k ;
foreach a k −1 ∈ A do begin
con f = dukungan ( f k ) / support ( a k -1 );
if ( con f ≥ minconf ) maka mulailah
mengeluarkan aturan a k −1 ⇒ ( f k - a k −1 )
dengan keyakinan = conf dan dukungan = dukungan ( f k );
tambahkan ( f k - a k -1 ) untuk H 1 ;
akhir
akhir
sebut ap-genrules ( f k , H 1 );
akhir
https://translate.googleusercontent.com/translate_f 65/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

Prosedur ap-genrules ( f k : sering k -itemset, H m : set m -Item


konsekuensi)
jika ( k> m +1) maka mulailah
H m +1 = apriori-gen ( H m );
foreach h m +1 ∈ H m +1 mulai
con f = dukungan ( f k ) / support ( f k - h m 1 );
if ( con f ≥ minconf ) lalu
Output aturan f k - h m 1 ⇒ h m 1
dengan keyakinan = conf dan dukungan = dukungan ( f k );
lain
hapus h m +1 dari H m +1 ;
akhir
sebut ap-genrules ( f k , H m 1 );
akhir

Apriori mencapai kinerja yang baik dengan mengurangi ukuran set kandidat. Namun,
dalam situasi dengan itemet yang sangat sering atau dukungan minimum yang sangat rendah, tetap saja
menderita dari biaya menghasilkan sejumlah besar set kandidat dan pemindaian
database berulang kali untuk memeriksa set besar kandidat itemset.

© 2009 oleh Taylor & Francis Group, LLC

Halaman 74

66 Apriori

4.2.1.2 AprioriTid

AprioriTid adalah variasi dari Apriori. Itu tidak mengurangi jumlah kandidat
tetapi tidak menggunakan database D untuk menghitung dukungan setelah lulus pertama. Ini menggunakan a
baru dataset C k . Setiap anggota himpunan C k adalah dalam bentuk <TID, { ID } > , di mana
setiap ID adalah pengidentifikasi dari hadiah k -itemset yang berpotensi sering muncul dalam transaksi
dengan identifier TID kecuali k = 1. Untuk k = 1, C 1 sesuai dengan database D ,
meskipun secara konseptual setiap item saya digantikan oleh itemset { i }. The anggota dari C k
sesuai dengan transaksi t adalah <t.TID, { c ∈ C k | c terkandung dalam t } > .
Intuisi untuk menggunakan C k adalah bahwa hal itu akan lebih kecil dari database D untuk besar
nilai k karena beberapa transaksi mungkin tidak mengandung kandidat k -itemset,
dalam hal C k tidak memiliki entri untuk transaksi ini, atau karena sangat sedikit
kandidat dapat dimuat dalam transaksi dan setiap entri mungkin lebih kecil dari
jumlah item dalam transaksi yang sesuai. Algoritma AprioriTid diberikan
dalam Algoritma 4.3. Di sini, c [ i ] mewakili item ke- i di k -itemset c .

Algoritma 4.3 Algoritma AprioriTid

F 1 = { frequent 1-itemsets } ;
C 1 = basis data D ;
untuk ( k = 2; F k −1 = ∅; k + +) mulailah
C k = apriori-gen ( F k -1 ); // Calon baru
C k = ∅;
foreach entry t ∈ C k −1 mulai
// menentukan kandidat itemsets di C k terkandung
// dalam transaksi dengan pengidentifikasi t .TID
C t = { c ∈ C k | ( c - c [ k ]) ∈ t .set-of-itemsets ∧
https://translate.googleusercontent.com/translate_f 66/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
( c - c [ k - 1]) ∈ t .set-of-itemset } ;
foreach calon c ∈ C t do
c.count + +;
jika ( C t = ∅) maka C k + = < t .TID, C t >;
akhir
Fk={c∈Ck | c.count ≥ minsup} ;
akhir
Jawaban = ∪ k F k ;

Setiap C k disimpan dalam struktur berurutan. Calon k -itemset c k di C k mempertahankan


dua bidang tambahan; generator dan ekstensi, selain bidang, jumlah dukungan.
Field generator menyimpan ID s dari dua item- sering ( k - 1) yang bergabung
dihasilkan c k . Bidang ekstensi menyimpan ID dari semua ( k + 1) -kandidat yang ada
ekstensi dari c k . Ketika calon c k dihasilkan dengan bergabung f 1 k −1 dan f 2 k −1 , mereka
ID s disimpan di bidang pembangkit c k dan ID dari c k ditambahkan ke ekstensi
bidang f 1 k −1 . The t .set-of-itemsets bidang entri t di C k -1 memberikan ID s semua

© 2009 oleh Taylor & Francis Group, LLC

Halaman 75

4.2 Deskripsi Algoritma 67

( k - 1) - calon yang terkandung dalam t.TID . Untuk setiap seperti calon c k -1 ekstensi
bidang memberikan T k , set ID s dari semua kandidat k -itemsets yang ekstensi dari c k -1 .
Untuk setiap c k di T k , bidang pembangkit memberikan ID s dari dua itemset yang dihasilkan c k .
Jika itemset ini hadir dalam entri untuk t .set-of-itemset, dapat disimpulkan bahwa c k
hadir dalam transaksi t.TID , dan c k ditambahkan ke C t .
AprioriTid memiliki overhead untuk menghitung C k tetapi keuntungan yang C k dapat disimpan
dalam memori ketika k besar. Dengan demikian diharapkan Apriori mengalahkan AprioriTid sebelumnya
operan ( k kecil ) dan AprioriTid mengalahkan Apriori dalam operan kemudian ( k besar ). Karena keduanya
Apriori dan AprioriTid menggunakan prosedur pembuatan kandidat yang sama dan karenanya
menghitung itemet yang sama, adalah mungkin untuk menggunakan gabungan dua algo- ini
ritme secara berurutan. AprioriHybrid menggunakan Apriori pada operan awal dan beralih ke
AprioriTid ketika mengharapkan bahwa himpunan C k pada akhir lulus akan cocok di memori.

4.2.2 Pola Urutan Penambangan


Agrawal dan Srikant memperluas algoritma Apriori ke masalah pola sekuensial
penambangan [6]. Dalam Apriori tidak ada gagasan tentang urutan, dan dengan demikian, masalah penemuan
item mana yang muncul bersamaan dapat dilihat sebagai menemukan pola intratransaksi. Sini,
Urutan masalah dan masalah menemukan pola berurutan dapat dilihat sebagai
pola intertransaksi.
Setiap transaksi terdiri dari urutan-id, waktu transaksi, dan satu set item. Itu
urutan-id yang sama tidak memiliki lebih dari satu transaksi dengan waktu transaksi yang sama.
Sebuah urutan adalah daftar ordered itemsets. Dengan demikian, urutan terdiri dari daftar set
karakter (item), daripada sekadar daftar karakter. Panjang a
Urutan adalah jumlah set item dalam urutan. Urutan panjang k disebut
a k -berikutnya. Tanpa kehilangan sifat umum, set item diasumsikan dipetakan
satu set bilangan bulat yang berdekatan, dan itemet i dilambangkan dengan ( i 1 i 2 ... i m ) di mana i j adalah
barang. Urutan s dilambangkan dengan 〈s 1 s 2 ... s n〉. Urutan < a 1 a 2 ... a n > terkandung dalam
urutan lain 〈b 1 b 2 ... b m〉 ( n ≤ m ) jika ada bilangan bulat i 1 <i 2 < ··· <i n seperti
bahwa suatu 1 ⊆ b i 1 , a 2 ⊆ b i 2 , ..., a n ⊆ b i n . Semua transaksi dengan urutan-id yang sama
yang diurutkan berdasarkan waktu transaksi bersama-sama membentuk urutan (urutan transaksi).
Sequ-id mendukung urutan s jika s terkandung dalam urutan transaksinya. Itu

https://translate.googleusercontent.com/translate_f 67/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
dukungan untuk sekuens didefinisikan sebagai fraksi dari jumlah total sekuens-id itu
mendukung urutan ini. Demikian juga, dukungan untuk itemet i didefinisikan sebagai fraksi
urutan-id yang memiliki item di i di salah satu transaksi mereka. Perhatikan bahwa ini
definisi berbeda dari yang digunakan dalam Apriori. Jadi itemset i dan 1-sequence
〈I〉 memiliki dukungan yang sama.
Diberikan basis data transaksi D , masalah pola sekuensial penambangan adalah untuk
temukan 3 sekuens maksimal di antara semua sekuens yang memenuhi tertentu yang ditentukan pengguna
batasan dukungan minimum. Setiap urutan maksimal seperti itu mewakili berurutan
pola. Urutan yang memenuhi batasan dukungan minimum disebut sering
urutan (tidak harus maksimal), dan itemet yang memenuhi dukungan minimum

3 Kemudian R. Agrawal dan R. Srikant menghapus kendala ini dalam pola sekuensial umum (GSP) [32].

© 2009 oleh Taylor & Francis Group, LLC

Halaman 76

68 Apriori

constraint disebut frequent itemset, atau singkatnya fitemset. Urutan yang sering
harus menjadi daftar fitemets.
Algoritma ini terdiri dari lima fase: (1) fase sortir, (2) fase fitemset, (3) trans-
fase pembentukan, (4) fase urutan, dan (5) fase maksimal. Tiga yang pertama adalah
fase preprocessing dan yang terakhir adalah fase postprocessing.
Pada fase sortir, database D diurutkan dengan urutan-id sebagai kunci utama dan
waktu transaksi sebagai kunci minor. Pada fase fitemset, himpunan semua fitemset adalah
diperoleh dengan menggunakan algoritma Apriori dengan modifikasi penghitungan yang sesuai a
mendukung, dan dipetakan ke satu set bilangan bulat yang berdekatan. Ini membuat membandingkan dua
fitemsets untuk kesetaraan dalam waktu yang konstan. Perhatikan bahwa himpunan semua 1-urutan sering
secara bersamaan ditemukan dalam fase ini. Pada fase transformasi, setiap transaksi
diganti dengan set semua fitemets yang ada dalam transaksi itu. Jika ada transaksi
tidak mengandung fitemset apa pun, tidak disimpan dalam urutan yang diubah. Jika suatu transaksi
urutan tidak mengandung fitemset, urutan ini dihapus dari yang ditransformasikan
database, tetapi masih digunakan dalam penghitungan jumlah total urutan-id. Setelah
transformasi, urutan transaksi diwakili oleh daftar set fitemets.
Setiap set fitemsets diwakili oleh { f 1 , f 2 , ..., f n }, di mana f i adalah fitemset. Ini
Transformasi dirancang untuk pengujian efisien yang diberikan urutan sering
terkandung dalam urutan transaksi. Database berubah dinotasikan sebagai D T .
Fase urutan adalah bagian utama di mana urutan yang sering harus enu-
berbatu. Dua keluarga algoritma diusulkan: count-all dan count-some. Mereka
berbeda dalam cara urutan sering dihitung. Algoritma count-all menghitung semua
urutan sering, termasuk urutan nonmaksimal yang harus dipangkas nanti,
sedangkan algoritma count-some menghindari penghitungan urutan yang terkandung dalam a
urutan lebih panjang karena tujuan akhirnya adalah hanya mendapatkan urutan maksimal. Agrawal
dan Srikant mengembangkan satu algoritma count-all yang disebut AprioriAll dan dua count-some
algoritma yang disebut AprioriSome dan DynamicSome. Di sini, hanya AprioriAll yang dijelaskan
karena keterbatasan ruang.
Pada fase maksimal terakhir, sekuens maksimal diekstraksi dari himpunan semua
urutan sering. Hash-tree (mirip dengan yang digunakan dalam fungsi subset di
Apriori) digunakan untuk dengan cepat menemukan semua urutan dari urutan yang diberikan.

4.2.2.1 AprioriAll

Algoritma diberikan dalam Algoritma 4.4. Di setiap lulus urutan sering dari
pass sebelumnya digunakan untuk menghasilkan urutan kandidat dan kemudian dukungannya
diukur dengan membuat melewati database. Di akhir umpan, dukungan

https://translate.googleusercontent.com/translate_f 68/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
dari kandidat digunakan untuk menentukan urutan yang sering.
Fungsi apriori-gen-2 mengambil argumen F k −1 , himpunan semua yang sering ( k - 1) -
urutan Pertama, operasi gabungan dilakukan sebagai

masukkan ke C k
pilih p .fitemset 1 , p .fitemset 2 , ... , p .fitemset k −1 , q .fitemset k −1
dari F k −1 p, F k −1 q
di mana p .fitemset 1 = q .fitemset 1 , ... , p .fitemset k −2 = q .fitemset k −2 ,

© 2009 oleh Taylor & Francis Group, LLC

Halaman 77

4.2 Deskripsi Algoritma 69

Algoritma 4.4 AprioriSemua Algoritma

F 1 = { sering 1-urutan } ; // Hasil dari fase fitemset


untuk ( k = 2; F k −1 = ∅; k + +) mulailah
C k = apriori-gen-2 ( F k -1 ); // Urutan kandidat baru
foreach urutan transaksi t ∈ D T mulai
C t = subseq ( C k , t ); // Urutan kandidat yang terkandung dalam t
foreach calon c ∈ C t do
c.count + +;
akhir
Fk={c∈Ck | c.count ≥ minsup} ;
akhir
Jawaban = maksimal urutan di ∪ k F k ;

kemudian, semua urutan c ∈ C k yang beberapa ( k - 1) -subsequence tidak di F k -1 adalah


dihapus. Fungsi subseq mirip dengan fungsi subset di Apriori. Seperti di Apriori,
calon urutan C k disimpan dalam hash-pohon untuk cepat menemukan semua calon
terkandung dalam urutan transaksi. Perhatikan bahwa urutan transaksi yang diubah
adalah daftar set fitemetset dan semua fitemetset dalam set memiliki waktu transaksi yang sama,
dan tidak lebih dari satu transaksi dengan waktu transaksi yang sama diizinkan untuk
urutan-id yang sama. Batasan ini harus dikenakan dalam fungsi subseq.

4.2.3 Diskusi
Kedua Apriori dan AprioriTid kebutuhan minsup dan minconf akan ditentukan di muka. Itu
algoritma harus dijalankan kembali setiap kali nilai-nilai ini diubah, melempar semuanya
jauh yang diperoleh pada putaran sebelumnya. Jika tidak ada nilai yang sesuai untuk ambang ini
sudah diketahui sebelumnya dan kami ingin tahu bagaimana hasilnya berubah dengan nilai-nilai ini
tanpa menjalankan kembali algoritme, yang terbaik yang dapat kita lakukan adalah menghasilkan dan menghitung saja
set item yang muncul setidaknya sekali dalam database tanpa duplikasi dan simpan
semuanya dengan cara yang efisien. Perhatikan bahwa Apriori menghasilkan kandidat yang tidak ada
dalam database.
Apriori dan AprioriTid menggunakan hash-tree untuk menyimpan kandidat itemset. Lain
struktur data yang sering digunakan adalah struktur-trie [35, 9]. Setiap node di kedalaman k dari
trie sesuai dengan kandidat k -itemset dan menyimpan item k -th dan dukungannya
dari itemset. Seperti dua k -itemset yang berbagi -itetset pertama ( k - 1)
saudara di bawah simpul orangtua mereka di kedalaman k −1 dalam trie, generasi kandidat
hanya untuk bergabung dengan dua saudara kandung, dan memperpanjang pohon ke satu kedalaman lebih di bawah
k -itemset pertama yang sering dilakukan setelah pemangkasan. Untuk menemukan kandidat k- item yang ada

https://translate.googleusercontent.com/translate_f 69/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
terkandung dalam transaksi t , setiap item dalam transaksi diumpankan dari root node dan
cabang diikuti menurut item berikutnya sampai item k -th tercapai.
Banyak implementasi praktis dari Apriori menggunakan struktur tiga ini untuk menyimpan tidak hanya
kandidat tetapi juga transaksi [10, 9].

© 2009 oleh Taylor & Francis Group, LLC

Halaman 78

70 Apriori

Jika kita melangkah lebih jauh, kita sama sekali tidak bisa menghasilkan kandidat itemet. Lebih lanjut,
tidak perlu untuk menghitung semua set item yang sering. Topik-topik ini dibahas
dalam Bagian 4.5.
Apriori dan hampir semua penambangan aturan asosiasi menggunakan strategi dua fase: pertama
menambang pola yang sering dan kemudian menghasilkan aturan asosiasi. Ini bukan satu-satunya cara.
MagnumOpus Webb menggunakan strategi lain yang segera menghasilkan subset besar
dari semua aturan asosiasi [38].
Ada ekstensi langsung dari keluarga Apriori asli. Penggunaan taksonomi dan
menggabungkan batasan waktu adalah dua contoh. Aturan asosiasi umum [30]
menggunakan serangkaian taksonomi yang ditentukan pengguna, yang memungkinkan untuk mengekstrak
beberapa item yang diungkapkan oleh konsep yang lebih tinggi bahkan ketika menggunakan level dasar
konsep hanya menghasilkan itemset yang jarang. Algoritma dasarnya adalah untuk menambahkan semua
tors dari setiap item dalam transaksi ke transaksi dan kemudian jalankan algoritma Apriori.
Beberapa optimasi dapat ditambahkan untuk meningkatkan efisiensi, salah satu contohnya
dukungan untuk itemset X yang berisi item x dan leluhurnya x adalah
sama dengan dukungan dari itemset yang X - x , dan dengan demikian tidak perlu dihitung. Disamaratakan
pola berurutan [32] terjadi, di samping pengenalan taksonomi, waktu
kendala yang menentukan periode waktu minimum dan / atau maksimum antara yang berdekatan
elemen (itemset) dalam suatu pola dan mengendurkan pembatasan item dalam suatu elemen
pola berurutan harus berasal dari transaksi yang sama dengan memungkinkan barang menjadi
hadir dalam satu set transaksi dengan urutan-id yang sama dengan waktu transaksi
dalam jendela waktu yang ditentukan pengguna. Ia juga menemukan semua pola berurutan yang sering (tidak
terbatas pada pola sekuensial maksimal). Algoritma GSP berjalan sekitar 20 kali lebih cepat
daripada AprioriAll, salah satu alasannya adalah bahwa GSP menghitung lebih sedikit kandidat daripada AprioriAll.

4.3 Diskusi tentang Implementasi Perangkat Lunak yang Tersedia


Ada banyak implementasi Apriori yang tersedia mulai dari perangkat lunak gratis hingga
produk komersial. Di sini, kami hanya akan menyajikan tiga implementasi terkenal
yang dapat diunduh secara bebas melalui Internet.
Yang pertama adalah implementasi yang tertanam di open-source paling terkenal
pembelajaran mesin dan toolkit penambangan data, Weka, disediakan oleh Universitas Indonesia
Waikato [40]. Apriori di Weka dapat digunakan melalui pengguna grafis umum Weka
antarmuka bersama dengan banyak algoritma lain yang tersedia di Weka. Im-
plementation termasuk ekstensi Weka sendiri. Misalnya, minsup adalah iteratif
menurun dari atas terikat U minsup ke batas bawah L minsup dengan interval
δ mnt . Lebih lanjut, selain kepercayaan, metrik mengangkat, meningkatkan, dan keyakinan
tersedia untuk mengevaluasi aturan asosiasi. Angkat dan pengungkitan dibahas di Bagian 4.5.
Keyakinan [11] adalah metrik yang diusulkan untuk mengukur keberangkatan dari industri
independen dari aturan asosiasi yang mempertimbangkan implikasinya. Saat menggunakan salah satu dari
metrik ini, nilai minimalnya harus diberikan sebagai ambang.

https://translate.googleusercontent.com/translate_f 70/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

© 2009 oleh Taylor & Francis Group, LLC

Halaman 79

4.4 Dua Contoh Ilustrasi 71

Implementasi kedua adalah yang oleh Christian Borgelt [1], yang didistribusikan
di bawah ketentuan Lisensi Publik Umum GNU Lesser (Library). Ini menerapkan
mentasi pada dasarnya adalah aplikasi baris perintah, dan beberapa antarmuka pengguna grafis
tersedia secara terpisah. Ini pada dasarnya mengikuti aliran Apriori asli, tetapi telah
ekstensi sendiri, untuk membuatnya lebih cepat dan mengurangi penggunaan memorinya. Mempekerjakan
trie disebut pohon awalan untuk menyimpan transaksi dan itemet untuk dukungan yang efisien
menghitung [10]. Pohon awalan sedikit berbeda dari trie yang dijelaskan dalam Sub-
bagian 4.2.3. Secara opsional, pengguna dapat memilih untuk menggunakan daftar sederhana alih-alih awalan
pohon untuk menyimpan transaksi. Lebih jauh, implementasi ini tidak hanya sering ditemukan
itemset dan aturan asosiasi, tetapi juga itemset tertutup, dan itemset maksimal. Tutup
dan itemet maksimal dibahas dalam Bagian 4.5. Selain itu, beberapa metrik lainnya
selain kepercayaan, seperti perolehan informasi, juga tersedia dalam implementasi ini
untuk mengevaluasi dan memilih aturan asosiasi.
Implementasi ketiga adalah yang oleh Pagar Bodon, yang didistribusikan secara bebas
untuk tujuan penelitian [2]. Implementasi ini juga berbasis trie, mirip dengan Borgelt,
tetapi mengadopsi trie dengan struktur yang lebih sederhana, dan hanya menghitung itemet yang sering dan
aturan asosiasi. Ini berfungsi sebagai aplikasi baris perintah, dan menerima empat argumen.
Tiga yang pertama adalah wajib: file input, termasuk transaksi, file output, dan
minsup . Yang keempat adalah minconf , yang opsional. Jika minconf diberikan, aturan asosiasi
ditambang, dan juga itemset yang sering; jika tidak, itu hanya menghasilkan itemset yang sering.
Implementasi ini ditulis dalam C ++ untuk menyediakan komponen berorientasi objek yang
dapat dengan mudah digunakan kembali untuk mengembangkan algoritma berbasis Apriori lainnya.

4.4 Dua Contoh Ilustrasi

4.4.1 Contoh Kerja


Kami akan menggambarkan perilaku rinci dari algoritma yang disebutkan di atas menggunakan a
database kecil ditunjukkan pada Tabel 4. 1, di mana SID dan TT berarti urutan-id dan
waktu transaksi, masing-masing. Kami menggunakan database ini di kedua aturan asosiasi (sering
itemset) penambangan dan penambangan pola sekuensial maksimal. Dalam kasus SID dan
TT diabaikan.

4.4.1.1 Pertambangan Itemet dan Asosiasi yang Sering

Misalkan kita ingin mencari item yang sering di bawah minsup = 0 . 2 dan asosiasi
aturan dengan minconf = 0 . 6.

Apriori (Algoritma 4.1)


Apriori pertama-tama memindai seluruh basis data dan memperoleh satu set item-1 yang sering
muncul dalam setidaknya tiga transaksi, F 1 = { a, c, d, f, g }. Dari F 1 ini ,
fungsi apriori-gen mendapatkan seperangkat kandidat yang sering 2-itemet C 2 =
{ ac, iklan, af, ag, cd, cf, cg, df, dg, fg }. C 2 terdiri dari semua pasangan elemen yang memungkinkan
dari F 1 karena tidak ada pemangkasan dibuat pada tahap ini.

© 2009 oleh Taylor & Francis Group, LLC

https://translate.googleusercontent.com/translate_f 71/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

Halaman 80

72 Apriori

TABEL 4.1 Basis Data Transaksi


Contoh Kerja
TID SID TT Item
001 1 03 Mei c, d
002 1 05 Mei f
003 4 05 Mei a, c
004 3 05 Mei c, d, f
005 2 05 Mei b, c, f
006 3 06 Mei d, f, g
007 4 06 Mei Sebuah
008 4 07 Mei a, c, d
009 3 08 Mei c, d, f, g
010 1 08 Mei d, e
011 2 08 Mei b, d
012 3 09 Mei d, g
013 1 09 Mei e, f
014 3 10 Mei c, d, f

Selanjutnya, Apriori menghitung dukungan mereka dengan memindai basis data menggunakan subset
fungsi, yang memanfaatkan pohon hash. Gambar 4.1 mengilustrasikan secara singkat bagaimana hash-tree
dibangun dan digunakan. Misalkan elemen C 2 ditambahkan ke dalam hash-tree
dalam urutan leksikografis, dan jumlah maksimum item yang diizinkan berada dalam lembaran
node adalah 4. Dengan demikian, jumlah itemset di root (leaf) node melebihi ambang batas
kapan cd itemset kelima ditambahkan. Kemudian, node diubah menjadi interior

Dalam hal jumlah maksimum item yang dapat disimpan dalam sebuah simpul adalah 4.

CD h(x) h(x)

iklan ac h(a) h(f)


h(a) h(c)
af ag h(c) h(d)

iklan ac CD iklan ac cd cf df dg fg
af ag af ag cg

(a) Buat pohon hash

Transaksi yang Diberikan 004


cdf cdf cdf
h(x) h(x) h(x)

h(a) h(f) h(a) h(f) h(a) h(f)


h(c)h(d) h(c)h(d) h(c)h(d)

iklan ac cd cf df dg fg iklan ac cd cf df dg fg iklan ac cd cf df dg fg


af ag cg af ag cg af ag cg

(B) Periksa item mana yang termasuk dalam transaksi

Gambar 4.1 Contoh hash-tree.

© 2009 oleh Taylor & Francis Group, LLC

https://translate.googleusercontent.com/translate_f 72/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

Halaman 81

4.4 Dua Contoh Ilustrasi 73

satu, dan setiap cabang itemset ke dalam simpul daun baru yang sesuai menurut
nilai hash yang diberikan oleh fungsi h ( x ), di mana x adalah item, item pertama di setiap itemet
pada kasus ini. Kami berasumsi bahwa h ( x ) diberikan sebelumnya dan umum untuk semua node.
Sejak empat itemset pertama berbagi sama pertama barang yang , mereka jatuh ke dalam daun yang sama
simpul, sedangkan cd jatuh ke yang berbeda. Saat memeriksa kandidat yang mana
termasuk dalam transaksi, misalnya, Transaksi 004, setiap item dalam transaksi
di-hash pada simpul root. Misalnya, dengan hashing c dalam cd f , ia mencapai kiri kedua
node daun, dan dua itemset cd dan cf ditemukan menjadi himpunan bagian dari cd f seperti yang ditunjukkan dalam
pohon kiri Gambar 4.1 (b). Selanjutnya, dengan hashing d , df ditemukan di simpul daun kiri ketiga
(pohon tengah), tetapi dengan hashing f , tidak ada himpunan bagian dari cd f ditemukan di daun paling kanan
simpul (pohon kanan). Akibatnya, jumlah dukungan dari set item ini ditemukan, cd , cf ,
dan df , bertambah 1. Perhatikan bahwa, setelah semua transaksi diproses,
frekuensi kandidat af dan ag ditemukan menjadi 0. Ini berarti Apriori
dapat menghasilkan kandidat yang tidak ada dalam database yang diberikan.
Setelah penghitungan dukungan ini, F 2 = { cd, cf, df, dg } diturunkan. Ini sering terjadi
2-itemset dalam F 2 digunakan sebagai benih 3-itemset yang sering. Cd itemet dan cf
dalam F 2 berbagi item pertama c bergabung dan menghasilkan CD kandidat baru oleh apriori-gen
karena df juga termasuk dalam F 2 . Itemfet df dan dg juga bergabung,
tapi condidate yang dihasilkan dipangkas karena bagian yang fg tidak termasuk dalam F 2 .
Akibatnya, C 3 , satu set kandidat sering 3-item, hanya terdiri dari cd f . Kemudian,
Apriori menghitung dukungannya dengan memindai basis data lagi, dan memperoleh F 3 = { cd f }.
Tidak ada kandidat yang sering 4-itemet yang dapat dihasilkan dari F 3 ini karena mengandung
hanya satu set item. Dengan demikian, Apriori berakhir.

AprioriTid (Algoritma 4.3)


Apriori harus memindai seluruh basis data tiga kali untuk mendapatkan set item yang sering ini,
tetapi AprioriTid (Algoritma 4.3) memindai hanya sekali untuk pass pertama, dan membuat dan menggunakan
dataset baru C 1 dan C 2 untuk menghitung dukungan kandidat di C 2 dan C 3 , masing-masing.
Gambar 4.2 mengilustrasikan bagaimana AprioriTid menemukan set item yang sering dari dataset ini. C 2
dihasilkan sambil menghitung dukungan setiap kandidat dalam C 2 , sedangkan C 1 adalah gen-
dihapus langsung dari database yang diberikan. Misalkan t = 〈001 , {{ c } , { d }}〉 ∈ C 1 . Lalu, a
calon cd di C 2 ditambahkan ke C t karena t. set-of-itemset ({{ c } , { d }}) mengandung keduanya
1-itemset yang merupakan cd . Lebih tepatnya, cd ditambahkan ke C t karena merupakan penyatuan
dua 1-itemset di t , yang berarti Transaction 001 mendukung cd . Tidak ada kandidat lain
ditambahkan ke C t sebagai Transaksi 001 tidak mendukung calon lainnya di C 2 . Kemudian,
jumlah dukungan cd bertambah 1, dan 〈001 , {{ cd }}〉 ditambahkan ke C 2 . Demikian pula,
〈003 , {{ ac }}〉 ditambahkan ke C 2 karena Transaksi 003 mendukung ac ∈ C 2 , meskipun
entri yang terkait dengan 〈002 , {{ f }}〉 dari C 1 bukan karena Transaksi 002 tidak
mendukung 2-itemset. Akhirnya, C 2 memiliki 9 entri, seperti yang ditunjukkan pada Gambar 4.2, yang
ukuran lebih kecil dari pada basis data yang diberikan. C 3 dihasilkan dengan cara yang sama
selama penghitungan dukungan kandidat di C 3 . Karena kandidat unik di C 3
adalah cd f , hanya tiga entri C 2 , termasuk cd dan cf , yang penyatuannya adalah cd f ,
bertahan hidup di C 3 . Perhatikan bahwa C 3 dihasilkan, tetapi sebenarnya tidak pernah digunakan karena C 4 menjadi
kosong.

© 2009 oleh Taylor & Francis Group, LLC

Halaman 82

https://translate.googleusercontent.com/translate_f 73/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

74 Apriori

Basis data C1 C2 C3
TID Item TID Set-of-Itemset TID Set-of-Itemset TID Set-of-Itemset
001 CD 001 {{ c }, { d }} 001 {{ cd }} 004 {{ c df }}

002 f 002 {{ f }} 003 {{ ac }} 009 {{ cdf }}


003 ac 003 {{ a }, { c }} 004 {{ cd }, { cf }, { df }} 014 {{ cdf }}

004 cdf 004 {{ c }, { d }, { f }} 005 {{ cf }}


005 bcf 005 {{ b }, { c }, { f }} 006 {{ df }, { dg }, { fg }}
006 dfg 006 {{ d }, { f }, { g }} 008 {{ ac }, { ad }, { cd }}
007 Sebuah 007 {{ a }} 009 {{ cd }, { cf }, { cg },
{ df }, { dg }, { fg }}
008 acd 008 {{ a }, { c }, { d }}
012 {{ dg }}
009 cdfg 009 {{ c }, { d }, { f }, { g }}
014 {{ cd }, { cf }, { df }}
010 de 010 {{ d }, { e }}
011 bd 011 {{ b }, { d }}

012 dg 012 {{ d }, { g }}
013 ef 013 {{ e }, { f }}
014 cdf 014 {{ c }, { d }, { f }}

F1 C2 F2 C3 F3

Itemet Dukung Itemet Itemet Dukung Itemet Itemet Dukung


{a} 3 { ac } { cf } { cd } 5 { cdf } { cdf } 3
{c} 7 { iklan } { cg } { cf } 4
{d} 9 { af } { df } { df } 4
{f} 7 { ag } { dg } { dg } 3

{g} 3 { cd } { fg }

Gambar 4.2 Contoh AprioriTid.

Aturan asosiasi (Algoritma 4.2)


Selanjutnya, aturan asosiasi dihasilkan dari set item yang sering ditemukan menurut
Algoritma 4.2 untuk minconf yang diberikan = 0 . 6. Mari kita pertimbangkan 2-itemset,
cd , cf , df , dan dg , pertama. Jelas bahwa hanya dua jenis aturan yang dapat dibuat
dari setiap itemset. Tabel 4.2 merangkum aturan yang dihasilkan dan kepercayaannya. Itu
aturan asosiasi 1 dan 8 adalah keluaran oleh Algoritma 4.2 karena memenuhi
batasan minconf . Prosedur gen-gen dipanggil untuk masing-masing memuaskan
aturan, tetapi tidak menghasilkan apa-apa karena tidak lagi menghasilkan aturan lain dari
2-itemet.
Kemudian, Algoritma 4.2 mencoba untuk menghasilkan aturan asosiasi dari 3-itemset yang sering,
cd f . Pertama, ia menghasilkan tiga aturan asosiasi dengan konsekuensi 1 item seperti yang ditunjukkan dalam
tersisa setengah dari Tabel 4.3 . Algoritma 4.2 mengembalikan semuanya karena memenuhi minconf
paksaan. Setelah itu, prosedur ap-genrules disebut, mengambil cd f dan { c, d, f }

TABEL 4.2 Aturan Asosiasi Dihasilkan dari Sering


2-Itemet
Tidak. Aturan Kepercayaan Tidak. Aturan Kepercayaan
1 c⇒d 0,71 5 d⇒f 0,44
2 d⇒c 0,56 6 f⇒d 0,57
3 c⇒f 0,57 7 d⇒g 0,33
4 f⇒c 0,57 8 g⇒d 1.0

© 2009 oleh Taylor & Francis Group, LLC

Halaman 83

4.4 Dua Contoh Ilustrasi 75


https://translate.googleusercontent.com/translate_f 74/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

TABEL 4.3 Aturan Asosiasi Dihasilkan dari Sering


3-Itemset
Konsekuensi 1-Item Konsekuensi 2-Item

Tidak. Aturan Kepercayaan Tidak. Aturan Kepercayaan


9 cd ⇒ f 0,60 12 f ⇒ cd 0,43
10 cf ⇒ d 0,75 13 d ⇒ cf 0,33
11 df ⇒ c 0,75 14 c ⇒ df 0,43

sebagai argumennya. Set 2-itemset { cd, cf, df } diturunkan oleh function apriori-
gen yang disebut dalam ap-genrules, masing-masing digunakan sebagai konsekuensi dari yang baru
aturan asosiasi. Tiga aturan yang dihasilkan ditunjukkan pada bagian kanan dari Tabel 4.3.
Tapi, tidak ada yang bisa menjadi output karena kepercayaan mereka kurang dari yang ditentukan
minconf = 0 . 6. Karena konsekuensi 3-item tidak dapat diperoleh dari cd f , ap-genrules
berakhir, dan Algoritma 4.2 juga berakhir karena F 4 = ∅.

4.4.1.2 Penambangan Pola Berurutan

Selanjutnya, kami menemukan pola sekuensial maksimal yang sering dari database transaksi yang sama
pada Tabel 4.1 dengan menggunakan AprioriAll (Algoritma 4.4) untuk minsup = 0 . 3. Gambar 4.3
menggambarkan aliran dari tiga fase pertama, yaitu, fase sortir, fase fitemset, dan

Database asli Database yang disortir Set item yang sering


TID SID TT Item SID TID TT Item Fitemset Dipetakan ke

001 1 03 Mei CD 1 001 03 Mei CD (c) 1

002 1 05 Mei f 1 002 05 Mei f (d) 2

003 4 05 Mei ac 1 010 08 Mei de ( cd ) 3

004 3 05 Mei cdf 1 013 09 Mei ef (f) 4

005 2 05 Mei bcf 2 005 05 Mei bcf ( cf ) 5


006 3 06 Mei dfg 2 011 08 Mei bd
007 4 06 Mei Sebuah 3 004 05 Mei cdf
008 4 07 Mei acd 3 006 06 Mei dfg
009 3 08 Mei cdfg 3 009 08 Mei cdfg

010 1 08 Mei de 3 012 09 Mei dg

011 2 08 Mei bd 3 014 10 Mei cdf

012 3 09 Mei dg 4 003 05 Mei ac

013 1 09 Mei ef 4 007 06 Mei Sebuah

014 3 10 Mei cdf 4 008 07 Mei acd

Database yang diubah


SID Urutan Urutan berubah Setelah pemetaan

1 <( cd ) ( f ) ( de ) ( ef )> <{(c), ( d ), ( cd )} {( f )} {( d )} {( f )}> <{1, 2, 3} {4} {2} {4}>

2 <( bcf ) ( bd )> <{( c ), ( f ), ( cf )} {( d )}> <{1, 4, 5} {2}>

3 <( cdf ) ( dfg ) ( cdfg ) ( dg ) ( cdf )> <{( c ), ( d ), ( cd ), ( f ), ( cf )} {( d ), ( f )} <{1, 2, 3, 4, 5} {2, 4)} {1, 2, 3, 4, 5} {2} {1, 2, 3, 4, 5}>
{( c ), ( d ), ( cd ), ( f ), ( cf )} {( d )}
{( c ), ( d ), ( cd ), ( f ), ( cf )}>

4 <( ac ) ( a ) ( acd )> <{( c )} {( c ), ( d ), ( cd )}> <{1} {1, 2, 3}>

Gambar 4.3 Transformasi dari database asli ke database yang diubah.

© 2009 oleh Taylor & Francis Group, LLC

Halaman 84

76 Apriori

TABEL 4.4 Urutan yang Sering dan Urutan Kandidat


F1 C2 F2 C3 F3 C4 F4
〈1〉 〈11〉 〈12〉 〈21〉 〈13〉 〈31〉 〈11〉 〈12〉 〈111〉 〈112〉 〈113〉 〈114〉 〈124〉 〈142〉 〈1244〉 〈1424〉
〈2〉 〈14〉 〈41〉 〈15〉 〈51〉 〈22〉 〈13〉 〈14〉 〈122〉 〈132〉 〈124〉 〈142〉 〈144〉 〈224〉 〈1424〉 〈2424〉

https://translate.googleusercontent.com/translate_f 75/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
〈3〉 〈23〉 〈32〉 〈24〉 〈42〉 〈25〉 〈22〉 〈32〉 〈134〉 〈144〉 〈222〉 〈224〉 〈242〉 〈324〉 〈2244〉 〈3424〉
〈4〉 〈52〉 〈33〉 〈34〉 〈43〉 〈35〉 〈24〉 〈42〉 〈242〉 〈322〉 〈324〉 〈342〉 〈342〉 〈244〉 〈2424〉
〈5〉 〈53〉 〈44〉 〈45〉 〈54〉 〈55〉 〈52〉 〈34〉 〈244〉 〈422〉 〈424〉 〈442〉 〈424〉 〈344〉 〈3244〉
〈44〉 〈522〉 〈344〉 〈444〉 〈3424〉

fase transformasi pada contoh ini. Pada fase sortir, transaksi dalam database
diurutkan dengan sequence-id (SID) sebagai kunci utama dan waktu transaksi (TT) sebagai
kunci minor. Kemudian, pada fase fitemset, fitemets diturunkan dengan cara yang mirip dengan
Apriori. Perhatikan bahwa dukungan fitemset adalah jumlah urutan transaksi,
termasuk itemset, tetapi bukan jumlah transaksi termasuk itu. Dengan demikian,
seperangkat 1-itemet yang sering dalam hal ini adalah { c, d, f }. Dalam fase transformasi,
setiap urutan transaksi ditransformasikan menjadi daftar set fitemets seperti yang ditunjukkan pada
bagian bawah Gambar 4.3 dengan mengganti setiap transaksi dalam urutan dengan satu set
fitemsets yang berisi transaksi. Perhatikan bahwa transaksi kedua dijatuhkan di
urutan transaksi 4 karena hanya terdiri dari satu set item yang tidak sering { a }.
AprioriAll menghasilkan satu set urutan kandidat C 2 dari F 1 dengan memanggil fungsi
apriori-gen-2. C 2 yang dihasilkan ditunjukkan pada Tabel 4.4. Fungsi apriori-gen-2 adalah
mirip dengan apriori-gen, tetapi berbeda dalam operasi gabungannya: Operasi gabungan apriori-
gen-2 menghasilkan dua k- followingences baru dari dua ( k −1)-followingences kapan pun mereka berada
joinable, sedangkan operasi gabungan apriori-gen hanya menghasilkan satu k -itemset dari
dua ( k - 1) -itemset. Sebagai contoh, ketika menurunkan C 2 , keduanya sequ12〉 dan 〈12
〈21〉 dihasilkan dari 〈1〉 dan 〈2〉. Selain itu, 〈11〉 juga dihasilkan dengan bergabung dengan
urutan identik 〈1〉. Ini diperlukan untuk menghasilkan urutan di mana banyak
kejadian fitemset diizinkan.
Menghitung dukungan dari setiap urutan kandidat dilakukan dengan cara yang sama seperti
Apriori menggunakan hash-tree, dan F 2 , seperangkat 2-sequence yang sering, diturunkan seperti yang ditunjukkan
pada Tabel 4.4. Ini F 2 digunakan untuk menghasilkan satu set urutan kandidat C 3 juga. Catatan
bahwa dari 〈11〉 dan 〈12〉, 3-urutan 〈112〉 dihasilkan dengan bergabung dengan mereka, tetapi tidak 〈121〉
karena selanjutnya 〈21〉 tidak termasuk dalam F 2 . Proses ini terdiri dari
generasi didat dan penghitungan dukungan diulang sampai tidak ada urutan yang lebih sering
diturunkan. Dalam contoh ini, karena tidak ada calon dari 5-urutan dapat dihasilkan
F 4 , F 5 menjadi kosong dan dengan demikian, iterasi berakhir. Akhirnya, AprioriAll mengeluarkan
〈1424〉, 〈2424〉, 〈3424〉, 〈11〉, 〈13〉, dan 〈52〉 sebagai urutan sering maksimal sebagai
urutan sering lainnya termasuk dalam salah satunya.

4.4.2 Evaluasi Kinerja


Di bagian ini, kami membahas kinerja Apriori sehubungan dengan runtime-nya,
jumlah aturan asosiasi berasal dan sering itemset ketika minsup , minconf ,
dan jumlah transaksi bervariasi. Kami menggunakan implementasinya oleh Christian
Borgelt [1] untuk penilaian ini karena memberikan opsi yang memungkinkan kami untuk mensimulasikan a

© 2009 oleh Taylor & Francis Group, LLC

Halaman 85

4.4 Dua Contoh Ilustrasi 77

50
minconf = 90%
45 minconf = 80%
minconf = 70%
40
minconf = 60%
35 minconf = 50%

30

25

https://translate.googleusercontent.com/translate_f 76/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
Runtime
20

15

10

0
0 5 10 15 20 25 30
Minsup (%)

Gambar 4.4 Runtime untuk berbagai minsup dan minconf nilai-nilai.

implementasi naif yang paling dekat dengan Apriori asli. Jadi, kami menonaktifkan fungsinya
menyortir item sehubungan dengan dukungan mereka dan memfilter item yang tidak digunakan dari
transaksi.
Sebagai dataset benchmark, kami menggunakan dataset Mushroom yang dapat diunduh dari UCI
Machine Learning Repository [8], yang berisi 8124 kasus dengan 23 nominal
upeti termasuk atribut kelas. Setiap kasus dianggap sebagai transaksi, dan masing-masing
nilai atribut dari setiap kasus dikonversi menjadi item dengan bergabung dengan korespondensi
misalnya nama atribut, “cap-shape = x,” di mana cap-shape adalah nama atribut
dan x adalah nilai atribut. Dalam 2480 kasus, nilai atribut dari satu atribut adalah miss-
ing. Karena kami mengabaikan nilai yang hilang, transaksi yang terkait dengannya memiliki 22
item, sedangkan yang lain memiliki 23 item. Beberapa nilai atribut memiliki arti berbeda
untuk atribut yang berbeda. Misalnya, "n" berarti "tidak ada" untuk atribut "bau", sementara
"Coklat" untuk "warna topi." Akibatnya, jumlah pasangan atribut dan nama yang valid
nilai atribut, yaitu, jumlah item yang berbeda, menjadi 118.
Pertama, kita menunjukkan runtime dari Apriori untuk berbagai minsup dan minconf nilai-nilai
pada Gambar 4.4. Semua runtime yang ditampilkan di bagian ini diukur pada PC yang berjalan
Windows XP dengan 2,8 GHz Pentium IV dan memori 4 GB. Dalam percobaan ini,
jumlah maksimal item per aturan diatur ke 5 untuk kenyamanan. Kami juga terbatas
jumlah minimal item per aturan ke 2 untuk mencegah aturan tanpa premis
dari yang diturunkan. Selain itu, pohon awalan tidak digunakan untuk menyimpan transaksi.
Dari hasil, jelas bahwa perubahan minconf tidak memengaruhi runtime
begitu banyak, tetapi runtime secara eksponensial meningkat sebagai minsup menjadi lebih kecil. Itu
Kecenderungan serupa diamati di Gambar 4.5 , yang menunjukkan hubungan antara minsup
dan jumlah aturan asosiasi turunan. Ini karena jumlahnya yang sering
itemset secara eksponensial meningkat sebagai minsup menjadi lebih kecil, seperti yang ditunjukkan pada Gambar 4.6 .

© 2009 oleh Taylor & Francis Group, LLC

Halaman 86

78 Apriori

4000
minconf = 90%
minconf = 80%
3500
minconf = 70%
minconf = 60%
3000 minconf = 50%

2500

2000

1500

1000
Jumlah aturan asosiasi (k)

https://translate.googleusercontent.com/translate_f 77/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
500

0
0 5 10 15 20 25 30
Minsup (%)

Gambar 4.5 Jumlah aturan asosiasi berasal untuk berbagai minsup dan minconf
nilai-nilai.

Hasil ini menunjukkan bahwa minsup , atau properti antimonotonicity dari itemset, sangat
efektif untuk memangkas itemset yang tidak sering.
Selanjutnya, kami menunjukkan hubungan antara runtime dan jumlah transaksi
pada Gambar 4.7 . Dalam evaluasi ini, kami menyalin dataset asli beberapa kali (hingga

1000

800

600

400

200set item yang sering (k)


Jumlah

0
0 5 10 15 20 25 30

Dukung (%)

Gambar 4.6 Jumlah sering itemset untuk berbagai minsup nilai-nilai.

© 2009 oleh Taylor & Francis Group, LLC

Halaman 87

4.4 Dua Contoh Ilustrasi 79

45
minconf = 90%
minconf = 80%
40
minconf = 70%
minconf = 60%
35 minconf = 50%

30

25
Runtime

20

15

10
x1 x2 x3 x4
Ukuran dataset

https://translate.googleusercontent.com/translate_f 78/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
Gambar 4.7 Runtime untuk berbagai ukuran dataset ( minsup = 5).

4 kali). Perhatikan bahwa fraksi setiap item tetap sama untuk semua dataset, jadi
adalah jumlah aturan asosiasi yang dihasilkan (frequent itemset). Gambar 4.7 menunjukkan
bahwa runtime meningkat secara linear ketika jumlah transaksi menjadi lebih besar.
Akibatnya, di bawah distribusi tertentu item, minsup jauh lebih berpengaruh
ke runtime daripada minconf dan jumlah transaksi di Apriori.
Akhirnya, kami menyebutkan secara singkat aturan asosiasi yang ditambang melalui percobaan, es-
terutama, untuk kenyamanan, mereka yang hanya memiliki satu item yang mewakili kelas
atribut dalam konsekuensinya. Nilai kelas bisa "dapat dimakan" (e) atau "beracun" (p).
Aturan tipikal ditemukan di bawah minsup = 0 . 3 dan minconf = 0 . 9 adalah “bau = n ukuran insang
= b ring-number = o ⇒ class = e, ”yang merupakan yang paling sederhana di antara mereka yang
konsekuensinya adalah "class = e," kepercayaan adalah 1.0, dan dukungan maksimum (0.331). Ini
aturan berarti jamur dapat dimakan jika urutannya tidak ada, ukuran insangnya luas, dan
jumlah cincinnya adalah satu. Atribut “bau” dan “ukuran insang” muncul sebagai yang pertama
dan node tes ketiga, masing-masing, dalam pohon keputusan yang dipelajari dari dataset ini oleh
J48, pembelajar pohon keputusan yang tersedia di Weka, di bawah pengaturan standarnya. Aturan serupa
“Bau = n spora-cetak-warna = w-ukuran-ins = b ⇒ kelas = e” dapat diturunkan dari
pohon keputusan dan kepercayaannya adalah 1,0 juga, tetapi itu benar hanya untuk 528 kasus, sedangkan
aturan asosiasi berlaku untuk 2689 kasus. Di sisi lain, tidak ada aturan yang percaya diri
adalah 1.0 dan konsekuen adalah “class = p” ditemukan di bawah pengaturan ini karena minsup
terlalu tinggi. Saat mengatur minsup = 0 . 2, 470 aturan semacam itu ditemukan.
Secara umum kita dapat memperoleh sejumlah kecil aturan asosiasi dalam waktu singkat untuk
minup tinggi , tetapi banyak dari mereka bisa sepele. Untuk menemukan aturan yang lebih menarik, kami punya
menggunakan lebih kecil minsup , tetapi mengarah ke runtime tidak dapat diterima dan sejumlah besar
aturan asosiasi, yang pada gilirannya akan membuat sulit untuk menemukan asosiasi yang menarik

© 2009 oleh Taylor & Francis Group, LLC

Halaman 88

80 Apriori

aturan Algoritme yang lebih efisien dan ukuran yang lebih baik diperlukan agar sering ditemukan
itemset dan aturan asosiasi yang menarik, yang merupakan topik dari bagian selanjutnya.

4.5 Topik Tingkat Lanjut


Sejak proposal pertama pola sering dan algoritma asosiasi aturan penambangan
oleh Agrawal dan Srikant, ada banyak publikasi tentang berbagai jenis
peningkatan, ekstensi, dan aplikasi, mulai dari penambangan data yang dapat diukur dan efisien
metodologi, untuk menangani beragam tipe data, berbagai penambangan yang diperluas
tugas, dan berbagai aplikasi baru. Beberapa topik lanjutan yang penting adalah
dijelaskan secara singkat di bagian ini. Ada tutorial dan survei yang bagus untuk sering dilakukan
penambangan pola oleh Han et al. [16] dan Goethals [15] yang mengandung jumlah besar
referensi.

4.5.1 Peningkatan dalam Penambangan Pola Seringkali Tipe Apriori


Ada banyak upaya untuk merancang algoritma yang lebih efisien dari itemset yang sering
menambang dalam kerangka algoritma Apriori karena mereka menghasilkan kandidat. Ini
termasuk teknik berbasis hash, partisi, pengambilan sampel, dan menggunakan format data vertikal.

https://translate.googleusercontent.com/translate_f 79/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

Teknik berbasis hash dapat mengurangi ukuran set item kandidat. Setiap itemset
di-hash ke dalam bucket yang sesuai dengan menggunakan fungsi hash yang sesuai.
Karena ember dapat berisi set item yang berbeda, jika jumlahnya kurang dari minimum
dukungan, itemset ini dalam ember dapat dihapus dari set kandidat.
DHP [26] menggunakan ide ini.
Partisi dapat digunakan untuk membagi seluruh masalah penambangan menjadi n lebih kecil
yang [29]. Dataset dibagi menjadi n partisi yang tidak tumpang tindih sehingga
setiap partisi masuk ke memori utama dan setiap partisi ditambang secara terpisah.
Karena setiap itemset yang berpotensi sering harus terjadi sebagai itemset yang sering
di setidaknya salah satu partisi, semua itemet yang sering ditemukan dengan cara ini adalah
kandidat, yang dapat diperiksa dengan mengakses seluruh dataset hanya sekali.
Pengambilan sampel hanya untuk menambang sebagian kecil sampel acak dari seluruh data.
Karena tidak ada jaminan bahwa kami dapat menemukan semua set item yang sering, normal
praktiknya adalah menggunakan ambang dukungan yang lebih rendah. Pertukaran harus dibuat antara
akurasi dan efisiensi.
Format data vertikal menghubungkan TID dengan setiap set item, sedangkan Apriori menggunakan
format data horizontal, yaitu, item yang sering dikaitkan dengan masing-masing
transaksi. Dengan format data vertikal, penambangan dapat dilakukan dengan mengambil
persimpangan TIDs. Hitungan dukungan hanyalah panjang dari set TID
untuk itemset. Tidak perlu memindai database karena set TID membawa
informasi lengkap yang diperlukan untuk dukungan komputasi. Teknik ini membutuhkan,

© 2009 oleh Taylor & Francis Group, LLC

Halaman 89

4.5 Topik Tingkat Lanjut 81

Algoritma 4.5 Algoritma FP-Growth: F [ I ] (FP-tree)

F [ I ] = ∅;
foreach i ∈ I yang ada di D dalam frekuensi meningkat agar mulai
F [ I ] = F [ I ] ∪ { I ∪ { i }};
D i = ∅;
H = ∅;
foreach j ∈ I dalam D sehingga j <i do begin
// ( j lebih sering daripada saya )
Pilih j yang mendukung ( saya ∪ { i, j }) ≥ minsup ;
H = H ∪ { j };
akhir
foreach ( Tid, X ) ∈ D dengan i ∈ X do
D i = D i ∪ {( Tid, { X \ { i }} ∩ H )};
Bangun FP-tree bersyarat dari D i ;
Panggil F [ I ∪ { i }] (bersyarat FP-pohon);
F [ I ] = F [ I ] ∪ F [ I ∪ { i }] (pohon FP bersyarat);
akhir

diberikan satu set kandidat item, bahwa TUT mereka tersedia di memori utama,
yang tentu saja tidak selalu demikian. Namun, sangat mungkin untuk secara signifikan
kurangi ukuran total dengan menggunakan pencarian kedalaman-pertama. Eclat [43] menggunakan strategi ini.
Dalam pendekatan mendalam-pertama, perlu untuk menyimpan paling banyak daftar TID
k -itemsets dengan pertama sama k - 1 item ( k - 1 prefix) pada kedalaman d dengan k ≤ d
dalam memori utama.

https://translate.googleusercontent.com/translate_f 80/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

4.5.2 Penambangan Pola Yang Sering Tanpa Pembuatan Calon


Peningkatan yang paling menonjol dari Apriori adalah metode yang disebut FP-growth
(pertumbuhan pola sering) yang berhasil menghilangkan generasi kandidat [17, 18].
Ini mengadopsi strategi membagi dan menaklukkan dengan (1) mengompresi database yang mewakili
item sering menjadi struktur yang disebut FP-tree (pohon pola sering) yang mempertahankan semua
informasi penting dan (2) membagi database terkompresi menjadi satu set
database bersyarat, masing-masing terkait dengan satu set item yang sering dan masing-masing menambang
satu secara terpisah. Memindai basis data hanya dua kali. Pada pemindaian pertama, semua item sering
dan jumlah dukungan mereka (frekuensi) diturunkan dan mereka diurutkan dalam urutan
dari jumlah dukungan menurun dalam setiap transaksi. Dalam pemindaian kedua, item di masing-masing
transaksi digabung menjadi pohon-FP dan item (node) yang muncul secara umum di
transaksi yang berbeda dihitung. Setiap node dikaitkan dengan item dan jumlahnya.
Node dengan label yang sama dihubungkan oleh pointer yang disebut node-link. Sejak item
diurutkan dalam urutan frekuensi yang menurun, node lebih dekat ke akar FP-
tree dibagi oleh lebih banyak transaksi, sehingga menghasilkan representasi yang sangat kompak
yang menyimpan semua informasi yang diperlukan. Algoritma pertumbuhan pola bekerja pada FP-tree

© 2009 oleh Taylor & Francis Group, LLC

Halaman 90

82 Apriori

dengan memilih item dalam urutan peningkatan frekuensi dan penggalian sering
itemset yang berisi item yang dipilih dengan secara rekursif menyebut dirinya pada kondisi
FP-tree, yaitu, FP-tree dikondisikan untuk item yang dipilih. FP-growth adalah urutan
besarnya lebih cepat dari algoritma Apriori asli. Algoritma FP-growth
diberikan dalam Algoritma 4.5. F [∅] (FP-tree) mengembalikan semua set item yang sering. Seperti dicatat
dengan mudah, strategi memecah belah dan menaklukkan yang disebutkan oleh Han et al. setara dengan
pencarian mendalam-pertama tanpa pembuatan kandidat. The D i disebut i database yang -projected
dan umumnya jauh lebih kecil daripada FP-tree dari seluruh database. Dengan demikian diharapkan
bahwa D i cocok di memori utama bahkan jika yang terakhir tidak. Ide pertumbuhan pola
juga dapat diterapkan untuk penambangan itemset yang ditutup [27] (lihat Bagian 4.5.4) dan berurutan
penambangan pola [28] (lihat Bagian 4.5.8).

4.5.3 Pendekatan Tambahan


Ketika database tidak stasioner dan kumpulan transaksi baru terus ditambahkan,
Kebetulan beberapa item yang sering menjadi tidak sering (pecundang) dan
beberapa item lain yang jarang menjadi sering (pemenang). Menjalankan kembali Apriori
atau algoritma penambangan pola yang sering lainnya setiap kali database diperbarui
tidak efisien. Algoritma FUP dalam [12] menyediakan cara untuk memperbarui secara bertahap
itemset sering menggunakan kerangka kerja Apriori. Ini bekerja secara efisien pada pembaruan
karena ukuran kenaikan basis data D umumnya jauh lebih kecil daripada
database awal D .
Mari F k , F k menjadi sering k -itemsets di D dan D ∪ D , masing-masing, dan C k menjadi
kandidat itemset sering terjadi di D ∪ D . Pada k -th iterasi, C k dapat dihasilkan
dari F k −1 menggunakan fungsi apriori-gen. Setiap itemset di F k yang berisi salah satu dari
pecundang ukuran k - 1 (orang-orang yang berada di F k -1 tapi tidak di F k )-1karena subsetnya difilter
keluar dari F k tanpa memeriksa D . Frekuensi dari set item yang tersisa dalam F k adalah
dihitung lebih dari D dan mereka yang sering dalam D ∪ D diidentifikasi ( A ), dan dikeluarkan dari
C k karena kita tahu bahwa mereka sering. Itemet yang tersisa adalah item yang tidak ada di
F k . Frekuensi mereka dihitung lebih dari D dan mereka yang tidak sering dalam D dihapus
dari C k karena kita tahu bahwa mereka jarang terjadi di D . Frekuensi sisanya
elemen di C k dihitung lebih D ∪ D dan yang sering dipertahankan ( B ). F k

https://translate.googleusercontent.com/translate_f 81/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
adalah A ∪ B . Seperti dapat dilihat di atas, FUP harus memindai database yang diperbarui untuk setiap k , tetapi
ukuran C k diharapkan akan sangat kecil. Percobaan menunjukkan bahwa itu hanya
sekitar 2 hingga 5% dari yang menjalankan kembali Apriori untuk database yang diperbarui, dan FUP berjalan
2 hingga 16 kali lebih cepat dari Apriori.

4.5.4 Representasi Terkondensasi: Pola Tertutup


dan Pola Maksimal
Set item (pola) X adalah set item maksimal jika (1) tidak ada itemet X sedemikian rupa
X adalah superset X yang tepat . Set item (pola) X adalah set item tertutup jika (1) ada
tidak ada itemset X sehingga X adalah superset X yang tepat dan (2) setiap transaksi
mengandung X juga mengandung X . Mereka sering jika dukungan mereka tidak kurang dari
minsup . Set item tertutup memenuhi I ( T ( X )) = X , di mana T ( X ) = { t ∈ D | X ⊆ t } dan
Saya ( S ) = ∩ t ∈ S t untuk S ⊆ D . Untuk dua set item X dan Y , jika X ⊂ Y dan dukungannya

© 2009 oleh Taylor & Francis Group, LLC

Halaman 91

4.5 Topik Tingkat Lanjut 83

sama, X bukan merupakan itemset tertutup. Itemet yang ditutup adalah representasi lossless,
sedangkan itemset maksimal tidak. Dengan demikian, setelah itemset tertutup ditemukan, semua
itemset sering dapat diturunkan dari mereka. Aturan X ⇒ Y adalah aturan asosiasi
pada itemset yang sering ditutup jika (1) X dan X ∪ Y merupakan itemset yang sering ditutup,
(2) tidak ada itemet yang sering ditutup Z sehingga X ⊂ Z ⊂ ( X ∪ Y ), dan
(3) kepercayaan aturan tidak kurang dari minconf . Kumpulan asosiasi lengkap
aturan dapat dihasilkan setelah itemet yang sering ditutup ditemukan.
CLOSET mem-partisi database dan menguraikan masalah menjadi satu set subprob-
kelihatannya, masing-masing dengan database bersyarat yang sesuai, dan dikenal efisien [27].
Pertama, semua item yang sering diturunkan dan diurutkan dalam urutan dukungan menurun
hitung sebagai daftar f = 〈i 1 , i 2 , ..., i n〉. The j th subproblem (1 ≤ j ≤ n ) adalah untuk menemukan com- yang
set kumpulan itemset tertutup yang sering berisi i n + 1− j tetapi tidak i k (untuk n + 1− j <k ≤ n ).
The i n + 1- j Database bersyarat adalah bagian dari transaksi yang mengandung i n + 1- j , di mana
semua kemunculan item yang jarang terjadi, item i n + 1− j , dan item yang mengikuti i n + 1− j di
daftar f dihilangkan. FP-tree yang sesuai dihasilkan dan digunakan untuk pencarian.
Setiap subproblem didekomposisi secara rekursif jika perlu. Barang yang sering ditutup -
set diidentifikasi dari database bersyarat menggunakan properti berikut. Jika
X adalah itemset yang sering ditutup, tidak ada item yang muncul di setiap transaksi di
yang X basis data -conditional. Jika suatu itemet Y adalah set maksimal item yang muncul
setiap transaksi dalam database bersyarat- X , dan X ∪ Y tidak dimasukkan oleh beberapa transaksi
sudah sering menemukan itemset tertutup dengan dukungan identik, X ∪ Y adalah sering
itemset tertutup. Seperti dalam FP-growth, optimalisasi lebih lanjut dimungkinkan.
LCM adalah algoritma lain, yang dikenal sebagai yang paling efisien, untuk menemukan pola tertutup
(itemset) [34]. Ini sering mendapatkan itemset tertutup melalui operasi penutupan tanpa
menghasilkan itemset yang tidak tertutup. Penutupan itemset X , dilambangkan dengan Clo ( X ), adalah
itemset tertutup terkecil yang unik termasuk X , yaitu, I ( T ( X )). Tanpa kehilangan
umumnya, kami menganggap semua item dalam database transaksi secara unik diindeks oleh
bilangan alami yang berdekatan. Kemudian, X ( i ) = X ∩ {1 , ..., i } disebut awalan-i dari
X , yang merupakan himpunan bagian dari X yang hanya memiliki elemen tidak lebih besar dari i . The Indeks inti
dari itemset X yang ditutup , dilambangkan dengan core i ( X ), adalah indeks minimum i sedemikian rupa sehingga
T ( X ( i )) = T ( X ). LCM menghasilkan, dari itemset X yang sering ditutup , yang lain sering
ditutup itemset Y sedemikian rupa sehingga Y = Clo ( X ∪ { i }) dan X ( i - 1) = Y ( i - 1), di mana saya adalah
item yang memenuhi i ∈ X dan i> core i ( X ). Y disebut sebagai prefix-preserving closure
ekstensi , atau ppc-ekstensi untuk jangka pendek, dari X . LCM secara rekursif menerapkan penutupan ini
operasi untuk itemset tertutup dari itemset kosong ke yang lebih besar di kedalaman-pertama
cara. Kelengkapan dan nonredundansi dari penghitungan item tertutup oleh

https://translate.googleusercontent.com/translate_f 82/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
LCM dijaminada
maka hanya oleh properti
satu ditutupberikut:
itemsetJika Y adalahYitemset
X sehingga tertutup kosong, X . Sejak
adalah ppc-perpanjangan
LCM menghasilkan itemet sering ditutup baru Y dari T ( X ) dan subset dari I , its
kompleksitas waktu untuk menghitung semua item yang sering ditutup untuk X adalah O (|| T ( X ) || × | I |),
dimana || T ( X ) || adalah penjumlahan ukuran dari setiap transaksi yang termasuk dalam T ( X ). Biarkan C menjadi
satu set semua itemset tertutup sering terjadi di D . Kemudian, kompleksitas waktu LCM adalah linier
dalam | C | dengan faktor tergantung pada || T || × | Saya |. Bahkan, untuk meningkatkan waktu perhitungan
dan penggunaan memori, LCM menggabungkan tiga teknik: pengiriman kejadian, kapan saja
pengurangan basis data, dan uji pelestarian awalan cepat. Kejadian menghasilkan konstruksi

© 2009 oleh Taylor & Francis Group, LLC

Halaman 92

84 Apriori

T ( X ∪ { i }) untuk semua i dengan memindai T ( X ) hanya sekali, bukan memindai untuk setiap i .
Pengurangan basis data kapan saja mengurangi ukuran basis data dengan menghapus yang tidak perlu
transaksi dan barang dari itu setiap kali sebelum iterasi dimulai dengan saat ini
itemset tertutup untuk mengurangi waktu komputasi dan penggunaan memori. Awalan cepat-
mempertahankan tes secara signifikan mengurangi jumlah item yang akan diakses untuk menguji
persamaan X ( i - 1) = Y ( i - 1) dengan memeriksa hanya item j sehingga j <i , j ∈ X ( i - 1)
dan mereka dimasukkan dalam transaksi dengan ukuran minimum dalam T ( X ∪ { i }) sebagai gantinya
untuk benar-benar menghasilkan penutupan saat melakukan ppc-extention. Jika item j adalah
termasuk dalam setiap transaksi dalam T ( X ∪ { i }), maka j termasuk dalam Clo ( X ∪ { i }), dengan demikian
X ( i - 1) = Y ( i - 1).

4.5.5 Aturan Asosiasi Kuantitatif


Ketika item memiliki nilai numerik kontinu, algo- listet frequent itemset saat ini
rithms tidak berlaku kecuali nilainya didiskritisasi dan interval yang sesuai
didefinisikan. Ini dikenal sebagai penambangan items frequent kuantitatif (QFI) . Item bisa
menjadi kategoris dan numerik. Contohnya adalah {〈Usia: [30,39]〉,〈Pemilik rumah:
Ya〉,〈Menikah: Ya〉}, di mana suatu item direpresentasikan sebagai atribut 〈: nilainya (rentang)〉.
Penambangan QFI pada awalnya diusulkan dalam studi asosiasi kuantitatif penambangan
aturan [31], tetapi kemudian pengelompokan subruang berbasis kepadatan telah umum diterapkan
karena QFI dipandang sebagai hyper-rectangular axis-parallel yang mengandung sebuah cluster
transaksi dalam ruang atribut numerik. SUBCLUE [20] dan QFIMiner [36] adalah
dua contoh seperti itu. QFIMiner menemukan di O ( N log N ) semua cluster padat tidak kurang dari
minsup di semua subruang yang dibentuk oleh atribut numerik dan kategoris, di mana N
adalah jumlah transaksi. Interval nilai optimal untuk setiap item numerik di masing-masing
frequent itemset diperoleh dengan algoritma level-wise Apriori-like dengan antimono-
properti tonisitas cluster padat. QFIMiner terbukti lebih cepat daripada SUBCLUE
dan timbangannya sangat baik.

4.5.6 Menggunakan Ukuran Penting Lain / Menarik


Masalah kerangka dukungan-kepercayaan adalah bahwa tidak ada cara yang valid untuk
menentukan nilai yang sesuai untuk minsup dan minconf . Terutama pengaturan minsup terlalu
tinggi akan kehilangan aturan penting dan pengaturan terlalu rendah akan menghasilkan terlalu banyak aturan.
Bahkan, ada kemungkinan bahwa aturan dengan itemset yang jarang sangat menarik bagi sebagian orang
aplikasi. Lebih lanjut, kerangka kerja ini gagal menangkap gagasan korelasi. Bisa
terjadi bahwa aturan X ⇒ Y yang memenuhi kedua minsup dan minconf kendala memiliki
tidak ada korelasi antara X dan Y , yaitu, dukungan ( X ) × dukungan ( Y ) = dukungan ( X ∪ Y ).
Oleh karena itu, pendekatan alternatif adalah dengan menggunakan langkah-langkah lain yang memperhitungkan
portance atau ketertarikan suatu aturan dan pilih aturan yang memiliki skor tinggi untuk ini
Pengukuran. Dukungan dan kepercayaan masih dapat digunakan sebagai kendala (pengaturan minsup
dan minconf to 0 berarti tidak menggunakannya sama sekali). Langkah-langkah ini termasuk mengangkat, meningkatkan,

https://translate.googleusercontent.com/translate_f 83/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
redundansi, produktivitas,
koefisien korelasi, daninformasi,
perolehan ukuran statistik terkenal seperti chi-square,
dan sebagainya.
Angkat dan leverage mewakili rasio dan perbedaan antara dukungan dan
dukungan yang diharapkan jika X dan Y masing-masing independen. Mereka mencoba

© 2009 oleh Taylor & Francis Group, LLC

Halaman 93

4.5 Topik Tingkat Lanjut 85

untuk menemukan aturan dengan korelasi kuat antara X dan Y .

kepercayaan diri ( X ⇒ Y ) dukungan ( X ⇒ Y )


lift ( X ⇒ Y ) = =
kepercayaan diri (∅ ⇒ Y ) dukungan ( X ) × dukungan ( Y )
leverage ( X ⇒ Y ) = dukungan ( X ⇒ Y ) - dukungan ( X ) × dukungan ( Y )
= dukungan ( X ) × (kepercayaan diri ( X ⇒ Y ) - dukungan ( Y ))

Kendala aturan redundan membuang aturan X ⇒ Y jika ∃ Z ∈ X : dukungan ( X ⇒


Y ) = dukungan ( X - [ Z ] ⇒ Y ). Kendala yang lebih kuat adalah kendala produktif.
Suatu aturan dikatakan produktif jika peningkatannya lebih besar dari 0, di mana aturan itu
perbaikan didefinisikan sebagai

peningkatan ( X ⇒ Y ) = kepercayaan diri ( X ⇒ Y ) - maks Z ⊂ X (kepercayaan ( Z ⇒ Y )) .

Peningkatan aturan redundan tidak boleh lebih besar dari 0 dan karenanya merupakan kendala
bahwa aturan haruslah membuang semua aturan yang produktif secara produktif. Lebih lanjut, itu bisa membuang aturan
yang termasuk item dalam anteseden yang independen dari konsekuensinya, mengingat
item yang tersisa di anteseden.
Ukuran statistik berguna dalam menemukan pola diskriminatif (itemset). Bagaimana-
pernah, langkah-langkah ini tidak memuaskan sifat antimonotonisitas, dan menemukan yang terbaik
Pola atau aturan k tidak mudah. Jika ukuran cembung sehubungan dengan argumennya,
adalah mungkin untuk memperkirakan upperboundnya untuk superset dari pola X (itemset) untuk a
memperbaiki kesimpulan Y (biasanya, nilai kelas) [23] dan menggunakan ini untuk memangkas pencarian
ruang. Ukuran statistik yang disebutkan di atas memuaskan properti ini.
Algoritma KORD Webb [39] menemukan k- aturan optimal melalui ruang pasangan X
dan Y (tanpa memperbaiki Y ) dan menggunakan leverage sebagai ukuran untuk mengoptimalkan menggunakan berbagai
strategi pemangkasan.

4.5.7 Aturan Asosiasi Kelas


Ketika suatu transaksi t dikaitkan dengan suatu kelas cl , adalah wajar untuk menggunakan asosiasi
aturan untuk tujuan klasifikasi. Aturan asosiasi ditambang untuk tujuan klasifikasi
pose disebut aturan asosiasi kelas (CAR). CAR memiliki bentuk {〈p 1 : q 1〉,〈p 2 :
q 2〉, ...,〈p m : q m〉} ⇒ cl . Di sini item numerik memiliki nilai interval numerik, sedangkan
item kategoris memiliki nilai kategoris. Biarkan D Cl menjadi satu set semua contoh memiliki kelas
cl di D . CBA [22], CMAR [21], dan CAEP [14] adalah berbasis CAR representatif
sistem klasifikasi. Terutama, CAEP memperkenalkan gagasan tentang pola yang muncul dan
menggunakan kekuatan semua CAR. Biarkan dukungan dari itemset sebuah oleh D Cl menjadi dukungan D cl ( a ) =
| { t ∈ D cl | a ∈ t } | / | D cl |. Satu set QFIs, FQFI ( cl ), di mana setiap itemset yang memenuhi
mendukung D cl ( a ) ≥ minsup , berasal untuk setiap cl dari D cl . Berikutnya, untuk setiap satu ∈FQFI ( cl ),
yang tingkat pertumbuhan didefinisikan oleh tingkat pertumbuhan
( a ) = dukungan
D cl → D cl D cl ( a ) / dukungan
D cl ( a ) adalah

dihitung untuk setiap kelas cl , di mana D cl = D - D cl mewakili in- lawan


sikap cl . Ketika tingkat pertumbuhan a tidak kurang dari ambang ρ (≥ 1), itu
adalah, laju pertumbuhan D cl →
( aD )cl ≥ ρ , a disebut pola emergent (EP) dan dipilih
untuk tubuh aturan di mana kepalanya adalah kelas cl , yaitu, sebuah ⇒ cl . Biarkan FEP ( cl ) menjadi satu set

https://translate.googleusercontent.com/translate_f 84/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

© 2009 oleh Taylor & Francis Group, LLC

Halaman 94

86 Apriori

dari semua EP yang dipilih dari FQFI ( cl ) berdasarkan ukuran ini. Prinsip dasar di sini
adalah memilih badan aturan yang cukup kuat untuk membedakan kelas cl dari
yang lain. Kekuatan EP a diukur dengan perbedaan relatif antara
mendukung D cl ( a ) dan support D cl ( a ): mendukung D cl ( a ) / (mendukung D cl ( a ) + mendukung
( a ))D cl=
tingkat pertumbuhan
D cl → D cl ( a ) / ( tingkat pertumbuhan
D cl → D cl ( a ) +1 Ini dapat digabungkan untuk

tingkat pertumbuhan ( a )
denda skor agregat yang ditentukan oleh skor ( t, cl ) = a ⊆ t, a ∈ FEP ( cl )
tingkat pertumbuhan ( a ) + 1 ∗
dukung D cl ( a ) yang mewakili kemungkinan t untuk diklasifikasikan ke dalam cl oleh EPs di
FEP ( cl ). Karena distribusi jumlah EP tidak seragam atas cl , instance
mungkin mendapatkan skor yang lebih tinggi untuk beberapa kelas. Faktor lain, disebut skor dasar , yang
didefinisikan sebagai median dari semua skor agregat dalam {score ( t, cl ) | t ∈ D cl }, dikenalkan
dikurangi untuk mengimbangi bias ini, memberikan skor dinormalisasi yang didefinisikan oleh skor norma ( t, cl ) =
skor ( t, cl )
skor dasar ( cl ) .
The cl dimana skor dinormalisasi adalah maksimum ditugaskan ke
kelas t . Ini terbukti berkinerja sangat baik.
Masalah dengan CAEP adalah bahwa ia mendiskrit setiap atribut numerik dengan entropi
mengukur tanpa memperhitungkan ketergantungan yang ada di banyak atribut,
dan dengan demikian sekelompok instance dengan kelas yang sama sering dapat terfragmentasi. Alam
solusinya adalah menggabungkan QFIMiner dan CAEP, yaitu LSC-CAEP [37, 36].

4.5.8 Menggunakan Richer Expression: Sequences, Trees, dan Graphs


Menambang itemet yang sering dimulai dengan dataset transaksi sederhana, tetapi kemudian memilikinya
telah digeneralisasi untuk dapat berurusan dengan ekspresi yang lebih kaya seperti urutan, pohon,
dan grafik. Karya perintis untuk menambang pola berurutan oleh Agrawal dan Srikant
telah dibahas dalam Bagian 4.2.2. PrefixSpan [28] adalah perwakilan lain
algoritma dalam penambangan pola berurutan, yang berbasis pola-pertumbuhan
algoritma dan mengadopsi strategi membagi dan menaklukkan mirip dengan FP-pertumbuhan untuk menghindari
pencacahan kandidat kecil yang tidak berhasil untuk menemukan pola yang lebih besar. PrefixSpan, pertama,
menemukan pola berurutan yang hanya terdiri dari satu item, dan kemudian, untuk masing-masing, katakanlah
i k , mengekstraksi sekumpulan urutan yang mengandungnya, yaitu,〉i k〉 -projected database. Dari
setiap basis data yang diproyeksikan seperti itu, PrefixSpan sering menemukan pola berurutan ukuran 2
memiliki 〈i k〉 sebagai awalan mereka, dan sekali lagi menghasilkan basis data yang diproyeksikan untuk setiap ukuran 2
pola yang baru ditemukan untuk menemukan pola berurutan ukuran 3. Proses ini secara rekursif
diulangi hingga tidak ada lagi pola berurutan yang ditemukan.
Sebuah pohon ditandai oleh V , seperangkat simpul, dan E , seperangkat tepi. Pohon berlabel
menugaskan satu set label L ke salah satu atau kedua simpul dan tepi. Tepi terhubung
sebuah simpul ke yang lain. Setiap dua simpul dalam sebuah pohon dapat dijangkau melalui satu atau lebih
tepi, tetapi tidak ada jalur siklik. TreeMinerV [44] dan FREQT [7] representatif
algoritma untuk menambang anak pohon sering muncul dalam kumpulan pohon. Mereka
diusulkan secara independen, tetapi berbagi strategi tingkat-bijaksana yang sama untuk sering disebutkan
sub pohon, yang menemukan sub pohon sering memiliki k + 1 simpul (( k + 1) -subtrees) dari
k -subtrees dengan menambahkan satu sisi ke setiap posisi yang memungkinkan pada jalur tertentu yang disebut
jalur paling kanan dari setiap k- sub dengan titik yang sesuai dengan ujung lain dari
tepi. Dryade [33] adalah algoritma penambangan pohon yang dapat menemukan sub pohon yang sering ditutup. SEBUAH
subtree tertutup adalah subtree maksimal di antara mereka yang memiliki frekuensi yang sama. Tidak seperti itu

© 2009 oleh Taylor & Francis Group, LLC

https://translate.googleusercontent.com/translate_f 85/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

Halaman 95

4.6 Ringkasan 87

algoritma penambangan pohon lainnya, Dryade mengumpulkan level sub pohon yang sering ditutup oleh
tingkat dari satu set unit dasar yang disebut ubin , yang merupakan satu subpohon tertutup kedalaman.
Sebuah grafik adalah kelas super pohon dan dapat memiliki jalur siklik. RUPS [19] adalah yang pertama
algoritma yang sering menambang subgraph dari koleksi grafik dengan lengkap
Cari. Ini didasarkan pada Apriori dan menghasilkan kandidat subgraph dengan ukuran k ( k -subgraph)
dari dua sering dikenal ( k - 1) -subgraph yang berbagi sama ( k - 2) -sgrgraph.
Karena tidak ada informasi tepi yang tersedia antara dua ( k - 1) -th,
semua kemungkinan dipertimbangkan. AGM menghasilkan dua k- subgraph dari sepasang
( k - 1) -subgraph, satu dengan tepi di antara mereka dan yang lainnya tanpa tepi
(ini adalah kasus di mana tidak ada label yang ditentukan untuk tepi). Meski berbasis Apriori
Pendekatan memungkinkan untuk melakukan pencarian lengkap sistematis dari subgraph sering, itu
harus menghasilkan sejumlah besar kandidat yang sebenarnya tidak ada dalam diberikan
mengatur grafik. RUPS menggunakan matriks adjacency untuk mewakili grafik dan memperkenalkan a
Gagasan bentuk kanonik untuk menyelesaikan isomorfisma subgraph yang dikenal sebagai NP-
lengkap. gSpan [41] adalah salah satu penambangan subgraph berbasis pola yang representatif
algoritma. Ini menemukan subgraph sering dalam cara pertama dengan menambahkan tepi ke
setiap posisi yang mungkin pada jalur paling kanan dari subgraph yang sering diketahui. gSpan
memperhitungkan hanya tepi yang benar-benar ada di set grafik yang diberikan, jadi itu
tidak pernah menghasilkan kandidat yang sebenarnya tidak ada. GBI [42] dan SUBDUE [13]
adalah algoritma serakah untuk menemukan subgraph yang sering, yang secara rekursif menggantikan setiap
Terjadinya subgraph khas dalam grafik dengan simpul baru. Khasnya adalah
didefinisikan oleh ukuran berdasarkan frekuensi, misalnya, perolehan informasi dalam GBI dan
panjang deskripsi minimum dalam SUBDUE. DT-ClGBI [25] menghasilkan keputusan
pohon yang mengklasifikasikan grafik tidak dikenal dari satu set grafik pelatihan dengan kelas yang dikenal.
Ini memanggil algoritma penambangan grafik, Cl-GBI [24], perpanjangan dari GBI, di setiap tes
simpul pohon keputusan. Subgraf sering yang dihasilkan digunakan sebagai atribut dari
grafik, dan yang paling diskriminatif dipilih untuk membagi set grafik yang mencapai
node menjadi dua himpunan bagian: mereka yang termasuk subgraph dan yang lainnya.

4.6 Ringkasan
Bereksperimen dengan algoritma seperti Apriori adalah hal pertama yang coba dilakukan penambang data
melakukan. Dalam bab ini konsep dasar dan algoritma keluarga Apriori (Apriori,
AprioriTid, AprioriAll) diperkenalkan pertama kali dan kemudian mekanisme kerjanya
dijelaskan dengan contoh ilustrasi, diikuti oleh evaluasi kinerja Apriori
menggunakan implementasi khas yang tersedia secara bebas. Karena Apriori sangat mendasar dan
mudah diimplementasikan, ada banyak varian. Keterbatasan pendekatan Apriori
dibahas dan ikhtisar kemajuan penting terbaru dalam pola sering
metodologi penambangan disediakan. Ada topik lain yang tidak bisa dibahas
Bab ini. Ini termasuk penggunaan kendala, pola kolosal, penanganan kebisingan, dan
perwakilan top-k.

© 2009 oleh Taylor & Francis Group, LLC

https://translate.googleusercontent.com/translate_f 86/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

Halaman 96

88 Apriori

4.7 Latihan
1. Buktikan bahwa Apriori dapat memperoleh semua set item yang sering dari transaksi yang diberikan
basis data.
2. Buktikan hubungan berikut:

dukungan ( X ∪ Y ∪ Z ) ≥ dukungan ( X ∪ Y ) + dukungan ( X ∪ Z ) - dukungan ( X ) ,

di mana X, Y , dan Z adalah itemset dalam database.


3. Dengan basis data yang ditunjukkan pada Tabel 4.5, temukan semua set item yang sering menggunakan Apriori
dan AprioriTid untuk minsup = 0 . 3 dan bandingkan efisiensinya.
4. Jelaskan hubungan antara hash-tree dan trie.
5. Gambarlah pohon-FP untuk basis data yang ditunjukkan pada Tabel 4.5 dan jelaskan seberapa sering
itemset berasal dari FP-tree.
6. Unduh dan instal Weka di komputer Anda, dan aturan asosiasi tambang oleh
menggunakan Apriori dari dataset Kedelai yang termasuk dalam paket Weka untuk
berbagai metrik untuk mengevaluasi aturan asosiasi menggunakan ambang minimum yang sama
(perbaiki parameter lainnya). Kemudian, laporkan bagaimana aturan asosiasi yang dihasilkan
ubah sesuai dengan metrik.
7. Gambar pohon awalan untuk menyimpan basis data di Bagian 4.4 dengan mengacu pada [10]
dan jelaskan bagaimana efisiensi penghitungan frekuensi dapat ditingkatkan dalam hal ini
kasus.
8. Dalam pohon-FP, item dalam transaksi diurutkan dalam urutan dukungan menurun
menghitung, saat berada di pohon awalan untuk Apriori mereka diurutkan dalam urutan naik
jumlah dukungan. Diskusikan alasan mengapa mereka menerima pesanan yang berbeda.
9. Ketika database transaksi memiliki sejumlah kecil transaksi yang sangat panjang,
Algoritma berbasis Apriori membutuhkan banyak waktu untuk menambang item yang sering. Menjelaskan
alasan mengapa mereka membutuhkan begitu banyak waktu dan mengusulkan metode yang efisien
menambang itemet yang ditutup dari basis data semacam itu.

TABEL 4.5 Database untuk Latihan 3


TID Item
T01 Keju, Susu, Telur
T02 Apple, Keju
T03 Apple, Roti, Keju, Jeruk, Anggur
T04 Roti, Telur, Jeruk
T05 Keju, Susu, Anggur
T06 Apple, Keju, Telur, Jeruk
T07 Roti, Keju, Jeruk
T08 Keju, Telur, Anggur
T09 Roti, Keju, Telur, Anggur
T10 Roti, Keju, Anggur

© 2009 oleh Taylor & Francis Group, LLC

Halaman 97

https://translate.googleusercontent.com/translate_f 87/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

Referensi 89

TABEL 4.6 Urutan Basis Data


untuk Latihan 10
SID Urutan Transaksi
S01 〈( Bc ) ( d ) ( ab ) ( def )〉
S02 〈( Abc ) ( cf ) ( df )〉
S03 〈( Cef ) ( df ) ( ab ) ( f )〉
S04 〈( Menjadi ) ( ac ) ( cd f )〉

10. Dengan diberikan database urutan yang ditunjukkan pada Tabel 4.6, temukan paten berurutan yang sering
terns oleh AprioriAll untuk minsup = 0 . 5.

Referensi
[1] http://www.borgelt.net/apriori.html.

[2] http://www.cs.bme.hu/∼bodon/en/apriori/.

[3] R. Agrawal dan R. Srikant. Algoritma cepat untuk aturan asosiasi pertambangan. Di
Proc Konferensi Internasional ke-20 tentang Pangkalan Data Sangat Besar (VLDB
1994) , halaman 487-499, 1994.

[4] R. Agrawal dan R. Srikant. Algoritma cepat untuk aturan asosiasi pertambangan. IBM
Laporan Penelitian RJ9839, Divisi Riset IBM, Pusat Penelitian Almaden,
1994

[5] R. Agrawal dan R. Srikant. Menambang pola berurutan. Laporan Penelitian IBM
RJ9910, Divisi Riset IBM, Pusat Penelitian Almaden, 1994.

[6] R. Agrawal dan R. Srikant. Menambang pola berurutan. Di Proc. tanggal 11


Konferensi Internasional tentang Rekayasa Data (ICDE 1995) , halaman 3–14, 1995.

[7] T. Asai, K. Abe, S. Kawasoe, H. Arimura, H. Sakamoto, dan S. Arikawa.


Penemuan substruktur yang efisien dari data semi-terstruktur yang besar. Di Proc. dari
Konferensi Internasional SIAM ke-2 tentang Penambangan Data , halaman 158–174, 2002.

[8] C. Blake dan C. Merz. Repositori UCI dari database pembelajaran mesin, 1998.
http://www.ics.uci.edu/ ~ mlearn / MLRepository.html.

[9] F. Bodon. Hasil yang mengejutkan dari algoritma fim berbasis trie. Di Proc. dari IEEE
Workshop ICDM tentang Implementasi Mining Frequent Itemset (FIMI'04) ,
volume 126 dari Prosiding Workshop CEUR , 2004. http: //ftp.informatik.
rwth-aachen.de/Publications/CEUR-WS/Vol-126/bodon.pdf.

[10] C. Borgelt. Implementasi Apriori dan Eclat yang efisien. Di Proc. dari IEEE
Workshop ICDM tentang Implementasi Mining Frequent Itemset (FIMI'03) ,

© 2009 oleh Taylor & Francis Group, LLC

Halaman 98

90 Apriori
https://translate.googleusercontent.com/translate_f 88/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

volume 90 dari Prosiding Workshop CEUR , 2003. http: //ftp.informatik.


rwth-aachen.de/Publications/CEUR-WS/Vol-90/borgelt.pdf.

[11] S. Brin, R. Motwani, JD Ullman, dan S. Tsur. Penghitungan itemset dinamis dan
aturan implikasi untuk data keranjang pasar. Di Proc. dari ACM SIGMOD International
Konferensi Nasional tentang Pengelolaan Data (SIGMOD 1997) , halaman 255–264,
1997.

[12] DW Cheung, J. Han, dan CY Wong. Pemeliharaan asosiasi yang ditemukan


aturan dalam basis data besar: Teknik pembaruan tambahan. Di Proc. dari
1996 ACM SIGMOD Konferensi Internasional tentang Pengelolaan Data , halaman
13–23, 1996.

[13] DJ Cook dan Pemegang LB. Penemuan substruktur menggunakan deskripsi minimum
pengetahuan panjang dan latar belakang. Jurnal Penelitian Kecerdasan Buatan ,
Vol.1, halaman 231–255, 1994.

[14] G. Dong, X. Zhang, L. Wong, dan J. Li. Caep: Klasifikasi dengan mengagregasi
pola yang muncul. Di Proc. Konferensi Internasional ke-2 tentang Penemuan
Sains (DS '99), LNAI 1721, Springer, halaman 30–42, 1999.

[15] B. Goethals. Survei tentang penambangan pola sering, 2003. http: //www.adrem.
ua.ac.be/bibrem/pubs/fpm survey.pdf

[16] J. Han, H. Cheng, D. Xin, dan X. Yan. Penambangan pola yang sering: Status saat ini
dan arah masa depan. Penambangan Data dan Penemuan Pengetahuan , Vol. 15, No. 1,
halaman 55–86, 2007.

[17] J. Han, J. Pei, dan Y. Yin. Menambang pola yang sering tanpa calon gen-
erasi. Di Proc. Konferensi Internasional ACM SIGMOD 2000 tentang
Manajemen Data , halaman 1-12, 2000.

[18] J. Han, J. Pei, Y. Yin, dan R. Mao. Menambang pola yang sering tanpa kandidat
generasi: Pendekatan pohon yang sering berpola. Penambangan dan Pengetahuan Data
Penemuan , Vol. 8, No. 1, halaman 53–87, 2004.

[19] A. Inokuchi, T. Washio, dan H. Motoda. Kerangka umum untuk penambangan sering
subgraph dari grafik berlabel. Fundamenta Informaticae , Vol. 66, No. 1-2,
halaman 53–82, 2005.

[20] K. Kailing, H. Kriegel, dan P. Kroger. Pengelompokan ruang bagian yang terhubung dengan kepadatan
untuk data dimensi tinggi. Di Proc. Konferensi Internasional SIAM ke-4
tentang Data Mining , halaman 246–257, 2004.

[21] W. Li, J. Han, dan J. Pei. Cmar: Klasifikasi yang akurat dan efisien
pada beberapa aturan asosiasi-kelas. Di Proc. dari IEEE 1 Internasional
Konferensi tentang Penambangan Data (ICDM '01) , halaman 369–376, 2001.

[22] B. Liu, W. Hsu, dan Y. Ma. Mengintegrasikan aturan klasifikasi dan asosiasi
pertambangan. Di Proc. Konferensi Internasional ke-4 tentang Penemuan Pengetahuan
dan Data Mining (KDD-98) , halaman 80–86, 1998.

© 2009 oleh Taylor & Francis Group, LLC

Halaman 99

Referensi 91

[23] S. Morishita dan J. Sese. Melintasi itemet kisi dengan metrik statistik
pemangkasan. Di Proc. Simposium ACM SIGMOD-SIGACT-SIGART ke-19 tentang
Prinsip Sistem Basis Data (PODS 2000) , halaman 226–236, 2000.

https://translate.googleusercontent.com/translate_f 89/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
[24] PC Nguyen, K. Ohara, H. Motoda, dan T. Washio. Cl-GBI: Suatu pendekatan baru
untuk mengekstraksi pola khas dari data terstruktur grafik. Di Proc. dari
Konferensi Pasifik-Asia ke-9 tentang Kemajuan dalam Penemuan Pengetahuan dan Data
Penambangan (PAKDD 2005) , halaman 639-649, 2005.

[25] K. Ohara, PC Nguyen, A. Mogi, H. Motoda, dan T. Washio. Membangun


pohon keputusan berdasarkan induksi berbasis grafik chunkingless. Dalam Pemegang LB dan
DJ Cook, editor, Menambang Data Grafik , halaman 203–226. Wiley-Interscience,
2006

[26] J. Park, M. Chen, dan P. Yu. Algoritme berbasis hash yang efektif untuk menambang
aturan asosiasi. Di Proc. Konferensi Internasional ACM SIGMOD 1995
tentang Manajemen Data , halaman 175–186, 1995.

[27] J. Pei, J. Han, dan R. Mao. Closet: Algoritme yang efisien untuk penambangan yang sering
itemset tertutup. Di Proc. Lokakarya Internasional ACM-SIGMOD tahun 2000
tentang Penambangan Data dan Penemuan Pengetahuan , halaman 11–20, 2000.

[28] J. Pei, J. Han, B. Mortazavi-Asl, H. Pinto, Q. Chen, U. Dayal, dan MC Hsu.


PrefixSpan: Menambang pola berurutan secara efisien dengan pola proyeksi yang diawali
pertumbuhan. Di Proc. Konferensi Internasional ke-17 tentang Rekayasa Data
(ICDE 2001) , halaman 215–224, 2001.

[29] A. Savasere, E. Omiecinski, dan S. Navathe. Algoritma yang efisien untuk min-
ing aturan asosiasi dalam basis data besar. Di Proc. Internasional ke-21
Konferensi Basa Data Sangat Besar (VLDB 1995) , halaman 432-444. Morgan
Kaufmann, 1995.

[30] R. Srikant dan R. Agrawal. Menambang aturan asosiasi umum. Di Proc. dari
Konferensi Internasional ke-21 tentang Pangkalan Data Sangat Besar (VLDB 1995) ,
halaman 407–419, 1995.

[31] R. Srikant dan R. Agrawal. Menambang aturan asosiasi kuantitatif secara besar-besaran
tabel relasional. Di Proc. Konferensi Internasional ACM SIGMOD 1996
tentang Manajemen Data , halaman 1–12, 1996.

[32] R. Srikant dan R. Agrawal. Pola sekuensial penambangan: Generalisasi dan


peningkatan performa. Di Proc. Konferensi Internasional ke-5 pada
Memperluas Teknologi Basis Data , halaman 3–17, 1996.

[33] A. Termier, MC Rousset, dan M. Sebag. Dryade: Pendekatan baru untuk diskusi
ering pohon tertutup sering dalam database pohon heterogen. Di Proc. ke-4
Konferensi Internasional IEEE tentang Penambangan Data (ICDM '04) , halaman 543–546,
2004

[34] T. Uno, T. Asai, Y. Uchida, dan H. Arimura. Algoritma yang efisien untuk
sering melakukan pola tertutup dalam basis data transaksi. Di Proc. tanggal 7

© 2009 oleh Taylor & Francis Group, LLC

Halaman 100

92 Apriori

Konferensi Internasional tentang Penemuan Sains (DS '04), LNAI 3245 , Springer,
halaman 16–30, 2004.

[35] T. Washio, H. Matsuura, dan H. Motoda. Aturan asosiasi pertambangan untuk estimasi
dan prediksi. Di Proc. Konferensi Asia Pasifik ke-2 tentang Pengetahuan
Penemuan dan Penambangan Data (PAKDD 1998) , halaman 417-419, 1998.

[36] T. Washio, Y. Mitsunaga, dan H. Motoda. Menambang item sering kuantitatif


menggunakan subspace clustering berbasis kepadatan adaptif. Di Proc. dari IEEE ke-5

https://translate.googleusercontent.com/translate_f 90/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
Konferensi Internasional tentang Penambangan Data (ICDM '05) , halaman 793–796, 2005.
[37] T. Washio, K. Nakanishi, dan H. Motoda. Turunkan aturan asosiasi kelas
pada pengelompokan ruang bagian levelwise. Di Proc. Konferensi Eropa ke-9 pada
Prinsip dan Praktek Penemuan Pengetahuan dalam Database (PKDD 2005),
LNAI 3721 , Springer, halaman 692–700, 2005.

[38] G. Webb. Pencarian aturan asosiasi yang efisien. Di Proc. dari ACM ke-6
SIGKDD Konferensi Internasional tentang Penemuan Pengetahuan dan Penambangan Data ,
halaman 99-107, 2000.

[39] G. Webb dan S. Zhang. Penemuan aturan K-optimal. Penambangan dan Pengetahuan Data
Penemuan , Vol. 10, No. 1, halaman 39–79, 2005.

[40] IH Witten dan E. Frank. Penambangan Data: Alat Pembelajaran Mesin Praktis
dan Teknik, Edisi ke-2 . Morgan Kaufmann, San Francisco, 2005.
http://www.cs.waikato.ac.nz/ml/weka/.

[41] X. Yan dan J. Han. gSpan: Penambangan pola substruktur berbasis grafik. Di Proc.
Konferensi Internasional IEEE ke-2 tentang Penambangan Data (ICDM'02) , halaman
721-724, 2002.

[42] K. Yoshida dan H. Motoda. Klip: Konsep belajar dari pola inferensi.
Jurnal Kecerdasan Buatan , Vol. 75, No. 1, halaman 63–92, 1995.

[43] M. Zaki. Algoritma yang dapat diukur untuk penambangan asosiasi. Transaksi IEEE aktif
Pengetahuan dan Rekayasa Data , Vol. 12, No. 3, halaman 372–390, 2000.

[44] MJ Zaki. Secara efisien menambang pohon di hutan. Di Proc. tanggal 8


ACM SIGKDD Konferensi Internasional tentang Penemuan Pengetahuan dan Data
Penambangan (KDD '02) , halaman 71–80, 2002.

© 2009 oleh Taylor & Francis Group, LLC

Halaman 101

Bab 5
EM

Geoffrey J. McLachlan dan Shu-Kay Ng

Isi

5.1 Pendahuluan ................................................ ............ 93


https://translate.googleusercontent.com/translate_f 91/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
5.2 Deskripsi Algoritma ............................................... ... 95
5.3 Implementasi Perangkat Lunak ................................................... . 96
5.4 Contoh Ilustrasi ............................................... ..... 97
5.4.1 Contoh 5.1: Campuran Normal Multivariat ...................... 97
5.4.2 Contoh 5.2: Campuran Analisis Faktor ...................... 100
5.5 Topik Tingkat Lanjut ................................................... ........ 103
5.6 Latihan ................................................ .............. 105
Referensi ................................................. ................. 113

Abstrak Algoritma ekspektasi-maksimisasi (EM) dapat diterapkan secara luas


pendekatan untuk perhitungan iteratif estimasi kemungkinan maksimum (ML), berguna
dalam berbagai masalah data tidak lengkap. Secara khusus, algoritma EM menyederhanakan
sangat masalah pas model campuran hingga oleh ML, di mana campuran
model digunakan untuk memodelkan heterogenitas dalam analisis kelompok dan pengenalan pola
konteks. Algoritma EM memiliki sejumlah properti menarik, termasuk properti
stabilitas numerik, kesederhanaan implementasi, dan konvergensi global yang andal.
Ada juga ekstensi dari algoritma EM untuk mengatasi berbagai masalah kompleks
aplikasi penambangan data. Namun, sangat diinginkan jika kesederhanaan dan stabilitasnya
bisa dilestarikan.

5.1 Pendahuluan
Algoritma ekspektasi-maksimisasi (EM) telah banyak diminati
beberapa tahun terakhir dalam pengembangan algoritma di berbagai bidang aplikasi seperti data
penambangan, pembelajaran mesin, dan pengenalan pola [20, 27, 28]. Kertas mani
dari Dempster et al. [8] pada algoritma EM sangat merangsang minat dalam penggunaan
distribusi campuran hingga untuk memodelkan data heterogen. Ini karena pemasangan

93

© 2009 oleh Taylor & Francis Group, LLC

Halaman 102

94 EM

model campuran dengan kemungkinan maksimum (ML) adalah contoh klasik dari masalah itu
disederhanakan dengan penyatuan konseptual EM tentang estimasi ML dari
data yang dapat dilihat sebagai tidak lengkap [20]. Estimasi kemungkinan maksimum
dan inferensi berbasis kemungkinan sangat penting dalam teori statistik dan
analisis data. Estimasi kemungkinan maksimum adalah metode dengan tujuan umum
sifat menarik [6, 13, 31]. Distribusi campuran terbatas menyediakan fleksibel dan
pendekatan berbasis matematika untuk pemodelan dan pengelompokan data yang diamati pada
fenomena acak. Kami fokus di sini pada penggunaan algoritma EM untuk pemasangan
model campuran hingga melalui pendekatan ML.
Dengan pendekatan berbasis model campuran untuk pengelompokan, p- dimensi yang diamati
data y 1 , ..., y n diasumsikan berasal dari campuran yang awalnya ditentukan
jumlah g dari kepadatan komponen dalam beberapa proporsi yang tidak diketahui π 1 , ..., π g , yang
sum untuk 1. Kepadatan campuran y j dinyatakan sebagai

∑g
f(yj;Ψ)= πifi(yj;i) ( j = 1 , ..., n ) (5.1)
i=1

di mana kerapatan komponen f i ( y j ; i ) ditentukan hingga vektor i yang tidak diketahui

https://translate.googleusercontent.com/translate_f 92/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
parameter ( i = 1 , ..., g ). Vektor dari semua parameter yang tidak diketahui diberikan oleh
( )T
Ψ= π 1 , ..., π g −1 , T
1 , ..., T g

di mana superscript T menunjukkan transpose vektor. Vektor parameter Ψ dapat berupa


diperkirakan oleh ML. Tujuannya adalah untuk memaksimalkan kemungkinan L ( Ψ ), atau setara,
log kemungkinan log L ( Ψ ), sebagai fungsi Ψ , di atas ruang parameter. Itu adalah
ML perkiraan Ψ , Ψ , diberikan oleh akar yang tepat dari persamaan log kemungkinan,

∂ log L ( Ψ ) / ∂ Ψ = 0 (5.2)

dimana
∑n
log L ( Ψ ) = log f ( y j ; Ψ )
j=1

adalah fungsi log likelihood untuk Ψ yang dibentuk dengan asumsi independen
data y 1 , ..., y n . Tujuan dari estimasi ML [13] adalah untuk menentukan perkiraan Ψ untuk
masing-masing n , sehingga mendefinisikan urutan akar Persamaan (5.2) yang konsisten dan
efisien asimptotik. Urutan seperti itu diketahui ada di bawah keteraturan yang sesuai
kondisi [7]. Dengan probabilitas cenderung satu, akar ini sesuai dengan maksima lokal
di bagian dalam ruang parameter. Untuk model estimasi secara umum, kemungkinannya
biasanya memiliki maksimum global di bagian dalam ruang parameter. Maka biasanya a
urutan akar Persamaan (5.2) dengan sifat asimptotik yang diinginkan disediakan
dengan mengambil Ψ untuk setiap n menjadi akar yang secara global memaksimalkan L ( Ψ ); dalam hal ini, Ψ adalah
MLE [18]. Kami akan selanjutnya mengacu pada Ψ sebagai MLE, bahkan dalam situasi di mana
mungkin tidak memaksimalkan kemungkinan secara global. Memang, dalam contoh pada model campuran
untuk disajikan dalam Bagian 5.4.1, kemungkinannya tidak terbatas. Namun, mungkin saja ada
masih ada dalam kondisi keteraturan biasa urutan akar Persamaan (5.2)
dengan sifat konsistensi, efisiensi, dan normalitas asimptotik [16].

© 2009 oleh Taylor & Francis Group, LLC

Halaman 103

5.2 Deskripsi Algoritma 95

5.2 Deskripsi Algoritma


Algoritma EM adalah algoritma berulang, dalam setiap iterasi yang ada dua
langkah-langkah, langkah Ekspektasi (langkah-E) dan langkah Maksimalisasi (langkah-M). Singkat
sejarah algoritma EM dapat ditemukan di [18]. Dalam kerangka data yang tidak lengkap
bekerja dari algoritma EM, kami membiarkan y = ( y T
1 , ..., y T n ) T menunjukkan vektor yang mengandung
data yang diamati dan kami membiarkan z menunjukkan vektor yang berisi data tidak lengkap. Itu
vektor data lengkap dinyatakan sebagai

x = ( y T , z T )T

Algoritma EM mendekati masalah penyelesaian log "data tidak lengkap" seperti-


lihood Equation (5.2) secara tidak langsung dengan melanjutkan secara iteratif dalam hal “complete-
data ”log likelihood, log L c ( Ψ ). Karena tergantung secara eksplisit pada data yang tidak teramati z ,
E-langkah dilakukan di mana log L c ( Ψ ) digantikan oleh yang disebut Q -fungsi,
yang merupakan ekspektasi bersyarat yang diberikan y , menggunakan fit saat ini untuk Ψ . Lebih spesifik
ically, pada iterasi ( k + 1) dari algoritma EM, E-step menghitung

Q ( Ψ ; Ψ ( k ) ) = E Ψ ( k ) {log L c ( Ψ ) | y }

di mana E Ψ ( k ) menunjukkan ekspektasi menggunakan vektor parameter Ψ ( k ) . Langkah-M naik-


tanggal estimasi Ψ dengan nilai itu Ψ ( k +1) dari Ψ yang memaksimalkan Q -fungsi,

https://translate.googleusercontent.com/translate_f 93/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
Q ( Ψ ; Ψ ( k ) ), sehubungan dengan Ψ di atas ruang parameter [18]. Langkah E- dan M adalah
bergantian berulang kali sampai perubahan dalam nilai kemungkinan log kurang dari beberapa
ambang batas yang ditentukan. Seperti disebutkan dalam Bagian 5.1, algoritma EM adalah numerik
stabil dengan setiap iterasi EM meningkatkan nilai kemungkinan sebagai

L ( Ψ ( k +1) ) ≥ L ( Ψ ( k ) )

Dapat ditunjukkan bahwa kedua langkah E- dan M-akan memiliki bentuk yang sangat sederhana ketika
fungsi kepadatan probabilitas data lengkap berasal dari keluarga eksponensial [18].
Seringkali dalam praktiknya, solusi untuk langkah-M ada dalam bentuk tertutup. Dalam hal itu
jika tidak, mungkin tidak layak untuk mencoba menemukan nilai Ψ yang secara global
memaksimalkan fungsi Q ( Ψ ; Ψ ( k ) ). Untuk situasi seperti itu, EM umum (GEM)
algoritma [8] dapat diadopsi yang memerlukan langkah-M Ψ ( k +1) untuk dipilih tersebut
itu Ψ ( k +1) meningkatkan Q -fungsi Q ( Ψ ; Ψ ( k ) ) lebih nilainya di Ψ = Ψ ( k ) . Itu adalah,

Q ( Ψ ( k +1) ; Ψ ( k ) ) ≥ Q ( Ψ ( k ) ; Ψ ( k ) )

memegang; lihat [18].


Beberapa kelemahan dari algoritma EM adalah (a) tidak secara otomatis
kurangi estimasi matriks kovarians dari estimasi parameter. Ini disadvan-
Namun, tage dapat dengan mudah dihilangkan dengan menggunakan metodologi yang sesuai yang terkait
dengan algoritma EM [18]; (B) kadang-kadang sangat lambat untuk bertemu; dan (c) di
beberapa masalah, langkah-langkah E- atau M mungkin secara analitis tidak dapat dipecahkan. Kami akan sebentar
mengatasi dua masalah terakhir di Bagian 5.5.

© 2009 oleh Taylor & Francis Group, LLC

Halaman 104

96 EM

5.3 Implementasi Perangkat Lunak

Program EMMIX : McLachlan et al. [22] telah mengembangkan program


EMMIX sebagai alat umum agar sesuai dengan campuran multivarian normal atau terdistribusi t
komponen oleh ML melalui algoritma EM untuk data multivarian kontinu. Itu
juga mencakup banyak fitur lain yang ternyata bermanfaat saat pemasangan campuran.
model mendatang. Ini termasuk ketentuan nilai awal untuk aplikasi
algoritma EM, ketentuan kesalahan standar untuk parameter yang dipasang
dalam model campuran melalui berbagai metode, dan penentuan jumlahnya
komponen; Lihat di bawah.
Nilai awal untuk algoritme EM : Dengan aplikasi di mana kemungkinan log
Persamaan memiliki beberapa akar yang sesuai dengan maxima lokal, algoritma EM
harus diterapkan dari berbagai pilihan nilai awal dalam pencarian apa pun untuk semua
maxima lokal. Dalam konteks model campuran hingga, nilai parameter awal
dapat diperoleh dengan menggunakan algoritma clustering k -means, hierarchical clustering
metode, atau partisi acak dari data [20]. Dengan program EMMIX, ada
adalah opsi tambahan untuk memulai acak di mana pengguna dapat melakukan subsampel terlebih dahulu
data sebelum menggunakan mulai acak berdasarkan subsampel setiap kali. Ini adalah
untuk membatasi efek teorema limit pusat, yang akan memiliki secara acak
yang dipilih mulai serupa untuk setiap komponen dalam sampel besar [20].
Penyediaan kesalahan standar : Beberapa metode telah disarankan dalam EM
literatur untuk menambah perhitungan EM dengan beberapa perhitungan untuk pengamatan
mendapatkan estimasi matriks kovarian dari estimasi ML yang dihitung;
lihat [11, 15, 18]. Atau, estimasi kesalahan standar dapat diperoleh dengan
program EMMIX menggunakan pendekatan resampling bootstrap diimplementasikan
https://translate.googleusercontent.com/translate_f 94/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
parametrik atau nonparametrik [18, 20].
Jumlah komponen : Kita dapat membuat pilihan untuk nilai yang sesuai
jumlah komponen (cluster) g dengan mempertimbangkan fungsi kemungkinan.
Dengan tidak adanya informasi sebelumnya mengenai jumlah cluster yang hadir di
data, kita dapat memantau peningkatan fungsi log likelihood sebagai nilai
g meningkat. Pada setiap tahap, pilihan g = g 0 versus g = g 0 +1 dapat dibuat
baik dengan melakukan tes rasio kemungkinan atau menggunakan beberapa informasi berbasis
kriteria, seperti Kriteria Informasi Bayesian (BIC). Sayangnya,
kondisi keteraturan tidak berlaku untuk memiliki statistik uji rasio kemungkinan λ untuk dimiliki
distribusi nol biasa chi - kuadrat dengan derajat kebebasan sama dengan
perbedaan d dalam jumlah parameter untuk komponen g = g 0 +1 dan g = g 0
dalam model campuran. Program EMMIX menyediakan resampling bootstrap
pendekatan untuk menilai distribusi nol (dan karenanya nilai-p) dari statistik
(−2 log λ ). Atau, seseorang dapat menerapkan BIC, meskipun kondisi keteraturan berlaku
tidak berlaku untuk validitasnya di sini. Penggunaan BIC mengarah ke pemilihan g = g 0 +1
lebih dari g = g 0 jika −2 log λ lebih besar dari d log ( n ).

© 2009 oleh Taylor & Francis Group, LLC

Halaman 105

5.4 Contoh Ilustrasi 97

Perangkat lunak campuran lainnya : Ada beberapa perangkat lunak berbasis EM lainnya untuk campuran
pemodelan melalui ML. Sebagai contoh, Fraley dan Raftery [9] telah mengembangkan
Program MCLUST untuk pengelompokan hierarkis berdasarkan campuran dari
komponen mal di bawah berbagai parameterisasi dari kovarians komponen
matriks. Ini dihubungkan ke perangkat lunak komersial S-PLUS dan memiliki opsi
tion untuk memasukkan komponen tambahan dalam model untuk latar belakang (Poisson)
kebisingan. Pembaca dirujuk ke lampiran di McLachlan dan Peel [20] untuk
ketersediaan perangkat lunak untuk pemasangan model campuran.

5.4 Contoh Ilustrasi


Kami memberikan dua contoh di bagian ini untuk menunjukkan bagaimana algoritma EM dapat
mudah diterapkan untuk menemukan taksiran ML dalam beberapa situasi yang biasa terjadi
dalam penambangan data. Kedua contoh menyangkut penerapan algoritma EM untuk ML
estimasi model campuran hingga, yang banyak diadopsi untuk model heterogen
data [20]. Mereka menggambarkan bagaimana formulasi data tidak lengkap digunakan untuk menurunkan
Algoritma EM untuk menghitung estimasi ML.

5.4.1 Contoh 5.1: Campuran Normal Multivarian


Contoh ini menyangkut penerapan algoritma EM untuk estimasi ML
model campuran hingga dengan komponen normal multivariat [20]. Dengan mengacu
Persamaan (5.1), kepadatan campuran y j diberikan oleh

∑g
f(yj;Ψ)= π i φ ( y j ; i , Σ i ) ( j = 1 , ..., n ) (5.3)
i=1

di mana φ ( y j ; i , Σ i ) menunjukkan distribusi normal multivariat p- dimensional


berarti i dan matriks kovarian Σ i . Di sini vektor Ψ dari parameter yang tidak diketahui terdiri

https://translate.googleusercontent.com/translate_f 95/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
dari proporsi pencampuran π 1 , ..., π g −1 , unsur-unsur komponen berarti i , dan
elemen-elemen yang berbeda dari matriks kovarians komponen Σ i . Kemungkinan log
karena Ψ kemudian diberikan oleh
{g }
∑n ∑
log L ( Ψ ) = catatan πiφ(yj;i,Σi)
j=1 i=1

Solusi dari persamaan kemungkinan log yang sesuai dengan maxima lokal dapat ditemukan
secara iteratif dengan penerapan algoritma EM.
Dalam kerangka EM, masing-masing y j dikonseptualisasikan untuk muncul dari salah satu
yang g komponen dari model campuran [Persamaan (5.3)]. Kita membiarkan z 1 , ..., z n menunjukkan
yang tidak teramati vektor komponen-indikator, di mana saya th elemen z ij dari z j adalah
diambil menjadi satu atau nol sesuai dengan j th pengamatan y j tidak atau tidak datang

© 2009 oleh Taylor & Francis Group, LLC

Halaman 106

98 EM

dari komponen ke- i . Vektor data yang diamati y dianggap tidak lengkap,
karena vektor indikator-komponen yang terkait, z 1 , ..., z n , tidak tersedia. Itu
Oleh karena itu, vektor data lengkap adalah x = ( y T , z T ) T , di mana z = ( z T
1, ..., z T n) T. Itu
log data lengkap kemungkinan untuk Ψ diberikan oleh
∑g ∑n
log L c ( Ψ ) = z ij {log π i + log φ ( y j ; i , Σ i )} (5.4)
i=1 j=1

Algoritma EM diterapkan untuk masalah ini dengan memperlakukan z ij dalam Persamaan (5.4)
sebagai data yang hilang. Pada iterasi ( k + 1), langkah-E menghitung fungsi- Q ,
Q ( Ψ ; Ψ ( k ) ), yang merupakan harapan bersyarat dari kemungkinan log data lengkap
diberikan y dan perkiraan saat ini Ψ ( k ) . Sebagai data log lengkap kemungkinan [Equa-
tion (5.4)] linear dalam data yang hilang z ij , kita hanya perlu menghitung arus
harapan bersyarat Z ij mengingat data yang diamati y , di mana Z ij adalah acak
variabel yang sesuai dengan z ij . Itu adalah,

E Ψ ( k ) ( Z ij | y ) = pr Ψ ( k ) { Z ij = 1 | y }
= τ i ( y j ; Ψ (k) )
/g
( ) ∑ ( )
(k) (k)
= π (k) yj; π (k) yj; (5.5)
saya φ saya , Σ (saya
k) hφ h , Σ ( k )h
h=1

untuk i = 1 , ..., g ; j = 1 , ..., n . Kuantitas τ i ( y j ; Ψ ( k ) ) adalah probabilitas posterior


ity bahwa j th pengamatan y j milik saya th komponen campuran. Dari
Persamaan (5.4) dan (5.5), mengikuti itu
∑g ∑n
Q ( Ψ ; Ψ (k) ) = τ i ( y j ; Ψ ( k ) ) {log π i + log φ ( y j ; i , Σ i )} (5.6)
i=1 j=1

Untuk campuran dengan kerapatan komponen normal, ini menguntungkan secara komputasi
untuk bekerja dalam hal statistik yang memadai [26] yang diberikan oleh
∑n
(k)
Tsaya 1 = τ i ( y j ; Ψ (k) )
j=1

∑n
T(k) τ i ( y j ; Ψ (k) ) y j
i2=
j=1

∑n
τ i ( y j ; Ψ (k) ) y jy T
https://translate.googleusercontent.com/translate_f 96/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
T (ik3)= j (5.7)
j=1

Untuk komponen normal, langkah-M ada dalam bentuk tertutup dan disederhanakan pada
dasar dari statistik yang cukup dalam Persamaan (5.7) sebagai
(k)
π ( k +1) = T
saya saya 1 /
n
( k +1)
= T(k)
saya saya 1
{ i2/ T(k) −1
= (k) T}
Σ (saya
k +1) T(k) T ( k ) saya 2 / T (saya
k)
(5.8)
saya 3 - T saya 1 i2T(k) 1

© 2009 oleh Taylor & Francis Group, LLC

Halaman 107

5.4 Contoh Ilustrasi 99

lihat [20, 26]. Dalam kasus matriks kovarian komponen-tidak terbatas Σ i , L ( Ψ ) adalah
tidak terikat, karena setiap titik data memunculkan singularitas di tepi parameter
ruang eter [16, 20]. Pertimbangan harus diberikan pada masalah yang relatif besar
(palsu) maxima lokal yang terjadi sebagai akibat dari komponen yang dipasang
varian umum yang sangat kecil (tetapi bukan nol) (penentu kovarians
matriks). Komponen seperti itu berhubungan dengan sebuah cluster yang mengandung beberapa titik data
relatif berdekatan atau hampir berbaring di ruang bagian dimensi bawah dalam kasus ini
data multivarian.
Dalam praktiknya, matriks kovarians komponen Σ i dapat dibatasi menjadi
sama, Σ i = Σ ( i = 1 , ..., g ), di mana Σ tidak ditentukan. Dalam kasus ini
Komponen normal ini, estimasi terbaru dari komponen-kovarians umum
matriks Σ diberikan oleh
∑g
(k)
Σ ( k +1) = T /n (5.9)
i 1 Σ ( ksaya
+1)
i=1

dimana Σ (saya
k +1) diberikan oleh Persamaan (5.8), dan pembaruan π i dan i adalah seperti di atas pada

kasus heteroskedastik [Persamaan (5.8)].


Set data Iris yang terkenal tersedia di Repositori mesin UCI
belajar database [1]. Data terdiri dari pengukuran panjang dan lebar
dari kedua sepal dan kelopak dari 50 tanaman untuk masing-masing dari ketiga jenis spesies Iris
setosa , versicolor , dan virginica . Di sini, kami mengelompokkan data empat dimensi ini, ig-
noring klasifikasi data yang diketahui, dengan memasang campuran g = 3 normal
komponen dengan matriks kovarians komponen - diagonal heteroskedastik menggunakan
Program EMMIX [22]. Vektor dari parameter yang tidak diketahui Ψ sekarang terdiri dari
proporsi pencampuran π 1 , π 2 , unsur-unsur komponen berarti i , dan diago-
elemen akhir dari matriks komponen-kovarian Σ i ( i = 1 , 2 , 3). Nilai awal
Ψ (0) dipilih menjadi
π (0) = 0 . 31 , π (0) = 0 . 33 , π (0) = 0 . 36
1 2 3
(0)
1= (5 . 0 , 3 . 4 , 1 . 5 , 0 . 2) T , (0) 2= (5 . 8 , 2 . 7 , 4 . 2 , 1 . 3) T
(0)

3 = (6 . 6 , 3 . 0 , 5 . 5 , 2 . 0) T

Σ (0)
1 = diag (0 . 1 , 0 . 1 , 0 . 03 , 0 . 01) Σ (0) 2= diag (0 . 2 , 0 . 1 , 0 . 2 , 0 . 03)
Σ (0)
3 = diag (0 . 3 , 0 . 1 , 0 . 3 , 0 . 1)

yang diperoleh melalui penggunaan metode clustering k- berarti. Dengan EMMIX


program, kriteria berhenti default adalah bahwa perubahan kemungkinan log dari
iterasi saat ini dan kemungkinan log dari 10 iterasi sebelumnya berbeda dengan lebih sedikit
dari 0,000001 kemungkinan log saat ini [22]. Hasil dari algoritma EM adalah
disajikan pada Tabel 5.1 . MLE dari Ψ dapat dianggap sebagai nilai Ψ ( k ) pada iterasi
k = 29. Atau, program EMMIX menawarkan nilai awal otomatis untuk

https://translate.googleusercontent.com/translate_f 97/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
penerapan algoritma EM. Sebagai contoh, nilai awal Ψ (0) ditentukan
dari 10 mulai acak (menggunakan 70% subsampling data), 10 k -berarti mulai, dan 6
metode hierarkis; lihat Bagian 5.3 dan [22]. Estimasi akhir Ψ sama
seperti yang diberikan pada Tabel 5.1.

© 2009 oleh Taylor & Francis Group, LLC

Halaman 108

100 EM

TABEL 5.1 Hasil Algoritma EM untuk Contoh 5.1


Catatan
( k )T (k)
Pengulangan π saya
(k)
saya Elemen Diagonal Σ saya Kemungkinan

0 0.310 (5.00,3.40.1.50.0.20) (0.100.0.100.0.030.0.010) −317.98421


0.330 (5.80,2.70,4.20.1.30) (0.200.0.100.0.200.0.030)
0.360 (6.60,3.00,5.50,2.00) (0.300.0.100.0.300.0.100)
1 0.333 (5.01.3.43.1.46.0.25) (0.122.0.141.0.030.0.011) −306.90935
0,299 (5.82,2.70,4.20.1.30) (0.225.0.089.0.212.0.034)
0.368 (6.62.3.01.5.48.1.98) (0.322.0.083.0.325.0.088)
2 0.333 (5.01.3.43.1.46.0.25) (0.122.0.141.0.030.0.011) −306.87370
0.300 (5.83,2.70,4.21.1.30) (0.226.0.087.0.218.0.034)
0.367 (6.62.3.01.5.47.1.98) (0.323.0.083.0.328.0.087)
10 0.333 (5.01.3.43.1.46.0.25) (0.122.0.141.0.030.0.011) −306.86234
0.303 (5.83,2.70,4.22.1.30) (0.227.0.087.0.224.0.035)
0.364 (6.62.3.02.5.48.1.99) (0.324.0.083.0.328.0.086)

20 0.333 (5.01.3.43.1.46.0.25) (0.122.0.141.0.030.0.011) −306.86075


0.304 (5.83,2.70,4.22.1.30) (0.228.0.087.0.225.0.035)
0.363 (6.62.3.02.5.48.1.99) (0.324.0.083.0.327.0.086)
29 0.333 (5.01.3.43.1.46.0.25) (0.122.0.141.0.030.0.011) −306.86052
0.305 (5.83,2.70,4.22.1.30) (0.229.0.087.0.225.0.035)
0.362 (6.62.3.02.5.48.1.99) (0.324.0.083.0.327.0.085)

5.4.2 Contoh 5.2: Campuran Analisis Faktor


McLachlan dan Peel [21] mengadopsi campuran model faktor analisis untuk mengelompokkan
disebut set data anggur, yang tersedia di Repositori UCI pembelajaran mesin
basis data [1]. Data ini memberikan hasil analisis kimia terhadap anggur yang ditanam
di wilayah yang sama di Italia, tetapi berasal dari tiga kultivar yang berbeda. Analisisnya
ditentukan jumlah p = 13 konsituen yang ditemukan di masing-masing n = 178 anggur.
Untuk mengelompokkan kumpulan data ini, model campuran normal tiga komponen dapat diadopsi.
Namun, seperti p = 13 di masalah ini, (terbatas) kovarians matriks Σ i memiliki 91
parameter untuk setiap i ( i = 1 , 2 , 3), yang berarti jumlah total parameter
sangat besar relatif terhadap ukuran sampel n = 178. Campuran analisis faktor
dapat digunakan untuk mengurangi jumlah parameter yang akan dipasang. Dalam campuran faktor
analisis, setiap pengamatan Y j dimodelkan sebagai

Y j = i + B i U ij + ij

dengan probabilitas π i ( i = 1 , ..., g ) untuk j = 1 , ..., n , di mana U ij adalah dimensi- q


( q <p ) vektor variabel laten atau tidak teramati yang disebut faktor dan B i adalah p ×
q matriks pemuatan faktor (parameter). Faktor U i 1 , ..., U in terdistribusi
secara independen N ( 0 , I q ), terlepas dari ij , yang didistribusikan secara independen

https://translate.googleusercontent.com/translate_f 98/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

© 2009 oleh Taylor & Francis Group, LLC

Halaman 109

5.4 Contoh Ilustrasi 101

N ( 0 , D i ), di mana saya q adalah q × q matriks identitas dan D i adalah p × p matriks diagonal


( i = 1 , ..., g ). Itu adalah,

∑g
f(yj;Ψ)= πiφ(yj;i,Σi)
i=1

dimana
Σ i = B iB T ( i = 1 , ..., g )
i+ Di
Vektor dari parameter yang tidak diketahui Ψ sekarang terdiri dari elemen i , B i ,
dan D i , bersama dengan proporsi pencampuran π i ( i = 1 , ..., g - 1).
Algoritma conditional-maximization (AECM) harapan bergantian [24] dapat
digunakan agar sesuai dengan campuran model analisis faktor oleh ML; lihat Bagian 5.5. Itu
parameter yang tidak diketahui dipartisi sebagai ( Ψ T
1 , Ψ T2 ) T , di mana Ψ 1 berisi π i ( i =
1 , ..., g - 1) dan elemen i ( i = 1 , ..., g ). Subvektor Ψ 2 berisi
elemen B i dan D i ( i = 1 , ..., g ). Algoritma AECM adalah perpanjangan dari
algoritma maximation-conditional maximization (ECM) [23], di mana spesifikasinya
dari data lengkap diizinkan untuk berbeda pada setiap maksimalisasi bersyarat
(CM) langkah. Dalam aplikasi ini, satu iterasi terdiri dari dua siklus yang berkaitan dengan
partisi Ψ menjadi Ψ 1 dan Ψ 2 , dan ada satu langkah-E dan satu langkah-CM untuk masing-masing
siklus. Untuk siklus pertama algoritma AECM, kami menentukan data yang hilang menjadi adil
vektor komponen-indikator, z 1 , ..., z n ; lihat Persamaan (5.4). Langkah-E pada
siklus pertama pada iterasi ( k +1) pada dasarnya sama dengan yang diberikan dalam Persamaan (5.5)
dan (5.6). Langkah CM pertama menghitung estimasi yang diperbarui Ψ ( k +1)1 sebagai

∑n
π saya
( k +1) = τ (k)
ij / n
j=1

dan
∑n ∑n
( k +1)
= τ (k) τ (k)
saya aku j
ij y j /
j=1 j=1

untuk i = 1 , ..., g . Untuk siklus kedua untuk pembaruan Ψ 2 , kami menentukan yang hilang
data menjadi faktor U i 1 , ..., U in , serta vektor komponen-indikator,
T, Ψ(k) T
z 1 , ..., z n . Pada pengaturan Ψ ( k +1 / 2) sama dengan ( Ψ
1 ( k +1) 2 ) T , E-step pada yang kedua
siklus menghitung ekspektasi bersyarat sebagai

( k )T
E Ψ ( k +1 / 2) { Z ij ( U ij - i ) | y j } = τ ( k +1 / 2)aku j saya (yj-i)

dan

E Ψ ( k +1 / 2) { Z ij ( U ij - i ) ( U ij - i ) T | y j }
{ (k) T }
= τ ( aku
k +1 / 2)
j saya ( y j - i ) ( y j - i ) T ( k ) saya
+ Ω ( ksaya
)

dimana ( ) −1
(k) = T+ D(k)
saya B ( k ) saya saya B (saya
k)
iB(k)

© 2009 oleh Taylor & Francis Group, LLC

https://translate.googleusercontent.com/translate_f 99/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

Halaman 110

102 EM

dan
T
(k) = I q - (k)
Ω saya saya B (saya
k)

untuk i = 1 , ..., g . E-langkah di atas menggunakan hasil distribusi bersyarat dari


U ij diberikan y j dan z ij = 1 diberikan oleh
(T )
U ij | y j , z ij = 1 ∼ N
i( yj- i) , Ωi

untuk i = 1 , ..., g ; j = 1 , ..., n . Langkah-CM pada siklus kedua menyediakan


estimasi terbaru Ψ ( k +1) 2 sebagai
( (k) T
) −1
( k +1 / 2) (k) ( k +1 / 2) (k)
B (saya
k +1) =V V + Ω (k)
saya saya saya saya saya saya

dan {
( k +1 / 2) ( k +1 / 2) T}
D ( saya
k +1) = diag V - B ( k +1) H B (saya
k +1)
saya saya saya

dimana ∑n
( y j - ( k +1) saya ) ( y j - ( k +1)saya )T
( k +1 / 2) = j = 1 τ ( aku
k +1j / 2) ∑n
V saya
aku j
j = 1 τ ( k +1 / 2)

dan
( k +1 / 2) T ( k +1 / 2) (k)
H = (k) V + Ω (k)
saya saya saya saya saya

Sebagai ilustrasi, suatu campuran model analisis faktor dengan nilai q yang berbeda adalah
dipasang pada kumpulan data anggur, mengabaikan klasifikasi data yang diketahui. Untuk menentukan
perkiraan awal Ψ , program EMMIX digunakan agar sesuai dengan campuran normal
model dengan matriks kovarians komponen-tidak terbatas menggunakan sepuluh awal acak
nilai (dengan 70% subsampling data). Estimasi π i dan i diperoleh
digunakan sebagai nilai awal untuk π i dan i dalam algoritma AECM. Estimasi
dari Σ i diperoleh (dilambangkan sebagai Σ (0)
i ) digunakan untuk menentukan estimasi awal D i ,
dimana D (0)saya diambil menjadi matriks diagonal yang terbentuk dari elemen diagonal
Σ (0)
i . Perkiraan awal B i dapat diperoleh dengan menggunakan metode yang dijelaskan dalam [20].
Hasil dari algoritma AECM dari q = 1 hingga q = 8 disajikan pada Tabel 5.2 .
Kami juga telah melaporkan nilai minus dua kali statistik uji rasio kemungkinan λ
(yaitu, dua kali peningkatan kemungkinan log), saat kami melanjutkan dari pemasangan campuran q
analisis faktor menjadi satu dengan faktor komponen q +1. Untuk tingkat nomor tertentu
komponen g , kondisi keteraturan berlaku untuk distribusi nol asimptotik dari
-2 log λ menjadi chi-kuadrat dengan d derajat kebebasan, di mana d bedanya
antara jumlah parameter di bawah nol dan hipotesis alternatif untuk
nilai q . Hal ini dapat dilihat dari Tabel 5.2 bahwa tingkat kesalahan nyata dari outright
clustering adalah terkecil untuk q = 2 dan 3. Namun, tingkat kesalahan ini tidak diketahui dalam a
konteks pengelompokan dan karena itu tidak dapat digunakan sebagai panduan untuk pilihan q . Tentang
penggunaan uji rasio kemungkinan untuk memutuskan jumlah faktor q , tes
q = q 0 = 6 vs q = q 0 1 = 7 adalah tidak signifikan ( P = 0 . 28), untuk mengambil -2 log λ ke
menjadi chi-kuadrat dengan d = g ( p - q 0 ) = 21 derajat kebebasan di bawah hipotesis nol
bahwa q = q 0 = 6.

© 2009 oleh Taylor & Francis Group, LLC

https://translate.googleusercontent.com/translate_f 100/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

Halaman 111

5.5 Topik Tingkat Lanjut 103

TABEL 5.2 Hasil Algoritma AECM untuk Contoh 5.2


q Kemungkinan log Kesalahan (% Kesalahan) - 2 log

1 −3102.254 2 (1.12) -
2 −2995.334 1 (0,56) 213.8
3 −2913.122 1 (0,56) 164.4
4 −2871.655 3 (1.69) 82,93
5 −2831.860 4 (2.25) 79.59
6 −2811.290 4 (2.25) 41.14
7 −2799.204 4 (2.25) 24.17
8 −2788.542 4 (2.25) 21.32

5.5 Topik Tingkat Lanjut


Di bagian ini, kami mempertimbangkan beberapa ekstensi dari algoritma EM untuk menangani masalah
dengan perhitungan E-step dan / atau M-step yang lebih sulit, dan untuk mengatasi masalah
konvergensi lambat. Selain itu, kami menyajikan akun singkat tentang aplikasi
Algoritma EM dalam konteks Hidden Markov Models (HMMs), yang menyediakan a
cara yang mudah untuk merumuskan ekstensi model campuran untuk memungkinkan ketergantungan
data.
Dalam beberapa aplikasi dari algoritma EM seperti dengan linear campuran umum
model, E-step adalah kompleks dan tidak mengakui solusi bentuk dekat dengan
Q -fungsi. Dalam hal ini, langkah-E dapat dijalankan oleh proses Monte Carlo (MC).
Pada iterasi ( k + 1), langkah-E melibatkan
r
simulasi set independen M dari data yang hilang Z dari
distribusi bersyarat g ( z | y ; Ψ ( k ) )
r
perkiraan fungsi- Q oleh

∑M.
1
Q ( Ψ ; Ψ (k) ) ≈ Q M ( Ψ ; Ψ (k) ) = log L c ( Ψ ; y , z ( m k ) )
M.
m=1

di mana z ( m k ) adalah m th seperangkat nilai-nilai berdasarkan hilang Ψ ( k )

Pada langkah-M, fungsi- Q dimaksimalkan di atas Ψ untuk mendapatkan Ψ ( k +1) . Varian ini adalah
dikenal sebagai algoritma Monte Carlo EM (MCEM) [33]. Sebagai kesalahan MC diperkenalkan
pada E-step, properti monotonisitas hilang. Tetapi dalam kasus-kasus tertentu, algoritma
mendekati maximizer dengan probabilitas tinggi [4]. Masalah menentukan
M dan pemantauan konvergensi merupakan hal yang sangat penting dalam penggunaan rutin
algoritma; lihat [4, 18, 33].
Dengan algoritma EM, langkah-M hanya melibatkan estimasi ML data lengkap,
yang seringkali sederhana secara komputasi. Namun, di beberapa aplikasi, seperti itu
dalam campuran analisis faktor (Bagian 5.4.2), langkah-M agak rumit.

© 2009 oleh Taylor & Francis Group, LLC

Halaman 112

https://translate.googleusercontent.com/translate_f 101/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

104 EM

Algoritma ECM [23] adalah perpanjangan alami dari algoritma EM dalam situasi
di mana proses maksimalisasi pada M-step relatif sederhana saat bersyarat
pada beberapa fungsi dari parameter yang diestimasi. Algoritma ECM mengambil
keuntungan dari kesederhanaan maksimalisasi data bersyarat lengkap dengan mengganti
langkah-rumit dari algoritma EM dengan beberapa komputasi yang lebih sederhana
Langkah CM. Secara khusus, algoritma ECM mempertahankan konvergensi yang menarik
properti dari algoritma EM [18, 23]. Algoritma AECM [24] disebutkan dalam
Bagian 5.4.2 memungkinkan spesifikasi data lengkap bervariasi bila perlu
atas CM-langkah di dalam dan di antara iterasi. Ini augmentasi data yang fleksibel dan
skema pengurangan model sangat cocok untuk aplikasi seperti campuran faktor
analisis di mana parameternya besar jumlahnya.
Kumpulan data besar jutaan pengamatan multidimensi sekarang
biasa. Ada permintaan yang semakin meningkat untuk mempercepat konvergensi
dari algoritma EM ke database besar. Tetapi pada saat yang sama, itu sangat diinginkan
jika kesederhanaan dan stabilitasnya dapat dipertahankan. Versi tambahan dari EM
Algoritma ini diusulkan oleh Neal dan Hinton [25] untuk meningkatkan tingkat konvergensi
dari algoritma EM. Algoritma EM (IEM) tambahan ini dilanjutkan dengan membagi
data ke dalam blok B dan mengimplementasikan (sebagian) E-step hanya untuk satu blok data di
waktu sebelum melakukan langkah-M. Artinya, "scan" algoritma IEM terdiri
dari B partial E-steps dan B full M-steps [26]. Ini dapat ditunjukkan dari Latihan 6 dan
7 pada Bagian 5.6 bahwa algoritma IEM secara umum bertemu dengan lebih sedikit pemindaian dan
karenanya lebih cepat daripada algoritma EM. Algoritma IEM juga meningkatkan kemungkinan
di setiap pemindaian; lihat diskusi di [27].
Dalam kerangka campuran dengan pengamatan y 1 , ..., y n , yang tidak dapat diobservasi
vektor komponen-indikator z = ( z T
1 , ..., z T n ) T dapat disebut sebagai "variabel tersembunyi
sanggup." Dalam aplikasi pengenalan suara, yang z j mungkin tidak diketahui serial bergantung
spektrum prototipikal di mana sinyal pidato diamati y j tergantung ( j = 1 , ..., n ).
Oleh karena itu urutan atau set tersembunyi nilai z j tidak dapat dianggap sebagai independen. Di
aplikasi pengenalan suara otomatis atau pemrosesan bahasa alami (NLP)
tugas, model Markovian stasioner di atas ruang keadaan terbatas umumnya dirumuskan
untuk distribusi variabel tersembunyi Z [18]. Sebagai konsekuensi dari ketergantungan
struktur Z , kepadatan Y j tidak akan memiliki perwakilan sederhana [Equa-
tion (5.1)] dari kepadatan campuran seperti dalam kasus kemerdekaan. Namun, Y 1 , ..., Y n
diasumsikan bebas bersyarat z 1 , ..., z n ; itu adalah

∏n
f ( y 1 , ..., y n | z 1 , ..., z n ;) = f ( y j | z j ;)
j=1

di mana menunjukkan vektor yang berisi parameter yang tidak diketahui dalam kondisi ini
distribusi yang dikenal apriori berbeda. Penerapan algoritma EM
untuk masalah ini dikenal sebagai algoritma Baum-Welch dalam literatur HMM. Baum
dan rekan-rekannya merumuskan algoritma ini sebelum munculnya EM
algoritma dalam Dempster et al. [8] dan menetapkan properti konvergensi untuk ini
algoritma; lihat [2] dan referensi di dalamnya. E-step dapat diimplementasikan dengan tepat,
tetapi memang membutuhkan rekursi maju dan mundur melalui data [18]. Langkah-M

© 2009 oleh Taylor & Francis Group, LLC

Halaman 113

5.6 Latihan 105

https://translate.googleusercontent.com/translate_f 102/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

dapat diimplementasikan dalam bentuk tertutup, menggunakan rumus yang merupakan kombinasi dari
MLE untuk parameter multinomial dan probabilitas transisi rantai Markov;
lihat [14, 30].

5.6 Latihan
Sepuluh latihan diberikan di bagian ini. Mereka muncul di berbagai bidang ilmiah di Indonesia
konteks penambangan data dan pengenalan pola, di mana algoritma EM atau nya
varian telah diterapkan. Latihan-latihan tersebut termasuk masalah di mana ketidaklengkapan
data mungkin tidak sealami atau sejelas dalam dua contoh ilustrasi di
Bagian 5.4.

1. Böhning et al. [3] pertimbangkan penelitian kohort tentang status kesehatan 602 prasekolah
anak-anak dari tahun 1982 hingga 1985 di Thailand utara [32]. Frekuensi penyakit
mantra (demam, batuk, atau keduanya) selama periode penelitian disajikan pada Tabel 5.3 .
Campuran tiga komponen distribusi Poisson cocok untuk data. Itu
fungsi log likelihood diberikan oleh
{3 }
∑n ∑
log L ( Ψ ) = catatan πif(yj,θi)
j=1 i=1

di mana Ψ = ( π 1 , π 2 , θ 1 , θ 2 , θ 3 ) T dan

f ( y j , θ i ) = exp (- θ i ) θ y j ( i = 1 , 2 , 3)
i/ yj!

Dengan mengacu pada Bagian 5.4.1, mari


/3 ∑
( ) ( )
τ i ( y j ; Ψ ( k ) ) = π saya
(k) f y j , θ (k)
saya
π h( k ) f y j , θ h( k ) ( i = 1 , 2 , 3)
h=1

menunjukkan probabilitas posterior bahwa y j termasuk dalam komponen ke- i . Menunjukkan


bahwa langkah-M memperbarui perkiraan sebagai

∑n
π ( k +1) = τ i ( y j ; Ψ (k) ) / n ( i = 1 , 2)
saya
j=1

∑n ( )
( k +1)
θ ( k +1) = τ i ( y j ; Ψ ( k ) ) y j / nπ ( i = 1 , 2 , 3)
saya saya
j=1

Menggunakan perkiraan awal π 1 = 0 . 6, π 2 = 0 . 3, θ 1 = 2, θ 2 = 9, dan θ 3 = 17,


temukan MLE dari Ψ .

© 2009 oleh Taylor & Francis Group, LLC

Halaman 114

106 EM

TABEL 5.3 Frekuensi Penyakit Mantra untuk Sampel Kelompok


Anak-anak Prasekolah di Thailand Utara
Jumlah Jumlah Jumlah

https://translate.googleusercontent.com/translate_f 103/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
Frekuensi Penyakit Frekuensi Penyakit Frekuensi Penyakit
0 120 8 25 16 6
1 64 9 19 17 5
2 69 10 18 18 1
3 72 11 18 19 3
4 54 12 13 20 1
5 35 13 4 21 2
6 36 14 3 23 1
7 25 15 6 24 2

2. pas dari campuran (multivariat) t distribusi diusulkan oleh


McLachlan dan Peel [19] untuk memberikan pendekatan yang lebih kuat untuk pemasangan
model campuran normal. Sebuah g campuran -component dari t distribusi diberikan oleh

∑g
f(yj;Ψ)= πif(yj;i,Σi,νi)
i=1

di mana kerapatan komponen f ( y j ; i , Σ i , ν i ) memiliki distribusi t multivariat


dengan lokasi i , matriks produk dalam pasti positif Σ i , dan ν i derajat
kebebasan ( i = 1 , ..., g ); lihat [19, 29]. Vektor dari parameter yang tidak diketahui adalah

Ψ = ( π 1 , ..., π g −1 , T , T ) T

di mana = ( ν 1 , ..., ν g ) T adalah derajat kebebasan untuk distribusi t , dan


=(T
1 , ..., T g ) T , dan di mana saya mengandung elemen i dan yang berbeda
elemen Σ i ( i = 1 , ..., g ). Dengan mengacu pada Bagian 5.4.1, yang diamati
data yang ditambah oleh vektor komponen-indikator z 1 , ..., z n dipandang sebagai
masih belum lengkap. Data hilang tambahan, u 1 , ..., u n , dimasukkan ke dalam
vektor data lengkap, yaitu,
( )T
x= yT,zT
1, ..., z T n, u 1 , ..., u n
di mana u 1 , ..., u n didefinisikan sehingga, diberikan z ij = 1,

Y j | u j , z ij = 1 ∼ N ( i , Σ i / u j )

secara independen untuk j = 1 , ..., n , dan


(1 )
U j | z ij = 1 ∼ gamma
2 ν i , 12 ν i

Tunjukkan bahwa kemungkinan log data lengkap dapat ditulis dalam tiga istilah sebagai

log L c ( Ψ ) = log L 1 c () + log L 2 c () + log L 3 c () (5.10)

© 2009 oleh Taylor & Francis Group, LLC

Halaman 115

5.6 Latihan 107

dimana
∑g ∑n
log L 1 c () = z ij log π i
i=1 j=1

∑g ∑n { }
log L 2 c () = z ij - log ( 1
2νi) +1 2 ν i log ( 12 ν i ) + 1 2 ν i (log u j - u j ) - log u j
i=1 j=1

dan

https://translate.googleusercontent.com/translate_f 104/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
∑g ∑n {-1 }
log L 3 c () = z ij 2 p log (2 π ) - 1 2 ujδ(yj,i,;Σi)
2 log | Σi| -1
i=1 j=1

dimana
−1
δ(yj,i;Σi)=(yj-i)TΣ
i( yj- i)
3. Dengan mengacu pada campuran distribusi t di atas , tunjukkan bahwa E-step on
iterasi k ( 1) dari algoritma EM melibatkan perhitungan

π (k) f ( y j ; (k)
saya saya , Σ (saya
k ) , νi ()k )
E Ψ ( k ) ( Z ij | y ) = τ ( k ) (5.11)
ij = f ( y j ; Ψ (k) )
ν (k)+ p
(k) saya
E Ψ ( k ) ( U j | y , z ij = 1) = u (5.12)
ij = ν (k) + δ ( y j , (k)
saya saya ; Σ (i k))
dan
{ ( ) ( )}
(k)
ν (k)+ p ν (k)+ p
saya saya
E Ψ ( k ) (log U j | y , z ij = 1) = log u ψ - log
ij + 2 2
(5.13)

untuk i = 1 , ..., g ; j = 1 , ..., n . Dalam Persamaan (5.13),

ψ ( r ) = { ∂ ( r ) / ∂r } / ( r )

adalah fungsi Digamma [29]. Petunjuk untuk Persamaan (5.12): distribusi gamma
adalah distribusi sebelum konjugasi untuk U j ; Petunjuk untuk Persamaan (5.13): jika acak
variabel S memiliki distribusi gamma ( α, β ), kemudian

E (log S ) = ψ ( α ) - log β.

Juga, mengikuti dari Persamaan (5.10) bahwa ( k +1) , ( k +1) , dan ( k +1) dapat
dihitung pada M-step secara independen satu sama lain. Tunjukkan bahwa pembaruan
rumus untuk dua yang pertama adalah
∑n
π ( k +1) = τ (k)
saya
ij / n
j=1

∑n /n ∑
( k +1) (k)
saya
= τ (k) τ ( k ) (aku
k)
j
ij kamu
ij y j ij kamu
j=1 j=1

© 2009 oleh Taylor & Francis Group, LLC

Halaman 116

108 EM

dan ∑n
(k)
saya ) ( y j - ( k +1)saya )T
j = 1 τ ( ijk kamu
ij ( y j -∑
k +1) =
) ( k n+1)
Σ (saya
aku j
j=1τ(k)

Pembaruan ν ( k +1)saya karena derajat kebebasan perlu dihitung secara iteratif.


Ini mengikuti dari Persamaan (5.10) yang ν ( k +1)
saya adalah solusi dari persamaan
{
(1 ) (1 ) ∑n ( )
(k) (k)
-ψ + log +1+1 log u
aku j aku j
2νi 2νi n saya
(k) j=1τ(k) ij - u
( ) ( )}
ν (k) + p ν (k) + p
+ψ saya - log saya =0
2 2

∑n
(k)

https://translate.googleusercontent.com/translate_f 105/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
dimana n saya = j = 1 τ ( ijk () i = 1 , ..., g ).
4. Program EMMIX [22] memiliki opsi untuk pemasangan campuran multi-
memvariasikan komponen t . Sekarang muat campuran dua komponen t (dengan tidak terbatas
skala matriks Σ i dan derajat kebebasan yang tidak sama ν i ) dengan kepiting Leptograpsus
set data Campbell dan Mahon [5]. Dengan data kepiting, satu spesies telah
terpecah menjadi dua spesies baru, yang sebelumnya dikelompokkan berdasarkan bentuk warna, oranye dan biru.
Data tersedia pada 50 spesimen setiap jenis kelamin masing-masing spesies. Perhatian di sini
difokuskan pada sampel n = 100 pengukuran lima dimensi pada or-
kepiting ange (dua komponen sesuai dengan jantan dan betina). Jalankan
Program EMMIX dengan nilai mulai otomatis dari 10 mulai acak (menggunakan
100% subsampling data), 10 k -berarti dimulai, dan 6 metode hirarkis
(dengan nilai awal yang disediakan pengguna ν= (0)
ν (0) = 13 . 193 yang diperoleh dalam
1 2
kasus matriks skala yang sama dan derajat kebebasan yang sama). Verifikasi perkiraan
adalah ν 1 = 12 . 2 dan ν 2 = 300 . 0 dan angka yang ditetapkan untuk setiap komponen
masing-masing adalah 47 dan 53 (tingkat kesalahan klasifikasi = 3%).
5. Untuk campuran distribusi komponen g dari model linier umum
(GLMs) dalam proporsi π 1 , ..., π g , kepadatan variabel respons j
Y j diberikan oleh
∑g
f(yj;Ψ)= π i f ( y j ; θ ij , κ i )
i=1

di mana kepadatan log untuk komponen ke- i diberikan oleh

log f ( y j ; θ ij , κ i ) = κ −1 saya { θ ij y j - b ( θ ij )} + c ( y j ; κ i ) ( i = 1 , ..., g )

di mana θ ij adalah parameter alami atau kanonik dan κ i adalah parameter dispersi.
Untuk komponen ke- i GLM, tunjukkan μ ij mean bersyarat dari Y j dan η ij =
h i ( μ ij ) = T
i x j prediktor linier, di mana h i (·) adalah fungsi tautan dan x j
adalah vektor variabel penjelas pada j th respon y j [20]. Vektor
parameter yang tidak diketahui adalah Ψ = ( π 1 , ..., π g −1 , κ 1 , ..., κ g , T
1 , ..., T g ) T . Membiarkan
z ij menunjukkan variabel komponen-indikator seperti yang didefinisikan dalam Bagian 5.4.1. Itu
E-step pada dasarnya sama dengan yang diberikan dalam Persamaan (5.5) dan (5.6), dengan

© 2009 oleh Taylor & Francis Group, LLC

Halaman 117

5.6 Latihan 109

kepadatan komponen φ ( y j ; i , Σ i ) digantikan oleh f ( y j ; θ ij , κ i ). Pada langkah-M,


rumus pembaruan untuk π ( k +1) saya ( i = 1 , ..., g - 1) adalah

∑n
π ( k +1) = τ (k)
saya ij / n
j=1

dimana /g
( ) ∑ ( )
τ (k) π (k) f y j ; θ (k)
ij = π ( k ) saya f y j ; θij( ,k κ
)
( ksaya
) h hj , κ ( kh)
h=1

( k +1)
Pembaruan κ ( k +1)saya dan saya perlu dihitung secara iteratif dengan menyelesaikan

∑n
τ (k)
ij ∂ log f ( y j ; θ ij , κ i ) / ∂κ = 0
j=1

∑n
τ (k) (5.14)
ij ∂ log f ( y j ; θ ij , κ i ) / ∂ i = 0
j=1

https://translate.googleusercontent.com/translate_f 106/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
Pertimbangkan campuran distribusi gamma, tempat fungsi kepadatan gamma
untuk komponen ke - i diberikan oleh

αi αi
( μ ij )α iy
( α i −1)
j exp (- μ ij yj)
f ( y j ; μ ij , α i ) =
(αi)

di mana α i > 0 adalah parameter bentuk, yang tidak bergantung pada penjelasan
variabel. Prediktor linier dimodelkan melalui log-link sebagai

η ij = h i ( μ ij ) = log μ ij = T
saya x j

Dengan mengacu pada Persamaan (5.14), tunjukkan bahwa M-step untuk campuran gamma
distribusi melibatkan penyelesaian persamaan nonlinier

∑n
τ (k)
ij {1 + log α i - log μ ij + log y j - y j / μ ij - ψ ( α i )} = 0 ,
j=1

∑n
τ (k)
ij (−1 + y j / μ ij ) α i x j = 0
j=1

di mana ψ ( r ) = { ∂ ( r ) / ∂r } / ( r ) adalah fungsi digamma.


6. Dengan algoritma IEM yang dijelaskan dalam Bagian 5.5, misalkan Ψ ( k + b / B ) menunjukkan nilai
dari Ψ setelah iterasi ke- b pada pemindaian ( k +1) ke ( b = 1 , ..., B ). Dalam konteksnya
dari g -component model yang normal campuran (Bagian 5.4.1), parsial E-langkah tentang
iterasi ( b + 1) dari pemindaian ( k + 1) menggantikan z ij oleh τ i ( y j ; Ψ ( k + b / B ) )
bagi mereka y j dalam ( b + 1) th blok ( b = 0 , ..., B - 1; i = 1 , ..., g ). Dengan
(k+b/B)
referensi ke Persamaan (5.7), misalkan Tiq, b +1 menunjukkan harapan bersyarat dari

© 2009 oleh Taylor & Francis Group, LLC

Halaman 118

110 EM

statistik yang cukup untuk blok ( b + 1) ( b = 0 , ..., B - 1; q = 1 , 2 , 3).


Sebagai contoh,

(k+b/B)
T = τ i ( y j ; Ψ (k+b/B) ) ( i = 1 , ..., g )
i 1 , b +1
j∈Sb

di mana S b adalah bagian dari {1 , ..., n } yang berisi subscript dari orang-orang y j yang
termasuk dalam blok ( b + 1) ( b = 0 , ..., B - 1). Dari Persamaan (5.7) dan
(5.8), menunjukkan bahwa langkah-M pada iterasi ( b + 1) dari pemindaian ( k + 1) dari
Algoritma IEM melibatkan pembaruan estimasi π i , i , dan Σ i as
berikut:

π ( k + ( b +1) / B ) =T (k+b/B) /n
saya saya 1
( k + ( b +1) / B ) (k+b/B)
=T / T (k+b/B)
saya saya 2 saya 1
{ −1
( k + ( b +1) / B ) (k+b/B) (k+b/B) (k+b/B) (k+b/B) T}
Σ = T -T T T / T (k+b/B)
saya saya 3 saya 1 saya 2 saya 2 saya 1

untuk i = 1 , ..., g , di mana

(k+b/B) ( k + ( b −1) / B ) ( k −1+ b / B ) (k+b/B)


T iq
=T iq
-T iq, b +1
+T iq, b +1 (5.15)

untuk i = 1 , ..., g dan q = 1 , 2 , 3. Perlu dicatat bahwa suku pertama dan kedua aktif
sisi kanan Persamaan (5.15) sudah tersedia dari sebelumnya
iterasi dan pemindaian sebelumnya, masing-masing. Dalam praktiknya, algoritma IEM
https://translate.googleusercontent.com/translate_f 107/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
diimplementasikan dengan menjalankan algoritma EM standar untuk beberapa pemindaian pertama
untuk menghindari masalah "kelaparan komponen prematur" [26]. Dalam hal ini, kita
memiliki
∑B
T(k) T (iq,k )b ( i = 1 , ..., g ; q = 1 , 2 , 3)
iq =
b=1

7. Dengan algoritma IEM, Ng dan McLachlan [26] menyediakan panduan sederhana untuk
memilih jumlah blok B untuk campuran normal. Dalam hal komponen-
matriks kovarians yang ditentukan diagonal (seperti pada Contoh 5.1), mereka
menyarankan B ≈ n 1 / 3 . Untuk Iris data dalam Contoh 5.1, ini menunjukkan bahwa B ≈ (150) 1 / 3 .
Jalankan algoritma IEM ke data Iris dengan B = 5 dan nilai awal yang sama
Ψ seperti pada Contoh 5.1. Verifikasi bahwa (a) perkiraan akhir dan kemungkinan log
nilai kira-kira sama dengan yang menggunakan algoritma EM, dan (b)
Algoritma IEM menyatu dengan lebih sedikit pemindaian daripada algoritma EM dan meningkat
kemungkinan pada setiap pemindaian; lihat diskusi di [27].
8. Ng dan McLachlan [28] menerapkan algoritma ECM untuk melatih campuran
jaringan pakar (ME) [10, 12]. Dalam jaringan ME, ada beberapa modul,
disebut sebagai jaringan pakar. Jaringan pakar ini memperkirakan distribusi
pijakan y j dalam setiap wilayah ruang input. Jaringan pakar memetakannya
input x j ke output y j , dengan kepadatan bersyarat f h ( y j | x j ; h ), di mana h adalah a
vektor parameter yang tidak diketahui untuk h th ahli jaringan ( h = 1 , ..., M ). Itu
jaringan gating menyediakan satu set koefisien skalar π h ( x j ;) yang berbobot

© 2009 oleh Taylor & Francis Group, LLC

Halaman 119

5.6 Latihan 111

kontribusi berbagai pakar, di mana merupakan vektor dari parameter yang tidak diketahui
di jaringan gating. Output akhir dari jaringan ME adalah jumlah tertimbang
dari semua vektor keluaran yang dihasilkan oleh jaringan ahli,

∑M.
f(yj|xj;Ψ)= π h ( x j ;) f h ( y j | x j ; h )
h=1

Dalam kerangka data yang tidak lengkap dari algoritma EM, kami memperkenalkan
variabel indikator Z hj , di mana z hj adalah 1 atau 0 sesuai dengan apakah y j termasuk atau
tidak termasuk ke dalam h ahli th. Tunjukkan bahwa log data lengkap kemungkinan
untuk Ψ diberikan oleh

∑n ∑M.
log L c ( Ψ ) = z hj {log π h ( x j ;) + log f h ( y j | x j ; h )}
j=1 h=1

dan fungsi- Q dapat didekomposisi menjadi dua istilah sehubungan dengan dan

h( h = 1 , ..., M ), masing-masing, sebagai

Q ( Ψ ; Ψ (k) ) = Q + Q

dimana

∑n ∑M.
Q= τ (k)
hj log π h ( x j ;)
j=1 h=1

∑n ∑M.
Q= τ (k)
hj log f h ( y j | x j ; h )
j=1 h=1

https://translate.googleusercontent.com/translate_f 108/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

dan dimana
/ M.
( ) ∑ ( )
(k)
τ (k) yj|xj; π r ( x j ; (k) ) f r y j | x j ; ( k )r
hj = π h ( x j ; ( k ) ) f h h
r=1

9. Dengan jaringan ME di atas, output dari jaringan gating biasanya


dimodelkan oleh fungsi multinomial logit (atau softmax) sebagai

exp ( v T
π h ( x j ;) = ∑ M −1 h x j ) ( h = 1 , ..., M - 1)
1+ r = 1 exp ( v T rxj)
∑ M −1
dan π M ( x j ;) = 1 / (1 + r = 1 exp ( v T
r x j )). Di sini berisi elemen dalam
v h ( h = 1 , ..., M −1). Tunjukkan bahwa estimasi yang diperbarui dari ( k +1) pada langkah-M
diperoleh dengan memecahkan
( )
∑n
exp ( v T
τ (k) ∑ M −1 h x j ) xj=0
hj -
j=1 1+ r = 1 exp ( v T
rxj)

© 2009 oleh Taylor & Francis Group, LLC

Halaman 120

112 EM

untuk h = 1 , ..., M −1, yang merupakan himpunan persamaan nonlinier. Perlu dicatat bahwa
persamaan nonlinear untuk h th ahli tidak hanya bergantung pada vektor parameter
v h , tetapi juga pada vektor parameter lain di. Dengan kata lain, setiap parameter
vektor v h tidak dapat diperbarui secara mandiri. Dengan algoritma IRLS disajikan
di [12], asumsi independensi pada vektor parameter ini digunakan
secara implisit. Ng dan McLachlan [28] mengusulkan algoritma ECM yang mana
M-step digantikan oleh ( M - 1) CM-step yang lebih sederhana secara komputasi untuk v h ( h =
1 , ..., M - 1).
10. McLachlan dan Chang [17] mempertimbangkan pendekatan berbasis model campuran untuk
analisis cluster data campuran, di mana pengamatan terdiri dari kedua
ous dan variabel kategori. Misalkan p 1 dari variabel fitur p dalam Y j
yang kategoris, di mana q th variabel kategoris mengambil m q nilai yang berbeda
( q = 1 , ..., p 1 ). Dengan pendekatan kluster berbasis model lokasi [20], p 1
variabel kategori secara unik ditransformasikan
∏ p menjadi
1
multinomial random tunggal
variabel U dengan sel S , di mana S = q = 1 m q adalah jumlah pola yang berbeda
(lokasi) dari variabel kategori p 1 . Kami membiarkan ( u j ) s menjadi label untuk s th
lokasi entitas j ( s = 1 , ..., S ; j = 1 , ..., n ), di mana ( u j ) s = 1 jika
realisasi dari variabel kategori p 1 sesuai dengan pola s th,
dan nol sebaliknya. Model lokasi mengasumsikan lebih lanjut bahwa tergantung pada
( U j ) s = 1, distribusi bersyarat dari p - p 1 variabel kontinu adalah
normal dengan mean adalah dan matriks kovarian Σ i , yang sama untuk semua S
sel. Biarkan p adalah menjadi probabilitas bersyarat bahwa ( U j ) s = 1 diberikan mem- nya
bership dari komponen ke- i dari campuran ( s = 1 , ..., S ; i = 1 , ..., g ).
Dengan mengacu pada Bagian 5.4.1, tunjukkan bahwa pada iterasi EM ( k + 1)
algoritma, estimasi yang diperbarui diberikan oleh
/
∑S ∑n
π ( k +1) = δ js τ ( k ) n
saya ijs
s=1 j=1
/S
∑n ∑ ∑n
( k +1) = δ js τ ( k ) δ jr τ ( k )
hal
adalah ijs ijr
j=1 r=1 j=1
/n
∑n ∑
https://translate.googleusercontent.com/translate_f 109/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
( k +1) ∗
adalah = δ js τ ( k ) j δ js τ ijs( k )
ijs y
j=1 j=1

dan
/S
∑S ∑n ( )( )T ∑ ∑n
∗ ∗
Σ (saya
k +1) = δ js τ ( k ) y y δ js τ ( k )
ijs adalah adalah ijs
j - ( k +1) j - ( k +1)
s=1 j=1 s=1 j=1

di mana δ js adalah 1 atau 0 sesuai dengan apakah ( u j ) s sama dengan 1 atau 0, y
j berisi
variabel kontinu dalam y j , dan
/g
( ∗ ) ∑ ( ∗ )
τ (k) (k) (k) π (k) (k) y (k)
saya hal y saya h
ijs = π ( k ) adalah φ j ; adalah , Σ ( k ) h p hs φ j; hs , Σ ( k )
h=1

untuk s = 1 , ..., S ; i = 1 , ..., g .

© 2009 oleh Taylor & Francis Group, LLC

Halaman 121

Referensi 113

Referensi
[1] A. Asuncion dan DJ Newman. Repositori Pembelajaran Mesin UCI. Universitas
of California, Sekolah Informasi dan Ilmu Komputer, Irvine, 2007.
http://www.ics.uci.edu/ mlearn / MLRepository.html.

[2] LE Baum, T. Petrie, G. Soules, dan N. Weiss. Teknik maksimalisasi


terjadi dalam analisis statistik fungsi probabilistik proses Markov.
Annals of Statistics Matematika , 41: 164–171, 1970.

[3] D. Böhning, P. Schlattmann, dan B. Lindsay. Analisis berbantuan komputer


campuran (CAMAN): Algoritma statistik. Biometrics , 48: 283–303, 1992.

[4] JG Booth dan JP Hobert. Memaksimalkan model campuran linier umum seperti-
kemungkinan dengan algoritma Monte Carlo EM otomatis. Jurnal Kerajaan
Masyarakat Statistik B , 61: 265–285, 1999.

[5] NA Campbell dan RJ Mahon. Sebuah studi multivariat tentang variasi dalam dua spesies
kepiting batu dari genus Leptograpsus . Australian Journal of Zoology , 22: 417–
425, 1974.

[6] DR Cox dan D. Hinkley. Statistik Teoritis . Chapman & Hall, London,
1974.

[7] H. Cramér. Metode Statistik Matematika . Princeton University Press,


New Jersey, 1946.

[8] AP Dempster, NM Laird, dan DB Rubin. Kemungkinan maksimum dari-


melengkapi data melalui algoritma EM. Jurnal Masyarakat Statistik Kerajaan
B , 39: 1–38, 1977.

[9] C. Fraley dan AE Raftery. Mclust: Perangkat lunak untuk analisis kluster berbasis model.
Jurnal Klasifikasi , 16: 297–306, 1999.

[10] RA Jacobs, MI Jordan, SJ Nowlan, dan GE Hinton. Campuran adaptif


ahli lokal. Komputasi Saraf , 3: 79–87, 1991.

[11] M. Jamshidian dan RI Jennrich. Kesalahan standar untuk estimasi EM. Jurnal
dari Royal Statistics Society B , 62: 257–270, 2000.

[12] MI Jordan dan RA Jacobs. Campuran ahli hierarki dan EM


algoritma. Komputasi Saraf , 6: 181–214, 1994.

https://translate.googleusercontent.com/translate_f 110/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
[13] EL Lehmann dan G. Casella. Teori Estimasi Titik . Springer-Verlag,
New York, 2003.

[14] BG Leroux dan ML Puterman. Estimasi maksimum-kemungkinan-hukuman


untuk model campuran independen dan Markov. Biometrics , 48: 545–
558, 1992.

[15] TA Louis. Menemukan matriks informasi yang diamati ketika menggunakan algoritma EM
ritme. Jurnal Masyarakat Statistik Kerajaan B , 44: 226–233, 1982.

© 2009 oleh Taylor & Francis Group, LLC

Halaman 122

114 EM

[16] GJ McLachlan dan KE Basford. Model Campuran: Inferensi dan Aplikasi


untuk Clustering . Marcel Dekker, New York, 1988.

[17] GJ McLachlan dan SU Chang. Pemodelan campuran untuk analisis kluster. Sta-
Metode statistik dalam Penelitian Medis , 13: 347-361, 2004.

[18] GJ McLachlan dan T. Krishnan. Algoritma dan Ekstensi EM (2nd


edisi) . Wiley, New Jersey, 2008.

[19] GJ McLachlan dan D. Peel. Analisis cluster yang kuat melalui campuran multi-
variate t -distribusi. Dalam Catatan Kuliah dalam Ilmu Komputer , halaman 658-666.
Springer-Verlag, Berlin, 1998. Vol. 1451.

[20] GJ McLachlan dan D. Peel. Model Campuran Hingga . Wiley, New York, 2000.

[21] GJ McLachlan dan D. Peel. Campuran dari penganalisa faktor. Dalam P. Langley, editor,
Prosiding Konferensi Internasional ke 17 tentang Pembelajaran Mesin , halaman
599–606, San Francisco, 2000. Morgan Kaufmann.

[22] GJ McLachlan, D. Peel, KE Basford, dan P. Adams. Perangkat lunak emmix


untuk pemasangan campuran normal dan t -komponen. Jurnal Statistik
Perangkat Lunak , 4: Tidak. 2, 1999.

[23] X.-L. Meng dan D. Rubin. Estimasi kemungkinan maksimum melalui algo- ECM
rithm: Kerangka umum. Biometrika , 80: 267-278, 1993.

[24] X.-L. Meng dan DA van Dyk. Algoritma EM — lagu daerah lama yang dinyanyikan
lagu baru yang cepat. Jurnal Masyarakat Statistik Kerajaan B , 59: 511-567, 1997.

[25] RM Neal dan GE Hinton. Tampilan algoritma EM yang membenarkan peningkatan


varian mental, jarang, dan lainnya. Di MI Jordan, editor, Learning in Graphical
Model , halaman 355–368. Kluwer, Dordrecht, 1998.

[26] SK Ng dan GJ McLachlan. Pada pilihan jumlah blok dengan


algoritma EM tambahan untuk pemasangan campuran normal. Statistik dan
Komputasi , 13: 45–55, 2003.

[27] SK Ng dan GJ McLachlan. Mempercepat algoritma EM untuk campuran


segmentasi berbasis model gambar resonansi magnetik. Pengenalan Pola
tion , 37: 1573-1589, 2004.

[28] SK Ng dan GJ McLachlan. Menggunakan algoritma EM untuk melatih jaringan saraf


berfungsi: Kesalahpahaman dan algoritma baru untuk klasifikasi multi-kelas. IEEE
Transaksi di Jaringan Saraf Tiruan , 15: 738-749, 2004.

[29] D. Peel dan GJ McLachlan. Pemodelan campuran kuat menggunakan distribusi t .


Statistik dan Komputasi , 10: 335–344, 2000.

[30] LR Rabiner. Tutorial tentang model Markov tersembunyi dan aplikasi terpilih di
pengenalan suara. Prosiding IEEE , 77: 257–286, 1989.
https://translate.googleusercontent.com/translate_f 111/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

[31] CR Rao. Inferensi Statistik Linier dan Penerapannya (edisi kedua) . Wiley,
New York, 1973.

© 2009 oleh Taylor & Francis Group, LLC

Halaman 123

Referensi 115

[32] F.-P. Schelp, P. Vivatanasept, P. Sitaputra, S. Sormani, P. Pongpaew,


N. Vudhivai, S. Egormaiphol, dan D. Böhning. Hubungan morbiditas
Balita untuk pengukuran antropometrik dan kesehatan masyarakat
Vention. Kedokteran Tropis dan Parasitologi , 41: 121–126, 1990.

[33] GCG Wei dan MA Tanner. Implementasi Monte Carlo dari EM


algoritma dan algoritma augmentasi data orang miskin. Jurnal
American Statistics Association , 85: 699–704, 1990.

https://translate.googleusercontent.com/translate_f 112/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

© 2009 oleh Taylor & Francis Group, LLC

Halaman 125
124

Bab 6
Peringkat halaman

Bing Liu dan Philip S. Yu

Isi

6.1 Pendahuluan ................................................ ........... 117


6.2 Algoritma PageRank ................................................... .... 118
6.3 Suatu Perpanjangan: Jangka Waktu-PageRank ....................................... 123
6.4 Ringkasan ................................................ .............. 124
6.5 Latihan ................................................ .............. 124
Referensi ................................................. ................. 125

6.1 Pendahuluan
Peringkat berbasis tautan telah memberikan kontribusi signifikan terhadap keberhasilan pencarian Web.
PageRank [1, 7] mungkin adalah algoritma peringkat berbasis tautan yang paling dikenal, yang
juga mendukung mesin pencari Google. Karena kesuksesan bisnis Google yang sangat besar,
PageRank telah muncul sebagai model analisis tautan dominan di Web.
Algoritma PageRank pertama kali diperkenalkan oleh Sergey Brin dan Larry Page di
Konferensi Internasional World Wide Web Ketujuh ( WWW 7) pada bulan April 1998, dengan
bertujuan untuk mengatasi beberapa kesulitan utama dengan algoritma peringkat berbasis konten
mesin pencari awal. Mesin pencari awal ini pada dasarnya diambil relevan
halaman untuk pengguna berdasarkan kesamaan konten permintaan pengguna dan yang diindeks
halaman mesin pencari. Algoritma pengambilan dan pemeringkatan cukup langsung
implementasi dari pengambilan informasi. Namun, mulai tahun 1996, itu
menjadi jelas bahwa kesamaan konten saja tidak lagi memadai untuk pencarian karena
dua alasan utama. Pertama, jumlah halaman Web berkembang pesat selama pertengahan hingga
akhir 1990-an. Dengan kueri apa pun, jumlah halaman yang relevan bisa sangat besar. Sebagai contoh,
diberikan permintaan pencarian "teknik klasifikasi," perkiraan mesin pencari Google
bahwa ada sekitar 10 juta halaman yang relevan. Kelimpahan informasi ini menyebabkan
masalah utama untuk peringkat, yaitu, bagaimana memilih hanya 10 hingga 30 halaman dan peringkat
mereka sesuai untuk disajikan kepada pengguna. Kedua, metode kesamaan konten mudah
spammed Pemilik halaman dapat mengulangi beberapa kata penting dan menambahkan banyak kata dari jarak jauh
kata-kata yang terkait di halamannya untuk meningkatkan peringkat halaman dan / atau membuat
halaman yang relevan dengan sejumlah besar kemungkinan pertanyaan.

117

© 2009 oleh Taylor & Francis Group, LLC

https://translate.googleusercontent.com/translate_f 113/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

Halaman 126

118 Peringkat halaman

Dari sekitar tahun 1996, para peneliti di perusahaan akademi dan mesin pencari mulai
kerjakan masalahnya. Mereka menggunakan hyperlink. Tidak seperti dokumen teks yang digunakan dalam tradisi
pengambilan informasi nasional, yang sering dianggap independen satu sama lain
(Yaitu, tanpa hubungan atau tautan eksplisit di antara mereka kecuali dalam analisis kutipan),
Halaman web terhubung melalui hyperlink, yang membawa informasi penting.
Beberapa hyperlink digunakan untuk mengatur sejumlah besar informasi di Web yang sama
situs, dan dengan demikian hanya menunjuk ke halaman di situs yang sama. Hyperlink lain mengarah ke halaman
di situs Web lain. Hyperlink keluar seperti itu sering menunjukkan penyampaian implisit
otoritas ke halaman yang ditunjuk. Misalnya, jika halaman Anda menunjuk ke sebuah
halaman luar, Anda jelas percaya bahwa halaman luar ini berisi kualitas dan berguna
informasi kepada Anda. Oleh karena itu, halaman-halaman yang ditunjuk oleh banyak halaman lain adalah
kemungkinan mengandung informasi yang otoritatif atau berkualitas. Keterkaitan seperti itu seharusnya jelas
digunakan dalam evaluasi halaman dan peringkat di mesin pencari. PageRank justru mengeksploitasi
tautan semacam itu untuk menyediakan algoritme peringkat yang kuat. Intinya, PageRank mengandalkan
sifat demokratis Web dengan menggunakan struktur tautannya yang luas sebagai indikator
kualitas halaman individual. Itu menafsirkan hyperlink dari halaman x ke halaman y sebagai suara, oleh
halaman x , untuk halaman y . Selain itu, PageRank melihat lebih dari sekadar angka
suara atau tautan yang diterima halaman. Ini juga menganalisis halaman yang memberikan suara. Voting
dilemparkan oleh halaman-halaman yang sendiri "penting" menimbang lebih berat dan membantu membuatnya
halaman lain lebih "penting." Ini adalah ide prestise peringkat di jejaring sosial [9].
Dalam bab ini, kami memperkenalkan algoritma PageRank. Bersamaan dengan itu, perpanjangan untuk
algoritme juga disajikan, yang disebut Timed-PageRank. Jangka waktu-PageRank
menambahkan dimensi temporal ke pencarian untuk berurusan dengan sifat dinamis dari Web
dan penuaan halaman Web.

6.2 Algoritma PageRank


PageRank menghasilkan peringkat statis halaman Web dalam arti bahwa nilai PageRank
dihitung untuk setiap halaman secara off-line, dan nilainya tidak tergantung pada permintaan pencarian.
Dengan kata lain, perhitungan PageRank murni berdasarkan pada tautan yang ada
Web dan tidak ada hubungannya dengan setiap permintaan yang dikeluarkan oleh pengguna. Sebelum memperkenalkan
rumus PageRank, mari kita nyatakan beberapa konsep utama.

In-link halaman i : Ini adalah hyperlink yang menunjuk ke halaman i dari halaman lain.
Biasanya, hyperlink dari situs yang sama tidak dipertimbangkan.
Tautan keluar halaman i : Ini adalah hyperlink yang menunjukkan ke halaman lain dari
halaman i . Biasanya, tautan ke halaman situs yang sama tidak dipertimbangkan.

Ide-ide berikut berdasarkan pangkat pangkat [9] digunakan untuk menurunkan PageRank
algoritma.

© 2009 oleh Taylor & Francis Group, LLC

https://translate.googleusercontent.com/translate_f 114/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

Halaman 127

6.2 Algoritma PageRank 119

1. Hyperlink dari halaman yang menunjuk ke halaman lain adalah penyampaian implisit dari
wewenang ke halaman target. Dengan demikian, semakin banyak tautan yang saya terima, halaman
lebih gengsi halaman yang saya miliki.
2. Halaman yang menunjuk ke halaman saya juga memiliki skor prestise mereka sendiri. Halaman dengan
skor prestise yang lebih tinggi menunjuk ke i lebih penting daripada halaman dengan yang lebih rendah
skor prestise menunjuk ke i . Dengan kata lain, sebuah halaman penting jika menunjuk
oleh halaman penting lainnya.

Menurut peringkat prestise di jejaring sosial, pentingnya halaman i ( i PageRank


skor) ditentukan dengan menyimpulkan skor PageRank dari semua halaman yang mengarah ke
i . Karena suatu halaman dapat menunjuk ke banyak halaman lain, skor prestise-nya harus dibagi
di antara semua halaman yang ditunjuknya.
Untuk merumuskan ide-ide di atas, kami memperlakukan Web sebagai grafik yang diarahkan G = ( V , E ),
di mana V adalah himpunan simpul atau simpul, yaitu himpunan semua halaman, dan E adalah himpunan
dari tepi terarah dalam grafik, yaitu hyperlink. Biarkan jumlah total halaman aktif
Web menjadi n (yaitu, n = | V |). Skor PageRank dari halaman i [dilambangkan dengan P ( i )] adalah
didefinisikan oleh:

P(j)
P(i)= (6.1)
( j, i ) ∈ E
Oj

di mana O j adalah jumlah tautan keluar dari halaman j . Secara matematis, kami memiliki sistem
dari persamaan linear n [Persamaan (6.1)] dengan n tidak diketahui. Kita bisa menggunakan matriks untuk
mewakili semua persamaan. Sebagai konvensi notasi, kami menggunakan huruf tebal dan miring
untuk mewakili matriks. Biarkan P menjadi vektor kolom n- dimensi dari nilai PageRank,
itu adalah,

P = ( P (1) , P (2) , ..., P ( n )) T

Biarkan A menjadi matriks kedekatan dari grafik kita



⎢⎨ 1
jika ( i, j ) ∈ E
A ij = Oi (6.2)
⎢⎝
0 jika tidak

Kita dapat menulis sistem n persamaan dengan

P = A TP (6.3)

Ini adalah persamaan karakteristik sistem eigens, di mana solusi untuk P adalah
vektor eigen dengan nilai eigen yang sesuai dari 1. Karena ini adalah definisi lingkaran
Selain itu, algoritma iteratif digunakan untuk menyelesaikannya. Ternyata kalau beberapa syarat
puas (yang akan dijelaskan segera), 1 adalah nilai eigen terbesar dan
Vektor PageRank P adalah vektor eigen utama . Sebuah teknologi matematika yang terkenal
nique disebut daya iterasi [2] dapat digunakan untuk menemukan P .

© 2009 oleh Taylor & Francis Group, LLC

Halaman 128

https://translate.googleusercontent.com/translate_f 115/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

120 Peringkat halaman

1 5

3 4

2 6

Gambar 6.1 Contoh grafik hyperlink.

Syaratnya adalah bahwa A adalah matriks stokastik dan tidak dapat direduksi
dan aperiodik . Namun, grafik Web tidak memenuhi ketentuan ini. Faktanya,
Persamaan (6.3) juga dapat diturunkan berdasarkan rantai Markov . Kemudian beberapa teori
Hasil ical dari rantai Markov dapat diterapkan [8], di mana tiga di atas
kondisi berasal.
Dalam model rantai Markov, setiap halaman Web atau node dalam grafik Web dianggap
sebagai sebuah negara. Sebuah hyperlink merupakan transisi, yang mengarah dari satu negara ke negara lain dengan
sebuah probabilitas. Dengan demikian, kerangka kerja ini memodelkan penjelajahan Web sebagai proses stokastik. Itu
memodelkan seorang surfer Web secara acak menjelajahi Web sebagai transisi status dalam rantai Markov.
Sekarang mari kita lihat grafik Web dan lihat mengapa ketiga kondisi tidak terpenuhi.
Pertama-tama, A bukan matriks stokastik ( transisi ) . Matriks stokastik adalah transisi
matriks untuk rantai Markov hingga yang entri di setiap baris adalah nyata negatif
angka dan jumlah ke 1. Ini mengharuskan setiap halaman Web harus memiliki setidaknya satu
keluar tautan Ini tidak benar di Web karena banyak halaman tidak memiliki tautan di luar
tercermin dalam matriks transisi A oleh beberapa baris lengkap 0. Halaman seperti itu
disebut dangling pages (node).

Contoh 6.2.1 Gambar 6.1 menunjukkan contoh grafik hyperlink.

Jika kami menganggap bahwa surfer Web akan mengklik hyperlink di halaman secara seragam di
acak, kami memiliki matriks probabilitas transisi berikut:
⎛ ⎞
0 1/21/2 0 0 0
⎢ ⎢
⎢ 1/2 0 1/2 0 0 0 ⎢
⎢ ⎢
⎢ ⎢
⎢ 0 1 0 0 0 0 ⎢
A= ⎢ ⎢ (6.4)
⎢ 0 0 1/3 0 1/31/3 ⎢
⎢ ⎢
⎢ ⎢
⎝ 0 0 0 0 0 0 ⎠
0 0 0 1/21/2 0

Misalnya, A 12 = A 13 = 1/2 karena simpul 1 memiliki dua tautan keluar. Kita dapat melihat bahwa A
bukan matriks stokastik karena baris kelima adalah semua 0, yaitu, halaman 5 adalah menggantung
halaman.
Kami dapat memperbaiki masalah ini dengan menambahkan satu set lengkap tautan keluar dari masing-masing
halaman tersebut i untuk semua halaman di Web. Dengan demikian, kemungkinan transisi akan terjadi
dari i ke setiap halaman adalah 1 / n, dengan asumsi distribusi probabilitas yang seragam. Itu adalah,
kami mengganti setiap baris yang berisi semua 0 dengan e / n , di mana e adalah vektor n -dimensi

© 2009 oleh Taylor & Francis Group, LLC

Halaman 129

6.2 Algoritma PageRank 121

https://translate.googleusercontent.com/translate_f 116/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

semua 1, memberi kami matriks berikut:


⎛ ⎞
0 1/21/2 0 0 0
⎢ ⎢
⎢ ⎢
⎢ 1/2 0 1/2 0 0 0 ⎢
⎢ ⎢
⎢ 0 1 0 0 0 0 ⎢
⎢ ⎢
¯ A =⎢ ⎢ (6.5)
⎢ 0 0 1/3 0 1/31/3 ⎢
⎢ ⎢
⎢ ⎢
⎢ 1/61/61/61/61/61/6 ⎢
⎝ ⎠
0 0 0 1/21/2 0

Di bawah ini, kami mengasumsikan bahwa hal di atas dilakukan untuk membuat A menjadi matriks stokastik.
Kedua, A tidak dapat direduksi, yang berarti bahwa grafik Web G tidak kuat
terhubung.

Definisi grafik yang terhubung kuat: Grafik berarah G = ( V , E ) adalah


sangat terhubung jika dan hanya jika, untuk setiap pasangan node u , v ∈ V , ada
jalan dari u ke v .
Grafik Web umum yang diwakili oleh A tidak dapat direduksi karena bagi sebagian orang
pasang node u dan v , tidak ada jalur dari u ke v . Sebagai contoh, pada Gambar 6.1 ,
tidak ada jalur terarah dari simpul 3 ke simpul 4. Penyesuaian dalam Persamaan
(6.5) tidak cukup untuk memastikan irreducibilitas. Masalah ini dan masalah selanjutnya
dapat ditangani dengan menggunakan strategi tunggal (dijelaskan di bawah).
Akhirnya, A tidak aperiodik . Keadaan i dalam rantai Markov menjadi sarana periodik
bahwa ada siklus terarah yang harus dilalui rantai.
Definisi grafik aperiodik: Keadaan i adalah periodik dengan periode k > 1 jika k adalah
angka terkecil sedemikian rupa sehingga semua jalur yang mengarah dari keadaan aku kembali ke keadaan aku punya
panjang itu adalah kelipatan dari k . Jika keadaan tidak periodik (yaitu, k = 1), itu adalah aperiodik.
Rantai Markov adalah aperiodik jika semua negara aperiodik.

Contoh 6.2.2 Gambar 6.2 menunjukkan rantai Markov periodik dengan k = 3. Transisi
matriks diberikan di sebelah kiri. Setiap negara bagian dalam rantai ini memiliki periode 3. Misalnya, jika
kita mulai dari keadaan 1, satu-satunya jalan untuk kembali ke keadaan 1 adalah 1-2-3-1 untuk sejumlah angka
kali, katakanlah h . Dengan demikian, setiap pengembalian ke status 1 akan membutuhkan 3 jam transisi. Di Web, ada
bisa banyak kasus seperti itu.

010 1 1
A = 100
1 2 3
001
1

Gambar 6.2 Rantai Markov periodik dengan k = 3.

© 2009 oleh Taylor & Francis Group, LLC

Halaman 130

122 Peringkat halaman

Mudah untuk menangani dua masalah di atas dengan satu strategi.

r
Kami menambahkan tautan dari setiap halaman ke setiap halaman dan memberikan setiap tautan sebuah transisi kecil
probabilitas dikendalikan oleh parameter d .
https://translate.googleusercontent.com/translate_f 117/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

Matriks transisi augmented jelas menjadi tak tereduksi dan juga aperiodik. Setelah
augmentasi ini, kami memperoleh model PageRank yang ditingkatkan:
( )
E
P= (1 - d ) +dAT P (6.6)
n

di mana E adalah ee T ( e adalah vektor kolom dari semua 1) dan dengan demikian E adalah n × n matriks persegi
semua 1 ini. n adalah jumlah total node dalam grafik Web dan 1 / n adalah probabilitas
melompat ke halaman acak. Perhatikan bahwa Persamaan (6.6) mengasumsikan bahwa A sudah
telah dibuat matriks stokastik. Setelah scaling, kami memperoleh

P = (1 - d ) e + d A T P (6.7)

Ini memberi kami formula PageRank untuk setiap halaman i :

∑n
P ( i ) = (1 - d ) + d A ji P ( j ) (6.8)
j=1

yang setara dengan rumus yang diberikan dalam makalah PageRank asli [1, 7]:

P(j)
P ( i ) = (1 - d ) + d (6.9)
Oj
( j, i ) ∈ E

Parameter d , disebut faktor redaman, dapat diatur ke nilai antara 0 dan 1.


d = 0 . 85 digunakan dalam [1, 7].
Perhitungan nilai PageRank dari halaman Web dapat dilakukan menggunakan daya
metode iterasi [2], yang menghasilkan vektor eigen utama dengan nilai eigen
dari 1. Algoritma ini cukup sederhana (lihat Gambar 6.3) . Seseorang dapat memulai dengan inisial apa pun
tugas nilai-nilai PageRank. Iterasi berakhir ketika nilai PageRank dilakukan
tidak banyak berubah atau bertemu. Dalam Gambar 6.3, iterasi berakhir setelah 1-norma dari
vektor sisa kurang dari ambang yang ditentukan sebelumnya ε .
Dalam pencarian Web, kami hanya tertarik pada peringkat halaman. Jadi, yang sebenarnya
konvergensi mungkin tidak diperlukan dan iterasi yang lebih sedikit diperlukan. Dalam [1], dilaporkan
bahwa pada basis data 322 juta tautan, algoritmanya konvergen menjadi dapat diterima
toleransi sekitar 52 iterasi.
Sejak PageRank disajikan dalam [1], para peneliti telah mengusulkan banyak
KASIH ke model, model alternatif, dan perbaikan untuk perhitungannya. Itu
buku oleh Liu [5] dan oleh Langville dan Meyer [4] berisi analisis mendalam tentang
PageRank dan beberapa algoritma berbasis tautan lainnya, termasuk HIT [3], yang merupakan
algoritma terkenal lainnya.

© 2009 oleh Taylor & Francis Group, LLC

Halaman 131

6.3 An Extension: Jangka waktu-PageRank 123

PageRank-Iterate ( G )

P0← e / n

k←1

ulang

P k ← (1 - d ) e + d A T P k –1 ;

k ← k + 1;
https://translate.googleusercontent.com/translate_f 118/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

sampai || P k - P k –1 || 1 < ε

return P k

Gambar 6.3 Metode iterasi daya untuk PageRank.

6.3 An Extension: Jangka waktu-PageRank


Salah satu aspek yang tidak dipertimbangkan oleh PageRank adalah ketepatan waktu hasil pencarian. Itu
Web adalah lingkungan yang dinamis. Itu terus berubah. Halaman berkualitas di masa lalu mungkin
bukan menjadi halaman berkualitas sekarang atau di masa depan. Aspek temporal dari pencarian adalah penting
karena pengguna sering tertarik dengan informasi terbaru. Terlepas dari mapan
fakta dan klasik yang tidak banyak berubah seiring waktu, sebagian besar konten di Web
berubah terus-menerus. Halaman atau konten baru ditambahkan dan konten dan halaman usang
dihapus. Namun, dalam praktiknya banyak halaman dan tautan usang tidak dihapus. Ini
menyebabkan masalah bagi mesin pencari karena halaman yang sudah ketinggalan zaman masih dapat diperingkat
tinggi karena fakta bahwa mereka telah ada di Web untuk waktu yang lama dan miliki
mengakumulasikan sejumlah besar tautan. Halaman baru berkualitas tinggi dengan yang terbanyak
informasi terkini akan peringkat rendah karena mereka memiliki sedikit atau tidak ada in-link, membuat
sulit bagi pengguna untuk menemukan informasi terbaru di Web.
Algoritma yang disebut Timed-PageRank yang diberikan pada [6, 10] menambahkan dimensi temporal
ke PageRank. Gagasan Timed-PageRank sederhana. Masih mengikuti surfer acak
dan model rantai Markov di PageRank. Namun, alih-alih menggunakan redaman konstan
faktor d , Timed-PageRank menggunakan fungsi waktu f ( t ) (0 ≤ f ( t ) ≤ 1) untuk "menghukum"
tautan dan halaman lama, di mana t adalah perbedaan antara waktu saat ini dan waktu
kapan halaman terakhir diperbarui. f ( t ) mengembalikan probabilitas yang diinginkan oleh surfer Web
ikuti tautan yang sebenarnya di halaman. 1 - f ( t ) mengembalikan probabilitas surfer
lompat ke halaman acak. Jadi, pada halaman tertentu saya , surfer Web memiliki dua opsi:

1. Dengan probabilitas f ( t i ), dia secara acak memilih tautan keluar untuk diikuti.
2. Dengan probabilitas 1 - f ( t i ), ia melompat ke halaman acak tanpa tautan.

Intuisi di sini adalah bahwa jika halaman tersebut terakhir diperbarui (atau dibuat) sejak lama, the
halaman yang ditunjukkannya bahkan lebih tua dan mungkin kedaluwarsa. Maka 1 - f ( t )
nilai halaman seperti itu harus besar, yang berarti bahwa surfer akan memiliki tinggi

© 2009 oleh Taylor & Francis Group, LLC

Halaman 132

124 Peringkat halaman

probabilitas melompat ke halaman acak. Jika halaman baru, maka nilainya 1− f ( t ) seharusnya
menjadi kecil, yang berarti bahwa surfer akan memiliki probabilitas tinggi untuk mengikuti out-link
halaman dan probabilitas kecil untuk melompat ke halaman acak. Untuk yang benar-benar baru
di situs Web, yang sama sekali tidak memiliki tautan, metode yang diberikan menggunakan
nilai rata-rata Jangka Waktu-PageRank dari halaman-halaman sebelumnya di situs Web. Ini masuk akal
karena situs berkualitas di masa lalu biasanya menerbitkan halaman baru yang berkualitas. The Jangka waktu-
Algoritma PageRank telah dievaluasi berdasarkan pencarian publikasi penelitian dan telah
diberi hasil yang menjanjikan. Pembaca yang tertarik, silakan merujuk ke [6] untuk detail tambahan.

6.4 Ringkasan

https://translate.googleusercontent.com/translate_f 119/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
Peringkat berbasis tautan untuk pencarian sangat berperan dalam pencarian Web. PageRank adalah
algoritma yang paling dikenal untuk tujuan tersebut. Praktis juga sangat efektif
beralasan secara teoritis. Bab ini hanya menyediakan materi pengantar; lebih lanjut
detail dapat ditemukan di [1, 4, 5, 7]. Ekstensi ke algoritma PageRank juga
dibahas secara singkat, yang menambahkan dimensi temporal ke pencarian. Akhirnya, kita harus melakukannya
perhatikan bahwa peringkat berbasis tautan bukan satu-satunya strategi yang digunakan dalam mesin pencari. Banyak
pengambilan informasi lainnya dan metode penambangan data dan heuristik berdasarkan halaman
konten dan klik pengguna juga digunakan.

6.5 Latihan
1. Diberikan A di bawah ini, dapatkan P dengan menyelesaikan Persamaan (6.7) secara langsung.
⎛ ⎞
0 1/31/31/3 0 0
⎢ ⎢
⎢ 1/2 0 1/2 0 0 0 ⎢
⎢ ⎢
⎢ ⎢
⎢ 0 1 0 0 0 0 ⎢
A= ⎢ ⎢
⎢ 0 1/41/4 0 1/41/4 ⎢
⎢ ⎢
⎢ ⎢
⎝ 0 1/21/2 0 0 0 ⎠
0 0 0 1/21/2 0

2. Diberikan A seperti pada masalah 1, gunakan metode iterasi daya untuk menunjukkan 10 yang pertama
iterasi dari P .
3. Hitung kesalahan kuadrat pada setiap iterasi dalam masalah 2 di mana kuadrat
error didefinisikan sebagai jumlah dari kesalahan kuadrat pada setiap masuknya P .
4. Plot kurva pada kesalahan kuadrat yang berasal dari masalah 3 menggunakan nomor
iterasi sebagai sumbu X dan kesalahan kuadrat sebagai sumbu Y. Apakah kuadrat
kesalahan berkurang secara bertahap? Setelah berapa banyak iterasi lakukan pemeringkatan halaman
menstabilkan?

© 2009 oleh Taylor & Francis Group, LLC

Halaman 133

Referensi 125

5. Mengingat grafik G di bawah ini, apa itu A ?

1 5

3 4

2 6

6. Untuk grafik G yang diberikan dalam masalah 5, berapakah P setelah tujuh iterasi berdasarkan
metode iterasi daya?
7. Pilih URL, dan buat grafik Web yang berisi halaman Web dalam tiga
melompat dari URL awal.
8. Untuk grafik yang berasal dari masalah 7, apa itu A ?
9. Untuk grafik yang berasal dari masalah 7, gunakan metode iterasi daya untuk memberikan
pertama tujuh iterasi dari P .

https://translate.googleusercontent.com/translate_f 120/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

Referensi
[1] S. Brin, dan L. Page. Anatomi pencarian Web hiperteksual skala besar
mesin. Jaringan Komputer dan Sistem ISDN , 30, 1998.

[2] GH Golub, dan CF Van Loan. Komputasi Matriks . The Johns Hopkins
University Press, 1983.

[3] J. Kleinberg. Sumber-sumber resmi dalam lingkungan hyperlink. ACM-SIAM


Simposium tentang Algoritma Diskrit , 1998.

[4] AN Langville, dan CD Meyer. Google PageRank dan Beyond: The Science
dari Peringkat Mesin Pencari. Princeton University Press, 2006.

[5] B. Liu Penambangan Data Web: Menjelajahi Hyperlink, Konten, dan Data Penggunaan.
Springer, 2007.

[6] X. Li, B. Liu, dan PS Yu. Pemeringkatan Waktu Sensitif dengan Aplikasi untuk Publi-
Pencarian kation. Konferensi tentang Penambangan Data 2008.

[7] L. Page, S. Brin, R. Motwami, dan T. Winograd. Kutipan PageRank


Peringkat: Membawa Pesanan ke Web . Laporan Teknis 1999–0120, Komputer
Departemen Ilmu Pengetahuan, Universitas Stanford, 1999.

[8] W. Steward. Pengantar Solusi Numerik Rantai Markov .


Princeton University Press, 1994.

[9] S. Wasserman, dan K. Raust. Analisis Jaringan Sosial . Universitas Cambridge


Pers, 1994.

[10] PS Yu, X. Li, dan B. Liu. Menambahkan Dimensi Temporal ke Pencarian — A


Studi Kasus dalam Pencarian Publikasi. WI-2005 .

© 2009 oleh Taylor & Francis Group, LLC

Halaman 135
134

Bab 7
AdaBoost

Zhi-Hua Zhou dan Yang Yu

Isi

7.1 Pendahuluan ................................................ ........... 127


7.2 Algoritma ............................................... .......... 128
7.2.1 Notasi .................................................. ......... 128
7.2.2 Prosedur Peningkatan Umum ...................................... 129
7.2.3 Algoritma AdaBoost ....................................... 130
7.3 Contoh Ilustrasi ............................................... .... 133
7.3.1 Mengatasi Masalah XOR .......................................... 133
7.3.2 Kinerja pada Data Nyata .......................................... 134
7.4 Aplikasi Nyata ................................................... ........ 136
7.5 Topik Tingkat Lanjut ............................................... ........ 138

https://translate.googleusercontent.com/translate_f 121/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
7.5.1 Masalah Teoritis ............................................. .. 138
7.5.2 Multiclass AdaBoost ............................................ 142
7.5.3 Topik Tingkat Lanjut Lainnya ......................................... 145
7.6 Implementasi Perangkat Lunak .................................................. 145
7.7 Latihan ................................................ .............. 146
Referensi ................................................. ................. 147

7.1 Pendahuluan
Kemampuan generalisasi, yang mencirikan seberapa baik hasil belajar dari yang diberikan
set data pelatihan dapat diterapkan untuk data baru yang tak terlihat, adalah konsep yang paling sentral di Indonesia
pembelajaran mesin. Para peneliti telah mencurahkan upaya luar biasa untuk mengejar teknologi.
Nili yang bisa mengarah pada sistem pembelajaran dengan kemampuan generalisasi yang kuat. Satu
dari paradigma yang paling sukses adalah ensemble learning [32]. Berbeda dengan biasa
pendekatan pembelajaran mesin yang mencoba untuk menghasilkan satu pelajar dari data pelatihan,
metode ensemble mencoba untuk membangun sebuah set dari peserta didik dasar dan menggabungkan mereka. Mendasarkan
peserta didik biasanya dihasilkan dari data pelatihan oleh algoritma pembelajaran dasar yang
bisa berupa pohon keputusan, jaringan saraf, atau jenis algoritma pembelajaran mesin lainnya.
Sama seperti "banyak tangan membuat pekerjaan ringan," kemampuan generalisasi sebuah ensemble
biasanya jauh lebih baik daripada pelajar tunggal. Sebenarnya, metode ensemble
ods menarik terutama karena mereka mampu meningkatkan pelajar yang lemah , yang

127

© 2009 oleh Taylor & Francis Group, LLC

Halaman 136

128 AdaBoost

sedikit lebih baik daripada tebakan acak, untuk pembelajar yang kuat , yang dapat membuat sangat akurat
prediksi. Jadi, "pelajar dasar" juga disebut sebagai "pelajar yang lemah."
AdaBoost [9, 10] adalah salah satu metode ensemble yang paling berpengaruh. Butuh kelahiran
dari jawaban untuk pertanyaan menarik yang diajukan oleh Kearns dan Valiant pada tahun 1988. Itu
adalah, apakah dua kelas kompleksitas, lemah dipelajari dan sangat dipelajari masalah.Safe_mode
kelihatannya sama. Jika jawaban untuk pertanyaan itu positif, pelajar yang lemah akan berhasil
hanya sedikit lebih baik daripada tebakan acak yang dapat "ditingkatkan" menjadi akurat secara sewenang-wenang
pembelajar yang kuat. Jelas, pertanyaan seperti itu sangat penting untuk pembelajaran mesin.
Schapire [21] menemukan bahwa jawaban untuk pertanyaan adalah "ya," dan memberikan bukti oleh
konstruksi, yang merupakan algoritma penguat pertama . Kekurangan praktis yang penting
Algoritma ini adalah persyaratan bahwa batas kesalahan pangkalan peserta didik diketahui
sebelumnya, yang biasanya tidak diketahui dalam praktik. Freund dan Schapire [9] kemudian mendukung
mengajukan algoritma peningkatan adaptif, bernama AdaBoost, yang tidak memerlukan itu
informasi tidak tersedia. Jelas bahwa AdaBoost dilahirkan dengan signifikansi teoritis
icance, yang telah memunculkan banyak penelitian tentang aspek-aspek teoritis ansambel
metode dalam komunitas pembelajaran mesin dan statistik. Perlu disebutkan
bahwa untuk makalah AdaBoost mereka [9], Schapire dan Freund memenangkan Hadiah Godel, yaitu
salah satu penghargaan paling bergengsi dalam ilmu komputer teoretis, pada tahun 2003.
AdaBoost dan variannya telah diterapkan ke beragam domain dengan sukses besar,
karena landasan teoretis mereka yang kuat, prediksi yang akurat, dan kesederhanaan yang luar biasa
(Schapire mengatakan itu hanya perlu "hanya 10 baris kode"). Misalnya, Viola dan Jones [27]
menggabungkan AdaBoost dengan proses kaskade untuk deteksi wajah. Mereka menganggap rectan-
fitur gular sebagai peserta didik yang lemah, dan dengan menggunakan AdaBoost untuk memberatkan peserta didik yang lemah,
mereka mendapat fitur yang sangat intuitif untuk deteksi wajah. Untuk mendapatkan akurasi yang tinggi juga
sebagai efisiensi tinggi, mereka menggunakan proses kaskade (yang berada di luar lingkup bab ini)
ter). Akibatnya, mereka melaporkan detektor wajah yang sangat kuat: Pada mesin 466 MHz, wajah
deteksi pada gambar 384 × 288 biaya hanya 0,067 detik, yang 15 kali lebih cepat daripada

https://translate.googleusercontent.com/translate_f 122/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
detektor wajah canggih pada waktu itu tetapi dengan akurasi yang sebanding. Wajah ini
detektor telah diakui sebagai salah satu terobosan paling menarik di komputer
visi (khususnya, deteksi wajah) selama dekade terakhir. Tidak aneh bahwa "meningkatkan
ing ”telah menjadi kata kunci dalam visi komputer dan banyak area aplikasi lainnya.
Di sisa bab ini, kami akan memperkenalkan algoritma dan implementasi, dan
berikan beberapa ilustrasi tentang bagaimana algoritma bekerja. Bagi pembaca yang ingin tahu
lebih lanjut, kami akan memperkenalkan beberapa hasil teoritis dan ekstensi sebagai topik lanjutan.

7.2 Algoritma

7.2.1 Notasi
Kami pertama-tama memperkenalkan beberapa notasi yang akan digunakan dalam sisa bab ini. Biarkan X
menunjukkan ruang instance, atau dengan kata lain, ruang fitur. Biarkan Y menunjukkan set
label yang mengekspresikan konsep dasar yang harus dipelajari. Sebagai contoh, kita

© 2009 oleh Taylor & Francis Group, LLC

Halaman 137

7.2 Algoritma 129

misalkan Y = {−1 , +1} untuk klasifikasi biner. Sebuah pelatihan set D terdiri dari m contoh
label terkait yang diamati, yaitu, D = {( x i , y i )} ( i ∈ {1 , ..., m }), sementara
label turunan uji tidak diketahui dan karenanya dapat diprediksi. Kami menganggap keduanya
pelatihan dan contoh uji diambil secara independen dan identik dari yang mendasarinya
distribusi D .
Setelah pelatihan pada set data pelatihan D , algoritma pembelajaran L akan menghasilkan hipotesis-
esis h , yang merupakan pemetaan dari X ke Y , atau disebut sebagai classifier . Proses pembelajaran
dapat dianggap sebagai mengambil hipotesis terbaik dari ruang hipotesis, di mana
kata "terbaik" mengacu pada fungsi kerugian. Untuk klasifikasi, fungsi kerugian bisa secara alami
menjadi 0/1-kerugian,

loss 0 / 1 ( h | x ) = I [ h ( x ) = y ]

di mana I [·] adalah fungsi indikasi yang menghasilkan 1 jika ekspresi bagian dalam benar
dan 0 sebaliknya, yang berarti bahwa satu kesalahan dihitung jika sebuah instance salah
rahasia. Dalam bab ini 0/1-kerugian digunakan secara default, tetapi perlu dicatat bahwa yang lainnya
jenis fungsi kerugian juga dapat digunakan dalam meningkatkan.

7.2.2 Prosedur Peningkatan Umum


Boosting sebenarnya adalah keluarga algoritma, di antaranya adalah algoritma AdaBoost
adalah yang paling berpengaruh. Jadi, mungkin lebih mudah dengan memulai dari boosting umum
prosedur.
Misalkan kita berhadapan dengan masalah klasifikasi biner, yaitu, kita sedang berusaha
untuk mengklasifikasikan instance sebagai positif dan negatif . Biasanya kami menganggap bahwa ada
konsep target yang tidak dikenal, yang secara tepat menetapkan label "positif" untuk instance
milik konsep dan label "negatif" untuk orang lain. Konsep target yang tidak diketahui ini
sebenarnya adalah apa yang ingin kita pelajari. Kami menyebut konsep target ini sebagai dasar kebenaran . Untuk biner
masalah klasifikasi, penggolong yang bekerja dengan tebakan acak akan kehilangan 50% 0/1.
Misalkan kita kurang beruntung dan hanya memiliki penggolong lemah di tangan, yang hanya
sedikit lebih baik daripada tebakan acak pada contoh instance yang mendasari D , katakanlah, itu
memiliki 49% 0/1-kerugian. Mari kita tandai classifier lemah ini sebagai h 1 . Jelaslah bahwa h 1 tidak

https://translate.googleusercontent.com/translate_f 123/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
apa yang kita inginkan, dan kita akan berusaha memperbaikinya. Ide alami adalah untuk memperbaiki kesalahan
dibuat oleh h 1 .
Kita dapat mencoba memperoleh distribusi D baru dari D , yang membuat kesalahan
h 1 lebih jelas, misalnya, lebih berfokus pada instance yang salah diklasifikasikan oleh
h 1 (kami akan menjelaskan cara menghasilkan D di bagian berikutnya). Kita bisa melatih penggolong
h 2 dari D . Sekali lagi, misalkan kita beruntung dan h 2 juga merupakan classifier lemah. Sejak
D berasal dari D , jika D memenuhi beberapa syarat, h 2 akan dapat dicapai
kinerja yang lebih baik daripada h 1 di beberapa tempat di D di mana h 1 tidak bekerja dengan baik,
tanpa scarifying tempat di mana h 1 berkinerja baik. Dengan demikian, dengan menggabungkan h 1 dan
h 2 dengan cara yang sesuai (kami akan menjelaskan cara menggabungkannya di bagian selanjutnya),
gabungan classifier akan mampu mencapai lebih sedikit kerugian daripada yang dicapai oleh h 1 . Oleh
Mengulangi proses di atas, kita dapat mengharapkan untuk mendapatkan classifier gabungan yang dimiliki
sangat kecil (idealnya, nol) 0/1-kerugian D .

© 2009 oleh Taylor & Francis Group, LLC

Halaman 138

130 AdaBoost

Input: Distribusi Instance D ;


Algoritma pembelajaran dasar L ;
Jumlah belajar putaran T .
Proses:
1. D 1 = D . % Inisialisasi distribusi
2. untuk t = 1, ···, T :
3. h t = L ( D t ); % Latih pelajar yang lemah dari distribusi D t
4. є t = Pr x ~ D t, y saya [ h t ( x ) ≠ y ]; % Mengukur kesalahan h t
5. D t 1 = AdjustDistribution ( D t, є t )
6. berakhir
Output: H ( x ) = CombineOutputs ({ h t ( x )})

Gambar 7.1 Prosedur peningkatan umum.

Secara singkat, meningkatkan karya dengan melatih satu set pengklasifikasi secara berurutan dan menggabungkan
mereka untuk prediksi, di mana pengklasifikasi kemudian lebih fokus pada kesalahan
pengklasifikasi sebelumnya. Gambar 7.1 merangkum prosedur peningkatan umum.

7.2.3 Algoritma AdaBoost


Gambar 7.1 bukanlah algoritma nyata karena ada beberapa bagian yang belum diputuskan
sebagai AdjustDistribution dan CombineOutputs . Algoritma AdaBoost dapat berupa
dipandang sebagai contoh prosedur peningkatan umum, yang dirangkum
pada Gambar 7.2.

Input: Kumpulan data D = {( x 1 , y 1 ), ( x 2 , y 2 ),. . . , ( x m , y m )};


Algoritma pembelajaran dasar L ;
Jumlah belajar putaran T .
Proses:
1. D 1 ( i ) = 1 / m . % Menginisialisasi distribusi berat
2. untuk t = 1, ···, T :
3. h t = L ( D , D t ); % Melatih pembelajar h t dari D menggunakan distribusi D t
4. є t = Pr x ~ D t, y saya [ h t ( x ) ≠ y ]; % Mengukur kesalahan h t
5. jika є t > 0,5 maka istirahat
1– є t
6. α t = ½ ln () ; % Tentukan
є
D (i)
t
t
berat h t

7. D t +1 ( i ) = Zt
× {expexp((-αα) jika
) jikah h ( x( x ) ≠) =y y
t
t
t
t
i
i
i
i

https://translate.googleusercontent.com/translate_f 124/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
D t ( i ) exp (- Zαt t y i h t ( x i )) % Perbarui distribusi, di mana
% Z t adalah faktor normalisasi yang
% memungkinkan D t +1 untuk didistribusikan

8. berakhir
T
Output: H ( x ) = tanda ( Σ t = 1 α t h t ( x ) )

Gambar 7.2 Algoritma AdaBoost.

© 2009 oleh Taylor & Francis Group, LLC

Halaman 139

7.2 Algoritma 131

Sekarang kami jelaskan detailnya. 1 AdaBoost menghasilkan urutan hipotesis dan


menggabungkannya dengan bobot, yang dapat dianggap sebagai kombinasi berbobot aditif
bangsa dalam bentuk
∑T
H(x)= αtht(x)
t=1

Dari pandangan ini, AdaBoost sebenarnya memecahkan dua masalah, yaitu, bagaimana menghasilkan
hipotesis h t 's dan bagaimana menentukan bobot yang tepat α t ' s.
Untuk memiliki proses pengurangan kesalahan yang sangat efisien, kami mencoba meminimalkan
kerugian eksponensial
- yh ( x ) ]
loss exp ( h ) = E x ∼ D, y [ e

di mana yh ( x ) disebut sebagai margin klasifikasi dari hipotesis.


Mari kita pertimbangkan satu putaran dalam proses peningkatan. Anggap seperangkat hipotesis sebagai
juga bobotnya telah diperoleh, dan biarkan H menunjukkan gabungan
hipotesa. Sekarang, satu hipotesis lagi h akan dihasilkan dan akan digabungkan
dengan H untuk membentuk H + αh . Kerugian setelah kombinasi akan menjadi
- y ( H ( x ) + αh ( x )) ]
loss exp ( H + αh ) = E x ∼ D, y [ e

Kerugian dapat didekomposisi ke setiap instance, yang disebut pointwise loss, as

- y ( H ( x ) + αh ( x )) | x]
loss exp ( H + αh | x ) = E y [ e

Karena y dan h ( x ) harus +1 atau −1, kita dapat memperluas ekspektasinya sebagai
)
- yH ( x ) ( -α α
loss exp ( H + αh | x ) = e e P(y=h(x)|x)+e P(y=h(x)|x)

Misalkan kita telah menghasilkan h , dan dengan demikian bobot α yang meminimalkan
kerugian dapat ditemukan ketika turunan dari kerugian sama dengan nol, yaitu,

∂loss exp ( H + αh | x ) -α α
)
=e - yH ( x ) ( -e P(y=h(x)|x)+e P(y=h(x)|x)
∂α
=0

dan solusinya adalah


1 P(y=h(x)|x) 1 1-P(y=h(x)|x)
α= dalam = dalam
2 P(y=h(x)|x) 2 P(y=h(x)|x)

∂ loss exp ( H + αh ) = 0, dan menunjukkan


Dengan mengambil ekspektasi lebih dari x , yaitu memecahkan ∂α
ϵ = E x ∼ D [ y = h ( x )], kita dapatkan
α=
1 1-ϵ
2
dalam
ϵ

https://translate.googleusercontent.com/translate_f 125/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
yang merupakan cara menentukan α t di AdaBoost.
1 Di sini kami menjelaskan algoritma AdaBoost dari tampilan [11] karena lebih mudah dipahami daripada
penjelasan asli dalam [9].

© 2009 oleh Taylor & Francis Group, LLC

Halaman 140

132 AdaBoost

Sekarang mari kita pertimbangkan bagaimana menghasilkan h . Diberikan algoritma pembelajaran dasar, AdaBoost
memintanya untuk menghasilkan hipotesis dari distribusi instance tertentu. Jadi, kami hanya
perlu mempertimbangkan hipotesis apa yang diinginkan untuk putaran berikutnya, dan kemudian menghasilkan
distribusi instance untuk mencapai hipotesis ini.
Kami dapat memperluas kerugian pointwise ke urutan kedua tentang h ( x ) = 0, saat memperbaiki
α = 1,

- YH ( x ) (1 - yh ( x ) + y 2 h ( x ) 2 / 2) | x ]
loss exp ( H + h | x ) ≈ E y [ e
=Ey[e - YH ( x ) (1 - yh ( x ) + 1 / 2) | x ]

karena y 2 = 1 dan h ( x ) 2 = 1.
Maka hipotesis yang sempurna adalah

h ( x ) = arg min loss exp ( H + h | x ) = arg maks E y [ e- yH ( x ) yh ( x ) | x ]
h h

= arg maks e - H ( x ) P ( y = 1 | x ) · 1 · h ( x ) + e H ( x ) P ( y = −1 | x ) · (−1) · h ( x )


h

Perhatikan bahwa e - yH ( x ) adalah konstanta dalam hal h ( x ). Dengan menormalkan harapan sebagai

∗ e - H ( x ) P ( y = 1 | x ) · 1 · h ( x ) + e H ( x ) P ( y = −1 | x ) · (−1) · h ( x )
h ( x ) = arg maks
h e - H ( x ) P ( y = 1 | x ) + e H ( x ) P ( y = −1 | x )

kita dapat menulis ulang ekspektasi menggunakan istilah baru w ( x , y ), yang diambil dari
e - yH ( x ) P ( y | x ), sebagai

h ( x ) = arg maks E w ( x , y ) ∼ e - yH ( x ) P ( y | x ) [ yh ( x ) | x ]
h

∗ ∗
Sejak h ( x ) harus +1 atau −1, solusi untuk optimasi adalah h ( x ) bertahan
tanda yang sama dengan y | x , yaitu

h ( x ) = E w ( x , y ) ∼ e - yH ( x ) P ( y | x ) [ y | x ]
= P w ( x , y ) ∼ e - yH ( x ) P ( y | x ) ( y = 1 | x ) - P w ( x , y ) ∼ e - yH ( x ) P ( y | x ) ( y = −1 | x )

Seperti yang bisa dilihat,cukup
h melakukan klasifikasi optimal x di bawah distribusi
bution e - yH ( x ) P ( y | x ). Karena itu, e - yH ( x ) P ( y | x ) adalah distribusi yang diinginkan untuk a

hipotesis meminimalkan kerugian 0/1.


Jadi, ketika hipotesis h ( x ) telah dipelajari dan α = 1 2
Dalam ϵ ditentukan
ϵ 1−telah
ditambang di babak saat ini, distribusi untuk putaran selanjutnya harus
- y ( H ( x ) + αh ( x )) P (y|x)=e - yH ( x ) P (y|x)·e - αyh ( x )
D t1 ( x ) = e
- αyh ( x )
=Dt(x)·e

yang merupakan cara memperbarui distribusi contoh di AdaBoost.


Tapi, mengapa mengoptimalkan kerugian eksponensial bekerja untuk meminimalkan kerugian 0/1?
Sebenarnya, kita bisa melihatnya

∗ - yh ( x ) | x]= 1 P(y=1|x)
h ( x ) = arg min E x ∼ D, y [ e dalam
h 2 P ( y = −1 | x )

https://translate.googleusercontent.com/translate_f 126/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

© 2009 oleh Taylor & Francis Group, LLC

Halaman 141

7.3 Contoh Ilustrasi 133

dan karena itu kita miliki



tanda ( h ( x )) = arg maks P(y|x)
y

yang menyiratkan bahwa solusi optimal untuk kerugian eksponensial mencapai minimum
Kesalahan Bayesian untuk masalah klasifikasi. Apalagi kita bisa melihat fungsinya

h yang meminimalkan kerugian eksponensial adalah model regresi logistik hingga suatu faktor
2. Jadi, dengan mengabaikan 1 Faktor / 2 AdaBoost juga dapat dilihat sebagai pas aditif
model regresi logistik.
Perlu dicatat bahwa distribusi data tidak dikenal dalam praktiknya, dan AdaBoost
Algoritma bekerja pada set pelatihan yang diberikan dengan contoh pelatihan yang terbatas. Karena itu semuanya
harapan dalam derivasi di atas diambil pada contoh pelatihan, dan
bobot juga dikenakan pada contoh pelatihan. Untuk algoritma pembelajaran dasar itu
tidak dapat menangani contoh pelatihan berbobot, mekanisme resampling, yang dijadikan sampel
contoh pelatihan sesuai dengan bobot yang diinginkan, dapat digunakan sebagai gantinya.

7.3 Contoh Ilustrasi


Di bagian ini, kami mendemonstrasikan cara kerja algoritma AdaBoost, dari ilustrasi
tion pada masalah mainan untuk set data nyata.

7.3.1 Memecahkan Masalah XOR


Kami menganggap set data buatan dalam ruang dua dimensi, diplot pada Gambar 7.3 (a).
Hanya ada empat contoh, yaitu,
⎧ ⎫
( x 1 = (0 , +1) , y 1 = +1)
⎪⎪⎪⎨ ⎪⎪⎪⎬
( x 2 = (0 , −1) , y 2 = +1)
⎪⎪⎪⎩
( x 3 = (+1 , 0) , y 3 = −1) ⎪⎪⎪⎭

( x 4 = (−1 , 0) , y 4 = −1)

Ini adalah masalah XOR. Kedua kelas tidak dapat dipisahkan oleh classifier linier
yang sesuai dengan garis pada gambar.
Misalkan kita memiliki algoritma pembelajaran dasar yang mencoba untuk memilih yang terbaik dari
menurunkan delapan fungsi. Perhatikan bahwa tidak ada yang sempurna. Untuk fungsi yang sama baiknya,
algoritma pembelajaran dasar akan memilih satu fungsi dari mereka secara acak.
{ {
+1 , jika ( x 1 > −0 . 5) −1 , jika ( x 1 > −0 . 5)
h1(x)= −1 , h 2(x)=
+1 ,
jika tidak jika tidak
{ {
+1 , jika ( x 1 > +0 . 5) −1 , jika ( x 1 > +0 . 5)
h3(x)= −1 , h4(x)= +1 ,
jika tidak jika tidak

© 2009 oleh Taylor & Francis Group, LLC

https://translate.googleusercontent.com/translate_f 127/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

Halaman 142

134 AdaBoost

x2 x2 x2 x2

-1 -1 -1 -1

+1 +1 x1 +1 +1 x1 +1 +1 x1 +1 +1 x1
0,85 -0,25 1.35
-1,35 -2.45 -0,85
-1 -1 -1 -1

0,55 -0,55 -0,25 -1,35 0,25

(a) Data XOR (b) Babak 1 (c) babak ke-2 (d) Babak ke-3

Gambar 7.3 AdaBoost pada masalah XOR.

{ {
+1 , jika ( x 2 > −0 . 5) −1 , jika ( x 2 > −0 . 5)
h5(x)= −1 , h6(x)= +1 ,
jika tidak jika tidak
{ {
+1 , jika ( x 2 > +0 . 5) −1 , jika ( x 2 > +0 . 5)
h7(x)= −1 , h8(x)= +1 ,
jika tidak jika tidak

di mana x 1 dan x 2 adalah nilai-nilai x pada dimensi pertama dan kedua, masing-masing.
Sekarang kami melacak cara kerja AdaBoost:

1. Langkah pertama adalah memohon algoritma pembelajaran dasar pada data asli. h 2 ,
h 3 , h 5 , dan h 8 semuanya memiliki kesalahan klasifikasi 0,25. Misalkan h 2 dipilih sebagai yang pertama
pelajar dasar. Satu contoh, x 1 , adalah salah diklasifikasikan, sehingga kesalahan adalah 1 / 4 = 0 . 25.
Berat h 2 adalah 0 . 5 pada 3 ≈ 0 . 55. Gambar 7.3 (b) memvisualisasikan klasifikasi,
di mana area teduh diklasifikasikan sebagai negatif (−1) dan bobot
klasifikasi, 0,55 dan −0,55, ditampilkan.
2. Bobot x 1 meningkat dan algoritma pembelajaran dasar dipanggil lagi.
Kali ini h 3 , h 5 , dan h 8 memiliki kesalahan yang sama. Misalkan h 3 dipilih, dari yang
beratnya 0,80. Gambar 7.3 (c) menunjukkan klasifikasi gabungan dari h 2 dan
h 3 dengan bobotnya, di mana tingkat abu-abu yang berbeda digunakan untuk membedakan
area negatif menurut bobot klasifikasi.
3. Berat x 3 meningkat, dan kali ini hanya h 5 dan h 8 yang sama-sama memiliki
kesalahan terendah. Misalkan h 5 dipilih, yang beratnya 1,10. Gambar 7.3 (d)
menunjukkan klasifikasi gabungan dari h 2 , h 3 , dan h 8 . Jika kita melihat tanda
bobot klasifikasi di setiap area pada Gambar 7.3 (d), semua instance benar
rahasia. Dengan demikian, dengan menggabungkan pengklasifikasi linier tidak sempurna, AdaBoost memiliki
menghasilkan classifier nonlinear yang memiliki kesalahan nol.

7.3.2 Kinerja pada Data Nyata


Kami mengevaluasi algoritma AdaBoost pada 56 set data dari UCI Machine Learning
Repositori, 2 yang mencakup berbagai tugas dunia nyata. Kami menggunakan Weka (akan
diperkenalkan di Bagian 7.6) implementasi AdaBoost.M1 menggunakan reweighting with

2 http://www.ics.uci.edu/ ∼ mlearn / MLRepository.html

© 2009 oleh Taylor & Francis Group, LLC

https://translate.googleusercontent.com/translate_f 128/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

Halaman 143

7.3 Contoh Ilustrasi 135

1,00 1,00

0,80 0,80

0,60 0,60

0,40 0,40
Keputusan tunggul
0,20 0,20
Pohon keputusan (dipangkas)

0,00 0,00
0,00 0,20 0,40 0,60 0,80 1,00 0,00 0,20 0,40 0,60 0,80 1,00
AdaBoost dengan tunggul keputusan AdaBoost dengan pohon keputusan (dipangkas)

1,00

0,80

0,60

0,40

0,20
Pohon keputusan (tidak ditandai)
0,00
0,00 0,20 0,40 0,60 0,80 1,00
AdaBoost dengan pohon keputusan (tidak ditandai)

Gambar 7.4 Perbandingan kesalahan prediktif AdaBoost terhadap tunggul keputusan,


memangkas, dan mengeluarkan pohon keputusan tunggal pada 56 set data UCI.

50 pelajar dasar. Hampir semua jenis algoritma pembelajaran dapat dianggap sebagai pembelajaran dasar
algoritma, seperti pohon keputusan, jaringan saraf, dan sebagainya. Di sini, kami sudah mencoba
tiga algoritma pembelajaran dasar, termasuk tunggul keputusan, pemangkasan, dan tanpa J4.8
pohon keputusan (implementasi Weka C4.5).
Kami memplot hasil perbandingan pada Gambar 7.4, di mana setiap lingkaran mewakili satu set data
dan menempatkan menurut kesalahan prediktif dari dua algoritma yang dibandingkan. Di setiap
plot Gambar 7.4, garis diagonal menunjukkan di mana kedua algoritma tersebut dibandingkan
memiliki kesalahan yang identik. Dapat diamati bahwa AdaBoost sering mengungguli basisnya
algoritma pembelajaran, dengan beberapa pengecualian yang menurunkan kinerja.
Dekomposisi bias-varians yang terkenal [12] telah digunakan untuk secara empiris
mempelajari mengapa AdaBoost mencapai kinerja luar biasa [2, 3, 34]. Alat yang ampuh ini
memecah kesalahan yang diharapkan dari pendekatan pembelajaran menjadi jumlah dari tiga yang tidak negatif
kuantitas, yaitu, suara intrinsik, bias, dan varians. Langkah-langkah bias
seberapa dekat estimasi rata-rata pendekatan pembelajaran dapat mendekati
target, dan varians mengukur seberapa besar estimasi pendekatan pembelajaran
berfluktuasi untuk set pelatihan yang berbeda dengan ukuran yang sama. Telah diamati [2,3,34]
bahwa AdaBoost terutama mengurangi bias tetapi juga mampu mengurangi varians.

© 2009 oleh Taylor & Francis Group, LLC

Halaman 144

https://translate.googleusercontent.com/translate_f 129/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

136 AdaBoost

Gambar 7.5 Empat masker fitur untuk diterapkan pada setiap persegi panjang.

7.4 Aplikasi Nyata


Viola dan Jones [27] menggabungkan AdaBoost dengan proses kaskade untuk deteksi wajah.
Hasilnya, mereka melaporkan bahwa pada mesin 466 MHz, deteksi wajah pada 384 × 288
biaya gambar hanya 0,067 detik, yang hampir 15 kali lebih cepat dari negara-of-the-
art face detector pada waktu itu tetapi dengan akurasi yang sebanding. Detektor wajah ini
telah diakui sebagai salah satu terobosan paling menarik dalam visi komputer (dalam bahasa Indonesia)
khususnya, deteksi wajah) selama dekade terakhir. Di bagian ini, kami perkenalkan secara singkat
cara AdaBoost bekerja di detektor wajah Viola-Jones.
Di sini tugasnya adalah untuk menemukan semua kemungkinan wajah manusia dalam gambar yang diberikan. Sebuah gambar
pertama kali dibagi menjadi subimage, katakanlah 24 × 24 kotak. Setiap subimage kemudian diwakili
oleh vektor fitur. Untuk membuat proses komputasi efisien, fitur yang sangat sederhana
digunakan. Semua segi empat yang mungkin dalam subimage diperiksa. Di setiap persegi panjang,
empat fitur diekstraksi menggunakan topeng yang ditunjukkan pada Gambar 7.5. Dengan setiap topeng,
jumlah tingkat abu-abu piksel di area putih dikurangi dengan jumlah dari mereka yang gelap
area, yang dianggap sebagai fitur. Jadi, dengan pemisahan 24 × 24, ada lebih dari satu
1 juta fitur, tetapi masing-masing fitur dapat dihitung dengan sangat cepat.
Setiap fitur dianggap sebagai pembelajar yang lemah, yaitu,

h i, p, θ ( x ) = I [ px i ≤ pθ ] ( p ∈ {+1 , −1})

di mana x i adalah nilai x pada fitur i -th.


Algoritma pembelajaran dasar mencoba untuk menemukan pengklasifikasi lemah terbaik h i ∗ , p ∗ , θbahwa

meminimalkan kesalahan klasifikasi, yaitu,

∗, p∗, θ∗ E ( x , y ) I [ h i, p, θ ( x ) = y ]
( saya ) = arg min
i, p, θ

Wajah persegi panjang dianggap sebagai contoh positif, seperti yang ditunjukkan pada Gambar 7.6 , sementara
persegi panjang yang tidak mengandung wajah apa pun dianggap sebagai contoh negatif. Lalu, itu
Proses AdaBoost diterapkan dan akan mengembalikan beberapa peserta didik yang lemah, masing-masing sesuai
ke salah satu dari lebih dari 1 juta fitur. Sebenarnya, proses AdaBoost dapat dianggap
sebagai alat pemilihan fitur di sini.
Gambar 7.7 menunjukkan dua fitur pertama yang dipilih dan posisinya relatif terhadap a
wajah manusia. Jelas bahwa kedua fitur ini adalah intuitif, di mana fitur pertama
mengukur bagaimana intensitas area mata berbeda dari intensitas area bawah, sementara

© 2009 oleh Taylor & Francis Group, LLC

Halaman 145

7.4 Aplikasi Nyata 137

https://translate.googleusercontent.com/translate_f 130/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

Gambar 7.6 Contoh pelatihan positif [27].

fitur kedua mengukur bagaimana intensitas kedua area mata berbeda dari
area antara dua mata.
Menggunakan fitur yang dipilih secara berurutan, pohon keputusan yang sangat tidak seimbang dibangun,
yang disebut kaskade pengklasifikasi, seperti diilustrasikan dalam Gambar 7.8.
Parameter θ diatur dalam kaskade sedemikian rupa sehingga, pada setiap simpul pohon, bercabang
menjadi "bukan wajah" berarti gambar itu benar-benar bukan wajah. Dengan kata lain, yang salah
tingkat negatif diminimalkan. Desain ini karena fakta bahwa gambar non-wajah lebih mudah
untuk dikenali, dan dimungkinkan untuk menggunakan beberapa fitur untuk menyaring banyak kandidat
persegi panjang gambar, yang memberikan efisiensi tinggi. Dilaporkan [27] bahwa 10
fitur per subimage diperiksa rata-rata. Beberapa hasil tes dari Viola-Jones
detektor wajah ditunjukkan pada Gambar 7.9.

© 2009 oleh Taylor & Francis Group, LLC

Halaman 146

138 AdaBoost

https://translate.googleusercontent.com/translate_f 131/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

Gambar 7.7 Fitur yang dipilih [27].

7.5 Topik Tingkat Lanjut


7.5.1 Masalah Teoritis
Teori belajar komputasi mempelajari beberapa masalah teoritis mendasar
pembelajaran mesin. Pertama kali diperkenalkan oleh Valiant pada tahun 1984 [25], the Probably Approx-
imately Correct (PAC) model kerangka belajar algoritma dalam distribusi gratis
cara. Secara kasar, untuk klasifikasi biner, masalah dapat dipelajari atau sangat
dapat dipelajari jika ada algoritma yang menghasilkan hipotesis h dalam waktu polinomial

bukan wajah

bukan wajah ...

bukan wajah wajah

Gambar 7.8 Rangkaian pengklasifikasi.

© 2009 oleh Taylor & Francis Group, LLC

Halaman 147

7.5 Topik Tingkat Lanjut 139

https://translate.googleusercontent.com/translate_f 132/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

Gambar 7.9 Output detektor wajah Viola-Jones pada sejumlah gambar uji [27].

sedemikian rupa sehingga untuk semua 0 <δ, ϵ ≤ 0 . 5,


( )
P E x ∼ D, y [ I [ h ( x ) = y ]] <ϵ ≥1-δ

dan masalah sulit dipelajari jika hal di atas berlaku untuk semua 0 <δ ≤ 0 . 5 tetapi hanya
ketika ϵ sedikit lebih kecil dari 0,5 (atau dengan kata lain, h hanya sedikit lebih baik dari
tebakan acak).
Pada tahun 1988, Kearns dan Valiant [15] mengajukan pertanyaan yang menarik, yaitu, apakah
kelas masalah yang sangat bisa dipelajari sama dengan kelas masalah yang bisa dipelajari. Ini
pertanyaan sangat penting mendasar, karena jika jawabannya adalah "ya," pelajar yang lemah
berpotensi dapat ditingkatkan menjadi pembelajar yang kuat. Pada 1989, Schapire [21] membuktikan hal itu
jawabannya benar-benar "ya," dan bukti yang dia berikan adalah konstruksi, yang merupakan yang pertama

© 2009 oleh Taylor & Francis Group, LLC

Halaman 148

140 AdaBoost

meningkatkan algoritma. Satu tahun kemudian, Freund [7] mengembangkan algoritma yang lebih efisien.
Kedua algoritma, bagaimanapun, menderita dari kekurangan praktis yang terikat kesalahan
dari dasar peserta didik perlu diketahui sebelumnya, yang biasanya tidak diketahui di
praktek. Kemudian, pada tahun 1995, Freund dan Schapire [9] mengembangkan algoritma AdaBoost,
yang efektif dan efisien dalam praktiknya.
Freund dan Schapire [9] membuktikan bahwa, jika pelajar dasar dari AdaBoost memiliki kesalahan
ϵ 1 , ϵ 2 , ···, ϵ T , kesalahan dari pelajar gabungan akhir, ϵ , adalah batas atas sebagai
∏T √ ∑T
ϵ = E x ∼ D, y I [ H ( x ) = y ] ≤ 2 T ϵ t (1 - ϵ t ) ≤ e −2
t=1 γ2t

t=1

dimana γ t = 0 . 5 - ϵ t . Dapat dilihat bahwa AdaBoost mengurangi kesalahan secara eksponensial


cepat. Juga, dapat diturunkan bahwa, untuk mencapai kesalahan kurang dari ϵ , putaran T adalah atas

https://translate.googleusercontent.com/translate_f 133/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
dibatasi sebagai ⌈ 1 1⌉
T≤
2γ2 ϵ
dalam

di mana diasumsikan bahwa γ = γ 1 = γ 2 = ··· = γ T .


Namun dalam praktiknya, semua operasi AdaBoost hanya dapat dijalankan
data pelatihan D , yaitu,
ϵ D = E x ∼ D, y I [ H ( x ) = y ]
dan dengan demikian kesalahan adalah kesalahan pelatihan, sedangkan kesalahan generalisasi, yaitu kesalahan
lebih dari distribusi contoh D

ϵ D = E x ∼ D, y I [ H ( x ) = y ]
lebih menarik.
Analisis awal [9] menunjukkan bahwa kesalahan generalisasi AdaBoost berada di atas
dibatasi sebagai (√ )

ϵD≤ϵD+˜O dT
m

dengan probabilitas setidaknya 1 - δ , di mana d adalah VC-dimensi pembelajar dasar, m adalah


jumlah instance pelatihan, dan ˜ O (·) digunakan alih-alih O (·) untuk menyembunyikan logaritmik
syarat dan faktor konstan.
Batas di atas menunjukkan bahwa untuk mencapai kemampuan generalisasi yang baik,
perlu untuk membatasi kerumitan peserta didik serta jumlah
putaran pembelajaran; jika tidak, AdaBoost akan mengenakan. Namun, studi empiris menunjukkan
bahwa AdaBoost sering tidak overfit, yaitu, kesalahan pengujiannya cenderung cenderung menurun
setelah kesalahan pelatihan mencapai nol, bahkan setelah sejumlah besar putaran, seperti
1000
Misalnya, Schapire et al. [22] merencanakan kinerja AdaBoost di Internet
set data huruf dari Repositori Pembelajaran Mesin UCI, seperti yang ditunjukkan pada Gambar 7.10 ( kiri),
di mana kurva yang lebih tinggi adalah kesalahan tes sedangkan yang lebih rendah adalah kesalahan pelatihan. Itu bisa saja
mengamati bahwa AdaBoost mencapai nol pelatihan kesalahan dalam waktu kurang dari 10 putaran tetapi
kesalahan generalisasi terus berkurang. Fenomena ini tampaknya berlawanan dengan Occam

© 2009 oleh Taylor & Francis Group, LLC

Halaman 149

7.5 Topik Tingkat Lanjut 141

1.0
20

15

0,5
10

tingkat
5 kesalahan
rasio set tes

0
10 100 1000 -1 -0.5 0,5 1
t θ

Gambar 7.10 Pelatihan dan kesalahan pengujian (kiri) dan distribusi margin (kanan) dari AdaBoost
pada set data surat [22].

Razor, yaitu, tidak lebih dari yang perlu dilakukan, yang merupakan salah satu dasar
prinsip dalam pembelajaran mesin.
Banyak peneliti telah mempelajari fenomena ini, dan beberapa penjelasan teoritis
tions telah diberikan, misalnya, [11]. Schapire et al. [22] memperkenalkan margin -

https://translate.googleusercontent.com/translate_f 134/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
penjelasan berdasarkan. Mereka berpendapat bahwa AdaBoost mampu meningkatkan margin bahkan
setelah kesalahan pelatihan mencapai nol, dan dengan demikian tidak cocok bahkan setelah besar
jumlah putaran.∑Margin
T klasifikasi h pada x didefinisikan sebagai yh ( x ), dan itu
dari H ( x ) =
t = 1 α t h t ( x ) didefinisikan sebagai
∑T

yH ( x ) = t∑
= 1 Tα t yh t ( x)
t=1αt

Gambar 7.10 (kanan) plot distribusi YH ( x ) ≤ θ untuk nilai yang berbeda dari θ . Itu
terbukti dalam [22] bahwa kesalahan generalisasi adalah batas atas sebagai
(√ )

ϵ D ≤ P x ∼ D, y ( yH ( x ) ≤ θ ) + ˜ O d 1
δ
mθ 2 + ln
(√ )
∏T √
≤2T ϵt 1− θ (1 - ϵ ) 1+ θ + ˜ O d 1
mθ 2 + ln δ
t=1

dengan probabilitas setidaknya 1 - δ . Ikatan ini secara kualitatif menjelaskan bahwa ketika lainnya
variabel dalam batas tetap, semakin besar margin, semakin kecil generalisasi
kesalahan.
Namun, penjelasan berbasis margin ini ditantang oleh Brieman [4]. Menggunakan
margin minimum ϱ ,
ϱ = mnt yH ( x )
x∈D

Breiman membuktikan kesalahan generalisasi terikat lebih ketat daripada yang menggunakan di atas
margin minimum. Termotivasi oleh ikatan yang lebih ketat, algoritma arc-gv, yang merupakan a
varian AdaBoost, diusulkan untuk memaksimalkan margin minimum secara langsung, oleh

© 2009 oleh Taylor & Francis Group, LLC

Halaman 150

142 AdaBoost

memperbarui α t menurut
( ) ( )
1 1+γt 1 1+ϱt
αt= dalam - dalam
2 1-γt 2 1-ϱt

Menariknya, margin minimum arc-gv secara seragam lebih baik daripada AdaBoost,
tetapi kesalahan pengujian arc-gv meningkat secara drastis pada semua set data yang diuji [4]. Jadi, itu
teori margin untuk AdaBoost hampir dijatuhi hukuman mati.
Pada tahun 2006, Reyzin dan Schapire [20] melaporkan temuan yang menarik. Ini terkenal
bahwa batas kesalahan generalisasi dikaitkan dengan margin, jumlah
putaran, dan kompleksitas pembelajar dasar. Saat membandingkan arc-gv dengan AdaBoost,
Breiman [4] mencoba mengendalikan kerumitan pelajar dasar dengan menggunakan pohon keputusan
dengan jumlah daun yang sama, tetapi Reyzin dan Schapire menemukan bahwa ini adalah pohon
dengan bentuk yang sangat berbeda. Pohon-pohon yang dihasilkan oleh arc-gv cenderung memiliki kedalaman yang lebih besar,
sedangkan yang dihasilkan oleh AdaBoost cenderung memiliki lebar lebih besar. Gambar 7.11 (atas)
menunjukkan perbedaan kedalaman pohon yang dihasilkan oleh dua algoritma pada
kumpulan data kanker payudara dari UCI Machine Learning Repository. Meskipun pohon-pohon
memiliki jumlah daun yang sama, tampaknya pohon yang lebih dalam membuat lebih banyak atribut
menguji daripada pohon yang lebih luas, dan karena itu mereka tidak mungkin memiliki kompleksitas yang sama.
Jadi, Reyzin dan Schapire mengulangi eksperimen Breiman dengan menggunakan tunggul keputusan,
yang hanya memiliki satu daun dan karenanya dengan kompleksitas tetap, dan menemukan bahwa
distribusi margin AdaBoost sebenarnya lebih baik daripada arc-gv, seperti yang diilustrasikan dalam
Gambar 7.11 (bawah).

https://translate.googleusercontent.com/translate_f 135/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
Baru-baru ini, Wang et al. [28] memperkenalkan margin kesetimbangan dan membuktikan ikatan baru
lebih ketat daripada yang diperoleh dengan menggunakan margin minimum, yang menunjukkan bahwa mini-
mum margin mungkin tidak penting untuk kesalahan generalisasi AdaBoost. Boleh jadi
menarik untuk mengembangkan algoritma yang memaksimalkan margin kesetimbangan secara langsung, dan
untuk melihat apakah kesalahan pengujian algoritma semacam itu lebih kecil dari pada AdaBoost,
yang tetap merupakan masalah terbuka.

7.5.2 Multiclass AdaBoost


Pada bagian sebelumnya kami fokus pada AdaBoost untuk klasifikasi biner, yaitu,
Y = {+1 , −1}. Namun, dalam banyak tugas klasifikasi, sebuah instance milik salah satu
banyak bukannya dua kelas. Misalnya, nomor tulisan tangan milik 1 dari 10
kelas, yaitu, Y = {0 , ..., 9}. Ada lebih dari satu cara untuk menangani multiclass
masalah klasifikasi.
AdaBoost.M1 [9] adalah ekstensi yang sangat langsung, yang sama dengan algoritma yang ditampilkan
pada Gambar 7.2 , kecuali bahwa sekarang pembelajar dasar adalah pembelajar multikelas, bukan biner
pengklasifikasi. Algoritma ini tidak dapat menggunakan pengklasifikasi basis biner, dan membutuhkan setiap
dasar peserta didik memiliki kurang dari 1 / 2 multiclass 0/1-loss, yang merupakan kendala overstrong.
SAMME [35] merupakan peningkatan dari AdaBoost.M1, yang menggantikan Baris 5 dari
AdaBoost.M1 pada Gambar 7.2 oleh
( )
1 1-ϵt
αt= + ln (| Y | - 1)
2
dalam
ϵt

© 2009 oleh Taylor & Francis Group, LLC

Halaman 151

7.5 Topik Tingkat Lanjut 143

10
“AdaBoost_bc”
“Arc-gv_bc”

9.5

pth

e de
9

8.5

tre rata-rata latif


kamu
m 8
kamu
C

7.5

7
50 100 150 200 250 300 350 400 450 500
Bulat

(Sebuah)

1.2
“AdaBoost_bc”
“Arc-gv_bc”

y
0.8
quenc

0,6
latif fre
kamu
m
kamu
C
0,4

https://translate.googleusercontent.com/translate_f 136/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

0,2

0
-0.1 0 0,1 0,2 0,3 0,4 0,5 0,6 0,7
Batas
(b)

Gambar 7.11 Kedalaman pohon (atas) dan distribusi margin (bawah) dari AdaBoost terhadap
arc-gv pada set data kanker payudara [20].

Modifikasi ini berasal dari minimalisasi kerugian eksponensial multiklass. Itu


terbukti bahwa, mirip dengan kasus klasifikasi biner, mengoptimalkan multiclass
kerugian eksponensial mendekati kesalahan Bayesian yang optimal, yaitu,

tanda [ h ( x )] = arg maks P(y|x)
y∈Y

dimana h adalah solusi optimal untuk kerugian eksponensial multiklass.

© 2009 oleh Taylor & Francis Group, LLC

Halaman 152

144 AdaBoost

Solusi populer untuk masalah klasifikasi multi-kelas adalah dengan menguraikan tugas menjadi
beberapa masalah klasifikasi biner. Dekomposisi langsung dan populer termasuk
satu lawan satu dan satu lawan satu . Satu-vs-istirahat menguraikan tugas multiklass | Y | kelas
menjadi | Y | tugas klasifikasi biner, di mana tugas ke- i adalah untuk mengklasifikasikan apakah suatu
Misalnya milik kelas ke- i atau tidak. One-vs-one menguraikan tugas multiclass
dari | Y | kelas menjadi | Y | (| Y2| −1) tugas klasifikasi biner, di mana setiap tugas diklasifikasi
apakah sebuah instance milik, katakanlah, kelas ke- i atau kelas ke- j .
AdaBoost.MH [23] mengikuti pendekatan one-vs-rest. Setelah pelatihan | Y
∑ |Tjumlah
(biner) Ada pengklasifikasi AdaBoost, output nilai riil H ( x ) =
t = 1 α t h t ( x ) masing-masing
AdaBoost digunakan sebagai pengganti klasifikasi yang jernih untuk menemukan kelas yang paling mungkin,
itu adalah,

H ( x ) = arg maks Hy(x)


y∈Y

di mana H y adalah classifier AdaBoost yang mengklasifikasikan kelas y dari yang lainnya.
AdaBoost.M2 [9] mengikuti pendekatan satu lawan satu, yang meminimalkan pseudo-
kerugian. Algoritma ini kemudian digeneralisasi sebagai AdaBoost.MR [23] yang meminimalkan a
kehilangan peringkat didorong oleh fakta bahwa kelas peringkat tertinggi lebih mungkin terjadi
kelas yang benar. Pengklasifikasi biner yang diperoleh dengan dekomposisi satu lawan satu juga bisa
diagregasi dengan memilih atau berpasangan berpasangan [13].
Kode koreksi kesalahan keluaran (ECOCs) [6] juga dapat digunakan untuk mendekomposisi a
masalah klasifikasi multi-kelas menjadi serangkaian masalah klasifikasi biner. Untuk
contoh, Gambar 7.12a menunjukkan kode output untuk empat kelas menggunakan lima pengklasifikasi. Setiap
classifier dilatih untuk membedakan kelas + 1 dan − 1 di kolom yang sesuai.
Sebagai contoh pengujian, dengan menggabungkan output klasifikasi oleh lima pengklasifikasi,
kode vektor prediksi diperoleh. Vektor ini akan dibandingkan dengan kode
vektor kelas (setiap baris pada Gambar 7.12 (a) menggunakan jarak Hamming, dan
kelas dengan jarak terdekat dianggap prediksi akhir. Menurut informasi
Teori mation, ketika pengklasifikasi biner independen, semakin besar minimum
Jarak Hamming dalam vektor kode, semakin kecil kerugian 0/1. Kemudian, menjadi satu
Kerangka diusulkan untuk pendekatan dekomposisi multiklass [1]. Gambar 7.12 (b)
menunjukkan kode output untuk dekomposisi satu-vs-istirahat dan Gambar 7.12 (c) menunjukkan

https://translate.googleusercontent.com/translate_f 137/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
kode output untuk dekomposisi satu-vs-satu, di mana nol berarti bahwa pengklasifikasi
harus mengabaikan contoh kelas tersebut.

H 1H 2H 3H 4H 5 H 1H 2H 3H 4 H 1H 2H 3H 4H 5 H6
↓↓↓↓↓↓ ↓↓↓↓↓ ↓↓↓↓↓↓ ↓
y 1 = +1 −1 +1 −1 +1 y 1 = +1 −1 −1 −1 y 1 = +1 +1 +1 0 0 0
y 2 = +1 +1 −1 −1 −1 y 2 = −1 +1 −1 −1 y 2 = –1 0 0 +1 +1 0
y 3 = −1 −1 +1 −1 −1 y 3 = −1 −1 +1 −1 y 3 = 0 −1 0 −1 0 +1
y 4 = −1 +1 −1 +1 +1 y 4 = −1 −1 −1 +1 y 4 = 0 0 −1 0 −1 −1

(a) Kode asli (B) kode satu-vs-istirahat (c) Kode satu lawan satu

Gambar 7.12 kode output ECOC.

© 2009 oleh Taylor & Francis Group, LLC

Halaman 153

7.6 Implementasi Perangkat Lunak 145

7.5.3 Topik Tingkat Lanjut Lainnya


Komprehensibilitas, yaitu, pemahaman model yang dipelajari kepada pengguna, diinginkan
dalam banyak aplikasi nyata. Mirip dengan metode ansambel lainnya, kekurangan serius
AdaBoost dan variannya adalah kurangnya kelengkapan. Bahkan saat pangkalan
peserta didik adalah model yang dapat dipahami seperti pohon keputusan kecil, kombinasi dari
mereka akan mengarah pada model kotak hitam. Meningkatkan kelengkapan ensemble
metode adalah arah penting namun sebagian besar kekurangan [33].
Dalam sebagian besar metode ensemble, semua pelajar basis yang dihasilkan digunakan dalam ensemble.
Namun, telah terbukti bahwa ansambel yang lebih kuat dengan ukuran yang lebih kecil dapat diamati.
dilakukan melalui ansambel selektif , yaitu, ansambel beberapa bukan semua yang tersedia
pelajar dasar [34]. Temuan ini berbeda dari hasil sebelumnya yang menyarankan itu
pemangkasan ansambel dapat mengorbankan kemampuan generalisasi [17,24], dan oleh karena itu
memberikan dukungan untuk ensemble selektif yang lebih baik atau metode pemangkasan ensemble [18, 31].
Dalam banyak aplikasi, contoh pelatihan satu kelas jauh lebih banyak daripada kelas lainnya.
Algoritma pembelajaran yang tidak mempertimbangkan ketidakseimbangan kelas cenderung kewalahan oleh
kelas mayoritas; namun, kepentingan utama seringkali pada kelas minoritas. Banyak
varian AdaBoost telah dikembangkan untuk pembelajaran ketidakseimbangan kelas [5,14,19,26].
Selain itu, sebuah studi terbaru [16] menunjukkan bahwa kinerja AdaBoost bisa jadi
digunakan sebagai petunjuk untuk menilai apakah suatu tugas menderita ketidakseimbangan kelas atau tidak, berdasarkan
yang algoritma baru yang kuat dapat dirancang.
Seperti disebutkan sebelumnya, selain kerugian 0/1, meningkatkan juga dapat bekerja dengan yang lain
jenis fungsi kerugian. Misalnya, dengan mempertimbangkan kehilangan peringkat, RankBoost [8]
dan AdaRank [30] telah dikembangkan untuk tugas pencarian informasi.

7.6 Implementasi Perangkat Lunak


Sebagai teknik pembelajaran mesin off-the-shelf, AdaBoost dan variannya dengan mudah
kode yang dapat diakses di Java, M ATLAB , R, dan C ++.
Implementasi Java dapat ditemukan di Weka, 3 salah satu open-source paling terkenal
paket untuk pembelajaran mesin dan penambangan data. Weka termasuk AdaBoost.M1 al-
gorithm [9], yang menyediakan opsi untuk memilih algoritma pembelajaran dasar, mengatur
jumlah pelajar dasar, dan beralih antara mekanisme reweighting dan resampling
anisme. Weka juga menyertakan algoritma peningkatan lainnya, seperti LogitBoost [11],
MultiBoosting [29], dan sebagainya.

https://translate.googleusercontent.com/translate_f 138/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
M ATLAB dapat ditemukan di Spider. Implementasi 4 R dapat ditemukan
Implementasi
dalam R-Project. 5 implementasi C ++ dapat ditemukan di Sourceforge. 6 Ada juga
banyak implementasi lain yang dapat ditemukan di Internet.

3 http://www.cs.waikato.ac.nz/ml/weka/.

4 http://www.kyb.mpg.de/bs/people/spider/.

5 http://cran.r-project.org/web/packages/.

6 http://sourceforge.net/projects/multiboost.

© 2009 oleh Taylor & Francis Group, LLC

Halaman 154

146 AdaBoost

7.7 Latihan
1. Apa ide dasar Meningkatkan?
2. Pada Gambar 7.2 , mengapa harus pecah ketika ϵ t ≥ 0 . 5?
3. Diberikan satu set pelatihan
⎧ ⎫
⎪⎪⎪⎪⎨
( x 1 = (+1 , 0) , y 1 = +1) ⎪⎪⎪⎪⎬
( x 2 = (0 , +1) , y 2 = +1)
( x 3 = (−1 , 0) , y 3 = +1)
⎪⎪⎪⎪⎩ ⎪⎪⎪⎪⎭
( x 4 = (0 , −1) , y 4 = +1)
( x 5 = (0 , 0) , y 5 = −1)

apakah ada classifier linier yang dapat mencapai nol kesalahan pelatihan? Kenapa / mengapa tidak?
4. Mengingat set pelatihan di atas, tunjukkan bahwa AdaBoost dapat mencapai nol kesalahan pelatihan
dengan menggunakan lima pengklasifikasi basis linier dari kumpulan berikut.

h 1 ( x ) = 2 I [ x 1 > 0 . 5] - 1 h 2 ( x ) = 2 I [ x 1 < 0 . 5] - 1
h 3 ( x ) = 2 I [ x 1 > −0 . 5] - 1 h 4 ( x ) = 2 I [ x 1 < −0 . 5] - 1
h 5 ( x ) = 2 I [ x 2 > 0 . 5] - 1 h 6 ( x ) = 2 I [ x 2 < 0 . 5] - 1
h 7 ( x ) = 2 I [ x 2 > −0 . 5] - 1 h 8 ( x ) = 2 I [ x 2 < −0 . 5] - 1
h 9 ( x ) = +1 h 10 ( x ) = −1

5. Dalam latihan di atas, akankah AdaBoost mencapai kesalahan pelatihan bukan nol untuk apa pun
T ≥ 5? T adalah jumlah pengklasifikasi dasar.
6. Penggolong tetangga terdekat mengklasifikasikan sebuah instance dengan menugaskannya dengan
label contoh pelatihan terdekatnya. Bisakah AdaBoost meningkatkan kinerja
penggolong seperti itu? Kenapa / mengapa tidak?
7. Plot fungsi-fungsi berikut dalam grafik dalam rentang z ∈ [−2 , 2], dan amati
perbedaan mereka.
{ {
0,z≥0 0, z≥1
l1(z)= l2(z)=
1,z<0 1 - z, z < 1
-z
l 3 ( z ) = ( z - 1) 2 l4(z)=e

Perhatikan bahwa, ketika z = yf ( x ), l 1 , l 2 , l 3 , dan l 4 adalah fungsi dari 0/1-loss, engsel loss
(Digunakan oleh mesin vektor dukungan), kerugian kuadrat (digunakan oleh regresi kuadrat terkecil),
dan kerugian eksponensial (fungsi kerugian yang digunakan oleh AdaBoost), masing-masing.
8. Tunjukkan bahwa fungsi l 2 , l 3 , dan l 4 dalam latihan di atas semuanya cembung
( l adalah cembung jika ∀ z 1 , z 2 : l ( z 1 + z 2 ) ≥ ( l ( z 1 ) + l ( z 2 ))). Mempertimbangkan biner
tugas klasifikasi z = yf ( x ) di mana y = {−1 , +1}, temukan fungsi itu

https://translate.googleusercontent.com/translate_f 139/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
solusi optimal adalah solusi optimal Bayesian.
9. Bisakah AdaBoost diperluas untuk menyelesaikan masalah regresi? Jika jawaban Anda adalah ya,
bagaimana? Jika jawaban Anda tidak, mengapa?

© 2009 oleh Taylor & Francis Group, LLC

Halaman 155

Referensi 147

10. Jalankan percobaan untuk membandingkan AdaBoost menggunakan reweighting dan AdaBoost menggunakan
resampling. Anda dapat menggunakan implementasi Weka dan kumpulan data dari Mesin UCI
Belajar Repositori.

Referensi
[1] EL Allwein, RE Schapire, dan Y. Singer. Mengurangi multiclass ke biner:
Pendekatan pemersatu untuk pengklasifikasi margin. Jurnal Pembelajaran Mesin Re-
cari , 1: 113–141, 2000.

[2] E. Bauer dan R. Kohavi. Perbandingan empiris klasifikasi pemungutan suara


algoritma: Bagging, boosting, dan varian. Pembelajaran Mesin , 36 (1-2): 105–
139, 1999.

[3] L. Breiman. Bias, varian, dan pengklasifikasi busur. Laporan Teknis 460, Statis-
Departemen tics, Universitas California, Berkeley, 1996.

[4] L. Breiman. Game prediksi dan algoritma lengkung. Komputasi Saraf ,


11 (7): 1493-1517, 1999.

[5] NV Chawla, A. Lazarevic, LO Hall, dan KW Bowyer. SMOTEBoost:


Meningkatkan prediksi kelas minoritas dalam meningkatkan. Dalam Prosiding
Konferensi Eropa ke-7 tentang Prinsip dan Praktek Penemuan Pengetahuan
dalam Databases , halaman 107–119, Cavtat-Dubrovnik, Kroasia, 2003.

[6] TG Dietterich dan G. Bakiri. Memecahkan masalah pembelajaran multikelas melalui kesalahan-
mengoreksi kode output. Jurnal Riset Kecerdasan Buatan , 2: 263–286,
1995

[7] Y. Freund. Meningkatkan algoritma pembelajaran yang lemah oleh mayoritas. Informasi dan
Computation , 121 (2): 256–285, 1995.

[8] Y. Freund, R. Iyer, RE Schapire, dan Y. Singer. Algoritma pendongkrak yang efisien
untuk menggabungkan preferensi. Jurnal Penelitian Pembelajaran Mesin , 4: 933–963,
2003

[9] Y. Freund dan RE Schapire. Generalisasi teoritik keputusan on-line


belajar dan aplikasi untuk meningkatkan. Jurnal Ilmu Komputer dan Sistem
ences , 55 (1): 119–139, 1997.

[10] Y. Freund dan RE Schapire. Pengantar singkat untuk meningkatkan. Jurnal dari
Masyarakat Jepang untuk Kecerdasan Buatan , 14 (5): 771-780, 1999.

[11] J. Friedman, T. Hastie, dan R. Tibshirani. Regresi logistik tambahan: A statistik-


Pandangan praktis untuk meningkatkan (dengan diskusi). The Annals of Statistics , 28 (2): 337–
407, 2000.

[12] S. Jerman, E. Bienenstock, dan R. Doursat. Jaringan saraf dan


dilema bias / varians. Neural Computation , 4 (1): 1–58, 1992.

https://translate.googleusercontent.com/translate_f 140/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

© 2009 oleh Taylor & Francis Group, LLC

Halaman 156

148 AdaBoost

[13] T. Hastie dan R. Tibshirani. Klasifikasi dengan kopling berpasangan. The Annals of
Statistics , 26 (2): 451-471, 1998.

[14] MV Joshi, RC Agarwal, dan V. Kumar. Memprediksi kelas langka: Dapat meningkatkan
ing membuat pembelajar yang lemah menjadi kuat? Dalam Prosiding ACM SIGKDD ke-8
Konferensi Internasional tentang Penemuan Pengetahuan dan Penambangan Data , halaman
297–306, Edmonton, Kanada, 2002.

[15] M. Kearns dan LG Valiant. Keterbatasan kriptografi pada pembelajaran Boolean


rumus dan automata terbatas. Dalam Prosiding Simposium ACM Tahunan ke-21
sium on Theory of Computing , halaman 433-444, Seattle, WA, 1989.

[16] X.-Y. Liu, J.-X. Wu, dan Z.-H. Zhou. Under-sampling eksplorasi untuk kelas-
belajar ketidakseimbangan. Transaksi IEEE pada Sistem, Manusia dan Sibernetika—
Bagian B , 2009.

[17] D. Margineantu dan TG Dietterich. Pemangkasan peningkatan adaptif. Dalam Prosiding


Konferensi Internasional ke-14 tentang Pembelajaran Mesin , halaman 211–218,
Nashville, TN, 1997.

[18] G. Martínez-Mu˜noz dan A. Suárez. Pemangkasan di ansambel mengantongi memerintahkan. Di


Prosiding Konferensi Internasional ke-23 tentang Pembelajaran Mesin , halaman
609–616, Pittsburgh, PA, 2006.

[19] H. Masnadi-Shirazi dan N. Vasconcelos. Meningkatkan asimetris. Dalam Prosiding


Konferensi Internasional 24 tentang Pembelajaran Mesin , halaman 609–619,
Corvallis, OR, 2007.

[20] L. Reyzin dan RE Schapire. Cara meningkatkan margin juga dapat meningkatkan klasifikasi
kompleksitas. Dalam Prosiding Konferensi Internasional ke-23 tentang Mesin
Belajar , halaman 753-760, Pittsburgh, PA, 2006.

[21] RE Schapire. Kekuatan kemampuan belajar yang lemah. Pembelajaran Mesin , 5 (2): 197–
227, 1990.

[22] RE Schapire, Y. Freund, P. Bartlett, dan WS Lee. Meningkatkan margin: A baru


penjelasan untuk efektivitas metode pemungutan suara. The Annals of Statistics ,
26 (5): 1651–1686, 1998.

[23] RE Schapire dan Y. Singer. Peningkatan algoritma peningkatan menggunakan kepercayaan diri-
prediksi pengenal. Pembelajaran Mesin , 37 (3): 297–336, 1999.

[24] C. Tamon dan J. Xiang. Pada masalah pemangkasan meningkatkan. Dalam Prosiding
Konferensi Eropa ke-11 tentang Pembelajaran Mesin , halaman 404–412, Barcelona,
Spanyol, 2000.

[25] LG Valiant. Teori yang bisa dipelajari. Komunikasi ACM ,


27 (11): 1134-1142, 1984.

[26] P. Viola dan M. Jones. Klasifikasi cepat dan kuat menggunakan AdaBoost asimetris
dan kaskade detektor. Dalam TG Dietterich, S. Becker, dan Z. Ghahramani,
editor, Kemajuan dalam Sistem Pemrosesan Informasi Saraf 14 , halaman 1311–
1318. MIT Press, Cambridge, MA, 2002.

© 2009 oleh Taylor & Francis Group, LLC

https://translate.googleusercontent.com/translate_f 141/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

Halaman 157

Referensi 149

[27] P. Viola dan M. Jones. Deteksi objek real-time yang kuat. Jurnal Internasional
Computer Vision , 57 (2): 137–154, 2004.

[28] L. Wang, M. Sugiyama, C. Yang, Z.-H. Zhou, dan J. Feng. Di tepi


penjelasan tentang algoritma peningkatan. Dalam Prosiding Konferensi Tahunan ke-21
ence pada Learning Theory , halaman 479–490, Helsinki, Finlandia, 2008.

[29] GI Webb. MultiBoosting: Suatu teknik untuk menggabungkan boosting dan wagging.
Pembelajaran Mesin , 40 (2): 159–196, 2000.

[30] J. Xu dan H. Li. AdaRank: Algoritma pendongkrak untuk pencarian informasi.


Dalam Prosiding Konferensi Internasional ACM SIGIR ke-30 Tahunan pada
Penelitian dan Pengembangan dalam Pengambilan Informasi , halaman 391–398, Amster-
bendungan, Belanda, 2007.

[31] Y. Zhang, S. Burer, dan WN Street. Ensemble pemangkasan melalui semi-pasti


pemrograman. Jurnal Penelitian Pembelajaran Mesin , 7: 1315–1338, 2006.

[32] Z.-H. Zhou. Ensemble belajar. Dalam SZ Li, editor, Encyclopedia of Biometrics .
Springer, Berlin, 2008.

[33] Z.-H. Zhou, Y. Jiang, dan S.-F. Chen. Mengekstraksi aturan simbolik dari terlatih
ansambel jaringan saraf. AI Communications , 16 (1): 3-15, 2003.

[34] Z.-H. Zhou, J. Wu, dan W. Tang. Ensembling neural networks: Banyak yang bisa
lebih baik dari semua. Kecerdasan Buatan , 137 (1-2): 239-263, 2002.

[35] J. Zhu, S. Rosset, H. Zou, dan T. Hastie. Multi-kelas AdaBoost. Teknis


laporan, Departemen Statistik, Universitas Michigan, Ann Arbor, 2006.

© 2009 oleh Taylor & Francis Group, LLC

https://translate.googleusercontent.com/translate_f 142/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

Halaman 159
158

Bab 8
k NN: k- Tetangga Terdekat

Michael Steinbach dan Pang-Ning Tan

Isi

8.1 Pendahuluan ................................................ ........... 151


8.2 Deskripsi Algoritma ........................................... 152
8.2.1 Deskripsi Tingkat Tinggi ......................................... 152
8.2.2 Masalah .................................................. ............ 153
8.2.3 Implementasi Perangkat Lunak .......................................... 155
8.3 Contoh .................................................... .............. 155
8.4 Topik Tingkat Lanjut ............................................... ........ 157
8.5 Latihan ................................................ .............. 158
Ucapan Terima Kasih ................................................. .......... 159
Referensi ................................................. ................. 159

8.1 Pendahuluan
Salah satu pengklasifikasi yang paling sederhana dan agak sepele adalah Rote classifier, yang menghafal
seluruh data pelatihan dan melakukan klasifikasi hanya jika atribut tes
objek persis cocok dengan atribut salah satu objek pelatihan. Masalah yang jelas
dengan pendekatan ini adalah bahwa banyak catatan uji tidak akan diklasifikasikan karena mereka melakukannya
tidak persis cocok dengan salah satu dari catatan pelatihan. Masalah lain muncul ketika dua atau lebih
catatan pelatihan memiliki atribut yang sama tetapi label kelas yang berbeda.
Pendekatan yang lebih canggih, klasifikasi k -nearest neighbor ( k NN) [10,11,21],
menemukan sekelompok objek k dalam set pelatihan yang paling dekat dengan objek tes, dan
mendasarkan penugasan label pada dominasi kelas tertentu dalam hal ini
lingkungan. Ini mengatasi masalah yang, dalam banyak set data, tidak mungkin satu itu
objek akan persis cocok dengan yang lain, serta fakta tentang informasi yang saling bertentangan
kelas suatu objek dapat disediakan oleh objek yang paling dekat dengannya. Ada beberapa
elemen kunci dari pendekatan ini: (i) himpunan objek berlabel yang akan digunakan untuk mengevaluasi
kelas objek uji, 1 (ii) metrik jarak atau kesamaan yang dapat digunakan untuk menghitung

1 Ini tidak harus menjadi seluruh rangkaian pelatihan.

151

© 2009 oleh Taylor & Francis Group, LLC

Halaman 160

https://translate.googleusercontent.com/translate_f 143/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

152 kNN: k-Tetangga Terdekat

kedekatan objek, (iii) nilai k , jumlah tetangga terdekat, dan (iv)


metode yang digunakan untuk menentukan kelas objek target berdasarkan kelas dan
jarak k tetangga terdekat. Dalam bentuknya yang paling sederhana, k NN dapat melibatkan penetapan
sebuah objek kelas tetangga terdekat atau mayoritas tetangga terdekatnya,
tetapi berbagai perangkat tambahan dimungkinkan dan dibahas di bawah ini.
Secara lebih umum, k NN adalah kasus khusus pembelajaran berbasis instance [1]. Ini termasuk
case-based reasoning [3], yang berkaitan dengan data simbolik. Pendekatan k NN juga
contoh dari teknik pembelajaran malas, yaitu, teknik yang menunggu sampai permintaan
tiba untuk menggeneralisasi di luar data pelatihan.
Meskipun klasifikasi k NN adalah teknik klasifikasi yang mudah dimengerti
dan menerapkannya, ia bekerja dengan baik dalam banyak situasi. Secara khusus, hasil yang terkenal
oleh Cover dan Hart [6] menunjukkan bahwa kesalahan klasifikasi 2 dari aturan tetangga terdekat
dibatasi di atas oleh dua kali kesalahan Bayes optimal 3 di bawah asumsi wajar tertentu-
tions. Selanjutnya, kesalahan metode k NN umum mendekati asimtotik
bahwa dari kesalahan Bayes dan dapat digunakan untuk memperkirakannya.
Juga, karena kesederhanaannya, k NN mudah dimodifikasi untuk klasifikasi yang lebih rumit.
masalah kation. Misalnya, k NN sangat cocok untuk kelas multimodal 4
serta aplikasi di mana suatu objek dapat memiliki banyak label kelas. Untuk menggambarkan
titik terakhir, untuk penugasan fungsi pada gen berdasarkan ekspresi microarray
profil, beberapa peneliti menemukan bahwa k NN mengungguli dukungan mesin vektor
(SVM), yang merupakan skema klasifikasi yang jauh lebih canggih [17].
Sisa bab ini menjelaskan algoritma dasar k NN, termasuk
Masalah-masalah yang mempengaruhi klasifikasi dan kinerja komputasi. Pointer adalah
diberikan untuk implementasi k NN, dan contoh penggunaan mesin Weka
Paket untuk melakukan klasifikasi tetangga terdekat juga disediakan. Maju
teknik dibahas secara singkat dan bab ini diakhiri dengan beberapa latihan.

8.2 Deskripsi Algoritma


8.2.1 Deskripsi Tingkat Tinggi
Algoritma 8.1 menyediakan ringkasan tingkat tinggi dari klasifikasi tetangga terdekat
metode. Diberikan himpunan pelatihan D dan benda uji z , yang merupakan vektor nilai atribut
dan memiliki label kelas yang tidak dikenal, algoritma menghitung jarak (atau kesamaan)

2 Kesalahan klasifikasi dari sebuah classifier adalah persentase instance yang secara tidak benar diklasifikasikan.
3 Kesalahan Bayes adalah kesalahan klasifikasi classifier Bayes, yaitu, classifier yang mengetahui yang mendasarinya
distribusi probabilitas data sehubungan dengan kelas, dan memberikan setiap titik data ke kelas dengan
kepadatan probabilitas tertinggi untuk titik itu. Untuk detail lebih lanjut, lihat [9].
4 Dengan kelas multimodal, objek label kelas tertentu terkonsentrasi di beberapa area berbeda
ruang data, bukan hanya satu. Dalam istilah statistik, fungsi kepadatan probabilitas untuk kelas tidak memiliki
satu "benjolan" seperti Gaussian, tetapi, memiliki sejumlah puncak.

© 2009 oleh Taylor & Francis Group, LLC

Halaman 161

8.2 Deskripsi Algoritma 153

https://translate.googleusercontent.com/translate_f 144/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

Algoritma 8.1 Dasar k Algoritma NN


Input : D , himpunan objek pelatihan, objek uji, z , yang merupakan vektor dari
nilai atribut, dan L , himpunan kelas yang digunakan untuk memberi label objek
Output : c z ∈ L , kelas z
foreach objek y ∈ D lakukan
| Hitung d ( z , y ), jarak antara z dan y ;
akhir
Pilih N ⊆ D , himpunan
∑ (lingkungan) dari k objek pelatihan terdekat untuk z ;
c z = argmax
v∈L y∈NI ( v = kelas ( c y ));
di mana I (·) adalah fungsi indikator yang mengembalikan nilai 1 jika argumennya benar dan
0 sebaliknya.

antara z dan semua objek pelatihan untuk menentukan daftar tetangga terdekatnya. Kalau begitu
menugaskan kelas ke z dengan mengambil kelas dari mayoritas objek tetangga. Dasi
rusak dengan cara yang tidak ditentukan, misalnya, secara acak atau dengan mengambil paling banyak
kelas sering di set pelatihan.
Kompleksitas penyimpanan algoritma adalah O ( n ), di mana n adalah jumlah pelatihan
benda. Kompleksitas waktu juga O ( n ), karena jarak perlu dihitung
antara target dan setiap objek pelatihan. Namun, tidak ada waktu untuk itu
konstruksi model klasifikasi, misalnya, pohon keputusan atau pemisahan
peringkat hyperplane. Dengan demikian, k NN berbeda dari kebanyakan teknik klasifikasi lainnya
yang memiliki tahap pembangunan model yang cukup mahal, tetapi sangat murah
Langkah-langkah klasifikasi O ( konstan ).

8.2.2 Masalah
Ada beberapa masalah utama yang mempengaruhi kinerja k NN. Salah satunya adalah pilihan
dari k . Ini diilustrasikan pada Gambar 8. 1, yang menunjukkan objek uji yang tidak berlabel, x , dan
melatih objek yang termasuk dalam kelas "+" atau "-". Jika k terlalu kecil, maka
hasilnya bisa peka terhadap titik kebisingan. Di sisi lain, jika k terlalu besar, maka
lingkungan mungkin termasuk terlalu banyak poin dari kelas lain. Perkiraan
nilai terbaik untuk k dapat diperoleh dengan validasi silang. Namun, penting untuk melakukannya
tunjukkan bahwa k = 1 mungkin dapat melakukan nilai-nilai lain dari k , terutama untuk yang kecil
set data, termasuk yang biasanya digunakan dalam penelitian atau untuk latihan kelas. Namun,
diberikan sampel yang cukup, nilai k yang lebih besar lebih tahan terhadap kebisingan.
Masalah lainnya adalah pendekatan untuk menggabungkan label kelas. Metode paling sederhana adalah
untuk mengambil suara mayoritas, tetapi ini bisa menjadi masalah jika tetangga terdekat sangat bervariasi
dalam jarak mereka dan tetangga dekat lebih andal menunjukkan kelas objek.
Pendekatan yang lebih canggih, yang biasanya jauh kurang sensitif terhadap pilihan
dari k , beri bobot suara setiap objek berdasarkan jaraknya. Berbagai pilihan dimungkinkan; untuk
Misalnya, faktor berat sering dianggap sebagai kebalikan dari jarak kuadrat:
w i = 1 / d ( y , z ) 2 . Ini sama dengan mengganti langkah terakhir dari Algoritma 8.1 dengan

© 2009 oleh Taylor & Francis Group, LLC

Halaman 162

154 kNN: k-Tetangga Terdekat

- - - - - - -
- - - -
- + +
+ -
- -
- - -
- - + - +
+ -
- - + -
++ - + - -

https://translate.googleusercontent.com/translate_f 145/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
- + X
+ - - -X + - - + -X + +
- + + + + - +
+ -
- + -
- - -
- + - - + +
+ - - + -
+
+ - +
- - + - -
- - - -
- - - -

(a) Lingkungan sekitar juga (B) Lingkungan saja (c) Lingkungan sekitar juga
kecil. Baik. besar.

Gambar 8.1 k. Klasifikasi tetangga terdekat dengan kecil, sedang, dan besar k .

berikut:

Jarak-Weighted Voting: c z = argmax w i × I ( v = class ( c y )) (8.1)
v∈L
y∈N

Pilihan ukuran jarak adalah pertimbangan penting lainnya. Umumnya,


Pengukuran jarak Euclidean atau Manhattan digunakan [21]. Untuk dua poin, x dan y ,
dengan n atribut, jarak ini diberikan oleh rumus berikut:

√ n
√ ∑

d(x,y)= (xk-yk)2 Jarak Euclidean (8.2)
k=1



√ ∑n
√ |xk-yk|
d(x,y)= Jarak Manhattan (8.3)
k=1

di mana x k dan y k adalah k th atribut (komponen) dari x dan y masing-masing.


Meskipun ini dan berbagai tindakan lainnya dapat digunakan untuk menghitung jarak
antara dua titik, secara konseptual, ukuran jarak yang paling diinginkan adalah satu untuk
dimana jarak yang lebih kecil antara dua objek menyiratkan kemungkinan yang lebih besar untuk dimiliki
kelas yang sama. Jadi, misalnya, jika k NN diterapkan untuk mengklasifikasikan dokumen, maka
mungkin lebih baik menggunakan ukuran cosinus daripada jarak Euclidean. Catat itu
k NN juga dapat digunakan untuk data dengan kategori dan campuran kategori dan numerik
atribut selama ukuran jarak yang cocok dapat didefinisikan [21].
Beberapa langkah jarak juga dapat dipengaruhi oleh dimensi tinggi dari
data. Secara khusus, diketahui bahwa ukuran jarak Euclidean menjadi kurang
diskriminatif karena jumlah atribut meningkat. Atribut juga mungkin harus
diskalakan untuk mencegah langkah-langkah jarak didominasi oleh salah satu atribut.
Misalnya, pertimbangkan kumpulan data di mana ketinggian seseorang bervariasi dari 1,5 hingga 1,8 m,

© 2009 oleh Taylor & Francis Group, LLC

Halaman 163

8.3 Contoh 155

berat seseorang bervariasi dari 90 hingga 300 lb, dan penghasilan seseorang bervariasi
dari $ 10.000 hingga $ 1.000.000. Jika ukuran jarak digunakan tanpa penskalaan, pendapatan
atribut akan mendominasi perhitungan jarak, dan dengan demikian penugasan kelas
label.

8.2.3 Implementasi Perangkat Lunak


Algoritma 8.1 mudah diterapkan di hampir semua bahasa pemrograman. Namun,
bagian ini berisi panduan singkat untuk implementasi yang tersedia ini
https://translate.googleusercontent.com/translate_f 146/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
algoritma dan variasinya untuk mereka yang lebih suka menggunakan implementasi yang sudah ada.
Salah satu implementasi k NN yang paling mudah tersedia dapat ditemukan di Weka [26].
Fungsi utama yang menarik adalah IBk, yang pada dasarnya adalah Algoritma 8.1. Namun, IBk
juga memungkinkan Anda untuk menentukan beberapa pilihan pembobotan jarak dan opsi
untuk menentukan nilai k dengan menggunakan validasi silang.
Implementasi tetangga terdekat yang populer lainnya adalah PEBLS (Parallel Exemplar-
Sistem Pembelajaran Berbasis) [5,19] dari repositori CMU Artificial Intelligence [20].
Menurut situs tersebut, “PEBLS (Sistem Pembelajaran Berbasis Paralel Teladan) adalah a
sistem pembelajaran tetangga terdekat dirancang untuk aplikasi di mana instance memiliki
nilai fitur simbolik. "

8.3 Contoh
Pada bagian ini kami memberikan beberapa contoh penggunaan k NN. Untuk contoh-contoh ini,
kami akan menggunakan paket Weka yang dijelaskan di bagian sebelumnya. Secara khusus, kami menggunakan
Weka 3.5.6.
Untuk memulai, kami menerapkan k NN ke kumpulan data Iris yang tersedia dari UCI Machine
Learning Repository [2] dan juga tersedia sebagai file data sampel dengan Weka. Data ini
set terdiri dari 150 bunga yang terbagi rata di antara tiga spesies Iris: Setosa, Versicolor,
dan Virginica. Setiap bunga ditandai oleh empat pengukuran: panjang kelopak, kelopak
lebar, panjang sepal, dan lebar sepal.
Kumpulan data Iris diklasifikasikan menggunakan algoritma IB1, yang sesuai dengan
Algoritma IBk dengan k = 1. Dengan kata lain, algoritma ini melihat tetangga terdekat,
seperti yang dihitung menggunakan jarak Euclidean dari Persamaan 8.2. Hasilnya cukup bagus,
seperti yang dapat dilihat oleh pembaca dengan memeriksa matriks kebingungan 5 yang diberikan pada Tabel 8.1 .
Namun, penyelidikan lebih lanjut menunjukkan bahwa ini adalah kumpulan data yang cukup mudah untuk diklasifikasikan
karena spesies yang berbeda relatif terpisah dalam ruang data. Menggambarkan,
kami menunjukkan sebidang data sehubungan dengan panjang daun dan lebar daun pada Gambar 8.2 .
Ada beberapa pencampuran antara spesies Versicolor dan Virginica sehubungan dengan

5 Sebuah matriks kebingungan mentabulasikan bagaimana kelas aktual dari berbagai instance data (baris) dibandingkan dengan mereka
kelas prediksi (kolom).

© 2009 oleh Taylor & Francis Group, LLC

Halaman 164

156 kNN: k-Tetangga Terdekat

TABEL 8.1 Matriks kebingungan untuk Weka k NN


Pengklasifikasi IB1 pada Set Data Iris
Aktual / Diprediksi Setosa Versicolor Virginica
Setosa 50 0 0
Versicolor 0 47 3
Virginica 0 4 46

panjang dan lebar kelopaknya, tetapi selain itu spesiesnya terpisah dengan baik. Sejak
dua variabel lainnya, lebar sepal dan panjang sepal, tambahkan sedikit jika ada yang membedakan
informasi, kinerja dilihat dengan dasar k pendekatan NN adalah tentang yang terbaik kaleng yang
dicapai dengan k pendekatan NN atau, memang, pendekatan lain.

https://translate.googleusercontent.com/translate_f 147/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
Contoh kedua menggunakan set data ionosfer dari UCI. Objek data dalam hal ini
kumpulan data adalah sinyal radar yang dikirim ke ionosfer dan nilai kelas menunjukkan apakah
atau tidak, sinyal mengembalikan informasi tentang struktur ionosfer. Ada 34
atribut yang menggambarkan sinyal dan atribut 1 kelas. Algoritma IB1 diterapkan pada
set data asli memberikan akurasi 86,3% dievaluasi melalui sepuluh kali lipat validasi silang,
sedangkan algoritma yang sama diterapkan pada sembilan atribut pertama memberikan akurasi 89,4%.
Dengan kata lain, menggunakan lebih sedikit atribut akan memberikan hasil yang lebih baik. Matriks kebingungan adalah
diberikan di bawah. Menggunakan validasi silang untuk memilih jumlah tetangga terdekat yang memberi
akurasi 90,8% dengan dua tetangga terdekat. Matriks kebingungan untuk kasus-kasus ini
diberikan di bawah dalam Tabel 8.2 , 8.3, dan 8.4, masing-masing. Menambahkan bobot untuk terdekat
tetangga sebenarnya menghasilkan penurunan akurasi yang sederhana. Peningkatan terbesar adalah
karena mengurangi jumlah atribut.

2.5
Setosa
Versicolor
Virginica
1

1.5

1 kelopak
Lebar

0,5

0
1 2 3 4 5 6 7
Panjang petal

Gambar 8.2 Plot data Iris menggunakan panjang dan lebar kelopak.

© 2009 oleh Taylor & Francis Group, LLC

Halaman 165

8.4 Topik Tingkat Lanjut 157

TABEL 8.2 Matriks kebingungan untuk Weka k NN Classifier


IB1 pada Set Data Ionosphere Menggunakan Semua Atribut
Aktual / Diprediksi Sinyal bagus Sinyal buruk
Sinyal bagus 85 41
Sinyal buruk 7 218

8.4 Topik Tingkat Lanjut


Untuk mengatasi masalah yang berkaitan dengan fungsi jarak, sejumlah skema telah
dikembangkan yang mencoba untuk menghitung bobot setiap atribut individu atau yang lain
cara menentukan metrik jarak yang lebih efektif berdasarkan pada set pelatihan [13, 15].
Selain itu, bobot dapat ditugaskan ke objek pelatihan itu sendiri. Ini bisa
memberikan lebih banyak bobot pada objek pelatihan yang sangat andal, sekaligus mengurangi dampak
benda yang tidak bisa diandalkan. Sistem PEBLS oleh Cost dan Salzberg [5] adalah yang terkenal
contoh pendekatan semacam itu.
https://translate.googleusercontent.com/translate_f 148/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
Seperti yang disebutkan, k NN pengklasifikasi adalah pemalas, yaitu, model tidak dibangun explic-
tidak seperti pembelajar yang bersemangat (misalnya, pohon keputusan, SVM, dll.). Maka, membangun model
murah, tetapi mengklasifikasikan objek yang tidak dikenal relatif mahal karena memerlukan
perhitungan tetangga k- Nearest dari objek yang akan diberi label. Ini, secara umum,
membutuhkan penghitungan jarak objek yang tidak berlabel ke semua objek dalam
set beled, yang bisa mahal terutama untuk set pelatihan besar. Sejumlah
teknik, misalnya, metode akses multidimensi [12] atau perkiraan cepat mirip-
ity search [16], telah dikembangkan untuk perhitungan yang efisien dari tetangga k -nearest
jarak yang memanfaatkan struktur dalam data untuk menghindari keharusan menghitung jarak
ke semua objek di set pelatihan. Teknik-teknik ini, yang khususnya berlaku
untuk data dimensi rendah, dapat membantu mengurangi biaya komputasi tanpa mempengaruhi
akurasi klasifikasi. Paket Weka menyediakan pilihan beberapa
metode akses dimensi dalam rutinitas IBk-nya. (Lihat Latihan 4.)
Meskipun dasar k algoritma NN dan beberapa variasinya, seperti tertimbang
k NN dan menetapkan bobot ke objek, relatif terkenal, beberapa di antaranya
teknik-teknik canggih untuk k NN jauh kurang dikenal. Sebagai contoh, biasanya
mungkin untuk menghilangkan banyak objek data yang disimpan, tetapi masih mempertahankan klasifikasi
keakuratan classifier k NN. Ini dikenal sebagai "kondensasi" dan bisa sangat cepat
klasifikasi objek baru [14]. Selain itu, objek data dapat dihapus

TABEL 8.3 Matriks kebingungan untuk Weka k NN Classifier


IB1 pada Perangkat Data Ionosphere Menggunakan Sembilan Atribut Pertama
Aktual / Diprediksi Sinyal bagus Sinyal buruk
Sinyal bagus 100 26
Sinyal buruk 11 214

© 2009 oleh Taylor & Francis Group, LLC

Halaman 166

158 kNN: k-Tetangga Terdekat

TABEL 8.4 Matriks kebingungan untuk Weka k NN


Pengklasifikasi IBk pada Set Data Ionosphere Menggunakan
Sembilan Atribut Pertama dengan k = 2
Aktual / Diprediksi Sinyal bagus Sinyal buruk
Sinyal bagus 103 9
Sinyal buruk 23 216

meningkatkan akurasi klasifikasi, proses yang dikenal sebagai "pengeditan" [25]. Ada juga
telah banyak bekerja pada aplikasi grafik kedekatan (terdekat
grafik tetangga, pohon rentang minimum, grafik lingkungan relatif, Delaunay
triangulasi, dan grafik Gabriel) ke masalah k NN. Koran terbaru oleh Toussaint
[22-24], yang menekankan sudut pandang grafik kedekatan, memberikan ikhtisar pekerjaan
mengatasi ketiga bidang ini dan menunjukkan beberapa masalah terbuka yang tersisa.
Sumber daya penting lainnya termasuk pengumpulan makalah oleh Dasarathy [7] dan
buku karya Devroye, Gyorfi, dan Lugosi [8]. Juga, pendekatan fuzzy ke k NN bisa
ditemukan dalam karya Bezdek [4]. Akhirnya, daftar pustaka yang luas tentang hal ini adalah
juga tersedia online sebagai bagian dari Annotated Computer Vision Bibliography [18].

https://translate.googleusercontent.com/translate_f 149/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
8.5 Latihan
1. Unduh paket pembelajaran mesin Weka dari rumah proyek Weka-
halaman dan set data Iris dan ionosfer dari Pembelajaran Mesin UCI
Gudang. Ulangi analisis yang dilakukan dalam bab ini.
2. Buktikan bahwa kesalahan aturan tetangga terdekat dibatasi dua kali lipat
Kesalahan bayes berdasarkan asumsi masuk akal tertentu.
3. Buktikan bahwa kesalahan metode k NN umum mendekati secara asimptotik itu
dari kesalahan Bayes dan dapat digunakan untuk memperkirakannya.
4. Berbagai metode akses spasial atau multidimensi dapat digunakan untuk mempercepat
perhitungan tetangga terdekat. Untuk pohon kd, yang merupakan salah satu metode tersebut,
memperkirakan berapa penghematan yang akan terjadi. Komentar: Klasifikasi IBk Weka
Algoritme memungkinkan Anda menentukan metode untuk menemukan tetangga terdekat. Mencoba
ini pada salah satu set data UCI yang lebih besar, misalnya, memprediksi jenis kelamin pada
kumpulan data abalon.
5. Pertimbangkan kumpulan data satu dimensi yang ditunjukkan pada Tabel 8.5.

TABEL 8.5 Kumpulan Data untuk Latihan 5


x 1.5 2.5 3.5 4.5 5.0 5.5 5.75 6.5 7.5 10.5
y + + - - - + + - + +

© 2009 oleh Taylor & Francis Group, LLC

Halaman 167

Referensi 159

(a) Mengingat titik data yang tercantum dalam Tabel 8.5 , hitung kelas x = 5 . 5
menurut tetangga terdekatnya 1-, 3-, 6-, dan 9 (menggunakan suara terbanyak).
(B) Ulangi latihan sebelumnya, tetapi gunakan versi berbobot dari k NN yang diberikan
dalam Persamaan (8.1).

6. Komentar pada penggunaan k NN ketika dokumen dibandingkan dengan kosinus


ukuran, yang merupakan ukuran kesamaan, bukan jarak.
7. Diskusikan estimasi kepadatan kernel dan hubungannya dengan k NN.
8. Diberikan pengguna akhir yang menginginkan tidak hanya klasifikasi kasus yang tidak diketahui, tetapi
juga pemahaman tentang mengapa kasus-kasus diklasifikasi seperti apa adanya
metode klasifikasi yang Anda inginkan: pohon keputusan atau k NN?
9. Sampling dapat digunakan untuk mengurangi jumlah titik data dalam berbagai jenis
analisis data. Berikan komentar tentang penggunaan sampling untuk k NN.
10. Diskusikan bagaimana k NN dapat digunakan untuk melakukan klasifikasi ketika setiap kelas bisa
memiliki banyak label dan / atau kelas yang diatur dalam hierarki.

Ucapan Terima Kasih


Pekerjaan ini didukung oleh NSF Grant CNS-0551551, NSF ITR Grant ACI-0325949,
NSF Grant IIS-0308264, dan NSF Grant IIS-0713227. Akses ke fasilitas komputasi
ities disediakan oleh University of Minnesota Digital Technology Center dan
Institut Superkomputer.

https://translate.googleusercontent.com/translate_f 150/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

Referensi
[1] DW Aha, D. Kibler, dan MK Albert. Algoritma pembelajaran berbasis contoh.
Mach Belajar. , 6 (1): 37–66, Januari 1991.

[2] A. Asuncion dan D. Newman. Repositori Pembelajaran Mesin UCI, 2007.

[3] B. Bartsch-Spörl, M. Lenz, dan A. Hübner. Penalaran berbasis kasus — survei


dan arah masa depan. Dalam F. Puppe, editor, XPS-99: Berbasis Pengetahuan
Sistem — Survei dan Arah Masa Depan, Konferensi Jerman ke-5 tentang
Sistem Berbasis Pengetahuan , volume 1570 Catatan Kuliah di Ilmu Komputer
ence , Würzburg, Jerman, 3-5 Maret 1999. Springer.

[4] JC Bezdek, SK Chuah, dan D. Leep. Aturan tetangga k-terdekat umum.


Fuzzy Sets Syst. , 18 (3): 237–256, 1986.

[5] S. Cost dan S. Salzberg. Algoritma tetangga terdekat tertimbang untuk belajar
dengan fitur simbolis. Mach Belajar. , 10 (1): 57–78, 1993.

© 2009 oleh Taylor & Francis Group, LLC

Halaman 168

160 kNN: k-Tetangga Terdekat

[6] Cover dan P. Hart. Klasifikasi pola tetangga terdekat. Transaksi IEEE
tentang Teori Informasi , 13 (1): 21–27, Januari 1967.

[7] B. Dasarathy. Norma Tetangga Terdekat (NN): Teknologi Klasifikasi Pola NN


niques . Computer Society Press, 1991.

[8] L. Devroye, L. Gyorfi, dan G. Lugosi. Teori Probabilitas dari Pengenalan Pola
nisi . Springer-Verlag, 1996.

[9] RO Duda, PE Hart, dan DG Stork. Klasifikasi Pola (Edisi ke-2) .


Wiley-Interscience, November 2000.

[10] E. Perbaiki dan JJ Hodges. Analisis diskriminatif: Diskriminasi non-parametrik


bangsa: Properti konsistensi. Laporan teknis, Sekolah Penerbangan USAF
Kedokteran, 1951.

[11] E. Perbaiki dan JJ Hodges. Analisis diskriminatif: Diskrimina non-parametrik


tion: Kinerja sampel kecil. Laporan teknis, Sekolah Penerbangan USAF
Kedokteran, 1952.

[12] V. Gaede dan O. Günther. Metode akses multidimensi. ACM Comput.


Surv. , 30 (2): 170–231, 1998.

[13] E.-H. Han, G. Karypis, dan V. Kumar. Kategorisasi teks menggunakan bobot yang disesuaikan
k-klasifikasi tetangga terdekat. Dalam PAKDD '01: Prosiding ke-5 Pasifik-
Konferensi Asia tentang Penemuan Pengetahuan dan Penambangan Data , halaman 53–65,
London, Inggris, 2001. Springer-Verlag.

[14] P. Hart. Aturan tetangga terdekat yang kental. IEEE Trans. Memberitahu. , 14 (5): 515–
516, Mei 1968.

[15] T. Hastie dan R. Tibshirani. Diskriminan adaptif tetangga terdekat klasifikasi


tion. IEEE Trans. Pola Anal. Mach Intell. , 18 (6): 607–616, 1996.

[16] ME Houle dan J. Sakuma. Perkiraan kesamaan pencarian cepat di sangat


set data dimensi tinggi. Dalam ICDE '05: Prosiding Internasional ke-21
Konferensi Nasional tentang Rekayasa Data , halaman 619–630, Washington, DC,
2005. Masyarakat Komputer IEEE.

https://translate.googleusercontent.com/translate_f 151/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
[17] M. Kuramochi dan G. Karypis. Klasifikasi gen menggunakan profil ekspresi:
Studi kelayakan. Dalam BIBE '01: Prosiding IEEE Internasional ke-2
Simposium tentang Bioinformatika dan Bioteknologi , halaman 191, Washington, DC,
2001. Masyarakat Komputer IEEE.

[18] K. Price. Bibliografi klasifikasi tetangga terdekat. http: //www.visionbib.


com / bibliography / pattern621.html, 2008. Bagian dari Komputer Beranotasi
Bibliografi Visi.

[19] J. Rachlin, S. Kasif, S. Salzberg, dan DW Aha. Menuju pemahaman yang lebih baik
sistem penalaran berbasis memori. Dalam Konferensi Internasional tentang Mesin
Belajar , halaman 242–250, 1994.

© 2009 oleh Taylor & Francis Group, LLC

Halaman 169

Referensi 161

[20] S. Salzberg. PEBLS: Sistem pembelajaran berbasis teladan paralel. http: // www.
cs.cmu.edu/afs/cs/project/ai-repository/ai/areas/learning/systems/pebls/0.html,
1994

[21] P.-N. Tan, M. Steinbach, dan V. Kumar. Pengantar Minining Data . Pearson
Addison-Wesley, 2006.

[22] GT Toussaint. Grafik kedekatan untuk aturan keputusan tetangga terdekat: Terbaru
kemajuan. Dalam Interface-2002, Simposium ke-34 tentang Komputasi dan Statistik ,
Montreal, Kanada, 17-20 April 2002.

[23] GT Toussaint. Buka masalah dalam metode geometris untuk pembelajaran berbasis contoh
ing. Dalam Geometri Diskrit dan Komputasi , volume 2866 Catatan Kuliah
dalam Ilmu Komputer , halaman 273–283, 6–9 Desember 2003.

[24] GT Toussaint. Grafik kedekatan geometris untuk meningkatkan tetangga terdekat


metode pembelajaran berbasis contoh dan penambangan data. Int. J. Comput. Geometri
Appl. , 15 (2): 101–150, 2005.

[25] D. Wilson. Properti asimptotik dari aturan tetangga terdekat menggunakan data yang diedit.
IEEE Trans. Syst., Man, dan Sibernetika , 2: 408–421, 1972.

[26] IH Witten dan E. Frank. Penambangan Data: Alat Pembelajaran Mesin Praktis dan
Teknik, Edisi Kedua (Seri Morgan Kaufmann dalam Manajemen Data
Sistem) . Morgan Kaufmann, Juni 2005.

https://translate.googleusercontent.com/translate_f 152/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

© 2009 oleh Taylor & Francis Group, LLC

Halaman 171
170

Bab 9
Naıve Bayes

David J. Hand

Isi

9.1 Pendahuluan ................................................ ........... 163


9.2 Deskripsi Algoritma ............................................... .. 164
9.3 Kekuasaan Meskipun Independen ........................................... 167
9.4 Ekstensi Model ............................................. .. 169
9.5 Implementasi Perangkat Lunak .................................................. 171
9.6 Contoh ................................................ .............. 171
9.6.1 Contoh 1 ............................................. ......... 171
9.6.2 Contoh 2 ............................................. ......... 173
9.7 Topik Tingkat Lanjut ............................................... ........ 174
9.8 Latihan ................................................ .............. 175
Referensi ................................................. ................. 176

9.1 Pendahuluan
Diberikan satu set objek, masing-masing milik kelas yang dikenal, dan masing-masing
memiliki vektor variabel yang diketahui, tujuan kami adalah membuat aturan yang memungkinkan kami
untuk menetapkan objek masa depan ke kelas, diberikan hanya vektor variabel yang menggambarkan
benda masa depan. Masalah semacam ini, disebut masalah klasifikasi terbimbing ,
ada di mana-mana, dan banyak metode untuk membangun aturan seperti itu telah dikembangkan.
Salah satu metode yang sangat penting adalah metode naif Bayes — juga disebut Bayes idiot,
Bayes sederhana , dan Bayes kemerdekaan . Metode ini penting karena beberapa alasan,
termasuk yang berikut ini. Sangat mudah dibangun, tidak perlu rumit
skema estimasi parameter berulang. Ini berarti dapat dengan mudah diterapkan ke besar
set data. Mudah ditafsirkan, sehingga pengguna yang tidak memiliki keterampilan dalam teknologi pengklasifikasi dapat
memahami mengapa membuat klasifikasi yang dibuatnya. Dan, yang terpenting, itu
sering kali dengan sangat baik: Ini mungkin bukan klasifikasi terbaik yang diberikan
aplikasi, tetapi biasanya dapat diandalkan untuk menjadi kuat dan melakukannya dengan cukup baik. Untuk

https://translate.googleusercontent.com/translate_f 153/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
misalnya, dalam studi klasik awal yang membandingkan metode klasifikasi terawasi, Tit-
terington et al. (1981) menemukan bahwa model independensi menghasilkan keseluruhan terbaik
hasil, sementara Mani et al. (1997) menemukan bahwa model paling efektif dalam memprediksi

163

© 2009 oleh Taylor & Francis Group, LLC

Halaman 172

164 Naıve Bayes

kambuhnya kanker payudara. Banyak contoh lebih lanjut menunjukkan efektivitas yang mengejutkan
metode naïve Bayes tercantum dalam Hand and Yu (2001) dan lebih bersifat empiris
perbandingan, dengan hasil yang sama, diberikan dalam Domingos dan Pazzani (1997). Dari
Tentu saja, ada juga beberapa penelitian lain yang menunjukkan kinerja relatif lebih buruk
dari metode ini: Untuk penilaian komparatif dari studi tersebut, lihat Jamain dan
Hand (2008).
Untuk kenyamanan, sebagian besar bab ini akan menjelaskan kasus yang ada
hanya dua kelas. Faktanya, ini adalah kasus khusus yang paling penting karena banyak situasi
secara alami membentuk dua kelas (benar / salah, ya / tidak, baik / buruk, sekarang / tidak ada, dan sebagainya
di). Namun, kesederhanaan metode naif Bayes sedemikian rupa sehingga memungkinkan
generalisasi ke lebih dari dua kelas.
Memberi label pada kelas dengan i = 0 , 1, tujuan kami adalah menggunakan set awal objek yang
telah mengetahui keanggotaan kelas (dikenal sebagai set pelatihan) untuk menyusun skor semacam itu
bahwa skor yang lebih besar dikaitkan dengan objek kelas 1 (katakanlah) dan skor yang lebih kecil dengan
objek kelas 0. Objek baru kemudian diklasifikasikan dengan membandingkan skor mereka dengan a
"Ambang klasifikasi." Objek baru dengan skor lebih besar dari ambang akan
diklasifikasikan ke dalam kelas 1, dan objek baru dengan skor kurang dari ambang batas akan
diklasifikasikan ke dalam kelas 0.
Ada dua perspektif luas tentang klasifikasi terbimbing, yang disebut diagnostik
paradigma dan paradigma sampling . Paradigma diagnostik memfokuskan perhatian pada
perbedaan antara kelas-kelas — tentang diskriminasi antar kelas — sementara
paradigma pengambilan sampel memfokuskan perhatian pada distribusi individu kelas,
membandingkan ini untuk secara tidak langsung menghasilkan perbandingan antara kelas-kelas. Seperti yang kami tunjukkan
di bawah ini, metode Bayes naif dapat dilihat dari kedua perspektif.

9.2 Deskripsi Algoritma


Dimulai dengan paradigma sampling, tentukan P ( i | x ) menjadi probabilitas bahwa suatu
objek dengan vektor pengukuran x = ( x 1 , ..., x p ) milik kelas i , f ( x | i ) menjadi
distribusi bersyarat x untuk objek kelas i , P ( i ) menjadi probabilitas bahwa suatu objek
akan menjadi milik kelas i jika kita tidak tahu apa - apa tentang itu (probabilitas "sebelum" dari
kelas i ), dan f ( x ) menjadi distribusi campuran keseluruhan dari dua kelas:

f ( x ) = f ( x | 0) P (0) + f ( x | 1) P (1)

Jelas, estimasi P ( i | x ) itu sendiri akan membentuk skor yang cocok untuk digunakan dalam suatu kelas
aturan sifikasi. Kita perlu memilih beberapa probabilitas ambang yang sesuai untuk bertindak
sebagai ambang klasifikasi untuk menghasilkan klasifikasi. Sebagai contoh, sangat
mon menggunakan ambang 1/2, sehingga setiap objek baru ditugaskan ke kelas itu
diperkirakan sebagai yang paling mungkin berasal. Pendekatan yang lebih canggih dipertimbangkan
akun keparahan relatif dari berbagai jenis kesalahan klasifikasi ketika memilih
ambang batas.

https://translate.googleusercontent.com/translate_f 154/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

© 2009 oleh Taylor & Francis Group, LLC

Halaman 173

9.2 Deskripsi Algoritma 165

Sebuah aplikasi sederhana dari teorema Bayes menghasilkan P ( i | x ) = f ( x | i ) P ( i ) / f ( x ), dan untuk


memperoleh estimasi P ( i | x ) dari ini, kita perlu memperkirakan masing-masing P ( i ) dan masing-masing
dari f ( x | i ).
Jika set pelatihan adalah sampel acak sederhana yang diambil dari populasi keseluruhan
distribusi f ( x ), P ( i ) dapat diperkirakan secara langsung dari proporsi kelas i
objek dalam set pelatihan. Namun, kadang-kadang, set pelatihan diperoleh lebih banyak
cara yang rumit. Misalnya, dalam banyak masalah kelas tidak seimbang , dengan
satu jauh lebih besar dari yang lain (misalnya, dalam deteksi penipuan kartu kredit, hanya di mana
1 dari 1.000 transaksi mungkin curang; dalam deteksi penyakit langka, dimana rasionya
bahkan mungkin lebih ekstrim; dan seterusnya). Dalam kasus seperti itu, yang lebih besar dari dua kelas adalah
sering di-subsampled. Misalnya, mungkin hanya 1 dari 10 atau 1 dalam 100 dari kelas yang lebih besar
akan digunakan dalam set pelatihan. Jika ini masalahnya, maka perlu untuk memundurkan
proporsi yang diamati sederhana dalam pelatihan yang ditetapkan untuk menghasilkan estimasi P ( i ). Secara umum,
jika pengamatan tidak diambil sebagai sampel acak sederhana dari set pelatihan,
beberapa pemikiran perlu masuk ke cara terbaik untuk memperkirakan P ( i ).
Inti dari metode Bayes naif terletak pada metode untuk memperkirakan
f ( x | i ). Metode naive Bayes mengasumsikan bahwa n p komponen x adalah independen
lekukan dalam setiap kelas, sehingga f ( x | i ) = j=1 f ( x j | i ) —mempunyai nama alternatif
"kemerdekaan Bayes." Setiap distribusi marjinal univariat, f ( x j | i ),
j = 1 , ..., p ; i = 0 , 1, kemudian diperkirakan secara terpisah. Dengan cara ini, p dimen-
masalah multivariat nasional dikurangi menjadi p masalah estimasi univariat. Univariat
Perkiraannya biasa dan sederhana, dan membutuhkan ukuran pelatihan yang lebih kecil untuk diperoleh
estimasi akurat daripada estimasi distribusi multivarian.
Jika distribusi marginal f ( x j | i ) diskrit, dengan x j hanya mengambil beberapa nilai,
satu dapat memperkirakan masing-masing f ( x j | i ) dengan penduga tipe histogram multinomial sederhana.
Karena ini sangat mudah, ini adalah pendekatan yang sangat umum untuk naif
Bayes estimator, dan banyak implementasi mengadopsi pendekatan ini. Memang begitu
lugas bahwa banyak implementasi partisi setiap variabel kontinu (usia,
berat, pendapatan, dan sebagainya) ke dalam sel sehingga penduga tipe histogram multinomial
dapat dibangun untuk semua variabel. Sekilas, strategi ini mungkin terlihat
menjadi lemah. Lagi pula, itu artinya ada gagasan tentang kesinambungan antar tetangga
sel-sel histogram telah dikorbankan. Ini juga membutuhkan sel-sel yang cukup lebar
mengandung poin data yang cukup sehingga estimasi probabilitas akurat dapat diperoleh.
Di sisi lain, itu dapat dianggap sebagai menyediakan nonparametrik yang sangat umum
estimasi distribusi univariat, jadi hindari asumsi distribusi.
Secara khusus, ini adalah transformasi nonlinier, sehingga, misalnya, hubungannya
antara estimasi f ( x j | i ) tidak perlu monoton dalam x j .
Dengan biaya lebih banyak biaya komputasi (khususnya, dengan biaya kehilangan
prosedur penghitungan sederhana yang mendasari estimasi tipe histogram), dapat disesuaikan
model yang lebih rumit untuk marjinal univariat. Sebagai contoh, seseorang dapat berasumsi
bentuk parametrik tertentu untuk distribusi (mis. normal, lognormal, dan sebagainya)
dan mengestimasi parameter mereka dengan penaksir standar dan sangat akrab, atau orang bisa
mengadopsi penduga nonparametrik yang lebih canggih, seperti estimasi kerapatan kernel.
Meskipun ini mengorbankan kecepatan pendekatan histogram, ini kurang penting
di dunia modern di mana semua perhitungan akan dilakukan oleh mesin. Memiliki

© 2009 oleh Taylor & Francis Group, LLC

https://translate.googleusercontent.com/translate_f 155/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

Halaman 174

166 Naıve Bayes

mengatakan bahwa, ada alasan lain mengapa seseorang mungkin lebih suka menggunakan pendekatan histogram
berdasarkan pemaksaan semua variabel menjadi diskrit — yaitu menafsirkan hasil. Kita
bahas ini di bawah ini.
Asumsi independensi pada inti metode Bayes naif jelas a
yang kuat. Ini tidak mungkin benar untuk sebagian besar masalah nyata. (Seberapa sering diagonal
Matriks kovarian muncul dari data nyata dalam praktik?) A priori, maka, orang mungkin berharap
metode untuk melakukan yang buruk justru karena anggapan yang tidak masuk akal ini
pada intinya. Namun, faktanya adalah bahwa hal itu sering kali ternyata sangat baik secara praktis
aplikasi. Alasan untuk hasil berlawanan ini dibahas di bawah.
Sejauh ini kami telah mendekati metode Bayes naif dari paradigma sampling,
menggambarkannya berdasarkan estimasi distribusi bersyarat kelas terpisah
menggunakan asumsi penyederhanaan bahwa variabel di masing-masing distribusi ini
independen. Namun, keanggunan metode naif Bayes hanya benar-benar menjadi
jelas ketika kita perhatikan bahwa kita dapat memperoleh klasifikasi yang setara dengan di atas jika kita
menggunakan transformasi P ( i | x ) monotonik yang ketat , mentransformasikan klasifikasi
ambang dengan cara yang sama. Untuk melihat ini, perhatikan bahwa jika T adalah peningkatan monoton yang ketat
transformasi lalu

P ( i | x ) > P ( i | y ) ⇔ T ( P ( i | x )) > T ( P ( i | y ))

dan, khususnya, P ( i | x ) > t ⇔ T ( P ( i | x )) > T ( t ). Ini berarti bahwa jika t adalah klasifikasi
ambang kation dengan P ( i | x ) dibandingkan, kemudian membandingkan T ( P ( i | x )) dengan T ( t )
akan menghasilkan hasil klasifikasi yang sama. (Kami hanya akan menganggap peningkatan monoton
transformasi, meskipun ekstensi untuk transformasi penurunan monoton adalah
sepele.)
Salah satu transformasi monoton tersebut adalah rasio

P (1 | x ) / (1 - P (1 | x )) = P (1 | x ) / P (0 | x ) (9.1)

Menggunakan asumsi Bayes naif bahwa variabel dalam setiap kelas independen ∏ hlm
penyok, sehingga distribusi untuk kelas i memiliki bentuk f ( x | i ) = j = 1 f ( x j | i ), rasionya
P (1 | x ) / (1 - P (1 | x )) dapat ditulis ulang:
∏ hlm
∏hal
P (1 | x ) P (1) j = 1 f ( x j | 1) P (1) f ( x j | 1)
= ∏ hlm = (9.2)
1 - P (1 | x ) P (0) j = 1 f ( x j | 0) P (0) f ( x j | 0)
j=1

Transformasi log juga monotonik (dan kombinasi fungsi monotonik


menghasilkan fungsi monotonik) sehingga skor alternatif lain diberikan oleh
∑hal
P (1 | x ) P (1) f ( x j | 1)
dalam = ln + dalam (9.3)
1 - P (1 | x ) P (0) f ( x j | 0)
j=1

Jika kita mendefinisikan w j ( x j ) = ln ( f ( x j | 1) / f ( x j | 0)) dan k = ln { P (1) / ( P (0))} kita melihat bahwa
Persamaan (9.3) berbentuk jumlah sederhana
∑ hal
P (1 | x )
dalam =k+ wj(xj) (9,4)
1 - P (1 | x )
j=1

© 2009 oleh Taylor & Francis Group, LLC

https://translate.googleusercontent.com/translate_f 156/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

Halaman 175

9.3 Kekuasaan Meski Independen 167


∑p
kontribusi dari variabel yang terpisah. Karena skor S = k +
j=1wj( xj)
adalah estimasi langsung (transformasi monotonik) P (1 | x ), didasarkan pada
paradigma diagnostik. Kemudahan penafsiran sekarang menjadi jelas: Si naif
Model Bayes hanyalah sebuah jumlah nilai berubah dari baku x j nilai-nilai.
Dalam kasus ketika masing-masing variabel diskrit, atau dibuat diskrit dengan mempartisi itu
ke dalam sel, Persamaan (9,4) mengambil bentuk yang sangat sederhana. Misalkan variabel x j
(Kj) (Kj)
mengambil nilai di k j th sel variabel, dilambangkan x j . Lalu w j ( x j ) adalah secara sederhana
logaritma rasio proporsi: proporsi kelas 1 poin yang termasuk dalam
yang k j sel th variabel x j dibagi dengan proporsi kelas 0 poin yang jatuh ke dalam
(Kj)
yang k j sel th variabel x j . Ini w j ( x j ) disebut bobot bukti dalam beberapa
(Kj)
aplikasi: w j ( x j ) menunjukkan kontribusi variabel j terhadap total
skor, atau bukti yang mendukung objek milik kelas 1 yang disediakan oleh
yang j variabel th. Bobot bukti semacam itu berguna dalam mengidentifikasi variabel mana
penting dalam menugaskan objek tertentu ke kelas. (Ini sangat penting dalam beberapa hal
aplikasi, seperti penilaian kredit dalam perbankan pribadi, di mana hukum mensyaratkan itu
alasan harus diberikan jika permohonan pinjaman ditolak.)

9.3 Kekuasaan Meski Independen


Asumsi independensi x j dalam setiap kelas tersirat dalam naif
Model Bayes mungkin tampak terlalu membatasi. Bagaimanapun, seperti disebutkan di atas, variabelnya adalah
jarang mandiri dalam masalah nyata. Namun faktanya, berbagai faktor dapat muncul
bermain yang berarti bahwa anggapan itu tidak begitu merugikan seperti kelihatannya (Tangan
dan Yu, 2001).
Pertama, kompleksitas distribusi marginal p- univariat jauh lebih rendah dari itu
dari distribusi multivariat p -variate tunggal . Ini berarti jauh lebih sedikit titik data
diperlukan untuk mendapatkan akurasi yang diberikan di bawah model independensi daripada yang dibutuhkan
tanpa asumsi ini. Dengan kata lain, sampel yang tersedia akan mengarah pada estimasi
mator dengan varian yang lebih kecil jika seseorang siap untuk membatasi bentuk model dengan mengasumsikan
independensi variabel dalam kelas. Tentu saja, jika anggapan itu tidak benar,
maka ada risiko bias. Ini adalah manifestasi dari trade-off bias / varians klasik,
yang berlaku untuk semua pemodelan analisis data, dan tidak spesifik untuk Bayes naif
model.
Untuk mengurangi risiko bias yang timbul dari asumsi independensi, sederhana saja
modifikasi model naif Bayes dasar telah diusulkan. Untuk memahami
alasan di balik modifikasi ini, pertimbangkan kasus khusus di mana marginal
distribusi semua variabel adalah sama, dan ekstrem di mana variabel
berkorelasi sempurna. Ini berarti bahwa, untuk kelas tertentu, probabilitas bahwa
variabel x j th mengambil nilai r sama untuk semua variabel. Dalam hal ini berkorelasi sempurna

© 2009 oleh Taylor & Francis Group, LLC

Halaman 176

https://translate.googleusercontent.com/translate_f 157/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

168 Naıve Bayes

kasus, penaksir Bayes naif adalah


[ ] hal
P (1 | x ) P (1) f ( x k | 1)
=
P (0 | x ) P (0) f ( x k | 0)

sedangkan rasio peluang sebenarnya adalah

P (1 | x ) P (1) f ( x k | 1)
=
P (0 | x ) P (0) f ( x k | 0)

untuk setiap k ∈ {1 , ..., p }. Kita dapat melihat dari ini bahwa jika f ( x k | 1) / f ( x k | 0) lebih besar dari 1, maka
Kehadiran korelasi akan berarti bahwa penaksir Bayes naif cenderung melebih-lebihkan
P (1 | x ) / P (0 | x ), dan jika f ( x k | 1) / f ( x k | 0) kurang dari 1, kehadiran korelasi akan
berarti bahwa penaksir Bayes naif cenderung meremehkan P (1 | x ) / P (0 | x ). Ini
Fenomena segera menyarankan memodifikasi estimator Bayes naif dengan menaikkan
rasio f ( x k | 1) / f ( x k | 0) dengan daya kurang dari 1, untuk mengecilkan penaksir keseluruhan
menuju peluang sejati. Secara umum, ini menghasilkan estimator Bayes naif yang lebih baik

[ ]β
∏hal
P (1 | x ) f ( x | 1) P (1) P (1) f ( x j | 1)
= =
P (0 | x ) f ( x | 0) P (0) P (0) f ( x j | 0)
j=1

dengan β < 1. β biasanya dipilih dengan mencari lebih dari nilai yang mungkin dan memilih itu
yang memberikan hasil prediksi terbaik melalui metode seperti validasi silang.
Kita juga dapat melihat bahwa ini mengarah ke faktor penyusutan yang muncul sebagai koefisien
w j ( x j ) istilah dalam Persamaan (9.4).
Alasan kedua mengapa asumsi kemerdekaan tidak masuk akal
mungkin pada awalnya tampak adalah bahwa seringkali data mungkin telah menjalani pemilihan variabel awal
prosedur di mana variabel berkorelasi tinggi telah dihilangkan dengan alasan
bahwa mereka cenderung berkontribusi dalam cara yang mirip dengan pemisahan antar kelas.
Pikirkan metode pemilihan variabel dalam regresi linier, misalnya. Ini berarti
bahwa hubungan antara variabel yang tersisa mungkin diperkirakan
dengan kemerdekaan.
Alasan ketiga mengapa asumsi kemerdekaan mungkin tidak terlalu merugikan adalah karena itu
hanya keputusan yang penting. Sementara asumsi tersebut dapat menyebabkan estimasi yang buruk
probabilitas atau rasio P (1 | x ) / P (0 | x ), ini tidak selalu berarti
permukaan keputusan jauh dari (atau bahkan berbeda dari) permukaan keputusan yang sebenarnya.
Pertimbangkan, misalnya, situasi di mana kedua kelas memiliki multivarian normal
distribusi dengan matriks kovarians (nondiagonal) yang sama, dan dengan vektor
perbedaan antara cara berbaring sejajar dengan poros utama kovarians
matriks. Permukaan keputusan optimal adalah linear dan sama dengan kovarians sejati
matriks dan di bawah asumsi kemerdekaan.
Akhirnya, tentu saja, permukaan keputusan yang dihasilkan oleh model Bayes naif dapat di
Bahkan memiliki bentuk nonlinear rumit: Permukaan linear di w j ( x j ) tapi sangat
nonlinier dalam variabel asli x j , sehingga dapat cocok dengan permukaan yang cukup rumit.

© 2009 oleh Taylor & Francis Group, LLC

Halaman 177

9.4 Ekstensi Model 169

https://translate.googleusercontent.com/translate_f 158/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

9.4 Ekstensi Model


Kita telah melihat bahwa model naif Bayes seringkali sangat efektif. Ini juga memiliki
Kelebihan tunggal menjadi sangat mudah untuk dihitung, terutama jika versi variabel diskrit
digunakan. Ditambah dengan kemudahan pemahaman dan interpretasi model,
mungkin terutama dalam hal perspektif skor poin sederhana dalam Persamaan (9.4),
faktor-faktor ini menjelaskan mengapa ini digunakan secara luas. Namun, itu sangat sederhana, bersama dengan
fakta bahwa asumsi intinya sering kali tampak tidak realistis, telah mengarahkan banyak peneliti
untuk mengusulkan ekstensi itu dalam upaya untuk meningkatkan akurasi prediktifnya.
Kita telah melihat salah satu di atas, untuk memudahkan asumsi kemerdekaan
dengan mengecilkan estimasi probabilitas. Penyusutan juga telah diusulkan untuk ditingkatkan
estimasi multinomial sederhana dari proporsi objek yang jatuh ke masing-masing
kategori dalam kasus variabel prediktor diskrit. Jadi, jika prediktor j th diskrit
variabel, x j , memiliki kategori c r , dan jika n jr dari total objek n jatuh ke r th
kategori variabel ini, penduga multinomial biasa dari probabilitas bahwa a
−1
objek masa depan akan jatuh ke dalam kategori ini, n jr / n , digantikan oleh ( n jr + c
r) / ( n +1).
Penyusutan ini, yang juga kadang-kadang disebut koreksi Laplacian , juga memiliki a
penafsiran Bayesian langsung. Ini bisa bermanfaat jika ukuran sampel dan lebar selnya
sedemikian sehingga mungkin tidak ada banyak objek dalam sel.
Mungkin cara yang paling jelas untuk meredakan asumsi independensi adalah dengan memperkenalkan
mengurangi syarat tambahan dalam model distribusi x di setiap kelas, untuk memungkinkan
interaksi. Ini telah dicoba dalam banyak cara, tetapi semuanya perlu
membuat komplikasi, dan dengan demikian mengorbankan kesederhanaan dan keanggunan dasar
dari model Bayes naif. Secara khusus, jika interaksi antara dua variabel
dalam x harus dimasukkan dalam model, maka estimasi tidak dapat didasarkan hanya pada
marjinal univariat.
Dalam kelas ke- i , distribusi gabungan x adalah

f ( x | i ) = f ( x 1 | i ) f ( x 2 | x 1 , i ) f ( x 3 | x 1 , x 2 , i ) ... f ( x p | x 1 , x 2 , ..., x p −1 , i ) (9.5)

dan ini dapat diperkirakan dengan menyederhanakan probabilitas bersyarat. Ekstrem


muncul dengan f ( x j | x 1 , ..., x j −1 , i ) = f ( x j | i ) untuk semua j , dan ini adalah Bayes naif
metode. Namun, jelas model-model di antara kedua ekstrem ini dapat digunakan. Jika
variabel diskrit, satu dapat memperkirakan model yang sesuai, dengan derajat sewenang-wenang
interaksi termasuk, dengan menggunakan model log-linear. Untuk variabel kontinu, grafis
model dan literatur pada grafik independensi bersyarat sesuai. Sebuah
Contoh yang tepat dalam beberapa keadaan adalah model Markov

f ( x | i ) = f ( x 1 | i ) f ( x 2 | x 1 , i ) f ( x 3 | x 2 , i ) , ..., f ( x p | x p −1 , i ) (9,6)

Ini setara dengan menggunakan subset dari distribusi marginal dua arah, bukan
hanya distribusi marginal univariat dalam model Bayes naif.
Namun ekstensi lain menggabungkan model Bayes naif dengan metode pohon (misalnya, Langley,
1993), misalnya memecah populasi keseluruhan menjadi himpunan bagian atas dasar
nilai objek mengambil beberapa variabel dan kemudian pas model Bayes naif

© 2009 oleh Taylor & Francis Group, LLC

Halaman 178

170 Naıve Bayes

untuk setiap subset. Model seperti itu populer di beberapa aplikasi, di mana mereka dikenal
sebagai kartu skor tersegmentasi . Segmentasi adalah cara untuk memungkinkan interaksi yang mana
akan menyebabkan kesulitan jika model independensi keseluruhan tunggal dipasang.
Cara lain untuk menanamkan model Bayes naif dalam pendekatan tingkat yang lebih tinggi adalah dengan

https://translate.googleusercontent.com/translate_f 159/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
sarana berbagai sistem klasifikasi, misalnya, di hutan acak atau melalui peningkatan.
Ada hubungan yang sangat dekat antara model Bayes naif dan lainnya
model yang sangat penting untuk klasifikasi terbimbing: model regresi logistik.
Ini awalnya dikembangkan dalam komunitas statistik, dan sangat luas
digunakan dalam kedokteran, perbankan, pemasaran, dan bidang lainnya. Itu lebih kuat dari pada
model Bayes naif, tetapi kekuatan ekstra ini datang pada biaya tentu membutuhkan a
skema estimasi yang lebih rumit. Secara khusus, seperti yang akan kita lihat, meskipun memiliki
bentuk dasar yang sama menarik hanya sebagai model Bayes naif, parameter (misalnya,
(Kj)
yang w j ( xj )) tidak dapat diperkirakan hanya dengan menentukan proporsi, tetapi membutuhkan
algoritma berulang.
Dalam memeriksa model naif Bayes di atas, kami memperoleh dekomposisi
Persamaan (9.2) dengan mengadopsi asumsi independensi. Namun, persis sama
∏ hlm
struktur untuk
∏ hlm hasil rasio jika kita memodelkan f ( x | 1) dengan g ( x ) j = 1 h 1 ( x j ) dan f ( x | 0) oleh
g(x) j=1 h 0 ( x j ), di mana fungsi g ( x ) adalah sama di setiap model. Jika g ( x ) melakukannya
tidak pd menjadi produk komponen, satu untuk masing-masing baku x j , kita tidak
dengan asumsi independensi x j . Struktur ketergantungan yang tersirat dalam g ( x ) dapat
serumit yang kita mau — satu-satunya batasan adalah sama saja dalam keduanya
kelas; yaitu, bahwa g ( x ) adalah umum dalam faktorisasi f ( x | 1) dan f ( x | 0). Dengan
faktorisasi ini dari f ( x | i ), kita dapatkan
∏ hlm ∏ hlm
P (1 | x ) P (1) g ( x ) j=1 h1(xj) P (1) j=1 h1(xj)
= ∏ hlm = . ∏ hlm (9.7)
1 - P (1 | x ) P (0) g ( x ) j=1 h0(xj) P (0) j=1 h0(xj)

Karena ketentuan g ( x ) dibatalkan, kita dibiarkan dengan struktur yang identik dengan Persamaan (9.2),
meskipun h i ( x j ) tidak sama dengan f ( x j | i ) (kecuali g ( x ) ≡ 1). Perhatikan bahwa dalam hal ini
faktorisasi bahkan tidak perlu bahwa h i ( x j ) menjadi fungsi kepadatan
∏ hlm probabilitas.
Yang dibutuhkan hanyalah keseluruhan produk g ( x ) j = 1 h i ( x j ) adalah kepadatan.
Model dalam Persamaan (9.7) sesederhana model naif Bayes, dan perlu
bentuk yang persis sama. Secara khusus, dengan mengambil log kita berakhir dengan skor poin
model seperti dalam Persamaan (9.4). Tetapi model dalam Persamaan (9,7) lebih fleksibel daripada
model Bayes naif karena tidak menganggap kemerdekaan x j di setiap
kelas. Tentu saja, fleksibilitas ekstra yang cukup besar dari model regresi logistik ini
tidak diperoleh tanpa biaya. Meskipun bentuk model yang dihasilkan identik dengan
Bentuk model naif Bayes (dengan nilai parameter yang berbeda, tentu saja), tidak mungkin
Diperkirakan dengan melihat marginal univariat secara terpisah: Prosedur berulang
harus digunakan. Teks statistik standar (misalnya, Collett, 1991) memberikan algoritma untuk estimasi
mengawinkan parameter model regresi logistik. Seringkali proporsional berulang
metode weighted least square digunakan untuk menemukan parameter yang memaksimalkan
kemungkinan.
Versi model naif Bayes berdasarkan pada transformasi diskritisasi
mentah x j dapat digeneralisasi untuk menghasilkan ekstensi lainnya. Secara khusus, lebih umum

© 2009 oleh Taylor & Francis Group, LLC

Halaman 179

9.5 Implementasi Perangkat Lunak 171

kelas model aditif umum (Hastie dan Tibshirani, 1990) mengambil persis
bentuk kombinasi aditif transformasi x j .
Model naif Bayes sangat menarik karena kesederhanaannya, ele
gance, kekokohan, serta kecepatan model seperti itu dapat dibangun,
dan kecepatan penerapannya untuk menghasilkan klasifikasi. Itu adalah salah satu
algoritma klasifikasi formal tertua, namun bahkan dalam bentuknya yang paling sederhana seringkali
sangat efektif. Sejumlah besar modifikasi telah diperkenalkan, oleh
komunitas statistik, penambangan data, pembelajaran mesin, dan pengenalan pola, di
upaya untuk membuatnya lebih fleksibel, tetapi kita harus mengenali modifikasi tersebut
https://translate.googleusercontent.com/translate_f 160/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
tentu merupakan komplikasi, yang mengurangi kesederhanaan dasarnya.

9.5 Implementasi Perangkat Lunak


Kesederhanaan algoritma Bayes naif berarti bahwa, dalam bentuk dasarnya, telah
diimplementasikan secara luas, dan banyak versi gratis tersedia di Web. Itu
implementasi Weka open-source (http://www.cs.waikato.ac.nz/ml/weka/) memungkinkan
variabel individual yang akan dimodelkan oleh distribusi normal, oleh estimasi kernel,
atau dengan membaginya ke dalam kategori diskrit.
Mungkin ada baiknya membuat komentar peringatan. Istilah Bayesian memiliki tujuh
erasi berbagai interpretasi yang berbeda, dan kini sering digunakan dalam frasa “naıve Bayes clas-
sifier ”dapat menyesatkan orang yang tidak waspada. Secara khusus, "jaringan Bayesian" lebih umum
kelas model, yang termasuk model Bayes naif sebagai kasus khusus, tetapi yang
umumnya juga memungkinkan berbagai interaksi dimasukkan dalam model. Contoh dari
jenis-jenis kebingungan yang dapat menyebabkan ini dijelaskan dalam Jamain and Hand (2005).

9.6 Contoh
9.6.1 Contoh 1
Untuk mengilustrasikan prinsip-prinsip metode Bayes naif, pertimbangkan set data buatan
ditunjukkan pada Tabel 9.1. Tujuannya adalah untuk menggunakan data ini sebagai set pelatihan untuk membangun aturan
yang akan memungkinkan prediksi variabel D untuk pelanggan masa depan, di mana D adalah default
pinjaman bank (kolom terakhir, berlabel 1 untuk default dan 0 untuk tidak rusak). Variabelnya
yang akan digunakan untuk prediksi adalah kolom 1 hingga 3: waktu dengan majikan saat ini,
T , dalam tahun; ukuran pinjaman yang diminta, S , dalam dolar; dan H , apakah pemohon adalah a
pemilik rumah (1), penyewa sewa (2), atau "lainnya" (3). Faktanya, metode naif Bayes adalah a
pendekatan umum untuk masalah gagal bayar kredit semacam ini, meskipun biasanya demikian
aplikasi set pelatihan akan berisi ratusan ribu akun dan akan
gunakan lebih banyak variabel, dan metode Bayes naif akan digunakan sebagai daun dalam a
scorecard tersegmentasi dari jenis yang dijelaskan di atas.

© 2009 oleh Taylor & Francis Group, LLC

Halaman 180

172 Naıve Bayes

TABEL 9.1 Data untuk Contoh 1


Waktu dengan Emp, T Ukuran Pinjaman, Pemilik Rumah S , H Default, D

5 10.000 1 0
20 10.000 1 0
1 25.000 1 0
1 15.000 3 0
15 2.000 2 0
6 12.000 1 0
1 5.000 2 1
12 8.000 2 1
3 10.000 1 1
1 5.000 3 1

https://translate.googleusercontent.com/translate_f 161/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

Waktu dengan majikan adalah variabel kontinu. Untuk masing-masing dari dua kelas secara terpisah,
kita dapat memperkirakan distribusi f ( T | i ), i = 0 , 1 menggunakan metode kernel atau beberapa
diasumsikan bentuk parametrik (lognormal mungkin akan menjadi pilihan yang masuk akal untuk a
variabel), atau kita bisa menggunakan pendekatan Bayes naif di mana variabel dibagi menjadi
sel, memperkirakan probabilitas jatuh di setiap sel dengan proporsi kasus dari
kelas i yang termasuk dalam sel itu. Kami akan mengambil pendekatan ketiga ini dan, untuk menjaga semuanya tetap
sesederhana mungkin, akan memecah T menjadi hanya dua sel, apakah pelanggan memiliki atau tidak
telah bersama majikan selama 10 tahun atau lebih. Ini menghasilkan estimasi probabilitas

F ( T < 10 | D = 0) = 4 / 6 , F ( T ≥ 10 | D = 0) = 2 / 6

F ( T < 10 | D = 1) = 3 / 4 , F ( T ≥ 10 | D = 1) = 1 / 4

Demikian pula, kita akan melakukan hal yang sama dengan ukuran pinjaman, membaginya menjadi adil
dua sel (murni untuk kenyamanan penjelasan) sesuai dengan interval ≤ 10.000
dan > 10.000. Ini menghasilkan estimasi probabilitas

F ( S ≤ 10000 | D = 0) = 3 / 6 , F ( S> 10000 | D = 0) = 3 / 6


F ( S ≤ 10000 | D = 1) = 3 / 4 , F ( S> 10000 | D = 1) = 1 / 4

Untuk kelas bukan penumpang, kolom pemilik rumah menghasilkan tiga perkiraan
bilities:

F ( H = 1 | D = 0) = 4 / 6 , F ( H = 2 | D = 0) = 1 / 6 , F ( H = 3 | D = 0) = 1 / 6

Untuk kelas yang mangkir, probabilitas masing-masing adalah

F ( H = 1 | D = 1) = 1 / 4 , F ( H = 2 | D = 1) = 2 / 4 , F ( H = 3 | D = 1) = 1 / 4

Misalkan sekarang formulir aplikasi baru diterima, dari pelamar yang memiliki
telah dengan dia (frasa ini dipilih dengan sengaja: Adalah ilegal untuk menggunakan seks sebagai
seorang peramal untuk membuat keputusan pinjaman seperti ini.) pemberi kerja selama kurang dari 10 tahun

© 2009 oleh Taylor & Francis Group, LLC

Halaman 181

9.6 Contoh 173

( T < 10), sedang mencari pinjaman sebesar $ 10.000 ( S ≤ 10.000), dan merupakan pemilik rumah ( H = 1).
Ini mengarah ke perkiraan nilai rasio P (1 | x ) / P (0 | x ) dari
∏hal F ( x j | 1) F ( T | 1) f ( S | 1) f ( H | 1)
P (1 | x ) P (1) P (1)
= = ×
P (0 | x ) P (0) F ( x j | 0) P (0) F ( T | 0) f ( S | 0) f ( H | 0)
j=1

4 / 10 3/4×3/4×1/4
= × = 0 . 422
6 / 10 4/6×4/6×3/6×4/6

Karena P (1 | x ) = 1− P (0 | x ), ini setara dengan P (1 | x ) = 0 . 296 dan P (0 | x ) = 0 . 703.


Jika ambang klasifikasi adalah 0,5 [yaitu, jika kami memutuskan untuk mengklasifikasikan pelanggan dengan
vektor x ke kelas 1 jika P (1 | x ) > 0 . 5 dan ke kelas 0 sebaliknya], maka pelanggan ini akan melakukannya
diklasifikasikan sebagai kemungkinan termasuk dalam kelas 0 — kelas nondefaulter. Pelanggan ini
akan menjadi taruhan yang baik untuk membuat pinjaman.

9.6.2 Contoh 2
Domain aplikasi yang penting dan relatif baru untuk metode Bayes naif adalah
penyaringan spam. Spam adalah tanpa diminta dan biasanya email yang tidak diinginkan, seringkali langsung

https://translate.googleusercontent.com/translate_f 162/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
semacam pemasaran dan sering menawarkan keuangan yang meragukan atau peluang lainnya.
peluang. Beberapa dari mereka disebut latihan phishing . Prinsip di belakang mereka
adalah bahwa bahkan tingkat respons yang rendah akan menguntungkan jika (a) biaya pengiriman email adalah
dapat diabaikan dan (b) cukup dikirim. Karena mereka dikirim secara otomatis ke jutaan
alamat email, seseorang dapat menerima ratusan ini setiap hari. Dengan nomor ini
ber, bahkan untuk memindahkan kursor dan secara fisik menekan tombol delete akan mengkonsumsi
jumlah waktu yang signifikan. Untuk alasan ini para peneliti telah mengembangkan klasifikasi
aturan yang disebut filter spam , yang memeriksa email yang masuk, dan menetapkannya untuk spam
atau bukan-spam kelas. Mereka yang ditugaskan ke kelas spam dapat dihapus secara otomatis,
atau dikirim ke file memegang untuk pemeriksaan nanti, atau diperlakukan dengan cara lain yang dianggap
sesuai.
Model Naıve Bayes sangat populer untuk digunakan sebagai filter spam, kembali ke Internet
pekerjaan mani awal oleh Sahami et al. (1998). Dalam bentuk paling sederhana, variabel dalam
model adalah variabel biner yang sesuai dengan ada atau tidaknya, dalam email,
dari setiap kata. Namun, model Bayes naif juga memungkinkan penambahan siap pakai lainnya
variabel biner yang sesuai dengan ada atau tidak adanya fitur sintaksis lainnya
seperti tanda baca, satuan mata uang ($, £, €, dan sebagainya), kombinasi kata,
apakah sumber email itu seorang individu atau daftar, dan sebagainya. Selain itu, lainnya
variabel non-biner berguna sebagai prediktor lebih lanjut, misalnya, tipe domain
dari sumber, persentase karakter nonalphanumeric dalam judul subjek,
dan seterusnya. Dari penjelasan di atas akan jelas bahwa jumlah variabel potensial adalah
sangat besar. Karena itu, langkah pemilihan fitur biasanya dilakukan (recall
pembahasan mengapa model naif Bayes dapat dilakukan dengan baik, meskipun mendasarinya
asumsi independensi).
Salah satu aspek penting dari penyaringan spam adalah ketidakseimbangan dalam keparahan
biaya kesalahan klasifikasi. Kesalahan klasifikasi pada email yang sah karena spam jauh lebih berbahaya
rious daripada sebaliknya. Baik ini maupun ukuran relatif dari kedua kelas memainkan peran dalam

© 2009 oleh Taylor & Francis Group, LLC

Halaman 182

174 Naıve Bayes

menentukan ambang klasifikasi. Dalam eksperimen mereka, Sahami et al. (1998)


pilih ambang 0,999 untuk membandingkan P (spam | x ).
Salah satu kekuatan dari model Bayes naif adalah bahwa ia dapat dengan mudah diterapkan
menghitung variabel untuk variabel biner. Filter spam biner multivarian dijelaskan
di atas mudah diperluas ke model yang lebih rumit untuk distribusi nilai
dari variabel. Kami telah merujuk pada penggunaan model multinomial sebelumnya.
lier, di mana variabel kontinu dipartisi menjadi lebih dari dua sel (dan
variabel pemilik rumah dalam data buatan Contoh 1 adalah kasus trinomial
variabel). Eksperimen menunjukkan bahwa, setidaknya untuk penyaringan spam, aplikasi multinomial
Proach menggunakan frekuensi kemunculan kata di email lebih baik daripada hanya menggunakan
variabel ada / tidaknya. Metsis et al. (2006) melakukan analisis komparatif
versi berbeda dari model Bayes naif, di mana variabel marginal adalah
diperlakukan dengan cara yang berbeda, menerapkan metode ke beberapa set data email nyata.

9.7 Topik Tingkat Lanjut


Daya tarik utama dari model Bayes naif adalah kesederhanaannya yang ekstrem, yang memungkinkannya mudah
Estimasi (univariat) dan interpretasi langsung melalui bobot bukti.
Yang pertama dari properti ini juga dikaitkan dengan ketahanan, asalkan perkiraan
distribusi marjinal kuat. Khususnya, jika distribusi marjinal

https://translate.googleusercontent.com/translate_f 163/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
kategorikal, maka setiap sel perlu mengandung poin data yang cukup untuk menghasilkan yang akurat
perkiraan. Dengan pemikiran ini, para peneliti telah mengeksplorasi partisi optimal masing-masing
variabel. Pendekatannya, sebagian besar selaras dengan estimator Bayes naif langsung,
adalah untuk memeriksa setiap variabel secara terpisah — mungkin membelah menjadi kuantil yang sama (ini
umumnya lebih unggul daripada pemisahan menjadi sel-sel dengan panjang yang sama). Pendekatan yang lebih canggih
akan memilih sel berdasarkan nomor relatif dari setiap kelas di setiap sel. Ini
dapat juga dilakukan dengan mempertimbangkan masing-masing variabel secara terpisah. Akhirnya, seseorang dapat mempartisi
setiap sel dengan mempertimbangkan kesesuaian keseluruhan dengan distribusi di setiap (atau keduanya) kelas,
tetapi ini menjauh dari pendekatan marginal sederhana. Investigasi beberapa
masalah-masalah ini dijelaskan dalam Hand dan Adams (2000).
Data yang hilang adalah masalah potensial dalam semua analisis data. Metode klasifikasi
yang tidak dapat menangani data yang tidak lengkap berada pada posisi yang kurang menguntungkan. Saat data hilang
sepenuhnya secara acak, maka model naif Bayes berupaya tanpa kesulitan:
Estimasi yang valid diperoleh dengan hanya memperkirakan distribusi marginal dari
data yang diamati. Namun, jika data hilang secara informatif, maka lebih rumit
prosedur diperlukan. Ini adalah area yang membutuhkan penelitian lebih lanjut.
Semakin banyak masalah melibatkan data dinamis, dan set data yang berurutan
bertambah. Metode Bayes naif dapat diadaptasi dengan sangat mudah untuk masalah seperti itu, oleh
berdasarkan estimasi langsungnya.
Masalah yang disebut "kecil n , besar p " telah menjadi penting di area tertentu, seperti itu
sebagai bioinformatika, genomik, dan proteomik, terutama dalam analisis microarray
data. Ini adalah masalah yang ditandai oleh fakta bahwa jumlah variabel

© 2009 oleh Taylor & Francis Group, LLC

Halaman 183

9.8 Latihan 175

jauh lebih besar dari ukuran sampel. Masalah seperti itu menimbulkan kesulitan; misalnya,
matriks kovarians akan tunggal, mengarah ke overfitting. Untuk mengatasi masalah seperti itu,
perlu untuk membuat beberapa jenis asumsi atau (ekuivalen) untuk menyusutkan
penaksir dalam beberapa cara. Salah satu pendekatan untuk masalah tersebut dalam konteks diawasi
Klasifikasi adalah dengan menggunakan metode naif Bayes. Ini memiliki asumsi bawaan
independensi, yang bertindak untuk melindungi dari overfitting. Versi yang lebih rumit dari
ide ini menggabungkan model Bayes naif dengan pengklasifikasi yang lebih canggih, mencoba
mencapai keseimbangan terbaik.

9.8 Latihan
1. Menggunakan paket seperti paket open-source R, buat sampel ukuran
100 dari masing-masing dua kelas. Kelas 1 adalah bivariat normal, dengan nol berarti
dan matriks kovarian identitas. Kelas 2 adalah normal bivariat, dengan vektor rata-rata
(0, 2) dan matriks kovarians diagonal dengan leading diagonal (1, 2). Paskan naif
Bayes memodelkan data ini, berdasarkan asumsi (benar) bahwa marginal
distribusi normal. Plot permukaan keputusan untuk melihat bahwa itu tidak linier.
2. Tabel di bawah ini menunjukkan distribusi bivariat dari sampel untuk dua kelas,
dimana variabel masing-masing memiliki tiga kategori. Tunjukkan bahwa kedua variabel tersebut adalah
independen di masing-masing dari dua kelas. Mengambil ambang klasifikasi sebagai
1/2, hitung permukaan keputusan untuk classifier Bayes naif dan perlihatkan itu
adalah nonlinier.

144 144 144

https://translate.googleusercontent.com/translate_f 164/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
144 144 144
144 144 144

9 90 9
90 900 90
9 90 9

3. Untuk data dari Latihan 2, hitung bobot bukti untuk kategorinya


dari setiap variabel, sehingga classifier naif Bayes dapat dinyatakan sebagai tertimbang
jumlah.
4. Tabel di bawah ini menunjukkan distribusi bivariat dari sampel untuk dua kelas,
dimana variabel masing-masing memiliki tiga kategori. Tunjukkan bahwa kedua variabel tersebut adalah
tidak mandiri di masing-masing dari dua kelas. Mengambil ambang klasifikasi
sebagai 1/2, paskan pengklasifikasi Bayes naif dengan data ini dan tunjukkan bahwa bagaimanapun
permukaan keputusan optimal.

© 2009 oleh Taylor & Francis Group, LLC

Halaman 184

176 Naıve Bayes

27 30 27
30 2700 30
27 30 27

432 48 432
48 432 48

432 48 432

5. Menggunakan data yang disimulasikan dari distribusi normal multivariat, bandingkan hubungan
kinerja asli dari classifier Bayes naif dan diskriminan linier sederhana
aturan klasifikasi sebagai korelasi (diasumsikan umum) antara variabel
meningkat.
6. Menggunakan set data yang sesuai dari Repositori Pembelajaran Mesin UCI, dengan
variabel kontinu yang dipartisi menjadi sel diskrit, selidiki
efek mengubah jumlah dan lebar sel di setiap variabel.
7. Menggunakan set data yang sama seperti pada Latihan 6, bandingkan model yang diproduksi oleh
klasifikasi naif Bayes dan regresi logistik.
8. Cara umum untuk memperpanjang classifier naif Bayes di beberapa aplikasi adalah
untuk mempartisi data menjadi segmen-segmen, dengan konverter pengklasifikasi naif Bayes terpisah
terstruktur untuk setiap segmen. Jelas partisi seperti itu akan paling efektif jika
pemisahannya memungkinkan interaksi yang tidak akan dipilih oleh classifier Bayes naif
naik. Kembangkan pedoman untuk membantu orang dalam membuat perpecahan seperti itu.
9. Ide pemodelan distribusi masing-masing kelas dengan mengasumsikan independensi
langsung meluas ke lebih dari dua kelas. Selama lebih dari dua kelas tulis
bawah model klasifikasi yang sesuai dalam bobot format bukti.
10. Salah satu daya tarik utama dari pengklasifikasi naïve Bayes adalah izinnya
estimasi yang sangat sederhana. Kembangkan aturan pembaruan yang memungkinkan pengklasifikasi

https://translate.googleusercontent.com/translate_f 165/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
diperbarui secara berurutan saat data baru tiba.

Referensi
Collett D. (1991) Pemodelan Data Biner . London: Chapman and Hall.

Domingos P. dan Pazzani M. (1997) Tentang optimalisasi classifier Bayesian sederhana


di bawah nol-satu kerugian. Pembelajaran Mesin , 29 , 103–130.

Hand DJ dan Adams NM (2000) Mendefinisikan atribut untuk konstruksi scorecard.


Jurnal Statistik Terapan , 27 , 527–540.

© 2009 oleh Taylor & Francis Group, LLC

Halaman 185

Referensi 177

Hand DJ dan Yu K. (2001) Idiot's Bayes — sama sekali tidak sebodoh itu? Internasional
Tinjauan Statistik , 69 , 385–398.

Hastie TJ dan Tibshirani RJ (1990) Generalized Additive Models . London:


Chapman dan Hall.

Jamain A. dan Hand DJ (2005) Misteri naif Bayes: Seorang detektif statistik
cerita. Pattern Recognition Letters , 26 , 1752–1760.

Jamain A. dan Hand DJ (2008) Penambangan kinerja klasifikasi diawasi


Studi: Investigasi meta-analitik. Jurnal Klasifikasi , 25 , 87-112.

Langley P. (1993) Induksi pengklasifikasi Bayesian rekursif. Prosiding dari


Konferensi Eropa Kedelapan tentang Pembelajaran Mesin , Wina, Austria: Springer-
Verlag, 153–164.

Mani S., Pazzani MJ, dan West J. (1997) Penemuan pengetahuan dari kanker payudara
basis data. Catatan Kuliah di Inteligensi Buatan , 1211 , 130–133.

Metsis V., Androutsopoulos I., dan Paliouras G. (2006) Penyaringan spam dengan naıve
Bayes — Bayes mana yang naif? CEAS 2006 — Konferensi Ketiga tentang Email dan Anti-
Spam , Mountain View, California.

Sahami M., Dumains S., Heckerman D., dan Horvitz E. (1998) Pendekatan Bayesian
untuk memfilter email sampah. Dalam Pembelajaran untuk Kategorisasi Teks — Makalah dari AAAI
Workshop , Madison, Wisconsin, hlm. 55–62.

Titterington DM, Murray GD, Murray LS, Spiegelhalter DJ, Skene AM,
Habbema JDF, dan Gelpke GJ (1981) Perbandingan teknik diskriminasi
diterapkan pada kumpulan data yang kompleks dari pasien yang mengalami cedera kepala. Jurnal Statistik Kerajaan-
tical Society, Seri A , 144 , 145–175.

https://translate.googleusercontent.com/translate_f 166/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

© 2009 oleh Taylor & Francis Group, LLC

Halaman 187
186

Bab 10
CART: Pohon Klasifikasi dan Regresi

Dan Steinberg

Isi

10.1 Anteseden ................................................. ........ 180


10.2 Tinjauan Umum ................................................. .......... 181
10.3 Contoh Lari ................................................... .. 181
10.4 Algoritma Secara Singkat Disebut ........................................ 183
10.5 Aturan Pemisahan .................................................... ...... 185
10.6 Probabilitas Sebelumnya dan Penyeimbangan Kelas ................................... 187
10.7 Penanganan Nilai Hilang ............................................. 189
10.8 Pentingnya Atribut ................................................ 190
10.9 Konstruksi Fitur Dinamis ....................................... 191
10.10 Pembelajaran Sensitif Biaya ............................................. 192
10.11 Menghentikan Aturan, Pemangkasan, Urutan Pohon, dan Pemilihan Pohon ......... 193
10.12 Pohon Probabilitas ............................................... ..... 194
10.13 Yayasan Teoritis ............................................. 196
10.14 Penelitian Terkait Pasca-Cartel ........................................ 196
10.15 Ketersediaan Perangkat Lunak ............................................... . 198
10.16 Latihan ................................................ ............ 198
Referensi ................................................. ................. 199

Monografi 1984, "CART: Klasifikasi dan Pohon Regresi," ditulis bersama oleh
Leo Breiman, Jerome Friedman, Richard Olshen, dan Charles Stone (BFOS), mewakili
menjadi tonggak utama dalam evolusi kecerdasan buatan, pembelajaran mesin,
statistik nonparametrik, dan penambangan data. Pekerjaan itu penting untuk kompetensi
kehebatan studi tentang pohon keputusan, inovasi teknis yang diperkenalkan, itu
contoh-contoh canggih dari analisis data terstruktur pohon, dan perlakuan otoritatifnya
teori sampel besar untuk pohon. Sejak diterbitkan, monograf CART telah
dikutip sekitar 3.000 kali menurut indeks kutipan sains dan ilmu sosial;
Google Cendekia melaporkan sekitar 8.450 kutipan. Kutipan CART dapat ditemukan di hampir

https://translate.googleusercontent.com/translate_f 167/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
domain apapasar
pemodelan pun, dengan banyak
keuangan, yang
teknik muncul
elektro, di bidang
kontrol seperti
kualitas, risikokimia,
biologi, kredit, pemasaran bertarget, fi-
dan penelitian medis klinis. CART juga sangat memengaruhi kompresi gambar

179

© 2009 oleh Taylor & Francis Group, LLC

Halaman 188

180 CART: Pohon Klasifikasi dan Regresi

melalui kuantisasi vektor terstruktur pohon. Akun singkat ini dimaksudkan untuk memperkenalkan
Dasar-dasar CART, menyentuh pada tema-tema utama yang diperlakukan dalam monograf CART, dan untuk
mendorong pembaca untuk kembali ke sumber asli yang kaya untuk perincian teknis, diskusi
Sion mengungkapkan proses pemikiran penulis, dan contoh analitis mereka
gaya.

10.1 Anteseden
CART bukan pohon keputusan pertama yang diperkenalkan dengan pembelajaran mesin, meskipun
ini adalah yang pertama dijelaskan dengan ketelitian analitis dan didukung oleh kecanggihan
statistik dan teori probabilitas. CART secara eksplisit melacak leluhurnya ke
pohon deteksi interaksi matic (AID) Morgan dan Sonquist (1963), otomatis
metode rekursif untuk mengeksplorasi hubungan dalam data yang dimaksudkan untuk meniru itera-
T-drill-down khas dari berlatih analis data survei. AID diperkenalkan sebagai
alat yang berpotensi bermanfaat tanpa landasan teori. Era 1960-an ini bekerja
pohon disambut dengan skeptisisme yang mendalam di tengah-tengah bukti bahwa AID dapat secara radikal
menyesuaikan data pelatihan dan mendorong kesimpulan yang sangat menyesatkan (Einhorn,
1972; Doyle, 1973), terutama dalam sampel yang lebih kecil. Pada tahun 1973 ahli statistik yang banyak membaca
yakin bahwa pohon adalah jalan buntu; kebijaksanaan konvensional menyatakan bahwa pohon
adalah alat yang berbahaya dan tidak dapat diandalkan terutama karena kurangnya teori
dasar. Namun, peneliti lain belum siap untuk meninggalkan pohon itu
garis pemikiran. Karya Cover dan Hart (1967) pada properti sampel besar
dari tetangga terdekat (NN) pengklasifikasi berperan penting dalam membujuk Richard Olshen
dan Jerome Friedman bahwa pohon-pohon memiliki kemampuan teoretis yang cukup untuk layak dikejar.
ing. Olshen beralasan bahwa jika pengklasifikasi NN dapat mencapai Sampul dan Hart terikat
pada kesalahan klasifikasi kesalahan, maka hasil serupa harus dapat diturunkan untuk yang sesuai
membangun pohon karena simpul terminal pohon dapat dipandang sebagai dinamisasi-
membangun pengklasifikasi NN. Dengan demikian, penelitian Cover and Hart NN adalah
stimulus segera yang membujuk Olshen untuk menyelidiki sifat asimptotik dari
pohon. Secara kebetulan, algoritma Friedman bekerja pada identifikasi cepat terdekat
tetangga melalui pohon (Friedman, Bentley, dan Finkel, 1977) menggunakan partisi rekursif-
Mekanisme yang berkembang menjadi CART. Satu pendahulu dari CART muncul di jendela
1975 Stanford Linear Accelerator Center (SLAC) makalah diskusi (Friedman, 1975),
kemudian diterbitkan dalam bentuk yang lebih pendek oleh Friedman (1977). Sementara Friedman
mengerjakan elemen-elemen kunci CART di SLAC, dengan Olshen melakukan mathemat-
Penelitian ical di lab yang sama, penelitian independen serupa sedang berlangsung di Los
Angeles oleh Leo Breiman dan Charles Stone (Breiman and Stone, 1978). Keduanya
untaian penelitian terpisah (Friedman dan Olshen di Stanford, Breiman dan Stone)
di Los Angeles) dipertemukan pada tahun 1978 ketika empat penulis CART meninggalkan
mally memulai proses menggabungkan pekerjaan mereka dan bersiap untuk menulis CART
monografi.

https://translate.googleusercontent.com/translate_f 168/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

© 2009 oleh Taylor & Francis Group, LLC

Halaman 189

10.3 Contoh Berlari 181

10.2 Ikhtisar
Pohon keputusan CART adalah prosedur partisi rekursif biner yang mampu
berhenti atribut kontinu dan nominal sebagai target dan prediktor. Data ditangani
dalam bentuk mentah mereka; tidak diperlukan binning atau direkomendasikan. Mulai dari root
simpul, data dibagi menjadi dua anak, dan masing-masing anak pada gilirannya dibagi menjadi
cucu. Pohon ditanam ke ukuran maksimal tanpa menggunakan aturan penghentian;
pada dasarnya proses penanaman pohon berhenti ketika tidak ada lagi pemisahan yang dimungkinkan
kurangnya data. Pohon berukuran maksimal kemudian dipangkas kembali ke akar (pada dasarnya dibagi
oleh split) melalui metode baru pemangkasan kompleksitas biaya. Perpecahan berikutnya harus dipangkas
adalah yang paling sedikit berkontribusi terhadap kinerja keseluruhan pohon pada data pelatihan (dan
lebih dari satu perpecahan dapat dihapus sekaligus). Mekanisme CART dimaksudkan
untuk menghasilkan tidak satu pohon, tetapi urutan pohon dipangkas bersarang, yang masing-masing adalah a
kandidat untuk menjadi pohon yang optimal. Pohon “berukuran benar” atau “jujur” diidentifikasi oleh
mengevaluasi kinerja prediksi setiap pohon dalam urutan pemangkasan pada
data uji independen. Tidak seperti C4.5, CART tidak menggunakan internal (berbasis pelatihan-data)
ukuran kinerja untuk pemilihan pohon. Sebaliknya, kinerja pohon selalu diukur
pada data uji independen (atau melalui validasi silang) dan pemilihan pohon hanya menghasilkan setelah
evaluasi berbasis data uji. Jika pengujian atau validasi silang belum dilakukan,
CART tetap agnostik mengenai pohon mana dalam urutan yang terbaik. Ini tajam
berbeda dengan metode seperti C4.5 atau statistik klasik yang menghasilkan model yang disukai
atas dasar langkah-langkah data pelatihan.
Mekanisme CART mencakup (opsional) penyeimbangan kelas otomatis dan otomatis
matic missing value handling, dan memungkinkan pembelajaran dinamis, fitur dinamis
konstruksi, dan estimasi pohon probabilitas. Laporan akhir termasuk novel at-
upeti peringkat pentingnya. Penulis CART juga menemukan jalan baru dalam pertunjukan
bagaimana validasi silang dapat digunakan untuk menilai kinerja untuk setiap pohon dalam pemangkasan
berurutan, mengingat bahwa pohon dalam lipatan validasi silang yang berbeda mungkin tidak selaras pada
jumlah node terminal. Sangat berguna untuk diingat bahwa meskipun BFOS ditangani
semua topik ini pada tahun 1970-an, dalam beberapa kasus pengobatan BFOS tetap menjadi yang utama
seni. Literatur tahun 1990-an berisi sejumlah artikel yang menemukan kembali inti
wawasan pertama kali diperkenalkan dalam monografi CART 1984. Masing-masing fitur utama ini
dibahas secara terpisah di bawah ini.

10.3 Contoh Berlari


Untuk membantu membuat detail CART CART, kami mengilustrasikan beberapa poin kami menggunakan
contoh dunia nyata yang mudah dipahami. (Data telah diubah untuk menutupi sebagian dari
spesifik asli.) Pada awal 1990-an penulis membantu telekomunikasi
perusahaan dalam memahami pasar untuk ponsel. Karena ponsel

© 2009 oleh Taylor & Francis Group, LLC

https://translate.googleusercontent.com/translate_f 169/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

Halaman 190

182 CART: Pohon Klasifikasi dan Regresi

TABEL 10.1 Contoh Statistik Ringkasan Data


Atribut N N Hilang% Hilang N Berbeda Berarti Min Max

USIA 813 18 2.2 9 5.059 1 9


KOTA 830 0 0 5 1.769 1 5
HANDPRIC 830 0 0 4 145.3 60 235
PERNIKAHAN 822 9 1.1 3 1.9015 1 3
PAGER 825 6 0,72 2 0,076364 0 1
SEWA 830 0 0 3 1.7906 1 3
TANGGAPAN 830 0 0 2 0,1518 0 1
SEKS 819 12 1.4 2 1.4432 1 2
TELEBILC 768 63 7.6 6 54.199 8 116
TRAVTIME 651 180 22 5 2.318 1 5
USEPRICE 830 0 0 4 11.151 10 30
MARITAL = Status Perkawinan (Tidak Menikah, Menikah, Cerai / Duda)
TRAVTIME = perkiraan waktu perjalanan ke pusat pekerjaan utama
AGE dicatat sebagai bilangan bulat mulai dari 1 hingga 9

adalah teknologi baru pada waktu itu, kami perlu mengidentifikasi pendorong utama adopsi
teknologi baru-baru ini dan untuk mengidentifikasi demografi yang mungkin terkait
sensitivitas harga. Data terdiri dari respons rumah tangga (ya / tidak) terhadap pasar
penawaran uji paket ponsel; semua prospek ditawari paket yang sama
fitur handset dan layanan, dengan satu pengecualian bahwa harga untuk paket
bervariasi secara acak sesuai dengan desain eksperimental. Satu-satunya pilihan terbuka untuk
rumah tangga harus menerima atau menolak tawaran itu.
Sebanyak 830 rumah tangga didekati dan 126 rumah tangga setuju
berlangganan paket layanan ponsel. Salah satu tujuan kami adalah belajar sebagai
sebanyak mungkin tentang perbedaan antara pelanggan dan bukan pelanggan. SEBUAH
set statistik ringkasan untuk atribut terpilih muncul pada Tabel 10.1. HANDPRIC adalah
harga dikutip untuk ponsel, USEPRIC adalah harga per menit, dan
atribut lainnya disediakan dengan nama umum.
Pohon klasifikasi CART dikembangkan pada data ini untuk memprediksi RESPONSE
atribut menggunakan semua atribut lainnya sebagai prediktor. MARITAL dan CITY adalah kategori
atribut gorical (nominal). Pohon keputusan ditanam dengan mempartisi secara rekursif
melatih data menggunakan aturan pemisahan untuk mengidentifikasi pemisahan yang akan digunakan pada setiap node. Gambar 10.1
menggambarkan proses ini dimulai dengan root node splitter di bagian atas pohon.
Simpul root di bagian atas diagram berisi semua data pelatihan kami, termasuk 704
bukan pelanggan (berlabel 0) dan 126 pelanggan (berlabel 1). Masing-masing 830
contoh berisi data pada 10 atribut prediktor, meskipun ada beberapa yang hilang
nilai-nilai. CART memulai dengan mencari data splitter terbaik yang tersedia, menguji masing-masing
pasangan atribut-nilai prediktor untuk kebaikannya. Pada Gambar 10.1 kita melihat
hasil pencarian ini: HANDPRIC telah ditentukan untuk menjadi pembagi terbaik menggunakan a
ambang batas 130 untuk mempartisi data. Semua contoh disajikan dengan HANDPRIC lebih sedikit
dari atau sama dengan 130 dikirim ke simpul anak kiri dan semua instance lainnya dikirim ke
hak. Pemecahan yang dihasilkan menghasilkan dua himpunan bagian dari data dengan yang sangat berbeda

© 2009 oleh Taylor & Francis Group, LLC

https://translate.googleusercontent.com/translate_f 170/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
Halaman 191

10.4 Algoritma Singkatnya Disebutkan 183

Gambar 10.1 Root node split.

tingkat respons: 21,9% untuk mereka yang mengutip harga lebih rendah dan 9,9% untuk mereka yang mengutip
harga lebih tinggi. Jelas baik pemisah simpul akar dan besarnya perbedaan
antara dua node anak masuk akal. Perhatikan bahwa perpecahan selalu menghasilkan
dua simpul: CART hanya menggunakan pemisahan biner.
Untuk menghasilkan pohon yang lengkap, CART hanya mengulangi proses pemisahan saja
dijelaskan dalam masing-masing dari dua simpul anak untuk menghasilkan cucu dari akar. Agung-
anak-anak berpisah untuk mendapatkan cicit dan seterusnya sampai perpecahan lebih lanjut
tidak mungkin karena kurangnya data. Dalam contoh kami, proses pertumbuhan ini menghasilkan a
“Maximal tree” terdiri dari 81 terminal node: node di bagian bawah pohon itu
tidak dibagi lebih lanjut.

10.4 Algoritma Singkatnya Disebutkan


Pernyataan lengkap tentang algoritma CART, termasuk semua detail teknis yang relevan,
panjang dan kompleks; ada beberapa aturan pemisahan yang tersedia untuk kedua klasifikasi
tion dan regresi, penanganan terpisah splitter terus menerus dan kategoris, khusus
penanganan untuk pembagi kategori dengan banyak tingkatan, dan ketentuan untuk nilai yang hilang
penanganan. Mengikuti prosedur penanaman pohon, ada prosedur rumit lainnya
untuk pemangkasan pohon, dan akhirnya, ada pemilihan pohon. Pada Gambar 10.2 disederhanakan
algoritma untuk penanaman pohon dibuat sketsa. Pernyataan formal dari algoritma tersebut adalah
disediakan dalam monograf CART. Di sini kami menawarkan pernyataan informal yang sangat tinggi
disederhanakan.
Perhatikan bahwa sketsa algoritma yang disederhanakan ini tidak merujuk pada nilai yang hilang,
tugas kelas, atau detail inti CART lainnya. Algoritma membuat sketsa mekanisme
untuk menumbuhkan pohon terbesar (maksimal).

© 2009 oleh Taylor & Francis Group, LLC

Halaman 192

https://translate.googleusercontent.com/translate_f 171/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

184 CART: Pohon Klasifikasi dan Regresi

BEGIN: Tetapkan semua data pelatihan ke simpul root


Tentukan simpul root sebagai simpul terminal

MEMBAGI:
New_splits = 0
UNTUK setiap simpul terminal di pohon:
Jika ukuran sampel simpul terminal terlalu kecil atau semua contoh dalam
simpul milik kelas target yang sama GETNEXT goto
Temukan atribut yang paling baik memisahkan simpul menjadi dua simpul anak
menggunakan aturan pemisahan yang diizinkan
New_splits +1
GETNEXT:
LANJUT

Gambar 10.2 Sketsa algoritma penanaman pohon yang disederhanakan.

Setelah menumbuhkan pohon, CART selanjutnya menghasilkan urutan bersarang dari sub-cabang yang telah dipangkas.
pohon. Sketsa algoritma yang disederhanakan untuk pemangkasan berikut ini mengabaikan prior dan biaya.
Ini berbeda dari algoritma pemangkasan CART yang sebenarnya dan disertakan di sini untuk
demi singkatnya dan kemudahan membaca. Prosedur dimulai dengan mengambil yang terbesar
menanam pohon ( T max ) dan menghapus semua splits, menghasilkan dua terminal node yang tidak
meningkatkan akurasi pohon pada data pelatihan. Ini adalah titik awal untuk CART
pemangkasan. Pemangkasan berlangsung lebih jauh dengan gagasan alami untuk menghapus iteratif
tautan terlemah di pohon, perpecahan yang berkontribusi paling sedikit pada kinerja pohon
pada data uji. Dalam algoritma yang disajikan pada Gambar 10.3, tindakan pemangkasan dibatasi
kepada orang tua dari dua terminal node.

DEFINE: r (t) = pelatihan tingkat kesalahan klasifikasi data dalam node t


p (t) = sebagian kecil dari data pelatihan dalam simpul t
R (t) = r (t) * p (t)
t_left = anak kiri dari simpul t
t_right = anak kanan dari simpul t
| T | = jumlah node terminal di pohon T

BEGIN: Tmax = pohon terbesar yang ditanam


Current_Tree = Tmax
Untuk semua orang tua, t dari dua simpul terminal
Hapus semua pembagian yang R (t) = R (t_left) + R (t_right)
Current_tree = Tmax setelah pemangkasan

PRUNE: Jika | Current_tree | = 1 maka goto DONE


Untuk semua orang tua, t dari dua simpul terminal
Hapus simpul yang R (t) -R (t_left) - R (t_right)
minimum
Current_tree = Current_Tree setelah pemangkasan

Gambar 10.3 Algoritma pemangkasan sederhana.

© 2009 oleh Taylor & Francis Group, LLC

Halaman 193

10.5 Aturan Pemisahan 185

https://translate.googleusercontent.com/translate_f 172/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

Algoritma pemangkasan CART berbeda dari yang di atas dalam menggunakan penalti
mekanisme node yang dapat menghapus seluruh subtree dalam tindakan pemangkasan tunggal. Itu
monograf menawarkan pernyataan prosedur yang jelas dan luas. Sekarang kita bahas
aspek-aspek utama dari CART secara lebih rinci.

10.5 Aturan Pemisahan


Aturan pemisahan CART selalu ditulis dalam bentuk

Sebuah instance pergi ke kiri jika KONDISI, dan ke kanan sebaliknya

di mana KONDISI dinyatakan sebagai "atribut X i < = C " untuk at- berkelanjutan
upeti. Untuk atribut kategorikal atau nominal KONDISI dinyatakan sebagai anggota
bership dalam daftar nilai. Misalnya, pemisahan pada variabel seperti CITY mungkin
diekspresikan sebagai

Contoh berjalan ke kiri jika CITY di { Chicago, Detroit, Nashville) dan ke kanan
jika tidak

Pembagi dan titik perpecahan keduanya ditemukan secara otomatis oleh CART dengan op-
pemisahan timal dipilih melalui salah satu aturan pemisahan yang ditentukan di bawah ini. Perhatikan itu karena
CART bekerja dengan data yang tidak dicentang, pembagian optimal selalu berbeda dengan hormat
untuk transformasi yang mempertahankan urutan atribut (seperti log, akar kuadrat, trans
bentuk, dan sebagainya). Penulis CART berpendapat bahwa pemisahan biner lebih disukai
untuk multiway splits karena (1) mereka memecah data lebih lambat daripada multiway
pemisahan dan (2) pemisahan berulang pada atribut yang sama diizinkan dan, jika dipilih, akan
akhirnya menghasilkan partisi sebanyak untuk atribut yang diperlukan. Kehilangan kemudahan
dalam membaca pohon diharapkan diimbangi dengan peningkatan kinerja prediksi.
Penulis CART mendiskusikan contoh menggunakan empat aturan pemisahan untuk klasifikasi
pohon (Gini, dua, dipesan dua, gini simetris), tetapi fokusnya adalah
sebagian besar pembahasannya tentang Gini, yang mirip dengan entropi yang lebih dikenal
Kriteria (perolehan informasi). Untuk target biner (0/1) "Gini ukuran pengotor"
dari simpul t adalah

G ( t ) = 1 - p ( t ) 2 - (1 - p ( t )) 2

di mana p ( t ) adalah frekuensi relatif (mungkin berbobot) kelas 1 dalam node. Spesifik
ifying G ( t ) = - p ( t ) ln p ( t ) - (1 - p ( t )) ln (1 - p ( t )) sebagai gantinya menghasilkan aturan entropi.
Peningkatan (gain) yang dihasilkan oleh split dari simpul induk P ke kiri dan kanan
anak-anak L dan R adalah

I ( P ) = G ( P ) - qG ( L ) - (1 - q ) G ( R )

© 2009 oleh Taylor & Francis Group, LLC

Halaman 194

186 CART: Pohon Klasifikasi dan Regresi

Di sini, q adalah fraksi (kemungkinan berbobot) dari instance yang tersisa. Penulis CART
lebih menyukai Gini daripada entropi karena dapat dihitung lebih cepat, dapat dengan mudah
diperluas untuk mencakup biaya yang simetris (lihat di bawah), dan kecil kemungkinannya untuk menghasilkan “akhir
potong ”split — split dengan satu anak yang sangat kecil (dan relatif murni) dan banyak lainnya

https://translate.googleusercontent.com/translate_f 173/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
anak yang lebih besar. (Versi CART berikutnya telah menambahkan entropi sebagai aturan pemisahan opsional.)
Aturan dua-duanya didasarkan pada perbandingan langsung dari distribusi atribut target di
dua simpul anak:
{ }2

I (split) = . 25 ( q (1 - q )) u |pL(k)-pR(k)|
k

di mana k mengindeks kelas target, pL () dan pR () adalah distribusi probabilitas


dari target di node anak kiri dan kanan, masing-masing. (Pembagi ini adalah mod
versi resmi dari Messenger dan Mandell, 1972.) Pengukuran “peningkatan” dua
memastikan perbedaan antara vektor probabilitas anak kiri dan kanan, dan
memimpin [ . 25 ( q (1 - q )] jangka, yang memiliki nilai maksimum pada q = . 5, secara implisit
menghukum belahan yang menghasilkan ukuran simpul kiri dan kanan yang tidak sama. Istilah daya u adalah
dapat dikontrol pengguna, memungkinkan kontinum hukuman yang semakin berat dengan ketidaksetaraan
terbagi; pengaturan u = 10, misalnya, mirip dengan menegakkan semua pemisahan di median
nilai atribut split. Dalam pengalaman praktis kami, kriteria dua arah adalah pilihan
perior performer pada target multiclass serta pada dasarnya sulit diprediksi
(mis. berisik) target biner. BFOS juga memperkenalkan varian kriteria split twoing
yang memperlakukan kelas target seperti yang diperintahkan. Disebut perpecahan dua memerintahkan
aturan, itu adalah aturan klasifikasi dengan karakteristik aturan regresi saat ia berusaha
Pisahkan kelas-peringkat rendah dari target kelas-tinggi di setiap split.
Untuk regresi (target berkelanjutan), CART menawarkan pilihan kuadrat terkecil (LS, jumlah
kesalahan prediksi kuadrat) dan paling tidak penyimpangan absolut (LAD, jumlah absolut
kriteria prediksi) sebagai dasar untuk mengukur peningkatan pemisahan. Seperti
pohon klasifikasi perpecahan terbaik menghasilkan peningkatan terbesar. Tiga pemisahan lainnya
aturan untuk pembelajaran yang peka terhadap biaya dan pohon probabilitas dibahas secara terpisah di bawah ini.
Dalam contoh ponsel kami, ukuran pengotor Gini di simpul akar adalah
∧ ∧
1− ( . 84819) 2− ( . 15181) 2; menghitung Gini untuk setiap anak dan kemudian mengurangi
bagian sampel rata-rata tertimbang mereka dari induk Gini menghasilkan peningkatan
skor 0,00703 (hasil mungkin sedikit bervariasi tergantung pada presisi yang digunakan untuk
perhitungan dan input). CART menghasilkan daftar tabel split terbaik yang tersedia
menggunakan masing-masing atribut lain yang tersedia. (Kami menunjukkan lima pesaing teratas dan
skor peningkatan mereka pada Tabel 10.2.)

TABEL 10.2 Peningkatan Splitter Utama = 0,007033646


Saingan Membagi Perbaikan

1 TELEBILC 50 0,006883
2 USEPRICE 9,85 0,005961
3 KOTA 1,4,5 0,002259
4 TRAVTIME 3.5 0,001114
5 USIA 7.5 0,000948

© 2009 oleh Taylor & Francis Group, LLC

Halaman 195

10.6 Probabilitas Sebelumnya dan Penyeimbangan Kelas 187

10.6 Probabilitas Sebelumnya dan Penyeimbangan Kelas


Menyeimbangkan kelas dalam pembelajaran mesin adalah masalah utama bagi banyak praktisi
metode penambangan tidak berkinerja baik ketika data pelatihan sangat tidak seimbang.
Misalnya, untuk sebagian besar pemberi pinjaman utama, tarif default umumnya di bawah 5% dari semua
akun, dalam penipuan transaksi kartu kredit biasanya jauh di bawah 1%, dan di Internet
iklan "klik melalui" tarif terjadi biasanya untuk jauh lebih sedikit dari 1% dari semua iklan
ditampilkan (tayangan). Banyak praktisi secara rutin membatasi diri pada pelatihan
https://translate.googleusercontent.com/translate_f 174/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
set data di mana kelas target telah disampel untuk menghasilkan kira-kira sama
ukuran sampel. Yang jelas, jika golongan bunga cukup kecil misalnya sampel balancing
bisa meninggalkan analis dengan sampel pelatihan keseluruhan yang sangat kecil. Misalnya, dalam
studi penipuan asuransi perusahaan mengidentifikasi sekitar 70 kasus klaim yang didokumentasikan
penipuan. Membatasi analisis dengan sampel seimbang akan membatasi analis secara total
sampel hanya 140 contoh (70 penipuan, 70 bukan penipuan).
Sangat menarik untuk dicatat bahwa penulis CART membahas masalah ini secara eksplisit di
1984 dan menemukan cara untuk membebaskan pemodel dari segala kekhawatiran terkait sampel
keseimbangan. Terlepas dari seberapa tidak seimbangnya data pelatihan, CART
secara otomatis akan menyesuaikan dengan ketidakseimbangan, tidak memerlukan tindakan, persiapan, pengambilan sampel,
atau pembobotan oleh pemodel. Data dapat dimodelkan karena ditemukan tanpa data
preprocessing.
Untuk memberikan fleksibilitas ini, CART menggunakan mekanisme "priors". Priors adalah
mirip dengan target bobot kelas tetapi mereka tidak terlihat karena tidak memengaruhi apa pun
jumlah dilaporkan oleh CART di pohon. Sebaliknya, prior dimasukkan dalam perhitungan
dilakukan untuk menentukan kebaikan split. Dalam mode klasifikasi standarnya
CART selalu menghitung frekuensi kelas di setiap simpul relatif terhadap frekuensi kelas
di root. Ini sama dengan me-reweighting data secara otomatis untuk menyeimbangkan
kelas, dan memastikan bahwa pohon yang dipilih sebagai optimal meminimalkan kesalahan kelas berimbang.
Reweighting tersirat dalam perhitungan semua probabilitas dan peningkatan dan
tidak memerlukan intervensi pengguna; jumlah sampel yang dilaporkan di masing-masing simpul mencerminkan
data tidak tertimbang. Untuk target biner (0/1), node apa pun diklasifikasikan sebagai kelas 1 jika, dan hanya jika,

N 1 ( simpul ) N 0 ( simpul )
>
N 1 ( root ) N 0 ( root )

Amati bahwa ini memastikan bahwa setiap kelas diberi probabilitas kerja 1 / K
di simpul akar ketika ada kelas target K , terlepas dari distribusi yang sebenarnya
dari kelas dalam data. Mode default ini disebut sebagai "priors sama" di
monografi. Ini memungkinkan pengguna CART untuk bekerja dengan mudah dengan data yang tidak seimbang,
tidak memerlukan persiapan data khusus untuk mencapai penyeimbangan ulang kelas atau pendahuluan
bobot yang dibangun secara manual. Untuk bekerja secara efektif dengan data yang tidak seimbang, cukuplah
cient untuk menjalankan CART menggunakan pengaturan standarnya. Reweighting implisit dapat dimatikan oleh
memilih opsi "data prior". Pemodel juga dapat memilih untuk menentukan arbitrer
set prior untuk mencerminkan biaya, atau perbedaan potensial antara data pelatihan dan masa depan
distribusi kelas target data.

© 2009 oleh Taylor & Francis Group, LLC

Halaman 196

188 CART: Pohon Klasifikasi dan Regresi

HANDPRIC

TILLABLE TILLABLE

KOTA PAGER

USIA USIA HANDPRIC

https://translate.googleusercontent.com/translate_f 175/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
TILLABLE

Gambar 10.4 Node Terminal Merah = Di Atas Rata-Rata Respons. Contoh dengan nilai
splitter lebih besar dari ambang batas bergerak ke kanan.

Catatan: Pengaturan priors tidak seperti bobot dalam bahwa mereka tidak mempengaruhi yang dilaporkan
dihitung dalam suatu simpul atau fraksi sampel yang dilaporkan dalam setiap kelas target. Priors melakukannya
mempengaruhi kelas setiap node ditugaskan untuk serta pemilihan splitter di
proses penanaman pohon.
(Mampu mengandalkan prior tidak berarti bahwa analis harus mengabaikan topik
pengambilan sampel dengan laju yang berbeda dari kelas target yang berbeda; melainkan memberikan analis
berbagai fleksibilitas mengenai kapan dan bagaimana cara mengambil sampel.)
Kami menggunakan pengaturan "priors equal" untuk menghasilkan pohon CART untuk ponsel
data untuk beradaptasi dengan probabilitas respons yang relatif rendah dan memperoleh pohon
skema ditunjukkan pada Gambar 10.4.
Dengan konvensi, pemisahan pada variabel kontinu mengirim instance dengan nilai yang lebih besar
splitter ke kanan, dan pemisahan pada variabel nominal ditentukan oleh daftar
nilai-nilai ke kiri atau kanan. Dalam diagram, terminal node diberi kode warna
mencerminkan probabilitas relatif dari respons. Node merah di atas rata-rata sebagai respons
probabilitas dan simpul biru di bawah rata-rata. Meskipun skema ini hanya menampilkan
sebagian kecil dari laporan terperinci yang tersedia itu cukup untuk mengatakan ini menarik
cerita: Meskipun mereka dikutip harga tinggi untuk teknologi baru, rumah tangga
dengan tagihan telepon darat yang lebih tinggi yang menggunakan layanan pager (bip) lebih mungkin
untuk berlangganan layanan baru. Skema ini juga mengungkapkan bagaimana CART dapat menggunakan kembali

© 2009 oleh Taylor & Francis Group, LLC

Halaman 197

10.7 Penanganan Nilai Hilang 189

atribut beberapa kali. Sekali lagi, melihat sisi kanan pohon, dan mempertimbangkan
rumah tangga dengan tagihan telepon darat yang lebih besar tetapi tanpa layanan pager, kita lihat
bahwa atribut HANDPRIC muncul kembali, memberi tahu kami bahwa segmen pelanggan ini
bersedia membayar harga yang agak lebih tinggi tetapi akan menolak harga tertinggi. (Kedua
perpecahan di HANDPRIC adalah 200.)

10.7 Penanganan Nilai Hilang


Nilai yang hilang sering muncul di dunia nyata, terutama yang terkait dengan bisnis
database, dan kebutuhan untuk menghadapinya merupakan tantangan yang menjengkelkan bagi semua pemodel.
Salah satu kontribusi utama CART adalah untuk memasukkan sepenuhnya otomatis dan efektif
mekanisme yang efektif untuk menangani nilai yang hilang. Pohon keputusan membutuhkan yang hilang
mekanisme penanganan nilai pada tiga tingkatan: (a) selama evaluasi splitter, (b) kapan
memindahkan data pelatihan melalui sebuah simpul, dan (c) saat memindahkan data uji melalui a
simpul untuk tugas kelas akhir. (Lihat Quinlan, 1989 untuk diskusi yang jelas tentang ini

https://translate.googleusercontent.com/translate_f 176/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
poin.) Mengenai (a), versi pertama CART mengevaluasi masing-masing pembagi secara ketat
kinerja pada subset data yang splitternya tidak hilang. Versi selanjutnya
dari CART menawarkan keluarga hukuman yang mengurangi ukuran perbaikan untuk direfleksikan
tingkat ketiadaan. (Misalnya, jika suatu variabel hilang dalam 20% dari catatan
dalam sebuah node maka skor peningkatannya untuk node itu mungkin berkurang sebesar 20%, atau mengubah
setengah dari 20%, dan seterusnya.) Untuk (b) dan (c), mekanisme CART menemukan
“Surrogate” atau gantikan splitter untuk setiap simpul pohon, baik nilai yang hilang
terjadi dalam data pelatihan atau tidak. Oleh karena itu pengganti tersedia, jika pohon dilatih
pada data lengkap diterapkan ke data baru yang mencakup nilai yang hilang. Ini tajam
berbeda dengan mesin yang tidak bisa mentolerir nilai yang hilang dalam data pelatihan atau itu
hanya bisa belajar tentang penanganan nilai yang hilang dari data pelatihan yang mencakup hilang
nilai-nilai. Friedman (1975) mengemukakan contoh bergerak dengan atribut splitter yang hilang
ke node anak kiri dan kanan dan membuat tugas kelas akhir dengan mengambil a
rata-rata tertimbang dari semua node di mana sebuah instance muncul. Quinlan memilih varian
pendekatan Friedman dalam studinya tentang metode penanganan nilai alternatif yang hilang.
Penilaian kami sendiri tentang efektivitas kinerja pengganti CART di AS
Kehadiran data yang hilang jelas menguntungkan, sementara Quinlan tetap agnostik
dasar dari perkiraan pengganti yang ia laksanakan untuk tujuan pengujian (Quinlan).
Dalam Friedman, Kohavi, dan Yun (1996), Friedman mencatat bahwa 50% dari kode CART
dikhususkan untuk penanganan nilai yang hilang; dengan demikian tidak mungkin eksperimental Quinlan
versi mereplikasi mekanisme pengganti CART.
Dalam CART, mekanisme penanganan nilai yang hilang sepenuhnya otomatis dan lokal
adaptif di setiap node. Pada setiap node di pohon splitter yang dipilih menginduksi biner
partisi data (mis., X 1 < = c 1 dan X 1 > c 1). Pembagi pengganti adalah tunggal
atribut Z yang dapat memprediksi partisi ini di mana pengganti itu sendiri dalam bentuk
pemisah biner (misalnya, Z < = d dan Z> d ). Dengan kata lain, setiap pembagi menjadi
target baru yang akan diprediksi dengan pohon biner split tunggal. Pengganti adalah

© 2009 oleh Taylor & Francis Group, LLC

Halaman 198

190 CART: Pohon Klasifikasi dan Regresi

TABEL 10.3 Surrogate Splitter Report Utama


Peningkatan TELEBILC Splitter = 0,023722
Pengganti Peningkatan Asosiasi Split

1 Marital 1 0,14 0,001864


2 TRAVTIME 2.5 0,11 0,006068
3 AGE 3.5 0,09 0,000412
4 CITY 2,3,5 0,07 0,004229

peringkat oleh skor asosiasi yang mengukur keuntungan pengganti atas


aturan default, memprediksi bahwa semua kasus pergi ke simpul anak yang lebih besar (setelah penyesuaian
untuk prior). Untuk memenuhi syarat sebagai pengganti, variabel harus mengungguli aturan default ini
(dan karenanya tidak selalu mungkin untuk menemukan pengganti). Ketika nilai yang hilang adalah
ditemui di pohon CART contoh dipindahkan ke kiri atau kanan sesuai
ke pengganti peringkat atas. Jika pengganti ini juga hilang maka peringkat kedua
pengganti digunakan sebagai gantinya (dan sebagainya). Jika semua pengganti tidak ada aturan default
menetapkan instance ke simpul anak yang lebih besar (setelah disesuaikan dengan prior). Ikatan rusak
dengan memindahkan instance ke kiri.
Kembali ke contoh ponsel, pertimbangkan anak yang tepat dari simpul root,
yang dibagi pada TELEBILC, tagihan telepon darat. Jika data tagihan telepon
tidak tersedia (mis. rumah tangga adalah rumah tangga baru dan memiliki sejarah terbatas dengan
perusahaan), CART mencari atribut yang paling baik memprediksi apakah instance

https://translate.googleusercontent.com/translate_f 177/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
milik sisi kiri atau kanan perpecahan.
Dalam hal ini (Tabel 10.3) kita melihat bahwa dari semua atribut yang tersedia merupakan prediktor terbaik
apakah telepon darat tinggi (lebih dari 50) adalah status perkawinan (tidak pernah
orang yang sudah menikah menghabiskan lebih sedikit), diikuti oleh waktu perjalanan untuk bekerja, usia, dan, akhirnya, kota
tempat tinggal. Pengganti juga dapat dilihat sebagai mirip dengan sinonim yang mereka bantu
menafsirkan splitter. Di sini kita melihat bahwa mereka yang memiliki tagihan telepon rendah cenderung tidak pernah
menikah, hidup lebih dekat ke pusat kota, lebih muda, dan terkonsentrasi di tiga kota
lima kota dipelajari.

10.8 Pentingnya Atribut


Pentingnya atribut didasarkan pada jumlah perbaikan di semua node
di mana atribut muncul sebagai pembagi (tertimbang oleh sebagian kecil dari pelatihan
data di setiap node split). Pengganti juga termasuk dalam perhitungan penting,
yang berarti bahwa bahkan variabel yang tidak pernah membelah sebuah node dapat ditugaskan besar
skor kepentingan. Ini memungkinkan peringkat kepentingan variabel untuk mengungkapkan variabel
masking dan korelasi nonlinear di antara atribut. Skor kepentingan mungkin terbuka
terbatas pada splitter; membandingkan splitter-only dan full (splitter
dan pengganti) peringkat kepentingan adalah diagnostik yang berguna.

© 2009 oleh Taylor & Francis Group, LLC

Halaman 199

10.9 Konstruksi Fitur Dinamis 191

TABEL 10.4 Pentingnya Variabel (Termasuk Pengganti)


Atribut Skor

TELEBILC 100.00 ||||||||||||||||||||||||||||||||||||||||||||


HANDPRIC 68.88 ||||||||||||||||||||||||||||||||||||
USIA 55.63 |||||||||||||||||||||
KOTA 39,93 |||||||||||||||
SEKS 37.75 ||||||||||||||
PAGER 34.35 ||||||||||||||
TRAVTIME 33.15 |||||||||||||
USEPRICE 17.89 |||||||
SEWA 11.31 ||||
PERNIKAHAN 6.98 ||

TABEL 10.5 Pentingnya Variabel (Tidak Termasuk Pengganti)


Variabel Skor

TELEBILC 100.00 ||||||||||||||||||||||||||||||||||||||||||||


HANDPRIC 77.92 ||||||||||||||||||||||||||||||||||
USIA 51.75 |||||||||||||||||||
PAGER 22.50 |||||||||
KOTA 18.09 |||||||

Perhatikan bahwa atribut MARITAL, RENTHOUS, TRAVTIME, dan SEX in


Tabel 10.4 tidak muncul sebagai splitter tetapi masih tampak memiliki peran dalam pohon. Ini

https://translate.googleusercontent.com/translate_f 178/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
atribut memiliki kepentingan bukan nol semata - mata karena mereka muncul sebagai pengganti untuk
variabel pemisahan lainnya. CART juga akan melaporkan skor penting dengan mengabaikan survei
rogat atas permintaan. Versi dari peringkat pentingnya atribut untuk pohon yang sama
ditunjukkan pada Tabel 10.5.

10.9 Konstruksi Fitur Dinamis


Friedman (1975) membahas konstruksi otomatis fitur-fitur baru di dalamnya
simpul dan, untuk target biner, menyarankan untuk menambahkan fitur tunggal

x×w

di mana x adalah subset dari vektor atribut prediktor kontinu dan w adalah perbedaan skala
ferensi vektor rata-rata melintasi dua kelas (arah dis- linear Fisher)
penjahat). Ini mirip dengan menjalankan regresi logistik pada semua atribut kontinu

© 2009 oleh Taylor & Francis Group, LLC

Halaman 200

192 CART: Pohon Klasifikasi dan Regresi

di node dan menggunakan estimasi logit sebagai prediktor. Dalam monograf CART, the
penulis membahas konstruksi otomatis kombinasi linear yang menyertakan fitur
pilihan; kemampuan ini telah tersedia sejak rilis soft CART pertama
barang BFOS juga menyajikan metode untuk membangun kombinasi splitter Boolean
dalam setiap node, kemampuan yang belum termasuk dalam perangkat lunak yang dirilis.
Meskipun ada situasi di mana kombinasi kombinasi linier adalah cara terbaik untuk melakukannya
mengungkap struktur dalam data (lihat karya Olshen di Huang et al., 2004), untuk sebagian besar
bagian kami telah menemukan bahwa splitter tersebut meningkatkan risiko overfitting karena besar
jumlah pembelajaran yang mereka wakili di setiap node, sehingga mengarah ke model yang lebih rendah.

10.10 Pembelajaran Sensitif Biaya


Biaya merupakan pusat teori keputusan statistik tetapi pembelajaran sensitif biaya diterima
hanya perhatian sederhana sebelum Domingos (1999). Sejak itu, beberapa konferensi telah
telah dikhususkan untuk topik ini dan sejumlah besar makalah penelitian miliki
muncul dalam literatur ilmiah berikutnya. Karena itu berguna untuk mencatatnya
monograf CART memperkenalkan dua strategi untuk pembelajaran yang peka terhadap biaya dan
seluruh mesin matematika yang menjelaskan CART dilemparkan dalam hal biaya
kesalahan klasifikasi. Biaya kesalahan klasifikasi instance kelas i sebagai kelas j adalah C ( i, j )
dan diasumsikan sama dengan 1 kecuali disebutkan sebaliknya; C ( i, i ) = 0 untuk semua i . Itu
set lengkap biaya diwakili dalam matriks C yang berisi baris dan kolom
untuk setiap kelas target. Setiap pohon klasifikasi dapat memiliki total biaya yang dihitung untuknya
penugasan simpul terminal dengan menjumlahkan biaya atas semua kesalahan klasifikasi. Masalah dalam
pembelajaran yang peka terhadap biaya adalah untuk menginduksi pohon yang memperhitungkan biaya selama prosesnya
fase pertumbuhan dan pemangkasan.
Metode pertama dan paling mudah untuk menangani biaya menggunakan bobot
ing: Contoh milik kelas yang mahal untuk kesalahan klasifikasi ditimbang ke atas,
dengan bobot yang sama berlaku untuk semua instance dari kelas yang diberikan, metode baru-baru ini
ditemukan kembali oleh Ting (2002). Seperti yang diterapkan dalam CART, pembobotan tercapai
https://translate.googleusercontent.com/translate_f 179/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
secara transparan sehingga semua jumlah simpul dilaporkan dalam bentuk mentah tidak tertimbang. Untuk
masalah multiclass BFOS menyarankan agar entri dalam klasifikasi biaya kesalahan klasifikasi
trix dijumlahkan di setiap baris untuk mendapatkan bobot kelas relatif yang kira-kira
mencerminkan biaya. Teknik ini mengabaikan detail dalam matriks tetapi sekarang telah
banyak diadopsi karena kesederhanaannya. Untuk aturan pemisahan Gini, penulis CART
menunjukkan bahwa dimungkinkan untuk menanamkan seluruh matriks biaya ke dalam aturan pemisahan, tetapi hanya
setelah itu sudah simetri. Aturan pemisahan “symGini” menghasilkan pohon yang sensitif
untuk perbedaan dalam biaya C ( i, j ) dan C ( i, k ), dan paling berguna ketika simetrize
matriks biaya adalah representasi yang dapat diterima dari masalah pembuat keputusan. Oleh con-
Trast, pendekatan pembobotan instan menetapkan biaya tunggal untuk semua kesalahan klasifikasi
objek kelas i . BFOS mengamati bahwa pemangkasan pohon menggunakan matriks biaya penuh
penting untuk keberhasilan pembelajaran yang sensitif biaya.

© 2009 oleh Taylor & Francis Group, LLC

Halaman 201

10.11 Menghentikan Aturan, Pemangkasan, Urutan Pohon, dan Pemilihan Pohon 193

10.11 Menghentikan Aturan, Pemangkasan, Urutan Pohon,


dan Pemilihan Pohon
Pekerjaan paling awal pada pohon keputusan tidak memungkinkan pemangkasan. Sebaliknya, pohon-pohon itu
tumbuh sampai mereka menemukan kondisi berhenti dan pohon yang dihasilkan
dianggap final. Dalam monograf CART, penulis berpendapat bahwa tidak ada aturan yang dimaksudkan
menghentikan pertumbuhan pohon dapat menjamin bahwa itu tidak akan kehilangan struktur data penting
(misalnya, pertimbangkan masalah XOR dua dimensi). Karena itu mereka memilih untuk tumbuh
pohon tanpa henti. Pohon yang terlalu besar menghasilkan bahan baku dari
dimana model optimal akhir diekstraksi.
Mekanisme pemangkasan didasarkan hanya pada data pelatihan dan dimulai dengan a
ukuran kompleksitas biaya didefinisikan sebagai

Ra ( T ) = R ( T ) + a | T |

di mana R ( T ) adalah biaya sampel pelatihan pohon, | T | adalah jumlah node terminal
di pohon dan a adalah penalti yang dikenakan pada setiap node. Jika a = 0, maka minimum
pohon kompleksitas biaya jelas merupakan yang terbesar. Jika a dibiarkan secara progresif
meningkat, pohon kompleksitas biaya minimum akan menjadi lebih kecil karena perpecahan
di bagian bawah pohon yang mengurangi R ( T ) paling tidak akan ditebang. Parameter
a semakin meningkat dalam langkah-langkah kecil dari 0 hingga nilai yang cukup untuk memangkas
semua terbelah. BFOS membuktikan bahwa setiap pohon ukuran Q yang diekstraksi dengan cara ini akan dipamerkan
biaya R ( Q ) yang minimum dalam kelas semua pohon dengan simpul terminal Q.
Ini praktis penting karena secara radikal mengurangi jumlah pohon itu
harus diuji dalam mencari pohon optimal. Misalkan pohon maksimal memiliki | T |
terminal node. Pemangkasan melibatkan menghilangkan split menghasilkan dua terminal node
dan menyerap kedua anak ke dalam orangtua mereka, sehingga menggantikan kedua terminal
node dengan satu. Jumlah pohon yang mungkin diekstraksi dari pohon maksimal
dengan pemangkasan seperti itu akan tergantung pada topologi spesifik pohon yang dimaksud tetapi
terkadang akan lebih besar dari 0,5 | T |! Tetapi pemangkasan mengingat kompleksitas biaya yang kita butuhkan
untuk memeriksa jumlah pohon yang jauh lebih kecil. Dalam contoh kita, kita menumbuhkan pohon dengan 81
terminal node dan pemangkasan kompleksitas biaya mengekstrak urutan 28 subtree, tetapi
jika kami harus melihat semua kemungkinan sub pohon, kami mungkin harus memeriksa urutan
25! = 15.511.210.043.330.985.984.000.000 pohon.
The pohon optimal didefinisikan sebagai pohon di dipangkas urutan yang mencapai min
biaya imum pada data uji. Karena pengukuran biaya kesalahan klasifikasi pengujian adalah subjek

https://translate.googleusercontent.com/translate_f 180/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
untuk kesalahan pengambilan sampel, ketidakpastian selalu tetap mengenai pohon mana yang dipangkas
urutan optimal. Memang, karakteristik yang menarik dari kurva kesalahan (misclas-
tingkat kesalahan sifikasi sebagai fungsi dari ukuran pohon) adalah bahwa sering datar sekitar minimum
untuk set data pelatihan besar. BFOS merekomendasikan memilih pohon "1 SE" yang merupakan
pohon terkecil dengan perkiraan biaya dalam 1 kesalahan standar dari biaya minimum (atau
“0 SE”) pohon. Argumen mereka untuk aturan 1 SE adalah bahwa dalam studi simulasi menghasilkan a
ukuran pohon yang stabil di seluruh replikasi sedangkan ukuran pohon 0 SE dapat sangat bervariasi
di replikasi.

© 2009 oleh Taylor & Francis Group, LLC

Halaman 202

194 CART: Pohon Klasifikasi dan Regresi

Gambar 10.5 Satu tahap dalam proses pemangkasan CART: subtree 17-terminal-node.
Node yang disorot akan dipangkas berikutnya.

Gambar 10.5 menunjukkan pohon CART bersama dengan menyoroti perpecahan yang akan terjadi
dihapus berikutnya melalui pemangkasan kompleksitas biaya.
Tabel 10.6 berisi satu baris untuk setiap subtree yang sudah dipangkas yang dimulai dengan
maksimal 81-terminal-node tree ditanam. Urutan pemangkasan terus berlanjut
kembali ke root karena kita harus mengizinkan kemungkinan bahwa pohon kita akan menunjukkan
tidak ada daya prediksi pada data uji. Subtree berkinerja terbaik pada data tes adalah SE
0 tree dengan 40 node, dan tree terkecil dalam standard error dari SE 0 tree
adalah pohon SE 1 (dengan 35 terminal node). Untuk mempermudah kami menampilkan detail
pohon 10-terminal-node suboptimal dalam diskusi sebelumnya.

10.12 Pohon Probabilitas


Pohon probabilitas telah baru-baru ini dibahas dalam serangkaian artikel wawasan
cidating properti mereka dan berusaha untuk meningkatkan kinerja mereka (lihat Provost dan
Domingos, 2000). Monograf CART mencakup apa yang tampak sebagai detail pertama
diskusi pohon probabilitas dan perangkat lunak CART menawarkan aturan pemisahan khusus
untuk pertumbuhan "pohon probabilitas kelas." Perbedaan utama antara klasifikasi
pohon dan pohon probabilitas adalah bahwa yang terakhir ingin menjaga pemisahan yang menghasilkan dua termi
nal simpul anak-anak ditugaskan ke kelas yang sama dengan orang tua mereka sedangkan yang sebelumnya akan
tidak. (Perpecahan seperti itu tidak menghasilkan apa-apa sejauh akurasi klasifikasi terkait.)
Pohon probabilitas juga akan dipangkas secara berbeda dari klasifikasi rekannya
pohon. Oleh karena itu, buatlah klasifikasi dan pohon probabilitas pada data yang sama di
CART akan menghasilkan dua pohon yang struktur akhirnya dapat sedikit berbeda (walaupun
perbedaan biasanya sederhana). Kelemahan utama pohon probabilitas adalah
Estimasi probabilitas berdasarkan data pelatihan di terminal node cenderung bias
(misalnya, menuju 0 atau 1 dalam kasus target biner) dengan bias meningkat dengan

https://translate.googleusercontent.com/translate_f 181/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
kedalaman node. Dalam literatur ML terbaru penggunaan penyesuaian Laplace telah
direkomendasikan untuk mengurangi bias ini (Provost dan Domingos, 2002). CART
monograf menawarkan metode yang agak lebih kompleks untuk menyesuaikan simpul terminal

© 2009 oleh Taylor & Francis Group, LLC

Halaman 203

10.12 Pohon Probabilitas 195

TABEL 10.6 Urutan Pohon Lengkap untuk CART Model: Semua Subtrees Bersarang
Dilaporkan
Pohon Nodes Biaya Tes Biaya Kereta Kompleksitas

1 81 0,635461 +/- 0,046451 0,197939 0


2 78 0.646239 +/- 0,046608 0,200442 0,000438
3 71 0,640309 +/- 0,046406 0,210385 0,00072
4 67 0,638889 +/- 0,046395 0,217487 0,000898
5 66 0,632373 +/- 0,046249 0,219494 0,001013
6 61 0,635214 +/- 0,046271 0,23194 0,001255
7 57 0,643151 +/- 0,046427 0,242131 0,001284
8 50 0,639475 +/- 0,046303 0.262017 0,00143
9 42 0,592442 +/- 0,044947 0,289254 0,001709
10 40 0,584506 +/- 0,044696 0,296356 0,001786
11 35 0,611156 +/- 0,045432 0,317663 0,002141
12 32 0,633049 +/- 0,045407 0,331868 0,002377
13 31 0,635891 +/- 0,045425 0,336963 0,002558
14 30 0,638731 +/- 0,045442 0,342307 0,002682
15 29 0.674738 +/- 0,046296 0,347989 0,002851
16 25 0,677918 +/- 0,045841 0,374143 0,003279
17 24 0,659204 +/- 0,045366 0,381245 0,003561
18 17 0,648764 +/- 0,044401 0,431548 0,003603
19 16 0,692798 +/- 0,044574 0.442911 0,005692
20 15 0.725379 +/- 0,04585 0,455695 0,006402
21 13 0,756539 +/- 0,046819 0,486269 0,007653
22 10 0.785534 +/- 0,046752 0,53975 0,008924
23 9 0.784542 +/- 0,045015 0,563898 0,012084
24 7 0.784542 +/- 0,045015 0,620536 0,014169
25 6 0.784542 +/- 0,045015 0,650253 0,014868
26 4 0.784542 +/- 0,045015 0.71043 0,015054
27 2 0,907265 +/- 0,047939 0.771329 0,015235
28 1 1 +/- 0 1 0,114345

perkiraan yang jarang dibahas dalam literatur. Dijuluki "Breiman ad-


justment,”ia akan menyesuaikan perkiraan tingkat kesalahan klasifikasi r × ( t ) dari setiap node terminal
ke atas oleh

r×(t)=r(t)+e/(q(t)+S)

di mana r ( t ) adalah taksiran sampel pelatihan dalam simpul, q ( t ) adalah fraksi dari
sampel pelatihan dalam node, dan S dan e adalah parameter yang dipecahkan sebagai a
fungsi perbedaan antara tingkat kesalahan kereta dan uji untuk pohon tertentu. Di
berbeda dengan metode Laplace, penyesuaian Breiman tidak tergantung pada mentah
probabilitas diprediksi dalam simpul dan penyesuaian bisa sangat kecil jika menguji data
menunjukkan bahwa pohon itu tidak cocok. Bloch, Olshen, dan Walker (2002) membahas topik ini
secara rinci dan melaporkan kinerja yang sangat baik untuk penyesuaian Breiman dalam serangkaian
percobaan empiris.

https://translate.googleusercontent.com/translate_f 182/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

© 2009 oleh Taylor & Francis Group, LLC

Halaman 204

196 CART: Pohon Klasifikasi dan Regresi

10.13 Yayasan Teoritis


Pekerjaan paling awal pada pohon keputusan sepenuhnya tidak teoritis. Pohon diusulkan sebagai
metode yang tampaknya bermanfaat dan kesimpulan mengenai sifat mereka adalah
berdasarkan pengamatan kinerja pohon pada contoh-contoh empiris. Sementara pendekatan ini
tetap populer dalam pembelajaran mesin, kecenderungan terbaru dalam disiplin telah
untuk meraih landasan teori yang lebih kuat. Monograf CART membahas teori
dengan kecanggihan, menawarkan wawasan teknis penting dan bukti untuk hasil utama.
Sebagai contoh, penulis memperoleh tingkat kesalahan klasifikasi yang diharapkan untuk maksimal
(Terbesar mungkin) pohon, menunjukkan bahwa ia dibatasi dari atas oleh Bayes dua kali
menilai. Para penulis juga membahas bias varians trade-off di pohon dan menunjukkan caranya
bias dipengaruhi oleh jumlah atribut. Sebagian besar didasarkan pada pekerjaan sebelumnya
Rekan penulis CART Richard Olshen dan Charles Stone, tiga bab terakhir dari
monograf menghubungkan CART dengan karya teoretis tentang tetangga terdekat dan menunjukkannya sebagai
ukuran sampel cenderung hingga tak terbatas sebagai berikut: (1) perkiraan regresi
fungsi konvergen ke fungsi sebenarnya dan (2) risiko node terminal bertemu
untuk risiko aturan Bayes yang sesuai. Dengan kata lain, berbicara secara informal,
dengan sampel yang cukup besar pohon CART akan bertemu dengan fungsi sebenarnya yang berkaitan
target untuk prediktornya dan mencapai biaya sekecil mungkin (tingkat Bayes).
Secara praktis, hasil tersebut hanya dapat diwujudkan dengan ukuran sampel yang jauh lebih besar
daripada yang umum digunakan saat ini.

10.14 Penelitian Terkait Pasca-CART


Penelitian dalam pohon keputusan telah berlanjut dengan penuh semangat sejak tahun 1984 penerbitan
monograf CART, seperti yang ditunjukkan sebagian oleh beberapa ribu kutipan kepada mono-
grafik ditemukan dalam literatur ilmiah. Demi singkatnya kami membatasi diri
di sini untuk penelitian terpilih yang dilakukan oleh empat rekan penulis CART sendiri setelahnya
1984. Pada tahun 1985 Breiman dan Friedman menawarkan ACE (bergantian harapan kondisional
tions), metodologi murni berbasis data untuk menyarankan transformasi variabel
tions dalam regresi; karya ini sangat mempengaruhi karya Hastie dan Tibshirani yang digeneralisasi
model aditif (GAM, 1986). Stone (1985) mengembangkan teori yang ketat untuk gaya
regresi aditif nonparametrik diusulkan dengan ACE. Ini segera diikuti oleh
Pendekatan partisi rekursif Friedman untuk regresi spline (multivariat adaptif
regresi splines, MARS). Versi pertama dari program MARS di arsip kami
diberi label Versi 2.5 dan bertanggal Oktober 1989; makalah pertama yang diterbitkan muncul sebagai
artikel utama dengan diskusi dalam Annals of Statistics pada tahun 1991. The MARS juga
Rithm sangat bergantung pada ide-ide yang dikembangkan dalam monograf CART tetapi menghasilkan model

© 2009 oleh Taylor & Francis Group, LLC

https://translate.googleusercontent.com/translate_f 183/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

Halaman 205

10.14 Penelitian Terkait Pasca-CART 197

yang mudah dikenali sebagai regresi pada dipisah secara rekursif (dan dipilih)
prediktor. Stone, dengan kolaborator, memperluas pendekatan regresi spline untuk bahaya
pemodelan ard (Kooperberg, Stone, dan Truong, 1995) dan regresi polikotomi
(1997).
Breiman aktif dalam mencari cara untuk meningkatkan akurasi, ruang lingkup aplikasi
kelenturan, dan menghitung kecepatan pohon CART. Pada tahun 1992 Breiman adalah yang pertama
memperkenalkan pohon keputusan multivariat (variabel dependen vektor) dalam perangkat lunak tetapi
tidak menulis makalah tentang topik tersebut. Pada tahun 1995, Spector dan Breiman diimplementasikan
strategi untuk memparalelkan CART di jaringan komputer menggunakan C-Linda
lingkungan pemrograman paralel. Dalam penelitian ini penulis mengamati bahwa keuntungan
dari paralelisasi terutama dicapai untuk set data yang lebih besar menggunakan hanya beberapa
dari prosesor yang tersedia. Pada 1994 Breiman menemukan "agregasi bootstrap":
membuat ansambel prediktif dengan menumbuhkan sejumlah besar pohon CART pada saat boot-
sampel tali diambil dari set data pelatihan tetap. Pada 1998 Breiman menerapkan gagasan itu
ansambel untuk pembelajaran online dan pengembangan pengklasifikasi untuk yang sangat besar
basis data. Dia kemudian memperluas gagasan baris pengambilan sampel secara acak dalam pelatihan
data ke kolom pengambilan sampel acak di setiap simpul pohon untuk sampai pada gagasan
hutan acak. Breiman mengabdikan tahun-tahun terakhir hidupnya untuk memperluas secara acak
hutan dengan rekan penulisnya Adele Cutler, memperkenalkan metode baru untuk nilai yang hilang
imputasi, deteksi outlier, penemuan cluster, dan cara-cara inovatif untuk memvisualisasikan data
menggunakan hasil hutan acak dalam serangkaian makalah dan posting Web dari tahun 2000
hingga 2004.
Richard Olshen terutama berfokus pada aplikasi biomedis dari pohon keputusan.
Dia mengembangkan pendekatan berbasis pohon pertama untuk analisis kelangsungan hidup (Gordon dan Olshen,
1984), memberikan kontribusi untuk penelitian kompresi gambar (Cosman et al., 1993), dan telah
baru-baru ini memperkenalkan splitter kombinasi linier baru untuk analisis yang sangat tinggi
data dimensi (genetika penyakit kompleks).
Friedman memperkenalkan peningkatan gradien stokastik di beberapa makalah yang dimulai pada
1999 (dikomersialkan sebagai perangkat lunak TreeNet) yang tampaknya merupakan iklan substansial
vance lebih meningkatkan konvensional. Pendekatan Friedman menggabungkan generasi
pohon yang sangat kecil, pengambilan sampel acak dari data pelatihan di setiap siklus pelatihan,
belajar lambat melalui pembaruan model yang sangat kecil pada setiap siklus pelatihan, penolakan selektif
data pelatihan berdasarkan residu model, dan memungkinkan untuk berbagai tujuan
fungsi, untuk sampai pada sistem yang telah melakukan sangat baik dalam berbagai
aplikasi dunia. Friedman mengikuti pekerjaan ini dengan teknik mengompresi
ansambel pohon menjadi model yang mengandung jauh lebih sedikit pohon menggunakan metode baru
untuk regresi yang diatur. Friedman menunjukkan bahwa setelah pemrosesan ansambel pohon menjadi
kompres mereka sebenarnya dapat meningkatkan kinerja mereka pada data ketidaksepakatan. Terima ini
Sejalan dengan penelitian selangkah lebih maju, Friedman kemudian memperkenalkan metode untuk mengekspresikan kembali
model ansambel pohon sebagai koleksi "aturan" yang juga dapat secara radikal mengompresi
model dan kadang-kadang meningkatkan akurasi prediksi mereka.
Petunjuk lebih lanjut untuk literatur, termasuk perpustakaan aplikasi CART, bisa
dapat ditemukan di situs Web Sistem Salford: http://www.salford-systems.com.

© 2009 oleh Taylor & Francis Group, LLC

https://translate.googleusercontent.com/translate_f 184/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
Halaman 206

198 CART: Pohon Klasifikasi dan Regresi

10.15 Ketersediaan Perangkat Lunak


Perangkat lunak CART tersedia dari Salford Systems, di http: //www.salford-
systems.com; versi evaluasi tanpa biaya dapat diunduh berdasarkan permintaan. Dapat dieksekusi
untuk sistem operasi Windows serta Linux dan UNIX dapat diperoleh di
versi 32-bit dan 64-bit. Lisensi akademik untuk profesor secara otomatis diberikan
lisensi gratis untuk siswa terdaftar mereka. Kode sumber CART, ditulis oleh Jerome
Friedman, tetap menjadi rahasia dagang dan hanya tersedia dalam biner yang dikompilasi
dari Salford Systems. Sementara sistem open-source populer (dan komersial lainnya
sistem kepemilikan) menawarkan pohon keputusan yang terinspirasi oleh karya Breiman, Friedman,
Olshen, dan Stone, sistem ini menghasilkan pohon yang terbukti berbeda dari
orang-orang dari CART sejati ketika diterapkan pada set data dunia nyata yang kompleks. CART sudah
digunakan oleh Salford Systems untuk memenangkan sejumlah kompetisi penambangan data internasional;
detail tersedia di situs Web perusahaan.

10.16 Latihan
1. (a) Bagi pemula pohon keputusan, variabel paling penting dalam pohon CART harus
menjadi pemecah simpul root, namun tidak jarang untuk melihat variabel yang berbeda terdaftar
sebagai yang paling penting dalam output ringkasan CART. Bagaimana ini bisa terjadi? (B) Jika Anda
jalankan model CART untuk tujuan memberi peringkat variabel prediktor di Anda
kumpulan data dan kemudian Anda jalankan kembali model tidak termasuk semua variabel 0-pentingnya,
apakah Anda akan mendapatkan pohon yang sama di putaran kedua? (c) Bagaimana jika Anda menjalankan kembali pohon itu
menjaga sebagai hanya variabel prediktor yang muncul sebagai splitter pada putaran pertama?
Adakah kondisi yang menjamin Anda memperoleh pohon yang sama?
2. Setiap simpul internal dalam pohon CART berisi pembagi utama, pesaing
split, dan pengganti split. Di beberapa pohon, variabel yang sama akan muncul sebagai keduanya
pesaing dan pengganti tetapi menggunakan poin split yang berbeda. Misalnya, sebagai a
pesaing variabel dapat membagi simpul dengan xj < = c , sementara sebagai pengganti
variabel mungkin membagi simpul sebagai xj < = d . Jelaskan mengapa ini bisa terjadi.
3. Di antara enam aturan pemisahan yang berbeda, CART menawarkan Gini dan pemisahan dua
aturan untuk menumbuhkan pohon. Jelaskan mengapa analis mungkin lebih suka hasil
dua aturan bahkan jika itu menghasilkan akurasi yang lebih rendah.
4. Untuk target biner jika dua pohon CART ditanam pada data yang sama, yang pertama
menggunakan aturan pemisahan Gini dan yang kedua menggunakan aturan probabilitas kelas,
yang mana yang cenderung mengandung lebih banyak node? Akankah kedua pohon menunjukkan hal yang sama
ketepatan? Akankah pohon yang lebih kecil terkandung di dalam yang lebih besar? Jelaskan
perbedaan antara kedua pohon.
5. Misalkan Anda memiliki kumpulan data untuk target biner berkode 0/1 di mana 80% dari
catatan memiliki nilai target 0 dan Anda menumbuhkan pohon CART menggunakan default

© 2009 oleh Taylor & Francis Group, LLC

Halaman 207

https://translate.googleusercontent.com/translate_f 185/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

Referensi 199

Pengaturan SEBELUMNYA SEBELUMNYA. Bagaimana hasil akan berubah jika Anda menjalankan kembali model
menggunakan variabel WEIGHT w dengan w = 1 saat targetnya adalah 0 dan w = 4 kapan
targetnya 1?
6. Saat menanam pohon CART di kumpulan data yang lebih besar berisi puluhan ribu
catatan atau lebih, orang sering menemukan bahwa akurasi pohon menurun hanya sedikit sebagai
pohon ditanam jauh lebih besar dari ukuran optimalnya. Dengan kata lain, pada data besar
set pohon CART terlalu besar tampaknya hanya cocok sedikit. Mengapa demikian?
7. Model CART bukan hanya satu pohon tetapi juga kumpulan pohon yang bersarang
yang memiliki karakteristik kinerja sendiri (akurasi, area di bawah ROC
melengkung). Mengapa penulis CART menyarankan bahwa pohon terbaik belum tentu
pohon paling akurat tetapi bisa juga pohon terkecil dalam urutan pohon
dalam beberapa interval toleransi pohon yang paling akurat? Bagaimana dengan toleransi
interval dihitung?
8. Untuk pembelajaran yang sensitif biaya, ketika kesalahan yang berbeda dikaitkan dengan perbedaan-
Dalam biaya, penulis CART menyesuaikan prior untuk mencerminkan biaya, yang pada dasarnya
suatu bentuk reweighting data. Kapan prior yang disesuaikan dengan sempurna mencerminkan biaya
dan kapan mereka hanya memperkirakan biayanya? Bagaimana gini simetris
aturan pemisahan membantu mencerminkan biaya kesalahan klasifikasi?
9. Para penulis CART memutuskan strategi tumbuh-kemudian-pangkas untuk pemilihan suatu
pohon keputusan optimal daripada mengikuti aturan penghentian yang tampaknya lebih sederhana
metode. Jelaskan bagaimana masalah tipe XOR dapat digunakan untuk mengalahkan setiap penghentian
aturan berdasarkan kebaikan kriteria split untuk satu atau lebih split.
10. Jika kumpulan data pelatihan selesai (tidak berisi nilai yang hilang dalam prediktor apa pun),
bagaimana pohon CART dapat tumbuh pada data sedemikian rupa sehingga dapat mengatasi masalah yang hilang
nilai yang ditemui dalam data masa depan?

Referensi
Bloch, DA, Olshen, RA, dan Walker MG (2002) Estimasi risiko untuk klasifikasi
pohon. Jurnal Statistik Komputasi & Grafis , 11, 263–288.

Breiman, L. (1995) Penelitian terkini dalam matematika generalisasi. Memproses-


Lokakarya CNLS Institut Santa Fe tentang Pendekatan Formal untuk Dibimbing
Belajar . David Wolpert, Ed. Addison-Wesley, 361-368.

Breiman, L. (1998) Menempati Suara Kecil untuk Klasifikasi di Database Besar dan
On line. Departemen Statistik, Universitas California, Berkeley.

Breiman, L., dan Friedman, JH (1985) Memperkirakan transformasi optimal untuk beberapa
regresi dan korelasi. Jurnal Asosiasi Statistik Amerika ,
80, 580–598.

© 2009 oleh Taylor & Francis Group, LLC

Halaman 208

200 CART: Pohon Klasifikasi dan Regresi

https://translate.googleusercontent.com/translate_f 186/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data
Breiman, L., Friedman, JH, Olshen, RA, dan Stone, CJ (1984) Klasifikasi dan
Pohon Regresi , Wadsworth, Belmont, CA. Diterbitkan ulang oleh CRC Press.

Breiman, L. dan Stone, J. (1978) Pohon Klasifikasi Biner Parsimonious, Teknis


Laporan, Layanan Teknologi Corp, Los Angeles.

Cosman, PC, Tseng, C., Gray, RM, Olshen, RA, dkk. (1993) Pohon-terstruktur
kuantisasi vektor pemindaian dada CT: Kualitas gambar dan akurasi diagnostik.
Transaksi IEEE pada Pencitraan Medis , 12, 727-739.

Cover, T. dan Hart, P. (1967) Klasifikasi pola tetangga terdekat, IEEE Trans
Teori Informasi 13 , halaman: 21–27.

Domingos, P. (1999) MetaCost: Metode umum untuk membuat pengklasifikasi


peka. Dalam Prosiding Konferensi Internasional Kelima tentang Pengetahuan Dis-
covery dan Data Mining , hlm. 155–164.

Doyle, P. (1973) Penggunaan detektor interaksi otomatis dan prosedur pencarian serupa
Dures. Triwulan Penelitian Operasional , 24, 465-467.

Einhorn, H. (1972) Alkimia dalam ilmu perilaku. Opini Publik Triwulanan ,


36, 367-378.

Friedman, JH (1977) Sebuah aturan keputusan partisi rekursif untuk klasifikasi nonparametric
sifikasi. IEEE Trans. Komputer , C-26, 404. Juga tersedia sebagai Stanford Linear
Pusat Akselerator Rep. SLAC-PUB-1373 (Rev. 1975).

Friedman, JH (1999) Meningkatkan Stochastic Gradient . Departemen Statistik, Stanford


Universitas.

Friedman, JH, Bentley, JL, dan Finkel, RA (1977) Suatu algoritma untuk menemukan yang terbaik
cocok dalam waktu logaritmik. ACM Trans. Matematika Perangkat Lunak , 3, 209. Juga tersedia
sebagai Stanford Linear Accelerator Center Rep. SIX-PUB-1549, Februari 1975.

Friedman, JH, Kohavi, R., dan Yun, Y. (1996) Pohon keputusan malas. Dalam Prosiding
Konferensi Nasional Ketigabelas tentang Kecerdasan Buatan , hlm. 717-724, AAAI
Pers / MIT Pers, San Francisco, CA.

Gordon, L., dan Olshen, RA (1985) Analisis kelangsungan hidup terstruktur pohon (dengan diskusi
sion). Laporan Perawatan Kanker , 69, 1065-1068.

Gordon, L., dan Olshen, RA (1984) Hampir pasti konsisten regresi nonparametrik
Sion dari skema partisi rekursif. Jurnal Analisis Multivariat , 15,
147–163.

Generalized Additive Model Generalized dan Tibshirani. (1986) Ilmu Statistik . 1,


297–318.

Huang, J., Lin, A., Narasimhan, B., et al. (2004) Pembelajaran dengan pengawasan terstruktur pohon
dan genetika hipertensi. Proc Natl. Acad. Sci. , 20 Juli 101 (29), 10529–
10534.

© 2009 oleh Taylor & Francis Group, LLC

Halaman 209

Referensi 201

Kooperberg, C., Bose, S., dan Stone, CJ (1997) Regresi polikotomi. Jurnal
Asosiasi Statistik Amerika , 92, 117-127.

Kooperberg, C., Stone, CJ, dan Truong, YK (1995) Regresi bahaya. Jurnal dari
Asosiasi Statistik Amerika , 90, 78-94.

https://translate.googleusercontent.com/translate_f 187/188
6/24/2020 Sepuluh Algoritma Top dalam Penambangan Data

Messenger, RC, dan Mandell, ML (1972) Suatu teknik pencarian model untuk prediksi
analisis multivariat skala nominal. Jurnal Asosiasi Statistik Amerika-
tion , 67, 768-772.

Morgan, JN, dan Sonquist, JA (1963) Masalah dalam analisis data survei, dan
sebuah lamaran. Jurnal Asosiasi Statistik Amerika , 58, 415-435.

Provost, F., dan Domingos, P. (2002) Induksi pohon untuk peringkat berbasis probabilitas.
Pembelajaran Mesin , 52, 199–215.

Quinlan, R. (1989) Nilai atribut tidak dikenal dalam induksi. Dalam Prosiding Keenam
Lokakarya Internasional tentang Pembelajaran Mesin , hlm. 164–168.

Stone, CJ (1977) Konsisten regresi nonparametrik (dengan diskusi). Catatan sejarah


Statistik , 5, 595–645.

Stone, C. (1985) Regresi aditif dan model non-parametrik lainnya, Annal. Statist. ,
13, 689–705.

Ting, KM (2002) Metode pembobotan instance untuk menginduksi pohon yang sensitif biaya. IEEE
Trans. Pengetahuan dan Rekayasa Data , 14, 659–665.

© 2009 oleh Taylor & Francis Group, LLC

https://translate.googleusercontent.com/translate_f 188/188

Anda mungkin juga menyukai