Anda di halaman 1dari 26

Machine

Learning 3
Supervised Learning -
Classification and Evaluation
Outline
- Introduction to Supervised Learning (Classification)
- Data Pipeline for Classification Use Case
- Machine Learning Algorithms for Classification
- Logistic Regression
- KNN
- Decision Tree
- Random Forest
- XGBoost / Gradient Boosting
- Evaluation for Classification
- Confusion Matrix
- Classification Report (Precision, Recall, F1 Score)
Introduction to Supervised Learning
(Classification)
In machine learning, classification refers to a
predictive modeling problem where a class label is
predicted for a given example of input data.
Examples of classification problems include: Given an
example, classify if it is spam or not.
Classification Use Cases
Data Pipeline for Classification Use Case
Data Pipeline

Data Understanding Modeling


- Data Dictionary (optional) - Base model
- Data Cleansing - Hyperparameter Tuning
- Data Formatting - Model and Hyperparameter
- Exploratory Data Analysis (EDA) Selection

Data Preparation Evaluation


- Scaling (optional) - Accuracy Score
- Encode data - Confusion Matrix
- Split data to train and test (model - Classification Report (Precision,
validation) Recall, F1-Score)
- Sampling (if imbalance data) - ROC-AUC Curve
Machine Learning Algorithms for
Classification
Logistic Regression
“Regresi logistik
merupakan analisis
regresi yang
digunakan ketika
variabel dependen
berupa variabel
kategorik.”
Pros vs Cons
- Penerapan yang mudah dan - Performa yang buruk pada
efektif. data non linear
- Tidak diperlukan tuning - Performa yang buruk dengan
hyperparameter fitur yang tidak relevan dan
berkorelasi tinggi
- Algoritma yang tidak terlalu
kuat dan mudah diungguli
oleh algoritma lainnya.
K-Nearest Neighboor
Algoritma K-nearest neighbours
(KNN) adalah jenis supervised ML
yang dapat digunakan baik untuk
klasifikasi maupun regresi.

KNN adalah algoritma lazy


classifier karena tidak memiliki
fase pelatihan khusus dan
menggunakan semua data untuk
pelatihan saat klasifikasi. KNN juga
merupakan algoritma
pembelajaran non-parametrik.
Distance Function
Pros vs Cons
- Sederhana dan intuitif - Biaya prediksi tinggi (lebih
- Bagus untuk kumpulan data buruk untuk kumpulan data
non linier yang dapat besar)
dipisahkan - Tidak bagus dengan data
- Hanya terdapat beberapa dimensi tinggi
hyperparameter (K dan jarak) - Variabel input kategorik
tidak berfungsi dengan baik
- Waktu prediksi lambat
Decision Tree
Decision tree adalah model
prediksi menggunakan struktur
pohon atau struktur berhirarki.
Konsep dari decision tree adalah
mengubah data menjadi
aturan-aturan keputusan.
Pros vs Cons
- Mudah dimengerti - Overfit: Over fitting adalah salah satu
kesulitan paling praktis untuk model
- Berguna dalam eksplorasi pohon keputusan. Masalah ini
Data diselesaikan dengan penggunaan hutan
acak, yang akan kita bahas beberapa
- Lebih sedikit pembersihan
hari yang lain.
data yang dibutuhkan - Tidak direkomendasikan untuk
- Tipe data bukan kendala variabel kontinu: Saat bekerja dengan
variabel numerik kontinu, pohon
- Metode Non Parametrik keputusan kehilangan informasi saat
mengkategorikan variabel dalam
kategori yang berbeda.
Random Forest (Ensemble Learning)
Merupakan metode ensemble
(menggunakan lebih dari satu
model algoritma) untuk
mendapatkan hasil yang lebih
baik.

Merupakan gabungan dari


beberapa decision tree, dimana
data sebelumnya sudah melalui
proses bagging.
Pros vs Cons
- Mengurangi masalah overfitting pada - Kompleksitas: Random Forest menciptakan
pohon keputusan dan juga mengurangi banyak pohon (tidak hanya satu pohon dalam
kasus pohon keputusan) dan
varians dan oleh karena itu menggabungkan hasilnya. Secara default, ini
meningkatkan akurasi. membuat 100 pohon di pustaka sklearn
- Otomatis menangani nilai yang hilang. Python. Untuk melakukannya, algoritma ini
- Tidak diperlukan feature scaling: Tidak membutuhkan lebih banyak daya komputasi
dan sumber daya. Di sisi lain, pohon keputusan
diperlukan (standardisasi dan sederhana dan tidak membutuhkan banyak
normalisasi) dalam kasus Random Forest sumber daya komputasi.
karena menggunakan pendekatan - Periode Pelatihan yang Lebih Lama: Random
berbasis aturan, bukan penghitungan Forest membutuhkan lebih banyak waktu
untuk dilatih dibandingkan dengan pohon
jarak. keputusan karena menghasilkan banyak
- Random Forest biasanya kuat untuk pohon (bukan satu pohon dalam kasus pohon
outlier dan dapat menanganinya secara keputusan) dan membuat keputusan
otomatis. berdasarkan mayoritas suara.
XGBoost/Gradient Boosting
- The main difference between random
forests and gradient boosting lies in
how the decision trees are created
and aggregated.
- Unlike random forests, the decision
trees in gradient boosting are built
additively; in other words, each
decision tree is built one after
another.
However, these trees are not being added without purpose. Each
new tree is built to improve on the deficiencies of the previous trees
and this concept is called boosting.

The gradient part of gradient boosting comes from


minimising the gradient of the loss function as the
algorithm builds each tree.
Evaluation for Classification
Confusion Matrix
Classification Report
HandsOn

Anda mungkin juga menyukai