Implementasi Lanjutan K-Means, KNN & Decision Tree
(Evaluasi, Visualisasi, dan Studi Kasus Nyata UMKM)
Artikel ini merupakan bagian ketiga dari seri Machine Learning untuk UMKM.
- Bagian 1 – Konsep Dasar Klasifikasi Pelanggan UMKM
- Bagian 2 – Pipeline RFM → K-Means → KNN → Decision Tree
Jika dua artikel sebelumnya fokus pada pembangunan sistem, maka tutorial ini membawa sistem tersebut ke level implementasi nyata.
- Tujuan Tutorial Lanjutan
- Evaluasi Jumlah Cluster (Elbow Method)
- Visualisasi Segmentasi Pelanggan
- Tuning & Validasi Model
- Studi Kasus Nyata UMKM
- Dampak Bisnis & Insight
1. Tujuan Tutorial Lanjutan
Dalam praktik UMKM, pertanyaan yang muncul bukan lagi “bagaimana membuat model”, melainkan:
- Apakah segmentasi ini masuk akal secara bisnis?
- Apakah pelanggan bisa berpindah segmen?
- Bagaimana membaca pola pelanggan secara visual?
Semua pertanyaan tersebut dijawab di tutorial ini.
2. Evaluasi Jumlah Cluster dengan Elbow Method
from sklearn.cluster import KMeans
inertia = []
K = range(2, 10)
for k in K:
km = KMeans(n_clusters=k, random_state=42)
km.fit(rfm_scaled)
inertia.append(km.inertia_)
Elbow Method membantu mencegah:
- Terlalu sedikit segmen (kurang presisi)
- Terlalu banyak segmen (sulit dijalankan UMKM)
3. Visualisasi Segmentasi Pelanggan
Visualisasi sangat penting untuk komunikasi non-teknis.
import matplotlib.pyplot as plt
plt.scatter(
rfm["frequency"],
rfm["monetary"],
c=rfm["cluster"]
)
plt.xlabel("Frequency")
plt.ylabel("Monetary")
plt.title("Segmentasi Pelanggan UMKM")
plt.show()
4. Tuning & Validasi Model
KNN – Stabilitas Prediksi
from sklearn.model_selection import GridSearchCV
param_grid = {"n_neighbors": [3,5,7,9]}
grid = GridSearchCV(
KNeighborsClassifier(),
param_grid,
cv=5
)
grid.fit(rfm_scaled, rfm["cluster"])
Decision Tree – Interpretasi Bisnis
from sklearn.tree import DecisionTreeClassifier
dt = DecisionTreeClassifier(
max_depth=3,
min_samples_leaf=30,
random_state=42
)
dt.fit(rfm, rfm["cluster"])
Decision Tree ini menghasilkan aturan sederhana seperti:
- Jika frequency tinggi dan monetary besar → pelanggan loyal
- Jika recency tinggi dan frequency rendah → pelanggan pasif
5. Studi Kasus Nyata: UMKM Retail
Sebuah UMKM retail memiliki 1.200 data transaksi selama 1 tahun. Setelah diterapkan sistem ini, ditemukan:
- 15% pelanggan menyumbang > 55% pendapatan
- Pelanggan loyal sering tidak mendapat promo khusus
- Pelanggan pasif justru sering diberi diskon
Setelah segmentasi diterapkan:
- Promo difokuskan ke segmen loyal & reguler
- Diskon besar dikurangi untuk segmen pasif
- Repeat order meningkat tanpa menaikkan biaya iklan
6. Dampak Bisnis bagi UMKM
Manfaat nyata yang dirasakan:
- Keputusan berbasis data, bukan intuisi
- Strategi promo lebih tepat sasaran
- Pemilik UMKM memahami pelanggan mereka
7. Penutup & Arah Lanjutan
Dengan seri ini, UMKM sudah memiliki:
- Sistem segmentasi pelanggan
- Model prediksi pelanggan baru
- Aturan bisnis yang dapat dijelaskan
Artikel lanjutan akan membahas: deploy model ke aplikasi (Flask / FastAPI) dan dashboard visualisasi pelanggan.
Tidak ada komentar:
Posting Komentar