Vor kurzem habe ich angefangen, mit Python und MeCab zu analysieren, aber es fiel mir schwer, Wörter zum Benutzerwörterbuch hinzuzufügen, deshalb habe ich es für mich selbst zusammengefasst.
Erstellen Sie das Wörterbuch als CSV-Datei. Das Format des Wörterbuchs ist Oberflächenform, linke Kontext-ID, rechte Kontext-ID, Kosten, Teiltexte, Teiltexte Unterklassifizierung 1, Teilteilunterklassifizierung 2, Teilteilunterklassifizierung 3, Verwendungsart, Verwendungsform, Prototyp, Lesen, Aussprache In der Reihenfolge von anordnen.
vim add_term.csv
Gefroren,,,1,Substantiv,Allgemeines,*,*,*,*,Gefroren,Anato Yukinojoou,Anato Yukino Jooh
Wenn Sie die linke Kontext-ID und die rechte Kontext-ID leer lassen, werden sie automatisch eingegeben. Außerdem geben die Kosten an, wie wahrscheinlich es ist, dass das Wort erscheint, und je kleiner es ist, desto wahrscheinlicher ist es, dass es erscheint. Es scheint eine Kostenschätzungsmethode zu geben, aber diesmal habe ich sie auf 1 gesetzt. Unnötige Elemente sind mit "*" in Ordnung.
Erstellen Sie ein Benutzerwörterbuch aus der erstellten CSV-Datei. Verwenden Sie zum Erstellen eines Wörterbuchs den mecab-dict-Index, der bei der Installation mit MeCab geliefert wurde.
#Erstellen eines Benutzerwörterbuchs zum Speichern des Zielverzeichnisses
mkdir /usr/local/lib/mecab/dic/userdic
#Erstellen Sie ein Wörterbuch
sudo /usr/lib/mecab/mecab-dict-index \
-d /usr/local/mecab/dic/ipadic \
-u /usr/local/lib/mecab/dic/userdic/add.dic \
-f utf-8 \
-t utf-8 \
add_term.csv
Die Optionen sind: -d Verzeichnis mit Systemwörterbüchern -u Speicherort des Benutzerwörterbuchs -f CSV-Datei Zeichencode -t Benutzerwörterbuch-Zeichencode CSV-Datei
Führen Sie mecab-dict-index mit vollständigem Pfad aus. Geben Sie zu diesem Zeitpunkt auch UTF-8 als Zeichencode an.
reading add_term.csv ... 1
emitting double-array: 100% |###########################################|
done!
Wird angezeigt, ist es erfolgreich.
Fügen Sie der Einstellungsdatei die folgende Anweisung hinzu.
sudo vim /etc/mecabrc
userdic = /usr/local/lib/mecab/dic/userdic/add.dic
Auf der offiziellen Website /usr/local/lib/mecab/dic/ipadic/dicrc /usr/local/etc/mecabrc Es wurde geschrieben, um es zu einem von beiden hinzuzufügen, aber es hat in meiner Umgebung nicht funktioniert, und da sich an der oben genannten Stelle Mecabrc befand, hat es korrekt funktioniert, indem es dort hinzugefügt wurde. Wenn Sie mehrere Wörterbücher registrieren möchten
userdic = AAA.dic,BBB.dic
Wenn ja, konnte ich mich registrieren.
--Überprüfen Sie über die Befehlszeile
#Vor dem Hinzufügen
mecab
Gefroren
Ana Substantiv,Allgemeines,*,*,*,*,Anna,Anna,Anna
Und Hilfswörter,Parallele Assistenten,*,*,*,*,Wann,Zu,Zu
Schnee Nomen,Allgemeines,*,*,*,*,Schnee,Schnee,Schnee
Hilfswörter,Union,*,*,*,*,von,Nein,Nein
Königin Nomen,Allgemeines,*,*,*,*,Königin,Joou,Jooh
EOS
#Nach Zugabe
Gefroren
Anna und die Schneekönigin Nomen,Allgemeines,*,*,*,*,Gefroren,Anato Yukinojoou,Anato Yukino Jooh
EOS
python3
>>> import MeCab
>>> m_t = MeCab.Tagger('-Ochasen \
-u /usr/local/lib/mecab/dic/userdic/add.dic')
>>> txt = 'Lass uns Anna und die Schneekönigin sehen.'
>>> print(m_t.parse(txt))
Lass uns Anna und die Schneekönigin sehen.
Wenn Sie es mit dem installierten mecab-ipadic-neologd verwenden möchten
python3
>>> import MeCab
>>> m_t = MeCab.Tagger('-Ochasen \
-d /usr/lib/mecab/dic/mecab-ipadic-neologd \
-u /usr/local/lib/mecab/dic/userdic/add.dic')
Wenn Sie es ändern, wird es gleichzeitig gelesen.
Nach einigem Ausprobieren konnte ich bestätigen, dass es unter Python gut funktioniert. Ich würde mich freuen, wenn Sie auf Fehler hinweisen könnten.
Hinzufügen von Wörtern Hinzufügen von Wörtern zum MeCab-Benutzerwörterbuch