2016-04-25 14 views
0

Derzeit arbeite ich an einem Projekt und verwende einen CsvIterator von der MALLET-API, um eine Instanzliste zu erstellen. Ich bin mir jedoch nicht sicher, wie das Datenfeld in einem MALLET-Instanz-Objekt eigentlich formatiert werden soll. Ich versuche, die analysierten Daten aus einer Textzeile in eine Datei zu schreiben.Problem beim Verstehen des Datenfeldes im MALLET-Instanzobjekt

Ich verstehe, dass das Datenfeld in der Regel ein FeatureVector-Objekt in einer InstanceList ist, aber ich bin nur nicht sicher, was der CsvIterator sucht.

Danke.

Antwort

1

Für die Klassifizierung oder Themenmodellierung sollte das Feld "Daten" in der Eingabedatei wie das Originaldokument aussehen, wobei Leerzeilen durch Leerzeichen ersetzt werden.

Wie Mallet das "Daten" -Feld versteht, wird durch die Pipes bestimmt, die Sie verwenden. Diese Klassen definieren die Regeln, die die Zeichenfolgeneingabe in einen FeatureVector konvertieren.

Das Standardverhalten, das beispielsweise in der Klasse Csv2Vectors implementiert ist, unterteilt die Zeichenfolge in Token basierend auf einem regulären Ausdruck und konvertiert dann jede Tokenkette in ein Feature aus einem Datenalphabet. Es gibt Pipe-Objekte für viele gängige Transformationen wie das Entfernen von Untergehäuse und Stoppwörter.