Mô hình n-gram cho khẩu hiệu phim
Trong bài tập này, bạn được cung cấp một corpus gồm hơn 9000 khẩu hiệu (tag line) của phim. Nhiệm vụ của bạn là tạo các mô hình n-gram với n tối đa lần lượt bằng 1, 2 và 3 cho dữ liệu này, rồi tìm số lượng đặc trưng của mỗi mô hình.
Sau đó, chúng ta sẽ so sánh số lượng đặc trưng được tạo ra ở từng mô hình.
Bài tập này là một phần của khóa học
Khai thác đặc trưng cho NLP bằng Python
Hướng dẫn bài tập
- Tạo mô hình n-gram với n-gram đến n=1. Đặt tên là
ng1 - Tạo mô hình n-gram với n-gram đến n=2. Đặt tên là
ng2 - Tạo mô hình n-gram với n-gram đến n=3. Đặt tên là
ng3 - In ra số lượng đặc trưng của mỗi mô hình.
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.
# Generate n-grams upto n=1
vectorizer_ng1 = CountVectorizer(ngram_range=(1,1))
ng1 = vectorizer_ng1.____(corpus)
# Generate n-grams upto n=2
vectorizer_ng2 = CountVectorizer(ngram_range=(1,2))
ng2 = vectorizer_ng2.____(corpus)
# Generate n-grams upto n=3
vectorizer_ng3 = CountVectorizer(ngram_range=(____, ____))
ng3 = vectorizer_ng3.fit_transform(corpus)
# Print the number of features for each model
print("ng1, ng2 and ng3 have %i, %i and %i features respectively" % (ng1.____[1], ng2.____[1], ng3.____[1]))