Binary Classification
Concept
Edward Purba Data Preprocessing
BINARY CLASSIFICATION CONCEPT
CLASSIFICATIO
N
MULTIPLE
BINARY
CLASSIFICATIO
CLASSIFICATION N
Special case untuk
mengklasifikasikan/ Mengklasifikasikan
mengkategorikan data untuk > 2 class
ke dalam 2 class
Edward Purba Data Preprocessing
BINARY CLASSIFICATION CONCEPT
CLASSIFICATIO
N
CLASS
INPUT
LABEL/OUTPUT/
DATA TARGET
Edward Purba Data Preprocessing
BINARY CLASSIFICATION CONCEPT
CLASSIFICATION
WORKFLOW
DATA PREPROCESSIN MACHINE
EXPLORATION G LEARNING
● EDA (Exploratory Data ● Menangani outliers, ● Regresi Logistik SVM
Analysis) Mendapatkan ● duplicate, dan missing data ● (Support Vector
● insight data ● Train/test split Encoding Machines)
● Feature scaling Feature
● engineering
Edward Purba Data Preprocessing
Dataset (Himpunan Data)
Attribute/Feature/Dimension
Class/Label/Target
Record/
Object/
Sample/
Tuple/
Data
Nominal
Numerik
Edward Purba Data Preprocessing
5
Tipe Data
(Kontinyu)
(Diskrit)
Edward Purba Data Preprocessing
6
Tipe Data Deskripsi Contoh Operasi
Ratio • Data yang diperoleh dengan cara • Umur geometric mean,
(Mutlak) pengukuran, dimana jarak dua titik • Berat badan harmonic mean,
pada skala sudah diketahui • Tinggi badan percent variation
• Mempunyai titik nol yang absolut • Jumlah uang
(*, /)
Interval • Data yang diperoleh dengan cara • Suhu 0°c-100°c, mean, standard
(Jarak) pengukuran, dimana jarak dua titik • Umur 20-30 tahun deviation,
pada skala sudah diketahui Pearson's
• Tidak mempunyai titik nol yang correlation, t and
absolut F tests
(+, - )
Ordinal • Data yang diperoleh dengan cara • Tingkat kepuasan median,
(Peringkat kategorisasi atau klasifikasi pelanggan (puas, percentiles, rank
) • Tetapi diantara data tersebut sedang, tidak puas) correlation, run
terdapat hubungan atau berurutan tests, sign tests
(<, >)
Nominal • Data yang diperoleh dengan cara • Kode pos mode, entropy,
(Label) kategorisasi atau klasifikasi • Jenis kelamin contingency
• Menunjukkan beberapa object • Nomer id karyawan correlation, 2
yang berbeda • Nama kota test
Edward Purba (=, ) Data Preprocessing
7
Data Preprocessing
Mengapa data
Mengapa data di
di proses
proses awal?
awal?
Pembersihan data
Pembersihan data
Integrasi dan
Integrasi dan transformasi
transformasi data
data
Reduksi data
Reduksi data
Diskritisasi dan
Diskritisasi dan pembuatan
pembuatan
konsep hierarki
konsep hierarki
Edward Purba Data Preprocessing
Mengapa Data Diproses Awal?
• Data dalam dunia nyata kotor
– Tak-lengkap: nilai-nilai atribut kurang, atribut
tertentu yang dipentingkan tidak disertakan, atau
hanya memuat data agregasi
• Misal, pekerjaan=“”
– Noisy: memuat error atau memuat outliers (data
yang secara nyata berbeda dengan data-data yang
lain)
• Misal, Salary=“-10”
Edward Purba Data Preprocessing 9/74
Mengapa Data Diproses Awal?
– Tak-konsisten: memuat perbedaan dalam kode atau
nama
• Misal, Age=“42” Birthday=“03/07/1997”
• Misal, rating sebelumnya “1,2,3”, sekarang
rating “A, B, C”
• Misal, perbedaan antara duplikasi record
• Data yang lebih baik akan menghasilkan data mining
yang lebih baik
• Data preprocessing membantu didalam memperbaiki
presisi dan kinerja data mining dan mencegah
kesalahan didalam data mining.
Edward Purba Data Preprocessing 10/74
Mengapa Data Kotor?
• Ketaklengkapan data datang dari
– Nilai data tidak tersedia saat dikumpulkan
– Perbedaan pertimbangan waktu antara saat data
dikumpulkan dan saat data dianalisa.
– Masalah manusia, hardware, dan software
• Noisy data datang dari proses data
– Pengumpulan
– Pemasukan (entry)
– Transmisi
Edward Purba Data Preprocessing 11/74
Mengapa Data Kotor?
• Ketak-konsistenan data datang dari
– Sumber data yang berbeda
– Pelanggaran kebergantungan fungsional
Edward Purba Data Preprocessing 12/74
Mengapa
Pemrosesan Awal Data Penting?
• Kualitas data tidak ada, kualitas hasil mining tidak
ada!
– Kualitas keputusan harus didasarkan kepada
kualitas data
• Misal, duplikasi data atau data hilang bisa
menyebabkan ketidak-benaran atau bahkan
statistik yang menyesatkan.
– Data warehouse memerlukan kualitas integrasi data
yang konsisten
• Ekstraksi data, pembersihan, dan transformasi
merupakan kerja utama dari pembuatan suatu data
warehouse. — Bill Inmon
Edward Purba Data Preprocessing 13/74
Pengukuran Kualitas Data
Multidimesi
• Kualitas data dapat diakses dalam bentuk:
– Akurasi
– Kelengkapan
– Konsistensi
– Ketepatan waktu
– Kepercayaan
– Nilai tambah
– Penafsiran
– Kemudahan diakses
• Kategori luas:
– Hakekat, kontekstual, bisa direpresentasikan,
dan mudah diakses
Edward Purba Data Preprocessing 14/74
Tugas Utama
Pemrosesan Awal Data
• Pembersihan data (data yang kotor)
– Mengisi nilai-nilai yang hilang,
menghaluskan noisy data, mengenali atau
menghilangkan outlier, dan memecahkan
ketak-konsistenan
• Integrasi data (data heterogen)
– Integrasi banyak database, banyak kubus
data, atau banyak file
• Transformasi data (data detail)
– Normalisasi dan agregasi
Edward Purba Data Preprocessing 15/74
Tugas Utama
Pemrosesan Awal Data
• Reduksi data (jumlah data yang besar)
– Mendapatkan representasi yang direduksi
dalam volume tetapi menghasilkan hasil
analitikal yang sama atau mirip
• Diskritisasi data (kesinambungan atribut)
– Bagian dari reduksi data tetapi dengan
kepentingan khusus, terutama data
numerik
Edward Purba Data Preprocessing 16/74
Bentuk-Bentuk Dari
Pemrosesan Awal Data
Pembersihan
PembersihanData
Data
Integrasi
IntegrasiData
Data
Transformasi
TransformasiData
Data
Reduksi
ReduksiData
Data
Edward Purba Data Preprocessing 17/74
Data Hilang
• Data tidak selalu tersedia
– Misal, banyak tuple atau record tidak memiliki nilai
yang tercatat untuk beberapa atribut, seperti
customer income dalam data sales
• Hilangnya data bisa karena
– Kegagalan pemakaian peralatan
– Ketidak-konsistenan dengan data tercatat lainnya
dan karenanya dihapus
– Data tidak dimasukkan karena salah pengertian
– Data tertentu bisa tidak dipandang penting pada saat
entry
Edward Purba Data Preprocessing 18/74
Data Hilang
– Tidak mencatat history atau tidak mencatat
perubahan data
• Kehilangan data perlu disimpulkan
Edward Purba Data Preprocessing 19/74
Bagaimana Menangani Data Hilang?
• Mengabaikan tuple atau record: mudah tetapi tidak
efektif, dan merupakan metoda terakhir
– Biasanya dilakukan saat label kelas hilang
– Tidak efektif bila persentasi dari nilai-nilai yang
hilang per atribut sungguh-sungguh bervariasi.
• Mengisi nilai-nilai yang hilang secara manual:
– Paling baik
– Membosankan
– Paling mahal biayanya
– Tak mungkin dilakukan dalam banyak hal!
Edward Purba Data Preprocessing 20/74
Bagaimana Menangani Data Hilang?
• Mengisi nilai-nilai yang hilang secara otomatis
menggunakan:
– Suatu konstanta global: misal, “unknown”, “Null”,
atau suatu kelas baru?!
• Suatu pola yang memuat “unknown” atau “Null”
adalah buruk
– Gunakan rata-rata atribut
– Pengempisan data ke mean/median
– Rata-rata atribut untuk seluruh sampel yang masuk
kedalam kelas yang sama
• Lebih cerdas, dan suatu metoda yang baik
Edward Purba Data Preprocessing 21/74
Bagaimana Menangani Data Hilang?
– Nilai yang paling mungkin: berbasis inferensi
seperti regresi, rumus bayesian, atau pohon
keputusan
• Klasifikasi untuk mendapatkan nilai yang paling
mungkin
• Suatu metoda yang baik dengan beberapa
overhead
– Menggunakan suatu nilai untuk mengisi nilai yang
hilang bisa membiaskan data, nilai bisa salah
– Nilai yang paling mungkin adalah yang terbaik
– Gunakan informasi yang paling banyak dari data
yang ada untuk memprediksi
Edward Purba Data Preprocessing 22/74
Noisy Data
• Noise: error acak atau variansi dalam suatu variabel
terukur
• Nilai-nilai atribut tak benar mungkin karena
– Kegagalan instrumen pengumpulan data
– Problem pemasukan data
– Problem transmisi data
– Keterbatasan teknologi
– Ketidak-konsistenan dalam konvensi penamaan
• Problem data lainnya yang memerlukan pembersihan
data
– Duplikasi record
– Data tak lengkap
– Data tidak konsisten
Edward Purba Data Preprocessing 23/74
Transformasi Data
• Perubahan bentuk data atau konsolidasi
– Smoothing: membuang noise/outlier dari data
– Agregasi
– Generalisasi (jalan → kota)
– Normalisasi: transformasi nilai menjadi skala yang
lebih kecil
• min-max
• z-score
– Pembentukan atribut baru
Edward Purba Data Preprocessing 24
Noisy Data: Membuang Outlier
• Outlier didefinisikan sebagai titik yang terletak sangat jauh dari rata-
rata variabel random pada umumnya yang berkorelasi dengan titik
tersebut.
• Jarak ini diukur terhadap ambang batas yang diberikan, biasanya nilai
berapa kalinya standar deviasi.
• Titik dengan nilai yang sangat berbeda dari nilai rata-rata akan
menghasilkan error yang besar pada saat pelatihan dan mungkin
memiliki efek yang berbahaya.
• jumlah outlier biasanya sedikit dan outlier ini biasanya dibuang dari
data yang akan diproses.
Edward Purba Data Preprocessing 25
Noisy Data: Outlier
ID Nama Penghasilan
001 Budi 2.500.000
002 Ina 3.200.000
003 Ani 2.900.000
004 Banu 3.000.000
005 Caca 20.000.000
Edward Purba Data Preprocessing 26/74
Noisy Data: Outlier
Edward Purba Data Preprocessing 27/74
Noisy Data: Outlier
Edward Purba Data Preprocessing 28/74
Noisy Data: Outlier
Edward Purba Data Preprocessing 29/74
Normalisasi
Edward Purba Data Preprocessing 30
Normalisasi
• Min-max normalization: ke [new_minA, new_maxA]
Contoh, gaji $12,000 sd $98,000 di normaliasi [0.0, 1.0]. Maka $73,600
dipetakan ke
• Z-score normalization (μ: mean, σ: standard deviation):
– Contoh μ = 54,000, σ = 16,000. maka
Edward Purba Data Preprocessing 31
Normalisasi
Contoh Kasus
Fitur 1 Fitur 2 Fitur 3
0 2 1
1 7 1
2 6 3
5 1 4
3 3 4
Tabel 1 Data Normal
Edward Purba Data Preprocessing 32
Normalisasi
Fitur 1 Fitur 2 Fitur 3
0 0.1667 0
0.2 1 0
0.4 0.8333 0.6667
1 0 1
0.6 0.3333 1
Edward Purba Data Preprocessing 33
Normalisasi
Edward Purba Data Preprocessing 34
Normalisasi
Fitur 1 Fitur 2 Fitur 3
-1,1578 -0.6954 -1.0550
-0,6315 1.2363 -1.0550
-0,1052 0.8499 0.2638
1,4736 -1.0817 0.9231
0,4210 -0.3091 0.9231
Edward Purba Data Preprocessing 35