Unterschied zwischen tf-idf und tf mit zufälligen Wäldern

8

Ich arbeite an einem Problem bei der Textklassifizierung mit Random Forest als Klassifizierer und einem Ansatz mit vielen Wörtern. Ich verwende die grundlegende Implementierung von Random Forests (die in Scikit enthaltene), die bei jedem Split eine binäre Bedingung für eine einzelne Variable erstellt. In Anbetracht dessen gibt es einen Unterschied zwischen der Verwendung einfacher tf-Merkmale (Termfrequenz). Dabei ist jedem Wort eine Gewichtung zugeordnet, die die Anzahl der Vorkommen im Dokument darstellt, oder tf-idf (Termhäufigkeit * inverse Dokumenthäufigkeit), wobei die Termhäufigkeit auch mit einem Wert multipliziert wird, der das Verhältnis zwischen der Gesamtzahl der Dokumente darstellt und die Anzahl der Dokumente, die das Wort enthalten)?

Meiner Meinung nach sollte es keinen Unterschied zwischen diesen beiden Ansätzen geben, da der einzige Unterschied ein Skalierungsfaktor für jedes Merkmal ist. Da die Aufteilung jedoch auf der Ebene einzelner Merkmale erfolgt, sollte dies keinen Unterschied machen.

Habe ich recht in meiner Argumentation?

Papafe
quelle
Testen Sie beide Ansätze an einem kleinen Stichprobensatz und prüfen Sie, ob es einen Unterschied gibt.
Charlie Greenbacker

Antworten:

7

Entscheidungsbäume (und damit zufällige Wälder) sind unempfindlich gegenüber monotonen Transformationen von Eingabemerkmalen.

Da das Multiplizieren mit demselben Faktor eine monotone Transformation ist, würde ich annehmen, dass es für zufällige Wälder tatsächlich keinen Unterschied gibt.

Möglicherweise möchten Sie jedoch andere Klassifizierer verwenden, die diese Eigenschaft nicht haben. Daher ist es möglicherweise immer noch sinnvoll, die gesamte TF * IDF zu verwenden.

Alexey Grigorev
quelle
1
Ich habe nur versucht herauszufinden, ob meine Argumentation richtig war, also werde ich weiterhin Random Forests verwenden, danke für Ihre Hilfe!
Papafe