Die erste künstliche Intelligenz. Ich wollte die Verarbeitung natürlicher Sprache ausprobieren, daher werde ich die morphologische Analyse mit MeCab mit Python3 versuchen.

Hintergrund

Ich habe auf verschiedene Artikel zur Installation von MeCab mit Python3 verwiesen. Ich habe ein kurzes Temperament, deshalb liebe ich Seiten, die gut funktionieren, wenn ich vom oberen Rand der Seite kopiere. "Mendokusai" ist eine Gewohnheit und "machen wenn nicht" ist das Motto. (In der zweiten Hälfte spielt es keine Rolle.)

Umgebungseinstellung

CentOS7

Installieren Sie MeCab

Es war schnell, MeCab zu klonen.

# git clone https://github.com/taku910/mecab.git
# cd mecab/mecab
# ./configure  --enable-utf8-only
# make
# make check
# make install

Sie können MeCab von der folgenden Seite herunterladen, aber es ist ziemlich ärgerlich. Es gab verschiedene MeCabs.

Referenz: MeCab https://drive.google.com/drive/folders/0B4y35FiV1wh7fjQ5SkJETEJEYzlqcUY4WUlpZmR4dDlJMWI5ZUlXN2xZN2s2b0pqT3hMbTQ

Installation von Wörterbüchern

Wenn Sie kein Wörterbuch haben, können Sie es nicht verwenden. Installieren Sie es daher auch schnell.

# cd mecab-ipadic
# ./configure --with-charset=utf8
# make
# make install

Probieren Sie MeCab auf der Konsole aus

Nachdem die Installation abgeschlossen ist, können Sie sie auf der Konsole ausführen. Probieren Sie es also aus.

# mecab
MeCab ist freie Software

MeCab Nomen,Eigenname,Organisation,*,*,*,*
Ist ein Assistent,Hilfe,*,*,*,*,Ist,C.,Beeindruckend
Freie Nomenklatur,Allgemeines,*,*,*,*,frei,frei,frei
Software-Nomenklatur,Allgemeines,*,*,*,*,Software,Software,Software
Ist ein Hilfsverb,*,*,*,Besonderer Tod,Grundform,ist,Tod,Tod
EOS

Es funktionierte. Es ist ein Moment der Erleichterung, dass Japanisch ohne Probleme angezeigt wird.

Versuchen Sie, MeCab auf der Python3.5-Serie auszuführen

Hier kommt Pip ins Spiel.

# pip install mecab-python3

Auf anderen Websites gibt es Seiten, auf denen dieser Befehl plötzlich veröffentlicht wird. Dieser Befehl sollte jedoch auch ohne MeCab nicht funktionieren. Es versteht sich von selbst, dass ich an die Pip-Universaltheorie geglaubt habe, und als ich diesen Code sah, wurde ich von Pip Hoi Hoi erwischt, der sagte: "Das ist einfacher!"

Sie können es problemlos installieren.

Schreiben wir nun die Python-Datei test.py.

#test.py

# coding: UTF-8
import sys
import MeCab
m = MeCab.Tagger ("-Ochasen")
print(m.parse ("Mach es selbst, weil es nervt"))

Ich werde es versuchen.

# python test.py
Mendokusai Mendokusai Mendokusai Adjektive-Unabhängiges Adjektiv / Auoudan Grundform
Von Kara zu Auxiliary-Verbindungsassistent
Selbst Jibun Selbst Nomen-Allgemeines
De de de Assistent-Fallassistent-Allgemeines
Machen Sie Tsukuru Machen Sie Verb-Unabhängigkeit 5 Schritte, La Linie Grundform
EOS

Sie können das Datenausgabeformat ändern, indem Sie das Argument von MeCab.Tagger ändern.

-Ochasen -Owakati -Oyomi mecabrc

Es gibt noch andere solche Dinge.

#test2.py

# coding: UTF-8
import sys
import MeCab
m = MeCab.Tagger ("-Ochasen")
print(m.parse ("Mach es selbst, weil es nervt"))

m = MeCab.Tagger ("-Owakati")
print(m.parse ("Mach es selbst, weil es nervt"))

m = MeCab.Tagger ("-Oyomi")
print(m.parse ("Mach es selbst, weil es nervt"))

m = MeCab.Tagger ("mecabrc")
print(m.parse ("Mach es selbst, weil es nervt"))

Ich bin interessiert, also werde ich versuchen, es anzuzeigen.

# python test2.py
Mendokusai Mendokusai Mendokusai Adjektive-Unabhängiges Adjektiv / Auoudan Grundform
Von Kara zu Auxiliary-Verbindungsassistent
Selbst Jibun Selbst Nomen-Allgemeines
De de de Assistent-Fallassistent-Allgemeines
Machen Sie Tsukuru Machen Sie Verb-Unabhängigkeit 5 Schritte, La Linie Grundform
EOS

Machen Sie es sich aus Ärger

Mendoku Saikara Jibun Detsukuru

Ärgerliche Adjektive,Unabhängigkeit,*,*,Apokalypse,Grundform,Problematisch,Nervig,Nervig
Vom Assistenten,Verbindungsassistent,*,*,*,*,Von,Kara,Kara
Meine Nomenklatur,Allgemeines,*,*,*,*,mich selber,Jibun,Jibun
Hilfs,Fallassistent,Allgemeines,*,*,*,damit,De,De
Verb machen,Unabhängigkeit,*,*,Fünf Schritte, La Linie,Grundform,erstellen,Tsukuru,Tsukuru
EOS

Hinweis: Ein Fehler, der bei der Installation selbst aufgetreten ist

Was tun, wenn Ihnen mitgeteilt wird, dass Sie libmecab.so.2 nicht haben?

ImportError: libmecab.so.2: cannot open shared object file: No such file or directory

Ansatz

$ vi /etc/ld.so.conf.d/lib.conf
/usr/local/lib  #<--Neu ausfüllen oder hinzufügen.

$ ldconfig #<--Neu laden

Referenz: Extraktion wichtiger Wörter aus Wikipedia durch TF / IDF mit Mecab Python http://yut.hatenablog.com/entry/20130215/1360884220

Referenz: Aktivieren Sie die morphologische Analyse-Engine MeCab in Python3 (Version März 2016). http://qiita.com/grachro/items/4fbc9bf8174c5abb7bdd#_reference-f17313e8bc66cbbff3ef

Recommended Posts

Die erste künstliche Intelligenz. Ich wollte die Verarbeitung natürlicher Sprache ausprobieren, daher werde ich die morphologische Analyse mit MeCab mit Python3 versuchen.
[Für Anfänger] Sprachanalyse mit dem Verarbeitungswerkzeug "GiNZA" (von der morphologischen Analyse bis zur Vektorisierung)
Verwenden Sie die Swagger-Benutzeroberfläche. Wenn Sie einen Swagger-UI-ähnlichen Stil wünschen, kopieren Sie einfach die gesamte Datei unter / dist unter https://github.com/swagger-api/swagger-ui. Danach schreiben Sie einfach hier in index.html die URL der yml-Datei um. Wenn Sie der Meinung sind, dass Sie @ApiModel oder @ApiModelProperty nicht finden können, wurden übrigens anscheinend alle Anmerkungen zur Schemadefinition in @Schema integriert. Emotionsanalyse mit Java, Swagger, OpenAPI, Micronaut Natural Language Processing! Ich habe versucht, die Bewertung anhand des Überprüfungstextes vorherzusagen
Ich werde eine detaillierte Erklärung zum Tod schreiben, während ich 100 Python für die Verarbeitung natürlicher Sprache 2020 mit Python löse
[Python] Ich habe mit der Verarbeitung natürlicher Sprache ~ Transformatoren ~ gespielt
Ich habe versucht, mit der Bibliothek GiNZA zur Verarbeitung natürlicher Sprache eindeutige Ausdrücke zu extrahieren
100 natürliche Sprachverarbeitung klopft Kapitel 4 Morphologische Analyse (erste Hälfte)
Verarbeitung natürlicher Sprache 1 Morphologische Analyse
Ich wollte den Panasonic Programming Contest 2020 mit Python lösen
[Python] Versuchen Sie, Ramen-Shops durch Verarbeitung natürlicher Sprache zu klassifizieren
Ich wollte den Motor mit einer Raspeltorte laufen lassen, also habe ich versucht, das Motor Driver Board von Waveshare zu verwenden
Ich habe eine Klasse erstellt, um das Analyseergebnis von MeCab in ndarray mit Python zu erhalten
Versuchen Sie das Buch "Einführung in die Verarbeitung natürlicher Sprachanwendungen in 15 Schritten" - Kapitel 2 Schritt 03 Memo "Morphologische Analyse und schriftliches Schreiben"
Die erste künstliche Intelligenz. Fordern Sie die Webausgabe mit Python heraus. ~ Kolbeneinführung
Dockerfile mit den notwendigen Bibliotheken für die Verarbeitung natürlicher Sprache mit Python
Ich wollte das ABC164 A ~ D-Problem mit Python lösen
Ich habe mit Mecab gespielt (morphologische Analyse)!
Von der Einführung von JUMAN ++ bis zur morphologischen Analyse von Japanisch mit Python
Versuchen Sie, die Datenbank unter IBM i mit Python + JDBC mithilfe von JayDeBeApi zu starten
3. Verarbeitung natürlicher Sprache mit Python 1-2. So erstellen Sie einen Korpus: Aozora Bunko
Ich wollte ABC160 mit Python lösen
3. Verarbeitung natürlicher Sprache durch Python 2-1. Netzwerk für das gleichzeitige Auftreten
3. Verarbeitung natürlicher Sprache durch Python 1-1. Word N-Gramm
Ich habe versucht, natürliche Sprache mit Transformatoren zu verarbeiten.
Ich wollte ABC172 mit Python lösen
Lassen Sie die COTOHA-API die schwierigen Dinge tun - Einführung in das "Lernen mit" der Verarbeitung natürlicher Sprache -
3. Verarbeitung natürlicher Sprache durch Python 3-1. Wichtiges Tool zur Wortextraktion TF-IDF-Analyse [Originaldefinition]
Ich wollte die 3D-Partikelsimulation mit der Python-Visualisierungsbibliothek Matplotlib visualisieren.
Ich konnte AWS-Batch mit Python, Moto verspotten, also werde ich es verlassen
Einführung in die künstliche Intelligenz mit Python 1 "Genetic Algorithm-Theory-"
3. Verarbeitung natürlicher Sprache durch Python 2-2. Koexistenznetzwerk [mecab-ipadic-NEologd]
Einführung in die künstliche Intelligenz mit Python 2 "Genetic Algorithm-Practice-"
Ich wollte den NOMURA Contest 2020 mit Python lösen
Versuchen Sie, das Mensch-Maschine-Diagramm mit Python zu lösen
Versuchen Sie es mit Jieba, einer chinesischen morphologischen Analyse-Engine
Ich wollte Python 3.4.3 mit Homebrew + pyenv installieren
Ich habe versucht, Mecab mit Python2.7, Ruby2.3, PHP7 zu verwenden
[Python] Ich werde FTP auf den FTP-Server hochladen.
Ich habe versucht zu überprüfen, ob die Natural Language API (Emotionsanalyse) Net Slang unterstützt.
Ich habe versucht, die Verarbeitungsgeschwindigkeit mit dplyr von R und pandas von Python zu vergleichen
Versuchen Sie, das Programmier-Herausforderungsbuch mit Python3 zu lösen
100 natürliche Sprachverarbeitung klopft Kapitel 4 Morphologische Analyse (zweite Hälfte)
Versuchen Sie, das Problem der Zuweisung von Schulungsärzten mit Python zu lösen
Ich habe versucht, eine CSV-Datei mit Python zu berühren
Sammeln von Informationen von Twitter mit Python (morphologische Analyse mit MeCab)
Ich habe versucht, Soma Cube mit Python zu lösen
[Kapitel 5] Einführung in Python mit 100 Klopfen Sprachverarbeitung
Ich wollte die Python-Bibliothek von MATLAB verwenden
Ich habe versucht, künstliches Perzeptron mit Python zu implementieren
Ich möchte mit Python-Datenklasse nach hinten erben
Erstellen einer Umgebung für die Verarbeitung natürlicher Sprache mit Python
[Kapitel 3] Einführung in Python mit 100 Klopfen Sprachverarbeitung
100 Sprachverarbeitung Knock-30 (unter Verwendung von Pandas): Lesen der Ergebnisse der morphologischen Analyse
[Kapitel 2] Einführung in Python mit 100 Klopfen Sprachverarbeitung
Ich habe versucht, das Problem mit Python Vol.1 zu lösen