- Assignment Chapter 2 - Case 1 (02_Kelompok_B_1.ipynb)
- Assignment Chapter 2 - Case 2 (02_Kelompok_B_2.ipynb)
- Assignment Chapter 2 - Case 3 (02_Kelompok_B_3.ipynb)
- Assignment Chapter 2 - Case 4 (02_Kelompok_B_4.ipynb)
Kasus pertama dalam tugas ini adalah membuat model klasifikasi menggunakan algoritma Machine Learning untuk memprediksi Exited dari nasabah dalam dataset bank data.
Dataset yang digunakan adalah SC_HW1_bank_data.csv.
- Pandas: Untuk manipulasi data.
- Numpy: Untuk operasi numerik.
- Scikit-learn: Untuk membangun model machine learning (RandomForestClassifier, SVC, GradientBoostingClassifier).
- Modul dan Versi: Pastikan semua modul yang diperlukan sudah diinstal.
- Kolom dan Data yang Digunakan: Hilangkan kolom yang tidak relevan dan lakukan preprocessing untuk menyiapkan data.
- Data Preprocessing: Menghilangkan kolom yang tidak relevan, melakukan One-Hot Encoding, dan normalisasi menggunakan
MinMaxScaler. - Pemodelan dan Evaluasi:
- Model #1: Random Forest
- Model #2: Support Vector Classifier (SVC)
- Model #3: Gradient Boosting Classifier
- Hyperparameter Tuning: Melakukan Grid Search untuk mencari parameter terbaik.
- Evaluasi:
- Metrics: Menggunakan
accuracy_score,classification_report, danconfusion_matrix. - Membandingkan hasil akurasi dari ketiga model dan menarik kesimpulan.
- Metrics: Menggunakan
Setiap model dijelaskan secara singkat dalam notebook. Berdasarkan hasil, Gradient Boosting Classifier menunjukkan performa terbaik dengan akurasi yang lebih tinggi serta waktu pemrosesan lebih cepat dibanding model lainnya.
Kasus kedua dalam tugas ini adalah melakukan clustering atau segmentasi data menggunakan unsupervised learning, khususnya menggunakan algoritma KMeans Clustering.
Dataset yang digunakan adalah cluster_s1.csv.
- Pandas: Untuk manipulasi data.
- Numpy: Untuk operasi numerik.
- Matplotlib & Seaborn: Untuk visualisasi data.
- Scikit-learn: Untuk algoritma clustering KMeans.
- Modul dan Versi: Pastikan semua modul yang diperlukan sudah diinstal.
- Data Preparation: Menghapus kolom yang tidak relevan.
- Penentuan Jumlah Cluster Terbaik:
- Menggunakan Silhouette Score untuk menentukan nilai k terbaik di antara rentang nilai tertentu.
- Pemodelan dengan KMeans:
- Melatih model KMeans dengan jumlah cluster terbaik yang didapatkan.
- Evaluasi dan Visualisasi:
- Memvisualisasikan hasil clustering menggunakan Seaborn, menampilkan scatter plot dengan warna berbeda untuk setiap cluster.
Nilai k terbaik diperoleh berdasarkan Silhouette Score tertinggi. Hasil clustering divisualisasikan dalam bentuk scatter plot yang menunjukkan distribusi dan segmentasi data yang dihasilkan.
Kasus ketiga dalam tugas ini adalah membuat model regresi menggunakan TensorFlow-Keras untuk memprediksi harga rumah di California berdasarkan dataset California House Price. Model ini dibangun menggunakan arsitektur Multilayer Perceptron dengan input ganda.
Dataset yang digunakan adalah California House Price dari Scikit-Learn, dengan variabel target berupa harga rumah.
- Pandas: Digunakan untuk manipulasi data dalam bentuk DataFrame.
- Numpy: Digunakan untuk operasi array dan matriks.
- TensorFlow: Framework utama untuk membangun dan melatih model deep learning.
- Keras: API untuk membangun model deep learning dalam TensorFlow.
- Scikit-learn: Digunakan untuk pre-processing data, seperti standardisasi dan pembagian dataset.
- Matplotlib: Digunakan untuk visualisasi grafik dari hasil pelatihan model.
-
Persiapan dan Pemisahan Data:
- Konversi data ke bentuk DataFrame.
- Pisahkan data menjadi train, validation, dan test set.
- Lakukan standarisasi dan normalisasi data.
-
Membangun Model Neural Network:
- Buat dua hidden layer dengan 30 neuron menggunakan fungsi aktivasi ReLU.
- Gabungkan input ganda (input A dan B) sebelum memasukkan ke output layer.
-
Training dan Evaluasi Model:
- Tentukan parameter learning rate, epochs, dan batch size.
- Lakukan training pada model dan tampilkan hasil loss untuk memastikan model tidak overfitting.
-
Menyimpan Model:
- Simpan model yang telah dilatih dan prediksi beberapa sampel baru.
Kasus keempat dalam tugas ini adalah membangun model klasifikasi menggunakan PyTorch untuk mendeteksi transaksi fraud pada dataset Credit Card Fraud 2023. Model ini menggunakan Multilayer Perceptron untuk mengklasifikasikan apakah suatu transaksi termasuk fraud atau tidak.
Dataset yang digunakan adalah Credit Card Fraud 2023, dengan variabel target berupa kolom Class (fraud/non-fraud).
- Pandas: Digunakan untuk manipulasi data dalam bentuk DataFrame.
- cuDF: Versi GPU-accelerated dari Pandas untuk memproses data di GPU.
- cuML: Digunakan untuk pemrosesan data secara parallel di GPU, khususnya untuk scaling.
- Numpy (cuPy): Digunakan sebagai library untuk operasi array di GPU.
- Scikit-learn: Digunakan untuk standardisasi dan pembagian dataset.
- PyTorch: Framework untuk membangun model deep learning dan melakukan training serta evaluasi.
-
Impor Dataset dengan GPU:
- Unduh dan unzip dataset, lalu baca menggunakan cuDF (Pandas versi GPU).
- Hilangkan kolom ID dan lakukan standarisasi menggunakan GPU.
-
Pemisahan Data dan Konversi ke Tensor:
- Tentukan fitur X dan target Y.
- Lakukan pemisahan data train dan test menggunakan GPU.
- Konversi data ke Tensor untuk digunakan pada DataLoader PyTorch.
-
Membangun Model Neural Network:
- Bangun arsitektur Multilayer Perceptron dengan 4 hidden layers menggunakan PyTorch.
- Tentukan parameter model seperti epochs, num_layers, dan learning rate.
-
Training dan Evaluasi Model:
- Lakukan training model dan evaluasi akurasi model.
- Pastikan akurasi model mencapai setidaknya 95%, atau lakukan fine-tuning jika dibutuhkan.
- Buka Google Colab.
- Unggah file
02_Kelompok_B_1.ipynbdan02_Kelompok_B_2.ipynb. - Untuk masing-masing file, jalankan sel secara berurutan dan ikuti instruksi yang terdapat dalam notebook.