IDF tăng dần (Tần số tài liệu nghịch đảo)


11

Trong một ứng dụng khai thác văn bản, một cách tiếp cận đơn giản là sử dụng heuristic để tạo các vectơ như các biểu diễn thưa thớt nhỏ gọn của các tài liệu. Điều này tốt cho cài đặt hàng loạt, trong đó toàn bộ kho được biết đến a-prori, vì yêu cầu toàn bộ khoi d ftfidfidf

idf(t)=log|D||{d:td}|

Trong đó là một thuật ngữ, là một tài liệu, là kho tài liệu và (không hiển thị) là từ điển.d D TtdDT

Tuy nhiên, thông thường các tài liệu mới được nhận theo thời gian. Một tùy chọn là tiếp tục sử dụng hiện có cho đến khi nhận được một số lượng tài liệu mới nhất định và tính toán lại nó. Tuy nhiên điều này có vẻ không hiệu quả. Có ai biết về sơ đồ cập nhật gia tăng (có thể xấp xỉ) hội tụ đến giá trị nếu tất cả các dữ liệu được nhìn thấy trước không? Hoặc cách khác là có một biện pháp khác nắm bắt cùng một khái niệm nhưng có thể được tính theo kiểu gia tăng?idf

Ngoài ra còn có một câu hỏi liên quan về việc liệu còn là thước đo tốt theo thời gian hay không. Vì idf nắm bắt khái niệm về tần số từ của văn bản, nên có thể hình dung rằng các tài liệu cũ hơn trong kho văn bản (ví dụ, kho văn bản của tôi bao gồm hơn 100 năm bài báo), vì tần số của các từ khác nhau thay đổi theo thời gian. Trong trường hợp này, thực sự có thể hợp lý để loại bỏ các tài liệu cũ hơn khi những tài liệu mới xuất hiện, thực tế là sử dụng cửa sổ trượt . Có thể hiểu được, người ta cũng có thể lưu trữ tất cả các vectơ trước đó khi các vectơ mới được tính toán, và sau đó nếu chúng ta muốn lấy tài liệu từ năm 1920-1930, chúng ta có thể sử dụng tính từ các tài liệu trong phạm vi ngày đó. Liệu cách tiếp cận này có ý nghĩa?i d f i d f i d fidfidfidfidf

Chỉnh sửa: Có một vấn đề riêng biệt nhưng có liên quan về các từ điển . Khi thời gian phát triển, sẽ có những thuật ngữ từ điển mới chưa xuất hiện trước đó, vì vậysẽ cần phải phát triển và do đó độ dài của vectơ . Có vẻ như điều này sẽ không thành vấn đề, vì số không có thể được thêm vào các vectơ cũ .| T | i d f i d fT|T|idfidf


Câu hỏi ngu ngốc: Đó là một vấn đề để lưu trữ mẫu số cho mỗi t? Làm thế nào để tỷ lệ của | t | đến | d | trông như thế nào (nói chung)?
steffen

Xin lỗi có thể phương trình không rõ ràng - là tần số tài liệu nghịch đảo của thuật ngữ t, thay vì tại thời điểm . Vì vậy, tại thời điểm bạn sẽ có một vectơ có chiều dài, tức là kích thước của từ điển (cũng có thể thay đổi). Tôi sẽ chỉnh sửa hiệu ứng đó. t t | T |idf(t)tt|T|
tdc

1
Tôi hiểu phương trình. Câu hỏi của tôi là: Nếu lưu trữ từ điển thì không có vấn đề gì: Thay vì lưu trữ | T | idfs một cửa hàng | T | mẫu số (của phương trình) + số lượng tài liệu. Cập nhật gia tăng không có vấn đề gì sau đó và idf được tính nhanh chóng. Tôi có cảm giác rằng tôi đã bỏ qua một cái gì đó.
steffen

Vì vậy, bạn có nghĩa là một cái gì đó giống như, được cung cấp một tài liệu mới , nếu chúng ta có giá trị , chúng ta chỉ cần thêm một vào mẫu số chod : t d t : t d *dd:tdt:td
tdc

đúng. Nếu điều này khả thi?
steffen

Câu trả lời:


6

z

z(t)=|{d:td}|

d

z(t)=z(t)+{1iftd0otherwise

tfidfidf

Tương tự như vậy để loại bỏ một tài liệu cũ, chúng ta giảm số tử theo cách tương tự.

tftfidftfidf

idfzzidftf

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.