Analisis sentimen klasifikasi ulasan film menggunakan python

Analisis sentimen klasifikasi ulasan film

Saat ini perusahaan ingin mengerti, apa yang salah dengan produk terbaru mereka? apa pendapat pengguna dan masyarakat umum tentang fitur terbaru? Anda dapat mengukur informasi tersebut dengan akurasi yang baik menggunakan analisis sentimen.

Mengukur konten, ide, keyakinan, dan pendapat pengguna dikenal sebagai analisis sentimen. Posting online pengguna, blog, tweet, umpan balik produk membantu pebisnis ke audiens target dan berinovasi dalam produk dan layanan. analisis sentimen membantu dalam memahami orang dengan cara yang lebih baik dan lebih akurat, tidak hanya terbatas pada pemasaran, tetapi juga dapat digunakan dalam politik, penelitian, dan keamanan.

Komunikasi manusia tidak terbatas pada kata-kata, itu lebih dari kata-kata. Sentimen adalah kombinasi kata, nada, dan gaya penulisan. Sebagai seorang analis data, lebih penting untuk memahami sentimen kita, apa artinya sebenarnya?

Ada terutama dua pendekatan untuk melakukan analisis sentimen

  • Berbasis leksikon: hitung jumlah kata positif dan negatif dalam teks tertentu dan hitungan yang lebih besar akan menjadi sentimen teks.
  • Pendekatan berbasis pembelajaran mesin: Kembangkan model klasifikasi, yang dilatih menggunakan kumpulan data berlabel positif, negatif, dan netral.
    Dalam tutorial ini, Anda akan menggunakan pendekatan kedua (pendekatan berbasis pembelajaran mesin). Inilah cara Anda mempelajari sentimen dan klasifikasi teks dengan satu contoh.

Klasifikasi Teks

Klasifikasi teks adalah salah satu tugas penting dari penambangan teks. Ini adalah pendekatan yang diawasi. Mengidentifikasi kategori atau kelas teks tertentu seperti blog, buku, halaman web, artikel berita, dan tweet. Ini memiliki berbagai aplikasi di dunia komputer saat ini seperti deteksi spam, kategorisasi tugas dalam layanan CRM, mengkategorikan produk di situs web E-retailer, mengklasifikasikan konten situs web untuk mesin pencari, sentimen umpan balik pelanggan, dll. Di bagian selanjutnya, Anda akan belajar bagaimana Anda bisa melakukan klasifikasi teks dengan python.

Baca juga :   Pemahaman Mendalam dan Perhitungan Long Short-Term Memory (LSTM) menggunkan Python

Melakukan Analisis Sentimen menggunakan Klasifikasi Teks

Memuat Data

Sampai saat ini, Anda telah mempelajari preprocessing data menggunakan NLTK. Sekarang, Anda akan belajar Klasifikasi Teks. Anda akan melakukan Klasifikasi Multi-Nomial Naive Bayes menggunakan scikit-learn.

Dalam memodelkan bagian bangunan, Anda dapat menggunakan kumpulan data “Analisis Sentimen Film, Ulasan” yang tersedia di Kaggle. Dataset adalah file yang dipisahkan tab. Dataset memiliki empat kolom PhraseId, SentenceId, Phrase, dan Sentimen.

Data ini memiliki 5 label sentimen:

0 — negatif 1 — agak negatif 2 — netral 3 — agak positif 4 — positif

Di sini, Anda dapat membuat model untuk mengklasifikasikan jenis kultivar. Dataset tersedia di Kaggle, Anda dapat mengunduhnya dari tautan berikut:  https://www.kaggle.com/c/sentiment-analysis-on-movie-reviews/data

Pembuatan Fitur menggunakan Bag of Words

Masalah Klasifikasi Dalam Teks, kami memiliki sekumpulan teks dan labelnya masing-masing. tetapi kita secara langsung tidak dapat menggunakan teks untuk model kita. Anda perlu mengubah teks ini menjadi beberapa angka atau vektor angka.

Bag-of-words model(BoW ) adalah cara paling sederhana untuk mengekstraksi fitur dari teks. BoW mengubah teks menjadi matriks kemunculan kata-kata dalam dokumen. Model ini memperhatikan apakah kata-kata yang diberikan muncul atau tidak dalam dokumen.

Contoh: Ada tiga dokumen:

Dok 1:  Saya suka anjing.

Dok 2:  Saya benci anjing dan merajut.

Dok 3 :  Merajut adalah hobi dan kegemaran saya.

Sekarang, Anda dapat membuat matriks dokumen dan kata dengan menghitung kemunculan kata dalam dokumen tertentu. Matriks ini dikenal sebagai Document-Term Matrix (DTM).

Baca juga :   Blajar crawling data dari twitter

Matriks ini menggunakan satu kata. Ini bisa berupa kombinasi dari dua kata atau lebih, yang disebut model bigram atau trigram dan pendekatan umum disebut model n-gram.

Anda dapat membuat matriks istilah dokumen dengan menggunakan CountVectorizer scikit-learn.

 

Pisahkan kereta dan set pengujian

Untuk memahami performa model, membagi dataset menjadi set pelatihan dan set pengujian adalah strategi yang baik.

Mari pisahkan dataset dengan menggunakan fungsi train_test_split(). Anda pada dasarnya harus melewati 3 parameter fitur, target, dan ukuran test_set. Selain itu, Anda dapat menggunakan random_state untuk memilih record secara acak.

 

Pembuatan Model dan Evaluasi

Mari membangun Model Klasifikasi Teks menggunakan TF-IDF.

Pertama, impor modul MultinomialNB dan buat objek pengklasifikasi Multinomial Naive Bayes menggunakan fungsi MultinomialNB().

Kemudian, paskan model Anda pada rangkaian kereta menggunakan fit() dan lakukan prediksi pada rangkaian pengujian menggunakan prediksi().

Nah, Anda mendapat tingkat klasifikasi 60,49% menggunakan CountVector (atau BoW), yang tidak dianggap sebagai akurasi yang baik. Kami perlu meningkatkan ini.

Pembuatan Fitur menggunakan TF-IDF

Dalam Term Frequency (TF), Anda tinggal menghitung jumlah kata yang muncul di setiap dokumen. Masalah utama dengan Term Frequency ini adalah akan memberi bobot lebih pada dokumen yang lebih panjang. Term frequency pada dasarnya adalah output dari model BoW.

Baca juga :   Cara Mengunggah Konten ke GitHub Menggunakan Visual Studio Code

IDF (Frekuensi Dokumen Terbalik) mengukur jumlah informasi yang disediakan kata tertentu di seluruh dokumen. IDF adalah rasio terbalik berskala logaritmik dari jumlah dokumen yang mengandung kata dan jumlah total dokumen.

TF-IDF(Term Frequency-Inverse Document Frequency) menormalkan matriks istilah dokumen. Ini adalah produk dari TF dan IDF. Word dengan tf-idf tinggi dalam dokumen, sebagian besar waktu yang terjadi dalam dokumen yang diberikan dan harus absen dalam dokumen lain. Jadi kata-kata itu harus menjadi kata tanda tangan.

 

Split train dan test set (TF-IDF)

Mari pisahkan dataset dengan menggunakan fungsi train_test_split(). Anda pada dasarnya harus melewati 3 parameter fitur, target, dan ukuran test_set. Selain itu, Anda dapat menggunakan random_state untuk memilih record secara acak.

 

Pembuatan Model dan Evaluasi (TF-IDF)

Mari membangun Model Klasifikasi Teks menggunakan TF-IDF.

Pertama, impor modul MultinomialNB dan buat objek pengklasifikasi Multinomial Naive Bayes menggunakan fungsi MultinomialNB().

Kemudian, paskan model Anda pada rangkaian kereta menggunakan fit() dan lakukan prediksi pada rangkaian pengujian menggunakan prediksi().

Nah, Anda mendapatkan tingkat klasifikasi 58,65% menggunakan fitur TF-IDF, yang tidak dianggap sebagai akurasi yang baik. Kami perlu meningkatkan akurasi menggunakan beberapa prapemrosesan atau rekayasa fitur lainnya. Mari sarankan di kotak komentar beberapa pendekatan untuk peningkatan akurasi.

Jika ada yang ingin di tanyakan atau ingin melanjutkan pembahasan lebih dalam lagi silahkan komen di bawah sini ?..

0 Comments

Submit a Comment

Your email address will not be published. Required fields are marked *

Analisis sentimen klasifikasi ulasan film menggunakan python

by | Apr 23, 2023 | web mining | 0 comments

DAFTAR BACA

Cara Mengunggah Konten ke GitHub Menggunakan Visual Studio Code

Cara Mengunggah Konten ke GitHub Menggunakan Visual Studio Code

GitHub adalah platform hosting yang populer untuk mengelola dan berbagi proyek pengembangan perangkat lunak. Mengunggah konten ke GitHub memungkinkan Anda menyimpan, membagikan, dan berkolaborasi dengan pengembang lain dalam proyek Anda. Dalam artikel ini, kami akan...

Cara clustering menggunakan bahasa pemrograman python

Cara clustering menggunakan bahasa pemrograman python

Sebelum kita bahas lebih dalam lagi alangkah baiknya kita harus tahu apa itu clustering, clustering adalah teknik dalam machine learning yang digunakan untuk mengelompokkan data yang serupa menjadi beberapa kelompok (cluster) berdasarkan kemiripan di antara data...

Pengindeksan Semantik Laten menggunakan Scikit-Learn

Pengindeksan Semantik Laten menggunakan Scikit-Learn

Pada pembahasan kali ini kita akan fokus pada Latent Semantic Indexing atau Latent Semantic Analysis dan melakukan pemodelan topik menggunakan Scikit-learn. Jika Anda ingin mengimplementasikan pemodelan topik menggunakan Gensim, Anda dapat merujuk ke artikel Menemukan...

Cara crawling data website berita dengan program python dengan mudah

Cara crawling data website berita dengan program python dengan mudah

crawling data berita adalah proses pengumpulan informasi dari website berita secara otomatis dengan menggunakan perangkat lunak tertentu yang disebut "crawler" atau "spider". Crawler akan memindai dan mengambil data dari setiap halaman website berita yang ditentukan,...

Klasifikasi Menggunakan Metode Ensemble Learning pada Twitter

Klasifikasi Menggunakan Metode Ensemble Learning pada Twitter

Ensemble Learning adalah proses di mana beberapa model, seperti pengklasifikasi atau ahli, secara strategis dihasilkan dan digabungkan untuk memecahkan kecerdasan komputasi tertentu.masalah. Ensemble Learning utamanya digunakan untuk meningkatkan (klasifikasi,...

Blajar crawling data dari twitter

Blajar crawling data dari twitter

Blajar crawling data dari twitter Crawling adalah semacam pengambilan data dari media sosial kemudian di kumpulkan menjadi satu untuk di evakuasi dan di bentuk agar menjadi sebuah penelitian. Prosesnya cukup mudah tergantung kamu ingin mengambil data dari sosial media...