Bắt đầu ngayBắt đầu miễn phí

Khám phá vector văn bản, phần 2

Sử dụng hàm return_weights() bạn đã viết ở bài trước, giờ bạn sẽ trích xuất các từ có trọng số cao nhất từ mỗi tài liệu trong vector văn bản, trả về một danh sách các chỉ số từ, và dùng danh sách đó để lọc vector văn bản chỉ còn những từ hàng đầu này.

Bài tập này là một phần của khóa học

Tiền xử lý cho Machine Learning bằng Python

Xem khóa học

Hướng dẫn bài tập

  • Gọi return_weights() để trả về các từ có trọng số cao nhất cho tài liệu đó.
  • Gọi set() trên filter_list được trả về để loại bỏ các số trùng lặp.
  • Gọi words_to_filter, truyền các tham số sau: vocab cho tham số vocab, tfidf_vec.vocabulary_ cho tham số original_vocab, text_tfidf cho tham số vector, và 3 để lấy top_n 3 từ có trọng số cao từ mỗi tài liệu.
  • Cuối cùng, truyền tập filtered_words vào list để dùng làm bộ lọc cho vector văn bản.

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.

def words_to_filter(vocab, original_vocab, vector, top_n):
    filter_list = []
    for i in range(0, vector.shape[0]):
    
        # Call the return_weights function and extend filter_list
        filtered = ____(vocab, original_vocab, vector, i, top_n)
        filter_list.extend(filtered)
        
    # Return the list in a set, so we don't get duplicate word indices
    return ____(filter_list)

# Call the function to get the list of word indices
filtered_words = ____(____, ____, ____, ____)

# Filter the columns in text_tfidf to only those in filtered_words
filtered_text = text_tfidf[:, list(____)]
Chỉnh sửa và Chạy Mã