Installieren Sie mecab-ipadic-neologd auf Sakura VPS (ubuntu18.04) mit wenig Speicher und verwenden Sie es von Python

Überblick

Ich habe mecab-ipadic-neologd auf Sakura VPS mit ubuntu18.04LTS installiert, damit es von Python aus aufgerufen werden kann. mecab-ipadic-neologd konnte aufgrund von Speichermangel nicht auf dem Server installiert werden, daher habe ich ein lokal erstelltes Wörterbuch erstellt.

Umgebung

Sakuras VPS 2G-Plan Das Betriebssystem ist wie folgt

$ cat /etc/os-release
NAME="Ubuntu"
VERSION="18.04.4 LTS (Bionic Beaver)"
((Unten weggelassen)

$ python -V
Python 3.6.8

Mecab installieren

Führen Sie den folgenden Befehl auf dem Remote-Server aus.

sudo apt install mecab
sudo apt install libmecab-dev
sudo apt install mecab-ipadic-utf8

Überprüfen Sie den Betrieb.

$Echo Gott| mecab
Gott Nomen,Allgemeines,*,*,*,*,Gott,Kami,Kami
Hilfs,Fallassistent,Gemeinsame Sprache,*,*,*,Was,Itte,Itte
Hilfsverb,*,*,*,Literarische Sprache,Grundform,Ru,Le,Le
EOS

Referenz: Mecab unter Ubuntu 18.10 installieren

Eine Kopie von mecab-ipadic-neologd

Dieses Mal habe ich mecab-ipadic-neologd bereits auf meinem lokalen Mac-PC installiert, daher werde ich das Wörterbuch von dort aus durchsuchen.

Überprüfen Sie den Speicherort des Wörterbuchs mecab-ipadic-neologd auf Ihrem lokalen Mac.

$ sudo find / -name mecabrc
/usr/local/etc/mecabrc
/usr/local/Cellar/mecab/0.996/.bottle/etc/mecabrc

$ cat /etc/usr/local/mecabrc
;
; Configuration file of MeCab
;
; $Id: mecabrc.in,v 1.3 2006/05/29 15:36:08 taku-ku Exp $;
;
;dicdir =  /usr/local/lib/mecab/dic/ipadic
dicdir =  /usr/local/lib/mecab/dic/mecab-ipadic-neologd
(Folgendes wird weggelassen)

Scp das Wörterbuch von lokal zu remote.

$ scp -r /usr/local/lib/mecab/dic/mecab-ipadic-neologd [email protected]:~/

Überprüfen Sie den Betrieb von Mecab auf dem Remote-Server.

$Echo Gott| mecab -d ~/mecab-ipadic-neologd
Gott Nomen,Eigenname,Allgemeines,*,*,*,Gott,Camitel,Camitel
EOS

Sie können sehen, dass mecab-ipadic-neologd verwendet werden kann, da "Gott", der im ursprünglichen Wörterbuch nicht korrekt erkannt wurde, mit einem Wort erkannt werden kann.

Referenz: Verwenden Sie mecab-ipadic-NEologd mit einem günstigen Plan von Sakura VPS

Setzen Sie das Standardwörterbuch auf mecab-ipadic-neologd

Legen Sie mecab-ipadic-neologd als Standardwörterbuch für mecab auf dem Remote-Server fest. Es ist fast dasselbe wie Für Mac, bearbeiten Sie einfach mecabrc.

Suchen Sie auf dem Remote-Server nach Mecabrc und überprüfen Sie den Inhalt.

$ sudo find / -name mecabrc
/etc/mecabrc

$ cat /etc/mecabrc
;
; Configuration file of MeCab
;
; $Id: mecabrc.in,v 1.3 2006/05/29 15:36:08 taku-ku Exp $;
;
dicdir = /var/lib/mecab/dic/debian
(Folgendes wird weggelassen)

Das Mecab-Wörterbuch scheint standardmäßig in / var / lib / mecab / dic gespeichert zu sein. Verschieben Sie also auch Mecab-ipadic-neologd dorthin und ändern Sie Mecabrc, um es zu unterstützen.

$ sudo mv ~/mecab-ipadic-neologd /var/lib/mecab/dic/
$ sudo nano /etc/mecabrc

(Vorher ändern)

;
; Configuration file of MeCab
;
; $Id: mecabrc.in,v 1.3 2006/05/29 15:36:08 taku-ku Exp $;
;
dicdir = /var/lib/mecab/dic/debian
(Folgendes wird weggelassen)

(Nach der veränderung)

;
; Configuration file of MeCab
;
; $Id: mecabrc.in,v 1.3 2006/05/29 15:36:08 taku-ku Exp $;
;
;dicdir = /var/lib/mecab/dic/debian
dicdir = /var/lib/mecab/dic/mecab-ipadic-neologd
(Folgendes wird weggelassen)

Wenn Sie es richtig ändern können, können Sie "Gott" in einem Wort erkennen, ohne ein Wörterbuch nachschlagen zu müssen.

$Echo Gott| mecab -d ~/mecab-ipadic-neologd
Gott Nomen,Eigenname,Allgemeines,*,*,*,Gott,Camitel,Camitel
EOS

Installation von mecab-python3

Erlaube, dass Mecab von Python3 aufgerufen wird.

sudo apt install swig
sudo apt install python3-pip
sudo pip3 install mecab-python3

Überprüfen Sie, ob Sie es von Python aus aufrufen können.

$ python
Python 3.6.8 (default, May 23 2019, 19:27:09) 
[GCC 5.4.0 20160609] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import MeCab
>>> MeCab.Tagger().parse('Gott')

Failed initializing MeCab. Please see the README for possible solutions:

    https://github.com/SamuraiT/mecab-python3#common-issues

If you are still having trouble, please file an issue here, and include the
ERROR DETAILS below:

    https://github.com/SamuraiT/mecab-python3/issues

Sie müssen die Ausgabe nicht auf Englisch schreiben.

------------------- ERROR DETAILS ------------------------
arguments: 
error message: [ifs] no such file or directory: /usr/local/etc/mecabrc
----------------------------------------------------------
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/shimaya/.pyenv/versions/3.6.8/lib/python3.6/site-packages/MeCab/__init__.py", line 124, in __init__
    super(Tagger, self).__init__(args)
RuntimeError

Ich bekomme eine Fehlermeldung. Es wird gesagt, dass "/ usr / local / etc / mecabrc" nicht existiert. Da sich Mecabrc in / etc / Mecabrc befinden sollte, habe ich anscheinend einen Ort gelesen, der nicht existiert. Das Mecabrc, das Python liest, kann durch explizites Vorbereiten einer Umgebungsvariablen namens "MECABRC" angegeben werden.

$ nano ~/.bash_profile
(Fügen Sie Folgendes hinzu)
export MECABRC=/etc/mecabrc

$ source ~/.bash_profile

Als ich es erneut versuchte, konnte ich die Morphologie von "Gott" in einem Wort analysieren.

$ python
Python 3.6.8 (default, May 23 2019, 19:27:09) 
[GCC 5.4.0 20160609] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import MeCab
>>> MeCab.Tagger().parse('Gott')
'Gott\t Substantiv,Eigenname,Allgemeines,*,*,*,Gott,Camitel,Camitel\nEOS\n'

Referenz: Mecab unter Ubuntu 18.10 installieren Referenz: Ändern Sie das von Python aufgerufene Standardwörterbuch von MeCab

Recommended Posts

Installieren Sie mecab-ipadic-neologd auf Sakura VPS (ubuntu18.04) mit wenig Speicher und verwenden Sie es von Python
Installieren Sie das memcached Plugin unter MySQL und greifen Sie von Java aus zu
Installieren Sie JDK und JRE unter Ubuntu 16.10
Installieren Sie Ubuntu Server 20.04 in VirtualBox auf einem Mac und stellen Sie eine SSH-Verbindung her
Beim Erstellen einer Rails6-Umgebung unter Ubuntu bleibt die Bundle-Installation hängen
Verwenden Sie cljstyle mit Spacemacs unter Ubuntu unter WSL2
So verwenden Sie Eclipse auf meinem PC mit 32 Bit und 2 GB Speicher
Erstellen und installieren Sie Wireshark Development Release (3.3.1) unter Ubuntu
Installieren Sie mehrere Javas und wechseln Sie unter Ubuntu zwischen ihnen
SSH in Ubuntu auf der VirtualBox Ihres Mac und tun Sie dies, bis Sie Docker installieren
Importieren Sie eine Instanz und verwenden Sie sie auf einem anderen Bildschirm
Installieren Sie Eclipse auf einem Mac und übersetzen Sie es ins Japanische