Zgodnie z dokumentacją removeSparseTerms
funkcji z tm
pakietu, to jest to, co wiąże się z rzadkością:
A term-document matrix where those terms from x are removed which have at least a sparse percentage of empty (i.e., terms occurring 0 times in a document) elements. I.e., the resulting matrix contains only terms with a sparse factor of less than sparse.
Czy więc poprawna interpretacja tego sparse
jest taka, że jeśli jest równa 0,99, to usuwamy terminy, które pojawiają się tylko w 1% danych?
r
text-mining
natural-language
zthomas.nc
źródło
źródło
Odpowiedzi:
Tak , chociaż twoje zamieszanie tutaj jest zrozumiałe, ponieważ określenie „rzadkość” jest trudne do jednoznacznego zdefiniowania w tym kontekście.
W sensie
sparse
argumentu „removeSparseTerms()
rzadkość” odnosi się do progu względnej częstotliwości dokumentów dla terminu, powyżej którego termin zostanie usunięty. Względna częstotliwość dokumentów oznacza tutaj proporcję. Jak podaje strona pomocy dla polecenia (choć niezbyt wyraźnie), rzadkość jest mniejsza, gdy zbliża się do 1.0. (Uwaga: rzadkość nie może przyjmować wartości 0 lub 1.0, tylko wartości pomiędzy.)Więc twoja interpretacja jest poprawna, żejot refajot> N∗ ( 1 - 0,99 ) N.
sparse = 0.99
usunie jedynie warunki, które są bardziej skąpe niż 0,99. Dokładna interpretacjasparse = 0.99
jest taka, że dla terminu wszystkie warunki, dla których , gdzie jest liczbą dokumentów - w tym przypadku prawdopodobnie wszystkie warunki zostaną zachowane (patrz przykład poniżej) .W pobliżu drugiej skrajności, jeśli
sparse = .01
, wówczas tylko terminy pojawiające się w (prawie) każdym dokumencie zostaną zachowane. (Oczywiście zależy to od liczby terminów i liczby dokumentów, aw języku naturalnym popularne słowa takie jak „the” prawdopodobnie występują w każdym dokumencie, a zatem nigdy nie są „rzadkie”).Przykład progu rzadkości wynoszącego 0,99, w którym termin występujący najwyżej w (pierwszym przykładzie) mniej niż 0,01 dokumentów, a (drugi przykład) nieco ponad 0,01 dokumentów:
Oto kilka dodatkowych przykładów z rzeczywistym tekstem i terminami:
W ostatnim przykładzie z zachowano
sparse = 0.34
tylko warunki występujące w dwóch trzecich dokumentów.Alternatywnym podejściem do przycinania terminów z macierzy dokumentów w oparciu o częstotliwość dokumentów jest pakiet analizy tekstu quanteda . Ta sama funkcjonalność tutaj odnosi się nie do rzadkości, ale bezpośrednio do częstotliwości dokumentów w terminach (jak w tf-idf ).
Takie użycie wydaje się o wiele łatwiejsze do mnie.
źródło