1. 学ぶ
  2. /
  3. コース
  4. /
  5. Khai phá văn bản với Bag-of-Words trong R

Connected

演習

Thay đổi trọng số tần suất

Cho đến giờ, bạn chỉ đếm số lần xuất hiện của thuật ngữ trong tài liệu bằng DocumentTermMatrix hoặc TermDocumentMatrix. Trong bài này, bạn sẽ học về cách gán trọng số TfIdf thay cho tần suất thuật ngữ đơn thuần. TfIdf là viết tắt của term frequency-inverse document frequency (tần suất thuật ngữ - nghịch đảo tần suất tài liệu) và được dùng khi bạn có một kho văn bản lớn nhưng đa dạng thuật ngữ hạn chế.

TfIdf bắt đầu từ việc đếm số lần xuất hiện (tức là Tf), chuẩn hóa giá trị theo độ dài tài liệu, rồi phạt các thuật ngữ xuất hiện thường xuyên trên nhiều tài liệu. Điều này hợp lý: nếu một từ quá phổ biến, nó quan trọng nhưng không mang nhiều thông tin. Thành phần “phạt” này được thể hiện ở nghịch đảo tần suất tài liệu (tức là Idf).

Ví dụ, khi xem ghi chú chăm sóc khách hàng, có thể gặp từ viết tắt "cu" cho "customer". Một ghi chú có thể viết "the cu has a damaged package" và ghi chú khác là "cu called with question about delivery". Với trọng số document frequency, "cu" xuất hiện hai lần, nên có vẻ là hữu ích. Tuy nhiên, trong TfIdf, "cu" bị phạt vì nó xuất hiện trong tất cả các tài liệu. Kết quả là "cu" không được xem là mới mẻ, nên giá trị của nó bị giảm về gần 0, nhường chỗ cho các thuật ngữ khác có giá trị cao hơn để phân tích.

指示1 / 2

undefined XP
  • 1
    • Tạo tdm, một TermDocumentMatrix() dựa trên tần suất thuật ngữ từ text_corp.
    • Tạo tdm_m bằng cách chuyển tdm sang dạng ma trận.
    • Xem tần suất của "coffee", "espresso" và "latte" trong một vài tweet. Lấy lát cắt tdm_m với các hàng c("coffee", "espresso", "latte") và các cột từ 161 đến 166.
  • 2
    • Chỉnh TermDocumentMatrix() để dùng trọng số TfIdf. Truyền control = list(weighting = weightTfIdf) làm đối số cho hàm.
    • Chạy mã và so sánh các điểm số mới với phần đầu của bài tập.