Die einfachste und zuverlässigste Möglichkeit, N-Gramme zu berücksichtigen, ist das Ändern der Eingabe. Beispielsweise können Sie durch new_york
ersetzen und dann unter Verwendung eines Musters, das _
als ein Buchstabenzeichen akzeptiert, Tokenize. Mallet können Sie eine Datei mit Zeichenfolgen angeben, die als einzelne Tokens zu behandeln, wenn Sie Dokumente importieren:
bin/mallet import-file --help
A tool for creating instance lists of feature vectors from comma-separated-values
...
--replacement-files FILE [FILE ...]
files containing string replacements, one per line:
'A B [tab] C' replaces A B with C,
'A B' replaces A B with A_B
Default is (null)
Diese Art der Verwendung erfordert, dass Sie bestimmte n-Gramm zu identifizieren. Sie könnten auch die Eingabedatei so modifizieren, dass alle Bigramme eingeschlossen sind, so dass to be or not to be
to_be be_or or_not not_to to_be
wird. Ich weiß nicht, ob das irgendetwas Nützliches hervorbringen würde.
Es gibt auch Themenmodellvarianten, die "nativ" die N-Gram-Identifikation unterstützen, jedoch zu einem signifikanten Preis in Trainingszeit und Modellqualität. Ich würde nicht empfehlen, irgendwelche von ihnen zu verwenden.