SlideShare a Scribd company logo
1 of 8
Download to read offline
1/8
November 14, 2021
Scikit-Learn Cheat Sheet untuk Data Science
softscients.com/2021/11/14/scikit-learn-cheat-sheet-untuk-data-science/
30 Views
Scikit-learn adalah library machine learning open source untuk bahasa pemrograman
Python. Ini fitur berbagai klasifikasi, regresi, algoritma pengelompokan, dan alat yang
efisien untuk data mining dan analisis data. Ini dibangun di atas NumPy, SciPy, dan
Matplotlib. Pada buku yang telah saya terbitkan pernah dibahas koq, ini tambahan juga,
maka saya berikan judul Scikit-Learn Cheat Sheet untuk Data Science.
Kode di bawah ini menunjukkan langkah-langkah dasar menggunakan scikit-learn untuk
membuat dan menjalankan model pada satu set data. Langkah-langkah dalam kode
meliputi: memuat data, membelah menjadi kereta api dan set uji, menskalakan set,
membuat model, menyesuaikan model pada data, menggunakan model terlatih untuk
membuat prediksi pada set tes, dan akhirnya mengevaluasi kinerja model. Seperti biasa
kita akan menggunakan dataset iris. Begini kode yang kita akan gunakan secara sekilas.
2/8
from sklearn import neighbors, datasets, preprocessing
from sklearn.model_selection import train_test_split
from sklearn.metrics import accuracy_score
from sklearn.preprocessing import StandardScaler
iris = datasets.load_iris()
X,y = iris.data[:,:2], iris.target
X_train, X_test, y_train, y_test = train_test_split(X,y)
scaler = StandardScaler().fit(X_train)
X_train = scaler.transform(X_train)
X_test = scaler.transform(X_test)
knn = neighbors.KNeighborsClassifier(n_neighbors = 5)
knn.fit(X_train, y_train)
y_pred = knn.predict(X_test)
accuracy_score(y_test, y_pred)
Loading Data
Contents
1 Loading Data
2 Training and Test Data
3 Preprocessing Data
3.1 1. Standardization
3.2 2. Normalization
3.3 3. Binarization
3.4 4. Encoding Categorical Features
3.5 5. Imputing Missing Values
3.6 6. Generating Polynomial Features
4 Create Model
4.1 Supervised Learning Models
4.2 Unsupervised Learning Models
5 Model Fitting
5.1 Supervised learning
5.2 Unsupervised learning
6 Prediction
7 Evaluasi Kinerja Model
7.1 Classification Metrics
7.2 Regression Metrics
7.3 Clustering Metrics
7.4 Cross-Validation
8 Tuning Model
8.1 Grid Search
8.2 Randomized Parameter Optimization
3/8
Data mu harus bertipe numerik dan disimpan sebagai array NumPy atau matriks
cadangan SciPy. Jenis lain yang dikonversi ke array numerik, seperti Pandas DataFrame
juga dapat diterima. Tapi saya lebih suka menggunakan Numpy saja
>>> import numpy as np
>>> X = np.random.random((10,5))
array([[0.21069686, 0.33457064],
[0.23887117, 0.6093155 ],
[0.48848537, 0.62649292]])
>>> y = np.array(['A','B','A'])
array(['A', 'B', 'A'])
Training and Test Data
Membagi dataset menjadi pelatihan dan set uji untuk variabel X dan y. Oiya hati-hati ya,
python adalah bahasa case sensitif jadi huruf besar dan kecil itu beda tidak seperti
bahasa basic
>>> from sklearn.model_selection import train_test_split
>>> X_train,X_test,y_train,y_test = train_test_split(X,y, random_state = 0)
Oiya pengaturan split dataset diatas, bisa kalian berikan opsi seperti berapa ratio yang
digunakan, disini
See also Python Pandas Merging DataFrames
Preprocessing Data
Siapkan data sebelum model difit kan/proses, ada banyak cara yang digunakan
tergantung tipe data apakah numerik, kategorikal, ataupun range. Dibahas juga cara
menangani missing value.
1. Standardization
Standarisasi adalah fitur dengan menghapus rata-rata dan penskalaan ke varians unit.
>>> from sklearn.preprocessing import StandardScaler
>>> scaler = StandardScaler().fit(X_train)
>>> standarized_X = scaler.transform(X_train)
>>> standarized_X_test = scaler.transform(X_test)
2. Normalization
Setiap sampel (yaitu setiap baris matriks data) dengan setidaknya satu komponen non-
nol diskalakan ulang secara independen dari sampel lain sehingga normanya sama
dengan satu/jumlah totalnya 1.
>>> from sklearn.preprocessing import Normalizer
>>> scaler = Normalizer().fit(X_train)
>>> normalized_X = scaler.transform(X_train)
>>> normalized_X_test = scaler.transform(X_test)
4/8
3. Binarization
Data binarize (mengatur nilai fitur ke 0 atau 1) sesuai dengan ambang batas.
>>> from sklearn.preprocessing import Binarizer
>>> binarizer = Binarizer(threshold = 0.0).fit(X)
>>> binary_X = binarizer.transform(X_test)
4. Encoding Categorical Features
Label target Encode dengan nilai antara 0 dan n_classes-1.
>>> from sklearn import preprocessing
>>> le = preprocessing.LabelEncoder()
>>> le.fit_transform(X_train)
5. Imputing Missing Values
Pengisian data yang kosong dengan nilai reratanya, biasanya data yang sangat besar
bisa terjadi banyak missing value.
>>> from sklearn.impute import SimpleImputer
>>> imp = SimpleImputer(missing_values = 0, strategy = 'mean')
>>> imp.fit_transform(X_train)
6. Generating Polynomial Features
Hasilkan matriks fitur baru yang terdiri dari semua kombinasi polinomial dari fitur dengan
derajat kurang dari atau sama dengan tingkat yang ditentukan.
>>> from sklearn.preprocessing import PolynomialFeatures
>>> poly = PolynomialFeatures(5)
>>> poly.fit_transform(X)
Create Model
Membuat model dengan algoritma supervised and unsupervised learning. Untuk
penjelasan masing-masing algoritma, sudah saya jabarkan dengan beragam bahasa,
kalian bisa searching sendiri di website ini. Ataupun mengajukan pertanyaan via email
jika ulasan di website ini kurang memuaskan.
Supervised Learning Models
Algoritma machine learning terawasi yang artinya target sudah ditentukan dari awal.
Adapun target disini bisa berupa kelas, angka, dan jumlah cluster bila algoritma tersebut
termasuk clustering
Linear Regression
>>> from sklearn.linear_model import LinearRegression
>>> lr = LinearRegression(normalize = True)
Support Vector Machines (SVM)
5/8
>>> from sklearn.svm import SVC
>>> svc = SVC(kernel = 'linear')
Naive Bayes
>>> from sklearn.naive_bayes import GaussianNB
>>> gnb = GaussianNB()
KNN
>>> from sklearn import neighbors
>>> knn = neighbors.KNeighborsClassifier(n_neighbors = 5)
Unsupervised Learning Models
Algoritma ini bekerja dengan memerlukan target akan tetapi machine belajar sendiri
dalam menentukan target berdasarkan paramater tertentu. Seperti jarak antar anggota,
jarak antar cluster, serta ambang batas.
Principal Component Analysis (PCA)
>>> from sklearn.decomposition import PCA
>>> pca = PCA(n_components = 0.95)
K means
>>> from sklearn.cluster import KMeans
>>> k_means = KMeans(n_clusters = 3, random_state = 0)
Model Fitting
Model fitting yaitu menguji perhitungan algoritma. Bila menggunakan Scikit maka
method/function yang dipanggil yaitu fit(). Semuanya sama baik menggunakan
supervised dan unsupervised learning.
See also Append Array
Supervised learning
Fit model data
>>> lr.fit(X, y)
>>> knn.fit(X_train,y_train)
>>> svc.fit(X_train,y_train)
Unsupervised learning
Fit model data
>>> k_means.fit(X_train)
Fit data dan lakukan transform
>>> pca_model = pca.fit_transform(X_train)
6/8
Prediction
Prediksi test menggunakan model yang sudah training
Prediksi label/target
#Supervised Estimators
>>> y_pred = lr.predict(X_test)
#Unsupervised Estimators
>>> y_pred = k_means.predict(X_test)
Estimasi probabilitas
>>> y_pred = knn.predict_proba(X_test)
Evaluasi Kinerja Model
Untuk mengukur/evaluasi kinerja model ada banyak cara yang digunakan tergantung
kasus seperti klasifikasi atau regresi dan clustering
Classification Metrics
Accuracy Score
>>> knn.score(X_test,y_test)
>>> from sklearn.metrics import accuracy_score
>>> accuracy_score(y_test,y_pred)
Classification Report
>>> from sklearn.metrics import classification_report
>>> print(classification_report(y_test,y_pred))
Confusion Matrix
>>> from sklearn .metrics import confusion_matrix
>>> print(confusion_matrix(y_test,y_pred))
Regression Metrics
Untuk pembahasan pengukuran regression metrics disini
Mean Absolute Error
>>> from sklearn.metrics import mean_absolute_error
>>> mean_absolute_error(y_test,y_pred)
Mean Squared Error
>>> from sklearn.metrics import mean_squared_error
>>> mean_squared_error(y_test,y_pred)
R² Score
7/8
>>> from sklearn.metrics import r2_score
>>> r2_score(y_test, y_pred)
Clustering Metrics
Adjusted Rand Index
>>> from sklearn.metrics import adjusted_rand_score
>>> adjusted_rand_score(y_test,y_pred)
Homogeneity
>>> from sklearn.metrics import homogeneity_score
>>> homogeneity_score(y_test,y_pred)
V-measure
>>> from sklearn.metrics import v_measure_score
>>> v_measure_score(y_test,y_pred)
Cross-Validation
Score Evaluasi dengan cross-validation
>>> from sklearn.model_selection import cross_val_score
>>> print(cross_val_score(knn, X_train, y_train, cv=4))
Tuning Model
Tuning / menemukan nilai parameter yang benar yang akan memaksimalkan akurasi
prediksi model. Ada 2 cara yang digunakan yaitu
1. pencarian menggunakan iterasi tertentu, misalkan jika paramater tersebut
mempunyai pengaturan jumlah minimal keanggotaan, maka bisa dicoba dengan
membuat pengaturan 1 sampai n keanggotaan
2. random menggunakan nilai acak tertentu jadi tidak semuanya dicoba satu-persatu
Grid Search
Pencarian lengkap atas nilai parameter tertentu untuk estimator. Contoh di bawah ini
mencoba untuk menemukan jumlah cluster yang tepat untuk menentukan knn untuk
memaksimalkan akurasi model. Biasanya dilakukan menggunakan teknik looping, tapi
dalam keadaan tertentu paramater function menerima argument array sehingga tidak
perlu membuat looping tersendiri. Contoh dibawah ini array [1:3] sebagai pencarian yang
terbaik berdasarkan jumlah minimal tetangga pada KNN
>>> from sklearn.model_selection import GridSearchCV
>>> params = {'n_neighbors': np.arange(1,3), 'metric':['euclidean','cityblock']}
>>> grid = GridSearchCV(estimator = knn, param_grid = params)
>>> grid.fit(X_train, y_train)
>>> print(grid.best_score_)
>>> print(grid.best_estimator_.n_neighbors)
8/8
Menggunakan GridSearchCV untuk menentukan paramater terbaik di KNN
See also Quadratic Programming
Randomized Parameter Optimization
Pencarian acak pada hiperparameter. Berbeda dengan Pencarian Grid, tidak semua nilai
parameter dicoba, melainkan sejumlah pengaturan parameter tetap diambil sampelnya
dari distribusi yang ditentukan. Jumlah pengaturan parameter yang dicoba diberikan oleh
n_iter.
>>> from sklearn.model_selection import RandomizedSearchCV
>>> params = {'n_neighbors':range(1,5), 'weights':['uniform','distance']}
>>> rsearch = RandomizedSearchCV(estimator = knn, param_distributions = params, cv
= 4, n_iter = 8, random_state = 5)
>>> rseach.fit(X_train, y_train)
>>> print(rsearch.best_score_)
Scikit-learn adalah library yang sangat berguna untuk berbagai model machine learning.
Bagian-bagian di atas memberikan proses langkah demi langkah dasar untuk melakukan
analisis pada model yang berbeda. Namun, jika kalian ingin mempelajari lebih lanjut, lihat
dokumentasi untuk Scikit-Learn, karena masih ada banyak fungsi bermanfaat yang dapat
kalian pelajari.
Akhirnya selesai juga pembahasan mengenai Scikit-Learn Cheat Sheet untuk Data
Science. Happy coding

More Related Content

What's hot

Tugas struktur data
Tugas struktur dataTugas struktur data
Tugas struktur dataDevandy Enda
 
Perkenalan Pemrograman C++
Perkenalan Pemrograman C++Perkenalan Pemrograman C++
Perkenalan Pemrograman C++Sparisoma Viridi
 
Function
FunctionFunction
Functionwindi1
 
Membuat program kalkulator sederhana dengan matlab
Membuat program kalkulator sederhana dengan matlabMembuat program kalkulator sederhana dengan matlab
Membuat program kalkulator sederhana dengan matlabNur Halimah
 
C programming language notes (4)
C programming language notes (4)C programming language notes (4)
C programming language notes (4)nakomuri
 
Dasar Pemrograman materi kuliah
Dasar Pemrograman materi kuliahDasar Pemrograman materi kuliah
Dasar Pemrograman materi kuliahBraga Rezpect
 
Pemrograman C++ - Fungsi dan Prosedur
Pemrograman C++ - Fungsi dan ProsedurPemrograman C++ - Fungsi dan Prosedur
Pemrograman C++ - Fungsi dan ProsedurKuliahKita
 
Algoritma dan Struktur Data - fungsi dan prosedur c++
Algoritma dan Struktur Data -  fungsi dan prosedur c++Algoritma dan Struktur Data -  fungsi dan prosedur c++
Algoritma dan Struktur Data - fungsi dan prosedur c++Georgius Rinaldo
 
Laporan 1 penngantar program r
Laporan 1 penngantar program rLaporan 1 penngantar program r
Laporan 1 penngantar program rKhair Norrasid
 
Pelatihan Bahasa R
Pelatihan Bahasa RPelatihan Bahasa R
Pelatihan Bahasa Ranom0164
 
Laporan praktikum modul vii
Laporan praktikum modul viiLaporan praktikum modul vii
Laporan praktikum modul viiDevi Apriansyah
 
Pembahasan ujian teori pemrograman pascal bagian 1
Pembahasan ujian teori pemrograman pascal bagian 1Pembahasan ujian teori pemrograman pascal bagian 1
Pembahasan ujian teori pemrograman pascal bagian 1Damun Setiaji
 
modul Java dasar fundamental (OOP)
modul Java dasar fundamental (OOP)modul Java dasar fundamental (OOP)
modul Java dasar fundamental (OOP)Reza Pramana
 
Pemograman berorientasi objek
Pemograman berorientasi objekPemograman berorientasi objek
Pemograman berorientasi objekAlvin Setiawan
 
Lapopran praktikum struktur data pertemuan 3 Merge_Sort
Lapopran praktikum struktur data pertemuan 3 Merge_SortLapopran praktikum struktur data pertemuan 3 Merge_Sort
Lapopran praktikum struktur data pertemuan 3 Merge_SortAdy Achirul
 

What's hot (20)

Tugas struktur data
Tugas struktur dataTugas struktur data
Tugas struktur data
 
Procedur
ProcedurProcedur
Procedur
 
Perkenalan Pemrograman C++
Perkenalan Pemrograman C++Perkenalan Pemrograman C++
Perkenalan Pemrograman C++
 
Bab8.array
Bab8.array Bab8.array
Bab8.array
 
Function
FunctionFunction
Function
 
Function
FunctionFunction
Function
 
Pertemuan II Function
Pertemuan II FunctionPertemuan II Function
Pertemuan II Function
 
Membuat program kalkulator sederhana dengan matlab
Membuat program kalkulator sederhana dengan matlabMembuat program kalkulator sederhana dengan matlab
Membuat program kalkulator sederhana dengan matlab
 
C programming language notes (4)
C programming language notes (4)C programming language notes (4)
C programming language notes (4)
 
Dasar Pemrograman materi kuliah
Dasar Pemrograman materi kuliahDasar Pemrograman materi kuliah
Dasar Pemrograman materi kuliah
 
Pemrograman C++ - Fungsi dan Prosedur
Pemrograman C++ - Fungsi dan ProsedurPemrograman C++ - Fungsi dan Prosedur
Pemrograman C++ - Fungsi dan Prosedur
 
Algoritma dan Struktur Data - fungsi dan prosedur c++
Algoritma dan Struktur Data -  fungsi dan prosedur c++Algoritma dan Struktur Data -  fungsi dan prosedur c++
Algoritma dan Struktur Data - fungsi dan prosedur c++
 
Laporan 1 penngantar program r
Laporan 1 penngantar program rLaporan 1 penngantar program r
Laporan 1 penngantar program r
 
Pelatihan Bahasa R
Pelatihan Bahasa RPelatihan Bahasa R
Pelatihan Bahasa R
 
Laporan praktikum modul vii
Laporan praktikum modul viiLaporan praktikum modul vii
Laporan praktikum modul vii
 
Pembahasan ujian teori pemrograman pascal bagian 1
Pembahasan ujian teori pemrograman pascal bagian 1Pembahasan ujian teori pemrograman pascal bagian 1
Pembahasan ujian teori pemrograman pascal bagian 1
 
modul Java dasar fundamental (OOP)
modul Java dasar fundamental (OOP)modul Java dasar fundamental (OOP)
modul Java dasar fundamental (OOP)
 
My javanote04
My javanote04My javanote04
My javanote04
 
Pemograman berorientasi objek
Pemograman berorientasi objekPemograman berorientasi objek
Pemograman berorientasi objek
 
Lapopran praktikum struktur data pertemuan 3 Merge_Sort
Lapopran praktikum struktur data pertemuan 3 Merge_SortLapopran praktikum struktur data pertemuan 3 Merge_Sort
Lapopran praktikum struktur data pertemuan 3 Merge_Sort
 

Similar to SKL-CHT

pertemuan ke-4 (Variabel dan Konstanta).ppt
pertemuan ke-4 (Variabel dan Konstanta).pptpertemuan ke-4 (Variabel dan Konstanta).ppt
pertemuan ke-4 (Variabel dan Konstanta).pptnafilarifki1
 
Pterstruktur perulangani
Pterstruktur perulanganiPterstruktur perulangani
Pterstruktur perulanganiwitha yumiko
 
Pterstruktur perulangani
Pterstruktur perulanganiPterstruktur perulangani
Pterstruktur perulanganiwitha yumiko
 
Modul Praktikum Pemrograman Berorientasi Objek (Chap.1-6)
Modul Praktikum Pemrograman Berorientasi Objek (Chap.1-6)Modul Praktikum Pemrograman Berorientasi Objek (Chap.1-6)
Modul Praktikum Pemrograman Berorientasi Objek (Chap.1-6)Debby Ummul
 
Testing&implementasi 4 5
Testing&implementasi 4 5Testing&implementasi 4 5
Testing&implementasi 4 5aiiniR
 
Bab i1 kohonen (recovered)
Bab i1 kohonen (recovered)Bab i1 kohonen (recovered)
Bab i1 kohonen (recovered)Eka Suryadana
 
Mi1274 alpro lanjut 3 - percabangan if - praktikan
Mi1274 alpro lanjut   3 - percabangan if - praktikanMi1274 alpro lanjut   3 - percabangan if - praktikan
Mi1274 alpro lanjut 3 - percabangan if - praktikanDefina Iskandar
 
Modul praktikum java pemrograman berorientasi objek
Modul praktikum java pemrograman berorientasi objekModul praktikum java pemrograman berorientasi objek
Modul praktikum java pemrograman berorientasi objekimam arifin
 
Tugas 1 Optimasi Struktur
Tugas 1 Optimasi StrukturTugas 1 Optimasi Struktur
Tugas 1 Optimasi StrukturMauvil Sulinci
 
Matlab Prettifier Package
Matlab Prettifier PackageMatlab Prettifier Package
Matlab Prettifier PackageHirwanto Iwan
 
Java (Netbeans) - Class, Constructor, Object (Object Oriented Programming)
Java (Netbeans) - Class, Constructor, Object (Object Oriented Programming)Java (Netbeans) - Class, Constructor, Object (Object Oriented Programming)
Java (Netbeans) - Class, Constructor, Object (Object Oriented Programming)Melina Krisnawati
 
Operasi pengulangan
Operasi pengulanganOperasi pengulangan
Operasi pengulanganMAFauzan
 
Testing&implementasi 4
Testing&implementasi 4Testing&implementasi 4
Testing&implementasi 4aiiniR
 
Jeni Web Programming Bab 15 J2 Ee Design Pattern
Jeni Web Programming Bab 15 J2 Ee Design PatternJeni Web Programming Bab 15 J2 Ee Design Pattern
Jeni Web Programming Bab 15 J2 Ee Design PatternIndividual Consultants
 
Intruksi Fundamental
Intruksi FundamentalIntruksi Fundamental
Intruksi FundamentalAkmal Fajar
 

Similar to SKL-CHT (20)

pertemuan ke-4 (Variabel dan Konstanta).ppt
pertemuan ke-4 (Variabel dan Konstanta).pptpertemuan ke-4 (Variabel dan Konstanta).ppt
pertemuan ke-4 (Variabel dan Konstanta).ppt
 
Pterstruktur perulangani
Pterstruktur perulanganiPterstruktur perulangani
Pterstruktur perulangani
 
Pterstruktur perulangani
Pterstruktur perulanganiPterstruktur perulangani
Pterstruktur perulangani
 
Modul Praktikum Pemrograman Berorientasi Objek (Chap.1-6)
Modul Praktikum Pemrograman Berorientasi Objek (Chap.1-6)Modul Praktikum Pemrograman Berorientasi Objek (Chap.1-6)
Modul Praktikum Pemrograman Berorientasi Objek (Chap.1-6)
 
Testing&implementasi 4 5
Testing&implementasi 4 5Testing&implementasi 4 5
Testing&implementasi 4 5
 
AI Security .pptx
AI Security .pptxAI Security .pptx
AI Security .pptx
 
Bab i1 kohonen (recovered)
Bab i1 kohonen (recovered)Bab i1 kohonen (recovered)
Bab i1 kohonen (recovered)
 
Mi1274 alpro lanjut 3 - percabangan if - praktikan
Mi1274 alpro lanjut   3 - percabangan if - praktikanMi1274 alpro lanjut   3 - percabangan if - praktikan
Mi1274 alpro lanjut 3 - percabangan if - praktikan
 
Modul praktikum java pemrograman berorientasi objek
Modul praktikum java pemrograman berorientasi objekModul praktikum java pemrograman berorientasi objek
Modul praktikum java pemrograman berorientasi objek
 
Tugas 1 Optimasi Struktur
Tugas 1 Optimasi StrukturTugas 1 Optimasi Struktur
Tugas 1 Optimasi Struktur
 
Daskom 3
Daskom 3Daskom 3
Daskom 3
 
Matlab Prettifier Package
Matlab Prettifier PackageMatlab Prettifier Package
Matlab Prettifier Package
 
1 pengenalan matlab
1  pengenalan matlab1  pengenalan matlab
1 pengenalan matlab
 
PPT Pengajaran 20.pptx
PPT Pengajaran 20.pptxPPT Pengajaran 20.pptx
PPT Pengajaran 20.pptx
 
Java (Netbeans) - Class, Constructor, Object (Object Oriented Programming)
Java (Netbeans) - Class, Constructor, Object (Object Oriented Programming)Java (Netbeans) - Class, Constructor, Object (Object Oriented Programming)
Java (Netbeans) - Class, Constructor, Object (Object Oriented Programming)
 
Cara pemakaian weka
Cara pemakaian wekaCara pemakaian weka
Cara pemakaian weka
 
Operasi pengulangan
Operasi pengulanganOperasi pengulangan
Operasi pengulangan
 
Testing&implementasi 4
Testing&implementasi 4Testing&implementasi 4
Testing&implementasi 4
 
Jeni Web Programming Bab 15 J2 Ee Design Pattern
Jeni Web Programming Bab 15 J2 Ee Design PatternJeni Web Programming Bab 15 J2 Ee Design Pattern
Jeni Web Programming Bab 15 J2 Ee Design Pattern
 
Intruksi Fundamental
Intruksi FundamentalIntruksi Fundamental
Intruksi Fundamental
 

More from softscients

belajar statistik
belajar statistikbelajar statistik
belajar statistiksoftscients
 
neural network training dan particle swarm optimization
neural network training dan particle swarm optimizationneural network training dan particle swarm optimization
neural network training dan particle swarm optimizationsoftscients
 
pengolahan sinyal digital dengan matlab
pengolahan sinyal digital dengan matlabpengolahan sinyal digital dengan matlab
pengolahan sinyal digital dengan matlabsoftscients
 
pengolahan citra digital dengan java
pengolahan citra digital dengan javapengolahan citra digital dengan java
pengolahan citra digital dengan javasoftscients
 
tutorial algoritma genetika bagian 1
tutorial algoritma genetika bagian 1tutorial algoritma genetika bagian 1
tutorial algoritma genetika bagian 1softscients
 
penjelasan konsep oop object oriented programming
penjelasan konsep oop object oriented programmingpenjelasan konsep oop object oriented programming
penjelasan konsep oop object oriented programmingsoftscients
 
cara membuat aplikasi gui di matlab
cara membuat aplikasi gui di matlabcara membuat aplikasi gui di matlab
cara membuat aplikasi gui di matlabsoftscients
 
setup widget dan work directory matlab
setup widget dan work directory matlabsetup widget dan work directory matlab
setup widget dan work directory matlabsoftscients
 
Belajar Pemrograman Matlab
Belajar Pemrograman MatlabBelajar Pemrograman Matlab
Belajar Pemrograman Matlabsoftscients
 
konversi warna dengan matlab
konversi warna dengan matlabkonversi warna dengan matlab
konversi warna dengan matlabsoftscients
 
kriptografi metode hill cipher
kriptografi metode hill cipherkriptografi metode hill cipher
kriptografi metode hill ciphersoftscients
 
mengapa customer churn rate penting
mengapa customer churn rate pentingmengapa customer churn rate penting
mengapa customer churn rate pentingsoftscients
 
pengantar metode numerik
 pengantar metode numerik pengantar metode numerik
pengantar metode numeriksoftscients
 
cara hitung manual uji normalitas dengan uji kolmogorov-smirnov
 cara hitung manual uji normalitas dengan uji kolmogorov-smirnov cara hitung manual uji normalitas dengan uji kolmogorov-smirnov
cara hitung manual uji normalitas dengan uji kolmogorov-smirnovsoftscients
 
pengenalan huruf dengan pca
 pengenalan huruf dengan pca pengenalan huruf dengan pca
pengenalan huruf dengan pcasoftscients
 
steganografi gambar dan teks
steganografi gambar dan tekssteganografi gambar dan teks
steganografi gambar dan tekssoftscients
 

More from softscients (16)

belajar statistik
belajar statistikbelajar statistik
belajar statistik
 
neural network training dan particle swarm optimization
neural network training dan particle swarm optimizationneural network training dan particle swarm optimization
neural network training dan particle swarm optimization
 
pengolahan sinyal digital dengan matlab
pengolahan sinyal digital dengan matlabpengolahan sinyal digital dengan matlab
pengolahan sinyal digital dengan matlab
 
pengolahan citra digital dengan java
pengolahan citra digital dengan javapengolahan citra digital dengan java
pengolahan citra digital dengan java
 
tutorial algoritma genetika bagian 1
tutorial algoritma genetika bagian 1tutorial algoritma genetika bagian 1
tutorial algoritma genetika bagian 1
 
penjelasan konsep oop object oriented programming
penjelasan konsep oop object oriented programmingpenjelasan konsep oop object oriented programming
penjelasan konsep oop object oriented programming
 
cara membuat aplikasi gui di matlab
cara membuat aplikasi gui di matlabcara membuat aplikasi gui di matlab
cara membuat aplikasi gui di matlab
 
setup widget dan work directory matlab
setup widget dan work directory matlabsetup widget dan work directory matlab
setup widget dan work directory matlab
 
Belajar Pemrograman Matlab
Belajar Pemrograman MatlabBelajar Pemrograman Matlab
Belajar Pemrograman Matlab
 
konversi warna dengan matlab
konversi warna dengan matlabkonversi warna dengan matlab
konversi warna dengan matlab
 
kriptografi metode hill cipher
kriptografi metode hill cipherkriptografi metode hill cipher
kriptografi metode hill cipher
 
mengapa customer churn rate penting
mengapa customer churn rate pentingmengapa customer churn rate penting
mengapa customer churn rate penting
 
pengantar metode numerik
 pengantar metode numerik pengantar metode numerik
pengantar metode numerik
 
cara hitung manual uji normalitas dengan uji kolmogorov-smirnov
 cara hitung manual uji normalitas dengan uji kolmogorov-smirnov cara hitung manual uji normalitas dengan uji kolmogorov-smirnov
cara hitung manual uji normalitas dengan uji kolmogorov-smirnov
 
pengenalan huruf dengan pca
 pengenalan huruf dengan pca pengenalan huruf dengan pca
pengenalan huruf dengan pca
 
steganografi gambar dan teks
steganografi gambar dan tekssteganografi gambar dan teks
steganografi gambar dan teks
 

Recently uploaded

demontrasi kontekstual modul 1.2.a. 6.pdf
demontrasi kontekstual modul 1.2.a. 6.pdfdemontrasi kontekstual modul 1.2.a. 6.pdf
demontrasi kontekstual modul 1.2.a. 6.pdfIndri117648
 
PPT_AKUNTANSI_PAJAK_ATAS_ASET_TETAP.pptx
PPT_AKUNTANSI_PAJAK_ATAS_ASET_TETAP.pptxPPT_AKUNTANSI_PAJAK_ATAS_ASET_TETAP.pptx
PPT_AKUNTANSI_PAJAK_ATAS_ASET_TETAP.pptxalalfardilah
 
IPA Kelas 9 BAB 10 - www.ilmuguru.org.pptx
IPA Kelas 9 BAB 10 - www.ilmuguru.org.pptxIPA Kelas 9 BAB 10 - www.ilmuguru.org.pptx
IPA Kelas 9 BAB 10 - www.ilmuguru.org.pptxErikaPuspita10
 
Wawasan Nusantara sebagai satu kesatuan, politik, ekonomi, sosial, budaya, d...
Wawasan Nusantara  sebagai satu kesatuan, politik, ekonomi, sosial, budaya, d...Wawasan Nusantara  sebagai satu kesatuan, politik, ekonomi, sosial, budaya, d...
Wawasan Nusantara sebagai satu kesatuan, politik, ekonomi, sosial, budaya, d...MarwanAnugrah
 
Kelompok 1_Karakteristik negara jepang.pdf
Kelompok 1_Karakteristik negara jepang.pdfKelompok 1_Karakteristik negara jepang.pdf
Kelompok 1_Karakteristik negara jepang.pdfCloverash1
 
Modul Ajar Biologi Kelas 11 Fase F Kurikulum Merdeka [abdiera.com]
Modul Ajar Biologi Kelas 11 Fase F Kurikulum Merdeka [abdiera.com]Modul Ajar Biologi Kelas 11 Fase F Kurikulum Merdeka [abdiera.com]
Modul Ajar Biologi Kelas 11 Fase F Kurikulum Merdeka [abdiera.com]Abdiera
 
DESAIN MEDIA PEMBELAJARAN BAHASA INDONESIA BERBASIS DIGITAL.pptx
DESAIN MEDIA PEMBELAJARAN BAHASA INDONESIA BERBASIS DIGITAL.pptxDESAIN MEDIA PEMBELAJARAN BAHASA INDONESIA BERBASIS DIGITAL.pptx
DESAIN MEDIA PEMBELAJARAN BAHASA INDONESIA BERBASIS DIGITAL.pptxFuzaAnggriana
 
Materi Pertemuan Materi Pertemuan 7.pptx
Materi Pertemuan Materi Pertemuan 7.pptxMateri Pertemuan Materi Pertemuan 7.pptx
Materi Pertemuan Materi Pertemuan 7.pptxRezaWahyuni6
 
Modul 1.2.a.8 Koneksi antar materi 1.2.pdf
Modul 1.2.a.8 Koneksi antar materi 1.2.pdfModul 1.2.a.8 Koneksi antar materi 1.2.pdf
Modul 1.2.a.8 Koneksi antar materi 1.2.pdfSitiJulaeha820399
 
PPT Integrasi Islam & Ilmu Pengetahuan.pptx
PPT Integrasi Islam & Ilmu Pengetahuan.pptxPPT Integrasi Islam & Ilmu Pengetahuan.pptx
PPT Integrasi Islam & Ilmu Pengetahuan.pptxnerow98
 
DEMONSTRASI KONTEKSTUAL MODUL 1.3 PENDIDIKAN GURU PENGGERAK
DEMONSTRASI KONTEKSTUAL MODUL 1.3 PENDIDIKAN GURU PENGGERAKDEMONSTRASI KONTEKSTUAL MODUL 1.3 PENDIDIKAN GURU PENGGERAK
DEMONSTRASI KONTEKSTUAL MODUL 1.3 PENDIDIKAN GURU PENGGERAKirwan461475
 
TUGAS GURU PENGGERAK Aksi Nyata Modul 1.1.pdf
TUGAS GURU PENGGERAK Aksi Nyata Modul 1.1.pdfTUGAS GURU PENGGERAK Aksi Nyata Modul 1.1.pdf
TUGAS GURU PENGGERAK Aksi Nyata Modul 1.1.pdfElaAditya
 
adap penggunaan media sosial dalam kehidupan sehari-hari.pptx
adap penggunaan media sosial dalam kehidupan sehari-hari.pptxadap penggunaan media sosial dalam kehidupan sehari-hari.pptx
adap penggunaan media sosial dalam kehidupan sehari-hari.pptxmtsmampunbarub4
 
PPT Materi Jenis - Jenis Alat Pembayaran Tunai dan Non-tunai.pptx
PPT Materi Jenis - Jenis Alat Pembayaran Tunai dan Non-tunai.pptxPPT Materi Jenis - Jenis Alat Pembayaran Tunai dan Non-tunai.pptx
PPT Materi Jenis - Jenis Alat Pembayaran Tunai dan Non-tunai.pptxHeruFebrianto3
 
HARMONI DALAM EKOSISTEM KELAS V SEKOLAH DASAR.pdf
HARMONI DALAM EKOSISTEM KELAS V SEKOLAH DASAR.pdfHARMONI DALAM EKOSISTEM KELAS V SEKOLAH DASAR.pdf
HARMONI DALAM EKOSISTEM KELAS V SEKOLAH DASAR.pdfkustiyantidew94
 
04-Gemelli.- kehamilan ganda- duo atau triplet
04-Gemelli.- kehamilan ganda- duo atau triplet04-Gemelli.- kehamilan ganda- duo atau triplet
04-Gemelli.- kehamilan ganda- duo atau tripletMelianaJayasaputra
 
Karakteristik Negara Mesir (Geografi Regional Dunia)
Karakteristik Negara Mesir (Geografi Regional Dunia)Karakteristik Negara Mesir (Geografi Regional Dunia)
Karakteristik Negara Mesir (Geografi Regional Dunia)3HerisaSintia
 
PELAKSANAAN + Link2 Materi TRAINING "Effective SUPERVISORY & LEADERSHIP Sk...
PELAKSANAAN  + Link2 Materi TRAINING "Effective  SUPERVISORY &  LEADERSHIP Sk...PELAKSANAAN  + Link2 Materi TRAINING "Effective  SUPERVISORY &  LEADERSHIP Sk...
PELAKSANAAN + Link2 Materi TRAINING "Effective SUPERVISORY & LEADERSHIP Sk...Kanaidi ken
 
tugas 1 tutorial online anak berkebutuhan khusus di SD
tugas 1 tutorial online anak berkebutuhan khusus di SDtugas 1 tutorial online anak berkebutuhan khusus di SD
tugas 1 tutorial online anak berkebutuhan khusus di SDmawan5982
 
tugas 1 anak berkebutihan khusus pelajaran semester 6 jawaban tuton 1.docx
tugas 1 anak berkebutihan khusus pelajaran semester 6 jawaban tuton 1.docxtugas 1 anak berkebutihan khusus pelajaran semester 6 jawaban tuton 1.docx
tugas 1 anak berkebutihan khusus pelajaran semester 6 jawaban tuton 1.docxmawan5982
 

Recently uploaded (20)

demontrasi kontekstual modul 1.2.a. 6.pdf
demontrasi kontekstual modul 1.2.a. 6.pdfdemontrasi kontekstual modul 1.2.a. 6.pdf
demontrasi kontekstual modul 1.2.a. 6.pdf
 
PPT_AKUNTANSI_PAJAK_ATAS_ASET_TETAP.pptx
PPT_AKUNTANSI_PAJAK_ATAS_ASET_TETAP.pptxPPT_AKUNTANSI_PAJAK_ATAS_ASET_TETAP.pptx
PPT_AKUNTANSI_PAJAK_ATAS_ASET_TETAP.pptx
 
IPA Kelas 9 BAB 10 - www.ilmuguru.org.pptx
IPA Kelas 9 BAB 10 - www.ilmuguru.org.pptxIPA Kelas 9 BAB 10 - www.ilmuguru.org.pptx
IPA Kelas 9 BAB 10 - www.ilmuguru.org.pptx
 
Wawasan Nusantara sebagai satu kesatuan, politik, ekonomi, sosial, budaya, d...
Wawasan Nusantara  sebagai satu kesatuan, politik, ekonomi, sosial, budaya, d...Wawasan Nusantara  sebagai satu kesatuan, politik, ekonomi, sosial, budaya, d...
Wawasan Nusantara sebagai satu kesatuan, politik, ekonomi, sosial, budaya, d...
 
Kelompok 1_Karakteristik negara jepang.pdf
Kelompok 1_Karakteristik negara jepang.pdfKelompok 1_Karakteristik negara jepang.pdf
Kelompok 1_Karakteristik negara jepang.pdf
 
Modul Ajar Biologi Kelas 11 Fase F Kurikulum Merdeka [abdiera.com]
Modul Ajar Biologi Kelas 11 Fase F Kurikulum Merdeka [abdiera.com]Modul Ajar Biologi Kelas 11 Fase F Kurikulum Merdeka [abdiera.com]
Modul Ajar Biologi Kelas 11 Fase F Kurikulum Merdeka [abdiera.com]
 
DESAIN MEDIA PEMBELAJARAN BAHASA INDONESIA BERBASIS DIGITAL.pptx
DESAIN MEDIA PEMBELAJARAN BAHASA INDONESIA BERBASIS DIGITAL.pptxDESAIN MEDIA PEMBELAJARAN BAHASA INDONESIA BERBASIS DIGITAL.pptx
DESAIN MEDIA PEMBELAJARAN BAHASA INDONESIA BERBASIS DIGITAL.pptx
 
Materi Pertemuan Materi Pertemuan 7.pptx
Materi Pertemuan Materi Pertemuan 7.pptxMateri Pertemuan Materi Pertemuan 7.pptx
Materi Pertemuan Materi Pertemuan 7.pptx
 
Modul 1.2.a.8 Koneksi antar materi 1.2.pdf
Modul 1.2.a.8 Koneksi antar materi 1.2.pdfModul 1.2.a.8 Koneksi antar materi 1.2.pdf
Modul 1.2.a.8 Koneksi antar materi 1.2.pdf
 
PPT Integrasi Islam & Ilmu Pengetahuan.pptx
PPT Integrasi Islam & Ilmu Pengetahuan.pptxPPT Integrasi Islam & Ilmu Pengetahuan.pptx
PPT Integrasi Islam & Ilmu Pengetahuan.pptx
 
DEMONSTRASI KONTEKSTUAL MODUL 1.3 PENDIDIKAN GURU PENGGERAK
DEMONSTRASI KONTEKSTUAL MODUL 1.3 PENDIDIKAN GURU PENGGERAKDEMONSTRASI KONTEKSTUAL MODUL 1.3 PENDIDIKAN GURU PENGGERAK
DEMONSTRASI KONTEKSTUAL MODUL 1.3 PENDIDIKAN GURU PENGGERAK
 
TUGAS GURU PENGGERAK Aksi Nyata Modul 1.1.pdf
TUGAS GURU PENGGERAK Aksi Nyata Modul 1.1.pdfTUGAS GURU PENGGERAK Aksi Nyata Modul 1.1.pdf
TUGAS GURU PENGGERAK Aksi Nyata Modul 1.1.pdf
 
adap penggunaan media sosial dalam kehidupan sehari-hari.pptx
adap penggunaan media sosial dalam kehidupan sehari-hari.pptxadap penggunaan media sosial dalam kehidupan sehari-hari.pptx
adap penggunaan media sosial dalam kehidupan sehari-hari.pptx
 
PPT Materi Jenis - Jenis Alat Pembayaran Tunai dan Non-tunai.pptx
PPT Materi Jenis - Jenis Alat Pembayaran Tunai dan Non-tunai.pptxPPT Materi Jenis - Jenis Alat Pembayaran Tunai dan Non-tunai.pptx
PPT Materi Jenis - Jenis Alat Pembayaran Tunai dan Non-tunai.pptx
 
HARMONI DALAM EKOSISTEM KELAS V SEKOLAH DASAR.pdf
HARMONI DALAM EKOSISTEM KELAS V SEKOLAH DASAR.pdfHARMONI DALAM EKOSISTEM KELAS V SEKOLAH DASAR.pdf
HARMONI DALAM EKOSISTEM KELAS V SEKOLAH DASAR.pdf
 
04-Gemelli.- kehamilan ganda- duo atau triplet
04-Gemelli.- kehamilan ganda- duo atau triplet04-Gemelli.- kehamilan ganda- duo atau triplet
04-Gemelli.- kehamilan ganda- duo atau triplet
 
Karakteristik Negara Mesir (Geografi Regional Dunia)
Karakteristik Negara Mesir (Geografi Regional Dunia)Karakteristik Negara Mesir (Geografi Regional Dunia)
Karakteristik Negara Mesir (Geografi Regional Dunia)
 
PELAKSANAAN + Link2 Materi TRAINING "Effective SUPERVISORY & LEADERSHIP Sk...
PELAKSANAAN  + Link2 Materi TRAINING "Effective  SUPERVISORY &  LEADERSHIP Sk...PELAKSANAAN  + Link2 Materi TRAINING "Effective  SUPERVISORY &  LEADERSHIP Sk...
PELAKSANAAN + Link2 Materi TRAINING "Effective SUPERVISORY & LEADERSHIP Sk...
 
tugas 1 tutorial online anak berkebutuhan khusus di SD
tugas 1 tutorial online anak berkebutuhan khusus di SDtugas 1 tutorial online anak berkebutuhan khusus di SD
tugas 1 tutorial online anak berkebutuhan khusus di SD
 
tugas 1 anak berkebutihan khusus pelajaran semester 6 jawaban tuton 1.docx
tugas 1 anak berkebutihan khusus pelajaran semester 6 jawaban tuton 1.docxtugas 1 anak berkebutihan khusus pelajaran semester 6 jawaban tuton 1.docx
tugas 1 anak berkebutihan khusus pelajaran semester 6 jawaban tuton 1.docx
 

SKL-CHT

  • 1. 1/8 November 14, 2021 Scikit-Learn Cheat Sheet untuk Data Science softscients.com/2021/11/14/scikit-learn-cheat-sheet-untuk-data-science/ 30 Views Scikit-learn adalah library machine learning open source untuk bahasa pemrograman Python. Ini fitur berbagai klasifikasi, regresi, algoritma pengelompokan, dan alat yang efisien untuk data mining dan analisis data. Ini dibangun di atas NumPy, SciPy, dan Matplotlib. Pada buku yang telah saya terbitkan pernah dibahas koq, ini tambahan juga, maka saya berikan judul Scikit-Learn Cheat Sheet untuk Data Science. Kode di bawah ini menunjukkan langkah-langkah dasar menggunakan scikit-learn untuk membuat dan menjalankan model pada satu set data. Langkah-langkah dalam kode meliputi: memuat data, membelah menjadi kereta api dan set uji, menskalakan set, membuat model, menyesuaikan model pada data, menggunakan model terlatih untuk membuat prediksi pada set tes, dan akhirnya mengevaluasi kinerja model. Seperti biasa kita akan menggunakan dataset iris. Begini kode yang kita akan gunakan secara sekilas.
  • 2. 2/8 from sklearn import neighbors, datasets, preprocessing from sklearn.model_selection import train_test_split from sklearn.metrics import accuracy_score from sklearn.preprocessing import StandardScaler iris = datasets.load_iris() X,y = iris.data[:,:2], iris.target X_train, X_test, y_train, y_test = train_test_split(X,y) scaler = StandardScaler().fit(X_train) X_train = scaler.transform(X_train) X_test = scaler.transform(X_test) knn = neighbors.KNeighborsClassifier(n_neighbors = 5) knn.fit(X_train, y_train) y_pred = knn.predict(X_test) accuracy_score(y_test, y_pred) Loading Data Contents 1 Loading Data 2 Training and Test Data 3 Preprocessing Data 3.1 1. Standardization 3.2 2. Normalization 3.3 3. Binarization 3.4 4. Encoding Categorical Features 3.5 5. Imputing Missing Values 3.6 6. Generating Polynomial Features 4 Create Model 4.1 Supervised Learning Models 4.2 Unsupervised Learning Models 5 Model Fitting 5.1 Supervised learning 5.2 Unsupervised learning 6 Prediction 7 Evaluasi Kinerja Model 7.1 Classification Metrics 7.2 Regression Metrics 7.3 Clustering Metrics 7.4 Cross-Validation 8 Tuning Model 8.1 Grid Search 8.2 Randomized Parameter Optimization
  • 3. 3/8 Data mu harus bertipe numerik dan disimpan sebagai array NumPy atau matriks cadangan SciPy. Jenis lain yang dikonversi ke array numerik, seperti Pandas DataFrame juga dapat diterima. Tapi saya lebih suka menggunakan Numpy saja >>> import numpy as np >>> X = np.random.random((10,5)) array([[0.21069686, 0.33457064], [0.23887117, 0.6093155 ], [0.48848537, 0.62649292]]) >>> y = np.array(['A','B','A']) array(['A', 'B', 'A']) Training and Test Data Membagi dataset menjadi pelatihan dan set uji untuk variabel X dan y. Oiya hati-hati ya, python adalah bahasa case sensitif jadi huruf besar dan kecil itu beda tidak seperti bahasa basic >>> from sklearn.model_selection import train_test_split >>> X_train,X_test,y_train,y_test = train_test_split(X,y, random_state = 0) Oiya pengaturan split dataset diatas, bisa kalian berikan opsi seperti berapa ratio yang digunakan, disini See also Python Pandas Merging DataFrames Preprocessing Data Siapkan data sebelum model difit kan/proses, ada banyak cara yang digunakan tergantung tipe data apakah numerik, kategorikal, ataupun range. Dibahas juga cara menangani missing value. 1. Standardization Standarisasi adalah fitur dengan menghapus rata-rata dan penskalaan ke varians unit. >>> from sklearn.preprocessing import StandardScaler >>> scaler = StandardScaler().fit(X_train) >>> standarized_X = scaler.transform(X_train) >>> standarized_X_test = scaler.transform(X_test) 2. Normalization Setiap sampel (yaitu setiap baris matriks data) dengan setidaknya satu komponen non- nol diskalakan ulang secara independen dari sampel lain sehingga normanya sama dengan satu/jumlah totalnya 1. >>> from sklearn.preprocessing import Normalizer >>> scaler = Normalizer().fit(X_train) >>> normalized_X = scaler.transform(X_train) >>> normalized_X_test = scaler.transform(X_test)
  • 4. 4/8 3. Binarization Data binarize (mengatur nilai fitur ke 0 atau 1) sesuai dengan ambang batas. >>> from sklearn.preprocessing import Binarizer >>> binarizer = Binarizer(threshold = 0.0).fit(X) >>> binary_X = binarizer.transform(X_test) 4. Encoding Categorical Features Label target Encode dengan nilai antara 0 dan n_classes-1. >>> from sklearn import preprocessing >>> le = preprocessing.LabelEncoder() >>> le.fit_transform(X_train) 5. Imputing Missing Values Pengisian data yang kosong dengan nilai reratanya, biasanya data yang sangat besar bisa terjadi banyak missing value. >>> from sklearn.impute import SimpleImputer >>> imp = SimpleImputer(missing_values = 0, strategy = 'mean') >>> imp.fit_transform(X_train) 6. Generating Polynomial Features Hasilkan matriks fitur baru yang terdiri dari semua kombinasi polinomial dari fitur dengan derajat kurang dari atau sama dengan tingkat yang ditentukan. >>> from sklearn.preprocessing import PolynomialFeatures >>> poly = PolynomialFeatures(5) >>> poly.fit_transform(X) Create Model Membuat model dengan algoritma supervised and unsupervised learning. Untuk penjelasan masing-masing algoritma, sudah saya jabarkan dengan beragam bahasa, kalian bisa searching sendiri di website ini. Ataupun mengajukan pertanyaan via email jika ulasan di website ini kurang memuaskan. Supervised Learning Models Algoritma machine learning terawasi yang artinya target sudah ditentukan dari awal. Adapun target disini bisa berupa kelas, angka, dan jumlah cluster bila algoritma tersebut termasuk clustering Linear Regression >>> from sklearn.linear_model import LinearRegression >>> lr = LinearRegression(normalize = True) Support Vector Machines (SVM)
  • 5. 5/8 >>> from sklearn.svm import SVC >>> svc = SVC(kernel = 'linear') Naive Bayes >>> from sklearn.naive_bayes import GaussianNB >>> gnb = GaussianNB() KNN >>> from sklearn import neighbors >>> knn = neighbors.KNeighborsClassifier(n_neighbors = 5) Unsupervised Learning Models Algoritma ini bekerja dengan memerlukan target akan tetapi machine belajar sendiri dalam menentukan target berdasarkan paramater tertentu. Seperti jarak antar anggota, jarak antar cluster, serta ambang batas. Principal Component Analysis (PCA) >>> from sklearn.decomposition import PCA >>> pca = PCA(n_components = 0.95) K means >>> from sklearn.cluster import KMeans >>> k_means = KMeans(n_clusters = 3, random_state = 0) Model Fitting Model fitting yaitu menguji perhitungan algoritma. Bila menggunakan Scikit maka method/function yang dipanggil yaitu fit(). Semuanya sama baik menggunakan supervised dan unsupervised learning. See also Append Array Supervised learning Fit model data >>> lr.fit(X, y) >>> knn.fit(X_train,y_train) >>> svc.fit(X_train,y_train) Unsupervised learning Fit model data >>> k_means.fit(X_train) Fit data dan lakukan transform >>> pca_model = pca.fit_transform(X_train)
  • 6. 6/8 Prediction Prediksi test menggunakan model yang sudah training Prediksi label/target #Supervised Estimators >>> y_pred = lr.predict(X_test) #Unsupervised Estimators >>> y_pred = k_means.predict(X_test) Estimasi probabilitas >>> y_pred = knn.predict_proba(X_test) Evaluasi Kinerja Model Untuk mengukur/evaluasi kinerja model ada banyak cara yang digunakan tergantung kasus seperti klasifikasi atau regresi dan clustering Classification Metrics Accuracy Score >>> knn.score(X_test,y_test) >>> from sklearn.metrics import accuracy_score >>> accuracy_score(y_test,y_pred) Classification Report >>> from sklearn.metrics import classification_report >>> print(classification_report(y_test,y_pred)) Confusion Matrix >>> from sklearn .metrics import confusion_matrix >>> print(confusion_matrix(y_test,y_pred)) Regression Metrics Untuk pembahasan pengukuran regression metrics disini Mean Absolute Error >>> from sklearn.metrics import mean_absolute_error >>> mean_absolute_error(y_test,y_pred) Mean Squared Error >>> from sklearn.metrics import mean_squared_error >>> mean_squared_error(y_test,y_pred) R² Score
  • 7. 7/8 >>> from sklearn.metrics import r2_score >>> r2_score(y_test, y_pred) Clustering Metrics Adjusted Rand Index >>> from sklearn.metrics import adjusted_rand_score >>> adjusted_rand_score(y_test,y_pred) Homogeneity >>> from sklearn.metrics import homogeneity_score >>> homogeneity_score(y_test,y_pred) V-measure >>> from sklearn.metrics import v_measure_score >>> v_measure_score(y_test,y_pred) Cross-Validation Score Evaluasi dengan cross-validation >>> from sklearn.model_selection import cross_val_score >>> print(cross_val_score(knn, X_train, y_train, cv=4)) Tuning Model Tuning / menemukan nilai parameter yang benar yang akan memaksimalkan akurasi prediksi model. Ada 2 cara yang digunakan yaitu 1. pencarian menggunakan iterasi tertentu, misalkan jika paramater tersebut mempunyai pengaturan jumlah minimal keanggotaan, maka bisa dicoba dengan membuat pengaturan 1 sampai n keanggotaan 2. random menggunakan nilai acak tertentu jadi tidak semuanya dicoba satu-persatu Grid Search Pencarian lengkap atas nilai parameter tertentu untuk estimator. Contoh di bawah ini mencoba untuk menemukan jumlah cluster yang tepat untuk menentukan knn untuk memaksimalkan akurasi model. Biasanya dilakukan menggunakan teknik looping, tapi dalam keadaan tertentu paramater function menerima argument array sehingga tidak perlu membuat looping tersendiri. Contoh dibawah ini array [1:3] sebagai pencarian yang terbaik berdasarkan jumlah minimal tetangga pada KNN >>> from sklearn.model_selection import GridSearchCV >>> params = {'n_neighbors': np.arange(1,3), 'metric':['euclidean','cityblock']} >>> grid = GridSearchCV(estimator = knn, param_grid = params) >>> grid.fit(X_train, y_train) >>> print(grid.best_score_) >>> print(grid.best_estimator_.n_neighbors)
  • 8. 8/8 Menggunakan GridSearchCV untuk menentukan paramater terbaik di KNN See also Quadratic Programming Randomized Parameter Optimization Pencarian acak pada hiperparameter. Berbeda dengan Pencarian Grid, tidak semua nilai parameter dicoba, melainkan sejumlah pengaturan parameter tetap diambil sampelnya dari distribusi yang ditentukan. Jumlah pengaturan parameter yang dicoba diberikan oleh n_iter. >>> from sklearn.model_selection import RandomizedSearchCV >>> params = {'n_neighbors':range(1,5), 'weights':['uniform','distance']} >>> rsearch = RandomizedSearchCV(estimator = knn, param_distributions = params, cv = 4, n_iter = 8, random_state = 5) >>> rseach.fit(X_train, y_train) >>> print(rsearch.best_score_) Scikit-learn adalah library yang sangat berguna untuk berbagai model machine learning. Bagian-bagian di atas memberikan proses langkah demi langkah dasar untuk melakukan analisis pada model yang berbeda. Namun, jika kalian ingin mempelajari lebih lanjut, lihat dokumentasi untuk Scikit-Learn, karena masih ada banyak fungsi bermanfaat yang dapat kalian pelajari. Akhirnya selesai juga pembahasan mengenai Scikit-Learn Cheat Sheet untuk Data Science. Happy coding