Modul 6: Clustering & NLP Dasar
Yang akan kamu kuasai
- Clustering tanpa label dengan k-Means
- Mengubah teks jadi angka (TF-IDF)
- Sentimen sederhana
1 · Teori (~5–10 mnt baca)
Unsupervised learning bekerja TANPA label. k-Means mengelompokkan data ke k cluster berdasarkan kedekatan: pelanggan dibagi 'hemat', 'reguler', 'premium' otomatis. Kamu yang memilih k (coba beberapa, pakai elbow method).
from sklearn.cluster import KMeans # X = [[belanja, frekuensi], ...] km = KMeans(n_clusters=3, random_state=1, n_init=10).fit(X) print(km.labels_) # cluster tiap pelanggan: [0 2 1 ...] print(km.cluster_centers_)
Komputer tak paham teks — ubah jadi angka. CountVectorizer menghitung frekuensi kata; TfidfVectorizer menurunkan bobot kata yang terlalu umum ('yang', 'dan') dan menaikkan kata khas. Hasilnya matriks siap dilatih.
from sklearn.feature_extraction.text import TfidfVectorizer dok = ['makanan enak sekali', 'makanan buruk', 'pelayanan cepat'] vec = TfidfVectorizer() X = vec.fit_transform(dok) print(vec.get_feature_names_out())
Output:
['cepat' 'enak' 'buruk' 'makanan' 'pelayanan' 'sekali']Mini proyek sentimen: gabungkan TF-IDF + LogisticRegression pada ribuan review → model menentukan positif/negatif review baru. Inilah dasar social media monitoring yang dijual vendor mahal.
2 · Video
Tonton 1 video inti dari kurasi pencarian ini (gratis, di YouTube):
▶ Tonton Video Pilihan3 · Praktek
Langkah praktek: (1) buat 20 data pelanggan 2 fitur, (2) k-Means k=3 + plot scatter warna per cluster, (3) TF-IDF 20 review, (4) latih classifier sentimen, (5) uji dengan review buatanmu.
Buka di Google Colab ↗Kuis
0/3 terjawab1. k-Means termasuk learning jenis…
2. TF-IDF berfungsi untuk…
3. Menentukan jumlah cluster k paling sering dengan…