Files
kelompok3-deeplearning/docs/analisis_evaluasi_model_sentimen_gap.md
T

3.6 KiB

Analisis Sentimen Lengkap (GAP Model)

1. Distribusi Label Data

Dataset ulasan Tokopedia dari Hugging Face (farhamu/tokopedia-product-reviews-2019) berisi 40.607 baris ulasan. Setelah membersihkan rating netral (rating 3 sebanyak 1.823 baris), tersisa 38.784 ulasan dengan pembagian:

  • Label 1 (Positif): Ulasan dengan rating 4 dan 5 (37.860 sampel / ~97,62%)
  • Label 0 (Negatif): Ulasan dengan rating 1 dan 2 (924 sampel / ~2,38%)

Dataset kemudian dibagi menjadi 80% data latih (31.027 ulasan) dan 20% data uji (7.757 ulasan) secara bertingkat (stratified).

Grafik distribusi label telah disimpan pada direktori results/03_nlp_sentiment/figures/distribusi_label_sentimen.png.


2. Training History

Model Sentimen_GAP dibangun dengan arsitektur: Embedding(10000, 64) -> GlobalAveragePooling1D -> Dense(32, relu) -> Dropout(0.3) -> Dense(1, sigmoid)

Dilatih menggunakan Optimizer Adam, Loss Function binary_crossentropy, serta callback EarlyStopping (patience = 4).

Kurva performa pelatihan (Training vs Validation Accuracy & Loss) disimpan pada berkas results/03_nlp_sentiment/figures/histori_gap_sentimen.png.

  • Pengamatan: Model belajar dengan stabil tanpa terjadi indikasi overfitting yang signifikan karena perbedaan antara Training Accuracy (~98%) dan Validation Accuracy (~97.8%) relatif kecil dan konvergen.

3. Classification Report & Confusion Matrix (GAP Evaluation)

Classification Report pada Test Set (7.757 Ulasan):

Laporan evaluasi lengkap disimpan pada results/03_nlp_sentiment/reports/classification_report_gap_sentimen.txt.

Kelas Precision Recall F1-Score Support
Negatif (0) 0.59 0.22 0.32 185
Positif (1) 0.98 1.00 0.99 7.572
Accuracy 97.6% (0.98) 7.757
Macro Avg 0.78 0.61 0.65 7.757
Weighted Avg 0.97 0.98 0.97 7.757

Analisis Ketimpangan Data (Imbalance):

Karena kelas positif jauh mendominasi (97,6% ulasan Tokopedia bersifat positif), model mencetak akurasi keseluruhan yang sangat tinggi (97,6%), namun memiliki recall lebih rendah pada kelas minoritas negatif (22%). Untuk meningkatkan sensitivitas terhadap komplain pelanggan negatif, penyesuaian bobot kelas (class weights) atau teknik oversampling dapat diterapkan pada tahap iterasi berikutnya.

Confusion Matrix:

Visualisasi confusion matrix telah disimpan pada berkas results/03_nlp_sentiment/figures/confusion_matrix_gap_sentimen.png. Matrix ini menunjukkan jumlah prediksi True Positive, True Negative, False Positive, dan False Negative pada data uji.


4. Hasil Prediksi 5 Ulasan Custom (Inference)

Berikut adalah hasil pengujian model pada 5 ulasan buatan sendiri:

  1. Ulasan: "Produk berkualitas tinggi, pengiriman cepat, packing aman!"

    • Prediksi: POSITIF
    • Confidence: 0.985 (98.5%)
  2. Ulasan: "Kecewa banget, barang datang rusak dan customer service tidak responsif"

    • Prediksi: NEGATIF
    • Confidence: 0.042 (Probabilitas Positif: 4.2%, Keyakinan Negatif: 95.8%)
  3. Ulasan: "Lumayan sih, tapi harganya kemahalan untuk kualitas segitu"

    • Prediksi: NEGATIF
    • Confidence: 0.380 (Probabilitas Positif: 38.0%, Keyakinan Negatif: 62.0%)
  4. Ulasan: "Tidak sesuai deskripsi sama sekali, mau return tapi ribet"

    • Prediksi: NEGATIF
    • Confidence: 0.065 (Probabilitas Positif: 6.5%, Keyakinan Negatif: 93.5%)
  5. Ulasan: "Barang bagus, sesuai dengan foto dan penjual sangat ramah"

    • Prediksi: POSITIF
    • Confidence: 0.989 (98.9%)