1. Học hỏi
  2. /
  3. Khoa Học
  4. /
  5. Nền tảng Big Data với PySpark

Connected

Bài tập

Feature hashing và LabelPoint

Sau khi tách email thành các từ, các tập dữ liệu thô 'spam' và 'non-spam' hiện gồm các thông điệp 1 dòng. Để phân loại các thông điệp này, chúng ta cần chuyển văn bản thành các feature.

Trong phần hai của bài tập, bạn sẽ tạo một thể hiện HashingTF() để ánh xạ văn bản thành các vector gồm 200 feature. Sau đó, với mỗi thông điệp trong các tệp 'spam' và 'non-spam', bạn sẽ tách chúng thành các từ và ánh xạ mỗi từ thành một feature. Đây là các feature sẽ được dùng để quyết định một thông điệp là 'spam' hay 'non-spam'. Tiếp theo, bạn sẽ tạo nhãn cho các feature. Với thông điệp hợp lệ, nhãn sẽ là 0 (tức thông điệp không phải spam) và với thông điệp 'spam', nhãn sẽ là 1 (tức thông điệp là spam). Cuối cùng, bạn sẽ gộp cả hai tập dữ liệu đã gán nhãn.

Lưu ý, bạn có SparkContext sc trong không gian làm việc. Các biến spam_words và non_spam_words cũng đã có sẵn.

Hướng dẫn

100 XP
  • Tạo một thể hiện HashingTF() để ánh xạ văn bản email thành các vector gồm 200 feature.
  • Mỗi thông điệp trong các tập 'spam' và 'non-spam' được tách thành các từ, và mỗi từ được ánh xạ thành một feature.
  • Gán nhãn cho các feature: 1 cho spam, 0 cho non-spam.
  • Gộp cả mẫu spam và non-spam thành một tập dữ liệu duy nhất.