Membatasi fitur Anda
Seperti yang Anda lihat, menggunakan CountVectorizer dengan pengaturan default akan membuat sebuah fitur untuk setiap kata dalam korpus Anda. Ini dapat menghasilkan terlalu banyak fitur, sering kali termasuk yang memberikan nilai analitis sangat kecil.
Untuk tujuan ini, CountVectorizer memiliki parameter yang dapat Anda atur untuk mengurangi jumlah fitur:
min_df: Hanya gunakan kata yang muncul di lebih dari persentase dokumen ini. Ini dapat digunakan untuk menghapus kata-kata pencilan yang tidak akan terumumkan di berbagai teks.max_df: Hanya gunakan kata yang muncul di kurang dari persentase dokumen ini. Ini berguna untuk menghilangkan kata-kata yang sangat umum yang muncul di setiap korpus tanpa menambah nilai seperti "and" atau "the".
Latihan ini adalah bagian dari kursus
Rekayasa Fitur untuk Machine Learning di Python
Petunjuk latihan
- Batasi jumlah fitur di CountVectorizer dengan menetapkan jumlah minimum dokumen tempat suatu kata dapat muncul menjadi 20% dan maksimum menjadi 80%.
- Sesuaikan dan terapkan vektorisasi pada kolom
text_cleandalam satu langkah. - Konversikan array (jarang) yang telah ditransformasikan ini menjadi array numpy berisi hitungan.
- Cetak dimensi dari array baru yang telah direduksi.
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
# Import CountVectorizer
from sklearn.feature_extraction.text import CountVectorizer
# Specify arguements to limit the number of features generated
cv = ____
# Fit, transform, and convert into array
cv_transformed = ____(speech_df['text_clean'])
cv_array = ____
# Print the array shape
print(____)