Verwenden von TF-IDF mit anderen Funktionen in SKLearn


8

Was ist der beste / richtige Weg, um Textanalyse mit anderen Funktionen zu kombinieren? Zum Beispiel habe ich einen Datensatz mit Text, aber auch anderen Funktionen / Kategorien. Der TF-IDF-Vektorisierer von SKlearn wandelt Textdaten in spärliche Matrizen um. Ich kann diese spärlichen Matrizen zum Beispiel direkt mit einem Naive Bayes-Klassifikator verwenden. Aber wie können auch die anderen Funktionen berücksichtigt werden? Sollte ich die tf-idf-Darstellung des Textes entsparsifizieren und die Funktionen und den Text in einem DataFrame kombinieren? Oder kann ich die Sparse-Matrix beispielsweise als separate Spalte behalten? Was ist der richtige Weg, um dies zu tun?

Antworten:



3

Wenn möglich, möchten Sie Ihre Matrice normalerweise so lange wie möglich spärlich halten, da dies viel Speicherplatz spart. Deshalb gibt es doch spärliche Matrizen, sonst warum sich die Mühe machen? Selbst wenn Ihr Klassifizierer die Verwendung dichter Eingaben erfordert, möchten Sie möglicherweise die TFIDF-Funktionen als spärlich beibehalten und die anderen Funktionen in einem spärlichen Format hinzufügen. Und nur dann machen Sie die Matrix dicht.

Dazu können Sie scipy.sparse.hstack verwenden . Es kombiniert zwei spärliche Matrizen nach Spalten. scipy.sparse.vstack existiert ebenfalls. Und natürlich hat scipy auch die nicht spärlichen Versionen scipy.hstack und scipy.vstack

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.