Wie kann ich einen Präprozessor an TfidfVectorizer übergeben? - Sklearn - Python

8

Wie kann ich einen Präprozessor an TfidfVectorizer übergeben? Ich habe eine Funktion erstellt, die eine Zeichenfolge und eine vorverarbeitete Zeichenfolge zurückgibt dann setze ich Prozessor-Parameter auf diese Funktion "Präprozessor = Vorverarbeitung", aber es funktioniert nicht. Ich habe so oft gesucht, aber ich habe kein Beispiel gefunden, als ob niemand es benutzen würde.

Ich habe eine andere Frage. Überschreibt es (Präprozessor-Parameter) das Entfernen von Stoppwörtern und Unterschreitungsfällen, die mit stop_words und Kleinbuchstaben ausgeführt werden könnten?

    
eman 24.05.2014, 22:28
quelle

1 Antwort

13

Sie definieren einfach eine Funktion, die eine Zeichenkette als Eingabe verwendet und zurücksendet, was vorverarbeitet werden soll. So würde zum Beispiel eine triviale Funktion für Großbuchstaben folgendermaßen aussehen:

%Vor%

Sobald Sie Ihre Funktion erstellt haben, übergeben Sie sie einfach an Ihr TfidfVectorizer -Objekt. Zum Beispiel:

%Vor%

Ergebnisse in:

%Vor%

Dies beantwortet indirekt Ihre Folgefrage, da die Groß- / Kleinschreibung auf "Groß" gesetzt wird. Dies wird auch in der Dokumentation erwähnt:

  

Präprozessor: Aufrufbar oder Keine (Standard) Überschreiben Sie die Vorverarbeitung   (String - Transformation) Phase unter Beibehaltung der Tokenizing und   n-Gramm-Generierung Schritte.

    
David 25.05.2014, 15:58
quelle