Giới hạn số lượng đặc trưng
Như bạn đã thấy, dùng CountVectorizer với thiết lập mặc định sẽ tạo một đặc trưng cho từng từ trong toàn bộ corpus. Điều này có thể tạo ra quá nhiều đặc trưng, thường bao gồm cả những đặc trưng gần như không mang lại giá trị phân tích.
Vì vậy, CountVectorizer cung cấp các tham số để bạn giảm số lượng đặc trưng:
min_df: Chỉ dùng những từ xuất hiện trong hơn tỷ lệ phần trăm tài liệu này. Có thể dùng để loại bỏ các từ ngoại lai khó khái quát giữa các văn bản.max_df: Chỉ dùng những từ xuất hiện trong ít hơn tỷ lệ phần trăm tài liệu này. Hữu ích để loại bỏ các từ quá phổ biến xuất hiện ở mọi corpus nhưng không thêm giá trị như "and" hoặc "the".
Bài tập này là một phần của khóa học
Feature Engineering cho Machine Learning bằng Python
Hướng dẫn bài tập
- Giới hạn số lượng đặc trưng trong CountVectorizer bằng cách đặt tỷ lệ tối thiểu số tài liệu mà một từ có thể xuất hiện là 20% và tối đa là 80%.
- Fit và áp dụng vectorizer lên cột
text_cleantrong một bước. - Chuyển mảng (thưa) đã biến đổi này thành một mảng numpy với các số đếm.
- In kích thước (dimensions) của mảng đã được rút gọn mới.
Bài tập tương tác thực hành trực tiếp
Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.
# 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(____)