getting close to your data…

Entries Tagged as 'Data Mining'

Pemodelan Klasifikasi dengan Kelas Tidak Seimbang #1

January 5th, 2018 · No Comments

Apa itu?

Beberapa analis mendapati data yang digunakan pada saat menyusun model klasifikasi memiliki proporsi kelas yang timpang antara satu dengan yang lain.  Misalnya saja, dalam pembuatan model credit scoring, banyaknya nasabah yang BAD dalam data barangkali hanya 1% hingga 5% saja sedangkan sisanya adalah nasabah GOOD.  Dengan kata lain perbandingan antara kelas BAD:GOOD = 1:99 atau 5:95.  Kasus serupa juga dihadapi oleh para peneliti di bidang epidemologi, dimana kejadian individu yang mengalami penyakit tertentu sangat kecil.  Perbandingan antara yang sakit dan tidak bisa jadi adalah 1:100 atau bahkan lebih kecil lagi yaitu 1:1000.

Kelas dengan proporsi yang kecil dikenal sebagai kelas minoritas, sedangkan kelas yang dominan disebut kelas mayoritas

 

Masalahnya apa?

Penerapan secara langsung teknik-teknik pemodelan klasifikasi seperti regresi logistik, analisis diskriminan, dan classification tree umumnya akan gagal memperoleh model yang mampu memprediksi kejadian minoritas.  Kejadian ini kadang-kadang tidak disadari oleh analis karena mereka menggunakan kriteria akurasi sebagai kebaikan model.  Lihat bahwa pada kondisi perbandingan BAD:GOOD adalah 1:99, jika model memprediksi seluruhnya adalah GOOD, maka akurasi atau ketepatan prediksi dari model tersebut adalah 99%.  Terlihat besar dan memuaskan…. tapi kenyataannya model itu gagal mengidentifikasi kondisi yang BAD.  Seluruhnya terprediksi dengan salah.  Situasi ini yang dikenal sebagai accuracy paradox.

 

Solusinya?

Ada beberapa hal bisa dikerjakan dan secara empirik membantu memperoleh model yang lebih baik.  Solusi tersebut akan dipaparkan pada tulisan berikutnya….

 

 

 

Tags: Data Mining · Data Science · Statistics

Ensemble Learning: Primadona Analitik di Masa Depan (INFOKOM Des 2016)

December 28th, 2017 · No Comments

tulisan ini dimuat di majalah INFOKOM edisi Desember 2016 rubrik Business Analytics

ditulis oleh

Bagus Sartono

Dosen di Departemen Statistika FMIPA-IPB

bagusco@gmail.com, bagusco@ipb.ac.id

 

Model Prediktif

Salah satu aktivitas penting dalam proses analitik adalah menghasilkan model prediktif, yaitu suatu model yang diharapkan dapat memberikan prediksi yang sangat baik terhadap kejadian di masa mendatang.  Model prediktif tersebut antara lain diperlukan oleh bank dan perusahaan pembiayaan dalam bentuk credit scoring model untuk memperkirakan apakah seseorang yang mengajukan aplikasi pinjaman akan macet kreditnya atau tidak.  Tentu saja kejadian bahwa kreditnya tersebut perlu diprediksi jauh hari sebelum diberikan keputusan apakah aplikasinya ditolak atau diterima.  Mereka yang diprediksi akan memiliki peluang besar untuk gagal bayar akan memperoleh skor kecil berdasarkan model yang dibangun, sebaliknya mereka yang diprediksi akan mampu membayar dengan lancar diberikan skor besar oleh model.

Model-model yang serupa juga diperlukan oleh banyak perusahaan berbasis telemarketing yang memerlukan short-list calon pelanggan untuk dihubungi dan ditawarkan produk.  Short-list tersebut umumnya diperoleh dari list yang sangat panjang dan memuat banyak nama individu.  Perusahaan memerlukan model prediktif untuk memisahkan individu yang potensial dan yang tidak.  Individu yang potensial adalah mereka yang diprediksi akan menerima tawaran produk yang diajukan oleh petugas telemarketer.  Aktivitas ini sangat identik dengan yang dikerjakan dalam campaign via SMS (short message service) oleh berbagai perusahaan retail.

Tersedia banyak pemodelan prediktif untuk melakukan prediksi terjadinya (atau tidak terjadinya) suatu kejadian masa mendatang.  Beberapa yang disebut berikut adalah teknik dan algoritma pemodelan yang sering digunakan oleh analist baik yang berbasis pemikiran statistika maupun machine learning, yaitu: regresi logistik, analisis diskriminan, k-nearest-neighbor, Bayesian classifier, classification tree, neural network, dan support vector machine.  Ada beberapa algoritma lain yang dapat ditemukan dengan mudah di banyak literatur ilmiah maupun praktis.

Berbagai macam algoritma yang disebutkan di atas dapat digunakan untuk menjawab tujuan sama, dan banyak orang berpendapat bahwa satu sama lain dapat dipandang memiliki sifat komplementari.  Karena itu, kemudian muncul pertanyaan besar: Algoritma atau teknik mana yang sebaiknya digunakan?  Tidak hanya itu, dengan menerapkan salah satu teknik yang sama, dua orang analis dapat menghasilkan model yang berbeda karena dalam proses pemodelannya dapat saja mereka menggunakan prediktor yang berbeda, menggunakan sampel data yang berbeda, serta menerapkan pre-processing yang berbeda sesuai dengan kreativitas masing-masing. Sehingga sekali lagi kemudian muncul pertanyaan: model mana yang sebaiknya digunakan?

Model Selection

Pertanyaan tersebut kemudian berujung pada penggunaan berbagai kriteria untuk menentukan model terbaik.  Diskusi kemudian berkembang dalam ranah model selection (pemilihan model) yang menggunakan berbagai macam kriteria.

Secara umum penulis memahami bahwa ada dua kriteria besar dalam penentuan model mana yang digunakan.  Kriteria pertama terkait dengan kinerja prediksinya.  Dalam bahasa lain orang menggunakan istilah akurasi atau ketepatan prediksi.  Model dengan akurasi yang lebih tinggi disebut sebagai model yang sebaiknya digunakan.  Kriteria ini dikenal sebagai goodness of fit.  Ukuran yang termasuk dalam kategori ini antara lain likelihood function, correct classification rate, sensitivity dan specificity.

Kriteria yang kedua adalah terkait dengan kesederhanaan model.  Secara naluriah model yang disukai adalah model yang lebih ringkas, menggunakan prediktor yang lebih sedikit, atau bentuk-bentuk fungsi yang lebih sederhana.  Kriteria kedua ini dikenal sebagai complexity cost.  Ukuran yang tergolong dalam kriteria ini meliputi banyaknya parameter dalam model, banyaknya simpul pada tree dan neural network, serta derajat polinomial dari variabel prediktor.  Complexity cost ini penting diperhatikan agar model prediksi tidak mengalami masalah overfit.

Kriteria-kriteria di atas selanjutnya digunakan oleh para analis untuk menentukan model mana yang digunakan.  Dua jenis kriteria tersebut banyak digabungkan menjadi satu kriteria gabungan seperti yang dilakukan pada AIC (Akaike’s Information Criterion) dan yang sejenisnya. Model dengan goodness-of-fit besar dan complexity cost kecil merupakan model yang terpilih dalam proses model selection ini.

 

Pergeseran Paradigma

Kemajuan teknologi komputasi mendorong berbagai perubahan dan perkembangan dalam analitik.  Perkembangan tidak hanya terjadi dengan munculnya algoritma dan teknik baru, yang awalnya tidak mudah dan tidak murah secara komputasi.  Perkembangan juga terjadi pada paradigma penggunaan model akhir dalam melakukan prediksi.

Pada saat komputasi masih menjadi kendala besar dalam pemodelan, ada pemikiran bahwa algoritma yang diterapkan tinggal pilih salah satu saja dari yang tersedia karena untuk memperoleh model dari satu algoritma bisa jadi memerlukan waktu yang tidak sedikit.  Dengan teknologi terkini, satu buah algoritma dapat menghasilkan sebuah model prediktif dalam waktu yang singkat apabila data-data yang diperlukan telah tersedia.

Kondisi ini kemudian memunculkan ide untuk melakukan prediksi tidak hanya didasarkan pada satu buah model (yang dianggap paling baik), namun melakukan prediksi dengan cara menggabungkan hasil prediksi dari banyak model.  Paradigma ini yang dikenal sebagai ensemble learning. Theodosios Tsiakis (2015) dalam buku yang dieditnya dengan judul Trends and Innovations in Marketing Information Systems memuat bagaimana ensemble learning ini bekerja. Gambar 1 menyajikan secara ringkas sistem ensemble ini dipergunakan untuk melakukan prediksi.

 

Gambar 1. Mekanisme dasar pendekatan ensemble learning (sumber: Tsiakis, 2015)

Dari satu buah dataset dapat diperoleh banyak model prediksi baik menggunakan berbagai teknik yang berbeda maupun menggunakan algoritma yang sejenis.  Masing-masing model selanjutnya menghasilkan prediksi yang dapat berbeda satu dengan yang lainnya.  Pendekatan ensemble learning menggabungkan berbagai macam prediksi tersebut menjadi satu buah prediksi akhir.  Teknik penggabungan yang banyak digunakan adalah averaging dan majority vote. Pada penerapan majority vote untuk credit scoring misalnya, keputusan apakah individu yang mengajukan aplikasi pinjaman akan ditolak atau diterima aplikasinya didasarkan pada suara terbanyak dari hasil prediksi macet-lancar dari banyak model.

Secara umum ensemble learning terbagi menjadi dua kelompok yaitu hybrid ensemble dan non-hybrid ensemble.  Yang disebut hybrid ensemble adalah jika model-model yang nanti digabungkan prediksinya merupakan model-model yang dihasilkan dari berbagai jenis algoritma berbeda.  Sedangkan non-hybrid ensemble menggabungkan model-model yang diperoleh dari algoritma sejenis.

 

Ensemble Learning, pilihan yang tepat

Kenyataan bahwa pendekatan ensemble learning mampu memberikan solusi prediksi yang lebih akurat daripada model-model tunggal dapat ditemui dari berbagai paper di jurnal ilmiah.  Teknik-teknik ensemble yang mengandalkan variasi dari pendekatan random forest dan boosting mampu memberikan prediksi dengan akurasi yang sangat baik.  Random forest bekerja dengan membuat model-model penyusun ensemble sedemikian rupa sehingga berbagai kemungkinan dapat terakomodir secara maksimal, sedangkan boosting bekerja secara iteratif sehingga kasus-kasus yang tidak mudah diprediksi menjadi bukan masalah lagi.

Kemampuan pendekatan ensemble ini tidak hanya tertuang pada berbagai paper ilmiah, namun juga dapat dilihat pada penyelesaian kasus-kasus aplikatif seperti yang dapat dilihat pada kompetisi data science Kaggle (https://www.kaggle.com/).  Kompetisi ini terbuka bagi pegiat data science dan data mining untuk memberikan solusi prediktif dari kasus-kasus yang disampaikan oleh banyak perusahaan besar berskala internasional.  Setiap tim atau individu dipersilakan mengembangkan solusi dan menyajikan prediksinya untuk kemudian dinilai.  Mereka yang memberikan prediksi dengan akurasi yang paling tinggi yang dinyatakan sebagai pemenang.  Peringkat tiga besar dalam lima tahun terakhir dari kompetisi ini didominasi oleh mereka yang menggunakan pendekatan ensemble yang digabungkan dengan berbagai macam algoritma dasar.

Berdasarkan apa yang berkembang saat ini, pendekatan ensemble dalam pemodelan prediktif menjadi pilihan tepat bagi mereka yang berupaya memperoleh prediksi yang memuaskan dengan cara yang sangat mudah untuk dikerjakan.  Hal senada juga telah dikemukanan oleh Mu Zhu (University of Waterloo) pada jurnal The American Statistician pada tahun 2008.

Tags: Data Mining · Data Science

Analisis Gerombol — Bagian 2

June 4th, 2016 · No Comments

Pada seri tulisan ini akan dipaparkan beberapa hal dasar dan umum mengenai algoritma K-MEANS pada analisis gerombol (cluster analysis) dengan menitikberatkan pada pemahaman konsep dasar dan penjelasan proses algoritmanya. Ilustrasi sederhana dan program R disajikan untuk mempermudah pemahaman.

Kritik, saran dan pertanyaan terhadap materi tulisan ini dapat disampaikan melalui email pada alamat bagusco@gmail.com. Penulis akan sangat mengapresiasi berbagai masukan tersebut. Akhirnya, selamat membaca.

Tulisan dapat didownload pada link berikut: Analisis Cluster — Bagian 2

Tags: Data Mining

Analisis Gerombol — Bagian 1

June 4th, 2016 · No Comments

Pada seri tulisan ini akan dipaparkan beberapa hal dasar dan umum mengenai analisis gerombol (cluster analysis) dengan menitikberatkan pada pemahaman konsep dasar dan penjelasan proses algoritmanya. Beberapa aplikasi akan diberikan dengan uraian yang lebih terbatas. Kritik, saran dan pertanyaan terhadap materi tulisan ini dapat disampaikan melalui email pada alamat bagusco@gmail.com. Penulis akan sangatmengapresiasi berbagai masukan tersebut. Akhirnya, selamat membaca.

berikut link untuk mendownload tulisannya: Analisis Cluster — Bagian 1

Tags: Data Mining

Pohon Klasifikasi — Bagian 1

May 20th, 2016 · No Comments

Ini adalah seri tulisan data mining dengan topik Pohon Klasifikasi (classification tree).  Akan ada beberapa bagian terpisah mengenai topik ini dan ini merupakan Bagian 1.

Tulisan ini memamaparkan beberapa hal dasar dan umum terkait dengan pohon klasifikasi yang perlu diketahui oleh mereka yang ingin mempelajari penggunaan dan pengembangan teknik ini. Untuk diketahui, tulisan ini hanya ditujukan untuk sarana berbagi pengetahuan dan tidak disiapkan sebagai rujukan ilmiah. Sebagian besar isi dalam tulisan ini diilhami oleh beberapa chapter dari buku Tom Mithcell (Machine Learning, McGraw-Hill, 1997), yang kemudian diramu berdasarkan pengalaman penulis menerapkan pohon klasifikasi dalam berbagai kasus dan pengalaman menyampaikan materi ini di perkuliahan maupun berbagai pelatihan. Pembaca yang ingin memperoleh rujukan teoritis dapat menelusurinya pada buku dan artikel jurnal yang relevan. Kritik, saran dan pertanyaan terhadap materi tulisan ini dapat disampaikan melalui email pada alamat bagusco@gmail.com. Penulis sangat mengapresiasi berbagai masukan tersebut. Akhirnya, selamat membaca.

 

Tulisan lengkap dapat di-download pada link berikuthttp://bagusco.staff.ipb.ac.id/files/2016/05/Pohon-Klasifikasi.pdf 

Tags: Data Mining

Pengenalan Algoritma Genetik untuk Pemilihan Peubah Penjelas

February 24th, 2011 · No Comments

Algoritma genetik (genetics algorithm) telah menjadi salah satu algoritma optimasi yang banyak digunakan di berbagai permasalahan.  Tulisan ini memaparkan ide dasar algoritma genetik dan penerapannya dalam pemilihan peubah dalam analisis regresi.  Untuk tujuan memudahkan memahami jalannya penerapan algoritma, ditampilkan pula program sederhana menggunakan SAS/IML yang dengan mudah dapat dimodifikasi pada beberapa bagian.

selengkapnya di FSK 2010 – GA (Pengenalan Algoritma Genetik untuk Pemilihan Peubah Penjelas dalam Model Regresi menggunakan SAS/IML)

Tags: Data Mining

Pohon Gabungan — Ensemble Tree

February 24th, 2011 · No Comments

Pohon regresi dan pohon klasifikasi telah menjadi salah satu teknik analisis prediktif yang banyak digunakan dalam berbagai bidang.  Metode pohon gabungan muncul sebagai pengembangan dari teknik pohon yang diharapkan dapat mengatasi kelemahan-kelemahan yang ada pada analisis pohon tunggal.  Pada prinsipnya pohon gabungan melakukan prediksi dengan menggabungkan nilai-nilai prediksi dari banyak pohon tunggal.  Tulisan ini dimaksudkan sebagai tulisan perkenalan untuk memberikan gambaran singkat metode pohon gabungan yang tersedia dengan rinci di berbagai bahan bacaan.

Selengkapnya di FSK 2010 – Ensemble Tree (METODE POHON GABUNGAN: SOLUSI PILIHAN UNTUK MENGATASI KELEMAHAN POHON REGRESI DAN KLASIFIKASI TUNGGAL)

Tags: Data Mining

Menduga dan Menguji Koefisien Regresi Logistik Biner Menggunakan Solver di MS Excel

January 7th, 2011 · No Comments

Tulisan lama berjudul “Menduga dan Menguji Koefisien Regresi Logistik Biner Menggunakan Solver di MS Excel” yang terinspirasi pertanyaan seorang teman tentang penghitungan koefisien regresi logistik. Beberapa hal
dalam tulisan ini overlap dengan tulisan banyak orang. Selengkapnya di link berikut: logistic-solver

Tags: Data Mining · Statistics

Random Forest

March 25th, 2010 · No Comments

Repost…  salinan dari e-mail tanggal 8 Dec 2009

Dear all,
sekedar berbagi informasi, terutama untuk teman2 yang gemar melakukan analisis data atau pekerjaan-pekerjaan datamining.

Saya yakin, tidak sedikit teman2 di forum ini yang mengenal teknik analisis yang bernama TREE (baik itu classification tree maupun regression tree).  Teknik ini menjadi populer karena mampu mengatasi ketidaklinearan hubungan antara X dan Y di dalam model yang seringkali gagal kita antisipasi menggunakan model-model regresi konvensional.  Selain itu, penyajian visual berupa pohon memberikan kemudahan interpretasi dan pemahaman terhadap analisis yang sedang dilakukan.

Sejalan dengan perkembangan teknologi komputasi, berkembanglah teknik ini dengan munculnya konsep BAGGING (Bootsrap + AGGreatING).  Secara teori dapat ditunjukkan bahwa penggunaan bagging mampu mengurangi “standard error” tanpa mengusik sifat “biasedness” .  Dengan teknik ini, dari satu data tidak hanya dihasilkan satu buah pohon (tree), tetapi dihasilkan ratusan atau ribuan dari data yang di-resampling (bootstrap-ing) .  Dari ratusan atau ribuan pohon tadi selanjutnya dilakukan pengumpulan informasi.  Teknik yang umum dilakukan adalah menggunakan rata-rata untuk kasus prediksi di regression tree, dan teknik “majority vote” pada kasus prediksi di classification tree.  Beberapa orang menyebut bahwa teknik ini termasuk kelompok ENSEMBLE model, karena menggabungkan beberapa model jadi satu.  yang dimaksud model pada kasus ini adalah tree.

Juga muncul teknik BOOSTING (yang paling terkenal adalah algoritma Ada-Boost) dalam pembentukan tree.  Teknik ini bekerja dengan memberi bobot kepada data yang “sulit” diprediksi.  Dengan teknik ini diharapkan tingkat kesalahan prediksi bisa dikurangi.  Dan… ini berhasil di banyak kasus.

Awal tahun-tahun 2000/2001, muncul teknik analisis yang disebut RANDOM FOREST.  Sesuai namanya… forest merupakan kumpulan tree.  Konsepnya mirip dengan bagging.  Serupa dengan bagging, data yang digunakan pada masing2 tree merupakan resample dari data lengkap.  Namun, RF menggunakan sebagian variabel independen saja dalam pembentukan tree.  Jadi bisa dibayangkan, ratusan atau ribuan tree pada suatu random forest akan memiliki ukuran yang berbeda-beda.  Ada yang kecil, ada yang tinggi menjulang, ada yang rimbun, dan lain-lain.  Prediksi dilakukan dengan cara yang sama yaitu menggunakan rata-rata atau majority vote seperti pada teknik bagging.

Yang sudah terbiasa melakukan analisis dengan TREE… tidak ada salahnya mencoba RANDOM FOREST.

Tags: Data Mining