[PYTHON] Morphologische Analyse von Sätzen mit aktuellen Wörtern in der Windows10 64-Bit-Umgebung

Problem

Beim Versuch, MeCab mit Python in einer Windows 10 64-Bit-Umgebung zu verwenden Ich bin hauptsächlich auf die folgenden 5 Punkte gestoßen und hatte den Wunsch, den Bildschirm zu teilen, also habe ich ihn systematisch zusammengefasst.

Problem 1: MeCab wird nicht allein mit der Pip-Installation geliefert Problem 2: Ich konnte es installieren, aber die morphologische Analyse funktioniert nicht. Problem 3: Es scheint, dass die Extraktion eindeutiger Ausdrücke mit dem NEologd-Wörterbuch gut funktioniert. In der Windows-Umgebung schwer zu installieren Problem 4: Wenn ich versuche, es zu installieren, durchläuft es PATH, aber ich verstehe das Konzept von PATH nicht. Problem 5: DOS-Befehle werden nicht übergeben

Inhaltsverzeichnis

① Installieren Sie MeCab von der inoffiziellen Version von .exe für 64 Bit (2) Installieren Sie eine Bibliothek für die Handhabung von MeCab in Python ③ Um die morphologische Analyse genauer durchzuführen Klonen Sie NEologd von git und kompilieren Sie es über die Eingabeaufforderung

① Installieren Sie MeCab von der inoffiziellen Version von .exe für 64 Bit

Referenz: https://qiita.com/wanko5296/items/eeb7865ee71a7b9f1a3a

Offiziell wird also nur die 32bit Version unterstützt Es ist besser, die von Freiwilligen erstellte 64-Bit-Version zu installieren.

Die Ausführungsdatei wird vom folgenden Git veröffentlicht. https://github.com/ikegami-yukino/mecab/releases/tag/v0.996

Ich wähle den Zeichencode bei der Installation der ausführbaren Datei aus. Wählen Sie entsprechend dem Zeichencode der Zieltextdatei aus, für die Sie eine morphologische Analyse durchführen möchten. Wenn Sie sich nicht sicher sind, wählen Sie UTF-8. (* Standard ist SHIFT-JIS)

(2) Installieren Sie eine Bibliothek für die Handhabung von MeCab in Python

Referenz: https://qiita.com/yukinoi/items/990b6933d9f21ba0fb43

Mit cmd oder Anaconda Eingabeaufforderung

pip install sys
pip install MeCab

Ausführen. Wenn Sie die oben genannte 64-Bit-Version von MeCab installiert haben, können Sie die oben genannte Pip verwenden.

Mit Jupyter Notebook etc.


import MeCab

Stellen Sie sicher, dass es mit installiert werden kann.

Wenn kein Fehler auftritt, ist zu diesem Zeitpunkt eine morphologische Analyse möglich. Wenn Sie es versuchen möchten,

import sys
import MeCab
m = MeCab.Tagger ("-Ochasen")
print(m.parse ("Von den Oberschenkeln und Oberschenkeln"))

Sie können sehen, dass die morphologische Analyse abgeschlossen ist.

Wörter, die aktuelle Wörter enthalten (z. B. Meine Nummer, Keyakizaka46 usw.) Es wird wie My / Number, Keyaki / Saka / 46.

Um dies zu verhindern, installieren Sie ein NEologd-Wörterbuch, das eine aktuelle KW-Liste enthält.

③ Klonen Sie NEologd von git und kompilieren Sie es über die Eingabeaufforderung, um die morphologische Analyse genauer durchzuführen.

・ Vorbereitung

Referenz: https://qiita.com/zincjp/items/c61c441426b9482b5a48 (Grundsätzlich ist der obige Artikel für diejenigen geschrieben, die die Befehle PATH und DOS nicht verstehen.)

Installieren Sie nach Bedarf 64-Bit-Git und 7-Zip. Die Installationsmethode wird hier weggelassen. ** ・ git ** Referenz: https://eng-entrance.com/git-install ** ・ 7-Reißverschluss ** Offizielle Website: https://sevenzip.osdn.jp/

Sie müssen Umgebungsvariablen in 7-zip festlegen.

C:\Program Files\7-Zip

Lassen Sie mich nun diese Umgebungsvariable kurz vorstellen. Es ist eine Einstellung zum einfachen Ausführen einer Anwendung mit cmd, und es wird auch gesagt, dass sie PATH durchläuft.

Wenn Sie als Einstellungsmethode auf dem Bedienfeldbildschirm usw. nach "Umgebungsvariablen" suchen, wird der Einstellungsbildschirm angezeigt. image.png

Wenn Sie im obigen Bild Umgebungsvariable bearbeiten auswählen, wird ein Bildschirm wie dieser angezeigt. image.png Wählen Sie den Teil Pfad in blauer Farbe aus und wählen Sie ** Bearbeiten> Neu **. Fügen Sie Folgendes hinzu, das Installationsziel von 7-zip, und wählen Sie OK. Es wird erneut veröffentlicht, aber das Installationsziel unterscheidet sich je nach Person. Die Standardeinstellung lautet wie folgt.

C:\Program Files\7-Zip

Dies setzt den sogenannten PFAD ein.

Installieren Sie das NEologd-Wörterbuch von hier aus.

・ Installieren und kompilieren Sie das NEologd-Wörterbuch

Starten Sie eine Eingabeaufforderung mit ** Administratorrechten **

git clone --depth 1 https://github.com/neologd/mecab-ipadic-neologd.git

Laden Sie die erforderlichen Wörterbuchdateien usw. herunter. Gehen Sie dann in das Verzeichnis der heruntergeladenen Datei und prüfen Sie, ob sie mit dir heruntergeladen wurde. Es ist kein Problem, wenn Sie die neologd ~ Systemdateien sehen können, wenn Sie dir ausführen. Wenn Sie den Seed-Ordner nicht finden und eine Fehlermeldung erhalten, ** C: \ Benutzer (Benutzername) \ mecab-ipadic-neologd \ seed ** wird in das Verzeichnis verschoben.

cd mecab-ipadic-neologd\seed
dir

Übrigens bedeutet es, das Verzeichnis mit dem Namen mecab-ipadic-neologd \ seed zu lesen.

Eine Dekomprimierung mit 7 Reißverschlüssen ist erforderlich Führen Sie den folgenden Befehl aus. Ich möchte .xz-Dateien mit 7-zip beantworten.

7z X *.xz

Kompilieren Sie dann das Wörterbuch mit dem folgenden Befehl. (Wechseln Sie in ein Wörterbuchformat, das von MeCab gelesen werden kann.) Es gibt jedoch einige Einschränkungen.

** ① NEologd wird täglich aktualisiert, sodass alle nachfolgenden 20191024 tatsächlich aktualisiert werden Wählen Sie das Datum aus, das beim Klonen an den DL-Dateinamen angehängt wurde ** ** ② C: \ Programme \ MeCab \ bin \ mecab-dict-index entspricht dem Installationsziel Ihres MeCab ** ** ③ UTF-8 wurde in diesem Artikel für die Installationsmethode von mecab ausgewählt. Wenn Sie in der SHIFT-JIS-Umgebung installieren, ändern Sie "-t utf-8" in "-t shift-jis" **

"C:\Program Files\MeCab\bin\mecab-dict-index" -d "C:\Program Files\MeCab\dic\ipadic" -u NEologd.20191024.dic -f utf-8 -t utf-8 mecab-user-dict-seed.20191024.csv

mkdir "C:\Program Files\MeCab\dic\NEologd"

move NEologd.20191024.dic "C:\Program Files\MeCab\dic\NEologd"

Übrigens als Bedeutung Führen Sie mecab-dict-index.exe aus, das sich in C: \ Programme \ MeCab \ bin befindet Existiert im aktuellen Verzeichnis, in das die CD verschoben wird mecab-user-dict-seed.20191024.csv im UTF-8-Format Kompilieren Sie mit dem Namen NEologd.20191024.dic. Erstellen Sie anschließend NEologd in C: \ Programme \ MeCab \ dic und verschieben Sie das kompilierte darin.

Zu diesem Zeitpunkt ist der Rest fast vorbei ** Öffnen Sie das Mecabrc ** in C: \ Programme \ MeCab \ etc mit Notepad Ersetzen Sie userdic = durch C: \ Programme \ MeCab \ dic \ NEologd \ Neologd.20191024.dic Wechseln Sie zu und speichern Sie durch Überschreiben. Abhängig von der Behörde ist es möglicherweise nicht möglich, diese zu überschreiben und zu speichern Speichern Sie Mecabrc einmal in einem anderen Ordner und speichern Sie es am ursprünglichen Ort. Vergessen Sie nicht, die .txt zu diesem Zeitpunkt zu löschen.

Um zu überprüfen, ob NEologd tatsächlich angewendet wird, wenn Sie tatsächlich eine morphologische Analyse mit Jupiter usw. durchführen. Es reicht aus, dass Keyakizaka46 als richtige Nomenklatur anerkannt wird.

import sys
import MeCab
m = MeCab.Tagger ("-Ochasen")
print(m.parse ("Keyakizaka 46 isst einen Rotfuchs."))

Ende

Um die Genauigkeit der morphologischen Analyse zu verbessern Lesen Sie die öffentlich zugängliche japanische Stoppwortliste. Wörter, die für das zu lesende Ziel spezifisch sind, können als Benutzerwörterbuch festgelegt werden. Unnötige Dinge sollten ständig NG sein, um die Genauigkeit zu verbessern.

Recommended Posts

Morphologische Analyse von Sätzen mit aktuellen Wörtern in der Windows10 64-Bit-Umgebung
Angeben des Jupyter Notebook-Browsers in einer Windows-Umgebung
Erstellen Sie eine Umgebung mit 64-Bit-Windows + Python 2.7 + MeCab 0.996
Ich habe versucht, morphologische Analyse und Wortvektorisierung
virtualenvwrapper in der Windows-Umgebung
Führen Sie eine morphologische Analyse in der von GCE gestarteten maschinellen Lernumgebung durch
Fehler in der Reihenfolge beim Importieren von Numpy in eine Windows Anaconda-Umgebung
Setzen Sie MeCab in "Windows 10; Python3.5 (64bit)"
Python2.7-Installation in einer Windows 32-Bit-Umgebung
UnicodeDecodeError tritt in pip auf (Windows-Umgebung)
[Python] Grund für den Typ "int32" in Numpy (Windows-Umgebung) (Stand September 2020)