LAPORAN PROJECT
KLASIFIKASI DATASET BAKERY DENGAN
DECISION TREE
Tanggal: 13 August 2025
Nama: ........................................
Organisasi / Lembaga: ........................................
1. Tujuan
Tujuan dari proyek ini adalah membangun model klasifikasi untuk memprediksi kategori
pada data Bakery (misalnya 'Healthy' atau 'Unhealthy') menggunakan Decision Tree
Classifier. Model dioptimalkan dengan GridSearchCV untuk menemukan parameter terbaik
berdasarkan metrik accuracy.
2. Sumber Data & Ukuran Data
- Dataset diperoleh dari file [Link].
- Variabel prediktor: berbagai atribut gizi seperti Calories, Carbohydrate, Sugar, dll.
- Variabel target: Healthy (1 = sehat, 0 = tidak sehat).
- Jumlah data: (diisi sesuai hasil [Link])
- Tipe data: campuran numerik dan kategorikal.
3. Penyiapan dan Pembersihan Data
Langkah-langkah yang dilakukan:
1. Import library: pandas, numpy, scikit-learn, seaborn, dll.
2. Load dataset dari file CSV.
3. Periksa data dengan [Link]() dan [Link]().
4. Handling missing values: nilai kosong dihapus atau diganti rata-rata.
5. Encoding data kategorikal menggunakan LabelEncoder.
6. Scaling fitur numerik menggunakan StandardScaler.
7. Pisahkan fitur (X) dan target (y).
4. Pemodelan
Model yang digunakan adalah Decision Tree Classifier dengan optimisasi GridSearchCV.
Kode Utama:
from [Link] import DecisionTreeClassifier
from sklearn.model_selection import GridSearchCV, train_test_split
DT = DecisionTreeClassifier(random_state=42)
para = {
'max_depth': [3, 5, 7, 10],
'min_samples_split': [2, 5, 10],
'criterion': ['gini', 'entropy']
}
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
Gd = GridSearchCV(DT, param_grid=para, scoring='accuracy', cv=5)
[Link](X_train, y_train)
print('Best Params:', Gd.best_params_)
print('Best Score:', Gd.best_score_)
5. Hasil Pemodelan
- Best Parameters: (diisi hasil Gd.best_params_)
- Best Cross-Validation Accuracy: (diisi hasil Gd.best_score_)
- Test Accuracy: (diisi dari prediksi pada X_test)
Classification Report:
from [Link] import classification_report
y_pred = [Link](X_test)
print(classification_report(y_test, y_pred))
6. Analisis Hasil
Model Decision Tree dengan parameter optimal memberikan akurasi sebesar X% pada data
uji.
Precision, Recall, dan F1-Score bervariasi tergantung kelas target.
Confusion Matrix menunjukkan distribusi prediksi benar dan salah.
Dengan optimisasi GridSearchCV, model mampu memilih kombinasi max_depth,
min_samples_split, dan criterion yang memberikan performa terbaik.