Bag-of-Words do klasyfikacji tekstu: Dlaczego nie użyć częstotliwości słów zamiast TFIDF?


24

Powszechnym podejściem do klasyfikacji tekstu jest wyszkolenie klasyfikatora z „worka słów”. Użytkownik bierze tekst do sklasyfikowania i zlicza częstotliwości słów w każdym obiekcie, po czym następuje pewnego rodzaju przycinanie, aby zachować wynikową macierz o możliwym do zarządzania rozmiarze.

Często widzę, jak użytkownicy konstruują wektor cech za pomocą TFIDF. Innymi słowy, częstotliwości tekstu wspomniane powyżej są obniżone przez częstotliwość słów w korpusie. Rozumiem, dlaczego TFIDF byłby użyteczny do wybierania „najbardziej wyróżniających” słów danego dokumentu do, powiedzmy, wyświetlenia dla ludzkiego analityka. Ale w przypadku kategoryzacji tekstu przy użyciu standardowych nadzorowanych technik ML, po co zawracać sobie głowę zmniejszaniem wagi przez częstotliwość dokumentów w korpusie? Czy sam uczeń nie będzie decydował o znaczeniu przypisywanym każdemu słowu / kombinacji słów? Byłbym wdzięczny za twoje przemyślenia na temat wartości, jaką dodaje IDF, jeśli w ogóle.

Odpowiedzi:


29

Odpowiedź jest bardzo prosta: TF-IDF może osiągnąć lepsze wyniki niż proste częstotliwości w połączeniu z niektórymi nadzorowanymi metodami.

Kanoniczny przykład wykorzystuje podobieństwo kosinusowe do pomiaru podobieństwa między dokumentami. Przyjmując cosinus kąta między reprezentacją wektorową dokumentów TF-IDF można z powodzeniem wyszukiwać odpowiednie podobne dokumenty z większą dokładnością niż sam TF.

Wynika to z faktu, że IDF zmniejsza wagę zwykłych słów i uwypukla rzadkie słowa w dokumencie. Większość artykułów informacyjnych nie dotyczy strusi, więc artykuł zawierający „struś” jest niezwykły i chcielibyśmy o tym wiedzieć, próbując znaleźć podobne dokumenty.

Ale w przypadku kategoryzacji tekstu przy użyciu standardowych nadzorowanych technik ML, po co zawracać sobie głowę zmniejszaniem wagi przez częstotliwość dokumentów w korpusie? Czy sam uczeń nie będzie decydował o znaczeniu przypisywanym każdemu słowu / kombinacji słów?

xyxyy), wtedy znacznie ułatwiliśmy sobie i naszym biednym, przepracowanym komputerom! Myślę, że jest to niedoceniany element tej dziedziny - ludzie spędzają dużo czasu studiując i rozważając algorytmy, ponieważ są niezależne od domeny, ale wiedza na temat twoich danych i problemu, który próbujesz rozwiązać, może sugerować ścieżki do ulepszone zbieranie danych lub reprezentacja danych, które sprawiają, że zadanie jest o wiele łatwiejsze - i tak łatwe, że model ozdobnego wyrafinowania nie jest potrzebny.

Można tu znaleźć wiele zasobów , które odtwarzam dla wygody.

  • K. Sparck Jones. „Statystyczna interpretacja specyficzności terminów i jej zastosowanie w wyszukiwaniu”. Journal of Documentation, 28 (1). 1972

  • G. Salton i Edward Fox i Wu Harry Wu. „Rozszerzone wyszukiwanie informacji logicznych”. Komunikacja ACM, 26 (11). 1983.

  • G. Salton i MJ McGill. „Wprowadzenie do nowoczesnego wyszukiwania informacji”. 1983

  • G. Salton i C. Buckley. „Podejścia oparte na ważeniu terminów w automatycznym wyszukiwaniu tekstu”. Przetwarzanie i zarządzanie informacjami, 24 (5). 1988.

  • H. Wu i R. Luk i K. Wong i K. Kwok. „Interpretacja wag terminów TF-IDF jako podejmowanie trafnych decyzji”. Transakcje ACM w systemach informatycznych, 26 (3). 2008.


Dzięki za notatkę @ user777! Doceniam to. Spoglądam na te artykuły. Czy istnieją ogólne klasy algorytmów, w których spodziewamy się preferencyjnego korzystania z TFIDF w porównaniu do samego TF?
— shf8888

@ shf8888 Nie jestem pewien, czy istnieją ogólne klasy, w których jedna jest lepsza. To jest możliwe! O ile mi wiadomo, pierwszym odruchem osoby pracującej nad zadaniem NLP jest wypróbowanie TF, a następnie TF-IDF jako podstawowych metod przed przejściem do bardziej skomplikowanego modelu. W ten sposób możesz obliczyć, ile zwiększysz wydajność przy zwiększonym nakładzie pracy, używając coraz bardziej skomplikowanych modeli.
— Sycorax mówi Przywróć Monikę

Dziękuję bardzo! Cóż, odpowiedź, że „empirycznie TFIDF może zapewnić większą wydajność w porównaniu z TF za pomocą niektórych algorytmów” (jeśli nie sprzeciwisz się mojemu podsumowaniu jednego zdania) jest zdecydowanie dobra z mojej perspektywy. Dziękuję za referencje.
— shf8888

2

W typowym przypadku możesz mieć o wiele więcej dokumentów w swoim korpusie niż dokumenty z etykietami. Oznacza to, że IDF można obliczyć znacznie dokładniej i bardziej kompletnie przy użyciu całego korpusu.

Następnie rozważmy przypadek, w którym korpus, który można dostać do tej pory, jest cały oznaczony lub podzbiór oznaczony jest „wystarczająco duży”. W tym przypadku liczba iteracji potrzebnych do treningu może być mniejsza w przypadku korzystania z TfIDF, ponieważ algorytm uczenia nie musiałby się uczyć tak dużo.

Wreszcie, w tym samym przypadku, możesz również podać tylko tf lub tf i idf osobno (lub nawet dołączyć tfidf). Sądzę, że może to potencjalnie generować lepsze wyniki, na przykład przy użyciu wyrafinowanej funkcji jądra.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.