Memprediksi sentimen ulasan film
Pada latihan sebelumnya, Anda telah menghasilkan representasi bag-of-words untuk data ulasan film pelatihan dan pengujian. Dalam latihan ini, kita akan menggunakan model tersebut untuk melatih pengklasifikasi Naive Bayes yang dapat mendeteksi sentimen sebuah ulasan film dan menghitung akurasinya. Perlu dicatat bahwa karena ini adalah masalah klasifikasi biner, model hanya mampu mengklasifikasikan ulasan sebagai positif (1) atau negatif (0). Model tidak dapat mendeteksi ulasan netral.
Jika Anda lupa, vektor BoW pelatihan dan pengujian masing-masing tersedia sebagai X_train_bow dan X_test_bow. Label yang bersesuaian masing-masing tersedia sebagai y_train dan y_test. Selain itu, sebagai referensi, himpunan data ulasan film asli tersedia sebagai df.
Latihan ini adalah bagian dari kursus
Rekayasa Fitur untuk NLP di Python
Petunjuk latihan
- Buat instance objek
MultinomialNB. Beri namaclf. - Latih
clfmenggunakanX_train_bowdany_train. - Ukur akurasi
clfmenggunakanX_test_bowdany_test.
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
# Create a MultinomialNB object
clf = ____
# Fit the classifier
clf.____(____, ____)
# Measure the accuracy
accuracy = clf.score(____, ____)
print("The accuracy of the classifier on the test set is %.3f" % accuracy)
# Predict the sentiment of a negative review
review = "The movie was terrible. The music was underwhelming and the acting mediocre."
prediction = clf.predict(vectorizer.transform([review]))[0]
print("The sentiment predicted by the classifier is %i" % (prediction))