【4手順】Linux(CentOS/Ubuntu)にMecabをインストールする

★悩み★
・形態素解析のためにMecabをLinuxにインストールしたい。
・CentOS(RHEL)やUbuntuにMecabをインストールする方法を知りたい。
・PythonでMecabを使いたい!具体的なプログラムを知りたい。



こういった「悩み」に答えます。
 

★本記事の内容★
① Mecabとは?
➁ LinuxにMecabをインストールする手順
➂ インストールしたMecabの動作を確認する方法
④ PythonでMecabを使用する方法



この記事を書いている筆者は、約7年間、Mecabを使い込んでいます。
Mecabの使用歴が長いため、今までに数十回ほどCentOSやUbuntuといったLinuxにMecabをインストールしたことがあります。

 

本記事の前半では、「そもそもMecabとはどういったソフトウェアなのか」に関して説明します。
後半では、「CentOS(RHEL)やUbuntuにMecabをインストールする手順」や「PythonでMecabを使う方法」に関して具体的なコマンドを交えて解説します。
 

本記事を読み終えることで、「日本語の文字列を分析できる環境」が整った状態になります。

 

Mecabとは?【形態素解析ができるソフトウェアです】

Mecabは、「自然言語処理の形態素解析」を実現できるソフトウェアになります。
Mecabの開発元である公式ページにおいては、下記のように説明されています。
 

MeCabは 京都大学情報学研究科−日本電信電話株式会社コミュニケーション科学基礎研究所 共同研究ユニットプロジェクトを通じて開発されたオープンソース 形態素解析エンジンです。

Mecab公式サイト



Mecabを使うことで、下記のような「形態素解析」を実現できます。

% mecab
すもももももももものうち
すもも  名詞,一般,*,*,*,*,すもも,スモモ,スモモ
も      助詞,係助詞,*,*,*,*,も,モ,モ
もも    名詞,一般,*,*,*,*,もも,モモ,モモ
も      助詞,係助詞,*,*,*,*,も,モ,モ
もも    名詞,一般,*,*,*,*,もも,モモ,モモ
の      助詞,連体化,*,*,*,*,の,ノ,ノ
うち    名詞,非自立,副詞可能,*,*,*,うち,ウチ,ウチ
EOS
参照先:http://taku910.github.io/mecab/



「形態素(言語で意味を持つ最小単位)」を抽出することができるMecabは、自然言語処理を扱うデータ分析では非常によく利用されるソフトウェアです。

 

LinuxにMecabをインストールする手順【4手順です】

CentOS(Red Hat Enterprise Linux)およびUbuntuにMecabをインストールする手順についてご紹介します。

4手順でインストールできます。30分もかからず、MecabをCentOSにインストールすることができます。



以降でご紹介する全ての手順は、「端末」や「ターミナル」などのコマンドを実行するアプリケーションで実施します。インストールしたいLinuxマシン上で、「端末」などのアプリケーションを起動してください。
 

手順①:必須パッケージのインストール

まずは、Mecabをインストールするために必要なパッケージをインストールするために、下記のコマンドを実行します。

↓CentOS(RHEL)の場合↓
# dnf install --nogpgcheck -y https://packages.groonga.org/centos/groonga-release-latest.noarch.rpm

↓Ubuntuの場合↓
$ sudo apt-get update


 

手順➁:Mecabのインストール

続いて、MecabをLinuxにインストールするために、下記のコマンドを実行します。

↓CentOS(RHEL)の場合↓
# dnf -y install mecab mecab-ipadic mecab-devel patch --nogpgcheck

↓Ubuntuの場合↓
$ sudo apt-get install libmecab2 libmecab-dev mecab mecab-ipadic mecab-ipadic-utf8 mecab-utils


 

手順➂:新出単語と固有表現に強いmecab-ipadic-NEologdのダウンロード

次に、Mecabが形態素解析をするための「辞書」をダウンロードします。
今回は、新出単語や固有表現に強い辞書である「mecab-ipadic-NEologd」のダウンロード手順をご紹介します。

「mecab-ipadic-NEologd」をダウンロードするために、下記のコマンドを実行します。

↓CentOS(RHEL)およびUbuntuの場合↓
# git clone --depth 1 https://github.com/neologd/mecab-ipadic-neologd.git
# ls
mecab-ipadic-neologd



コマンド実行後、「mecab-ipadic-neologd」のフォルダが作成されている場合、「正常にmecab-ipadic-NEologdのダウンロードができた」と判断できます。

 

手順④:mecab-ipadic-NEologdのインストール

続いて、「mecab-ipadic-NEologd」をインストールするために、下記のコマンドを実行します。

↓CentOS(RHEL)およびUbuntuの場合↓
# cd mecab-ipadic-neologd
# ./bin/install-mecab-ipadic-neologd -n -a



コマンド実行後、「[install-mecab-ipadic-NEologd] : Install completed.」が表示された場合、「正常にmecab-ipadic-NEologdをインストールできた」と判断できます。
 

上記の4手順を実施することで、UbuntuやCentOSにMecabをインストールすることができました。


 

インストールしたMecabの動作を確認する方法

次は、LinuxにMecabが正常にインストールされたことを確認するために、動作確認をしてきましょう。
 

Mecabのインストール確認【whichコマンドを使う】

CentOSやUbuntuにMecabが正常にインストールされたかを確認するために、以下のコマンドを実行します。

↓CentOS(RHEL)およびUbuntuの場合↓
# which mecab
/usr/bin/mecab


上記のような実行結果の場合、Mecabが正常にインストールできたと考えられます。
下記のような実行結果である場合、Mecabが正常にインストールできていないと判断ができます。

# which mecab
/usr/bin/which: no mecab in ~~~~~


 

Mecabの動作確認

Mecabを起動し、文章を入力することで動作確認できます。

↓CentOS(RHEL)の場合↓
# mecab -d /usr/lib64/mecab/dic/mecab-ipadic-neologd/
CentOSにMecabのインストールができました。
CentOS	名詞,固有名詞,一般,*,*,*,CentOS,セントオーエス,セントオーエス
に	助詞,格助詞,一般,*,*,*,に,ニ,ニ
Mecab	名詞,一般,*,*,*,*,*
の	助詞,連体化,*,*,*,*,の,ノ,ノ
インストール	名詞,一般,*,*,*,*,インストール,インストール,インストール
が	助詞,格助詞,一般,*,*,*,が,ガ,ガ
でき	動詞,自立,*,*,一段,連用形,できる,デキ,デキ
まし	助動詞,*,*,*,特殊・マス,連用形,ます,マシ,マシ
た	助動詞,*,*,*,特殊・タ,基本形,た,タ,タ
。	記号,句点,*,*,*,*,。,。,。
EOS

↓Ubuntuの場合↓
$ mecab -d /usr/lib/x86_64-linux-gnu/mecab/dic/mecab-ipadic-neologd
UbuntuにMecabのインストールができました。
Ubuntu  名詞,固有名詞,一般,*,*,*,Ubuntu,ウブントゥ,ウブントゥ
に      助詞,格助詞,一般,*,*,*,に,ニ,ニ
Mecab   名詞,一般,*,*,*,*,*
の      助詞,連体化,*,*,*,*,の,ノ,ノ
インストール    名詞,一般,*,*,*,*,インストール,インストール,インストール
が      助詞,格助詞,一般,*,*,*,が,ガ,ガ
でき    動詞,自立,*,*,一段,連用形,できる,デキ,デキ
まし    助動詞,*,*,*,特殊・マス,連用形,ます,マシ,マシ
た      助動詞,*,*,*,特殊・タ,基本形,た,タ,タ
。      記号,句点,*,*,*,*,。,。,。
EOS



上記のように入力した文章を形態素解析できた場合、「正常にMecabが動作する」と判断できます。
 

whichやmecabコマンドでMecabの動作確認ができます。さらにMecabの詳しい使い方を知りたい方は、Mecab公式サイトをご覧ください。
参照:Mecabの詳しい使い方(公式サイト)


 

PythonでMecabを使用する方法

以下の記事を参考にし、お使いのパソコンやサーバーにPythonをインストールしましょう。

>> 【ubuntu向け】pyenvでPythonをインストールする手順【簡単】

>> 【コピペOK】pyenvでPythonをインストールする手順【Linux用】

>> 【最短5分】PyAutoGUIをWindowsにインストールする手順の「手順1:Pythonのインストール」を参照

>> 【環境構築】インストーラーでMacOSにPythonをインストール


 

PythonのMecabライブラリをインストール

PythonでMecabを使用するためには、「mecab-python3」というライブラリが必要です。「mecab-python3」をインストールするために、以下のコマンドを実行しましょう。

# pip install mecab-python3


「mecab-python3」が正常にインストールされたことを確認するために、以下のコマンドを実行しましょう。

# pip list | grep mecab
mecab-python3 (0.996.5)


上記のように出力されれば、「mecab-python3」が正常にインストールされたことが分かります。

 

PythonでMecabを使った形態素解析【ソースコードあり】

最後に、PythonでMecabを使った形態素解析を行いましょう。
Mecabを使ったPythonのソースコードは、以下のようになります。

import MeCab

text = "CentOSにMecabのインストールができました。"

mecab_obj = MeCab.Tagger("-Ochasen -d /usr/lib64/mecab/dic/mecab-ipadic-neologd/") # CentOS(RHEL)の場合
# mecab_obj = MeCab.Tagger("-Ochasen -d /usr/lib64/mecab/dic/mecab-ipadic-neologd/") # Ubuntuの場合
node = mecab_obj.parseToNode(text)
while node:
  print(node.feature)
  node = node.next


上記のソースコードをmecab_test.pyというファイル名で保存しましょう。
その後、mecab_test.pyを実行するために、以下のコマンドを実行します。

# python test.py 
BOS/EOS,*,*,*,*,*,*,*,*
名詞,固有名詞,一般,*,*,*,CentOS,セントオーエス,セントオーエス
助詞,格助詞,一般,*,*,*,に,ニ,ニ
名詞,一般,*,*,*,*,*
助詞,連体化,*,*,*,*,の,ノ,ノ
名詞,一般,*,*,*,*,インストール,インストール,インストール
助詞,格助詞,一般,*,*,*,が,ガ,ガ
動詞,自立,*,*,一段,連用形,できる,デキ,デキ
助動詞,*,*,*,特殊・マス,連用形,ます,マシ,マシ
助動詞,*,*,*,特殊・タ,基本形,た,タ,タ
記号,句点,*,*,*,*,。,。,。
BOS/EOS,*,*,*,*,*,*,*,*



以上のようにPythonからもMecabを用いた形態素解析ができました。

形態素解析とセットでよく使用する「係り受け解析」に関して興味がある方は、こちらをご覧ください。
 


 

【まとめ】Linux(CentOS/Ubuntu)にMecabをインストールする

今回の記事を通して、コピペベースでLinuxにMecabをインストールし、PythonでMecabを使用することができる手順をご紹介することで、以下の悩みを解消しました。
 

★悩み★
・形態素解析のためにMecabをLinuxにインストールしたい。
・CentOS(RHEL)やUbuntuにMecabをインストールする方法を知りたい。
・PythonでMecabを使いたい!具体的なプログラムを知りたい。



「CentOSやUbuntuなどのLinuxにMecabをインストールすることに困っているあなた」や「PythonでMecabを使用するのに困っているあなた」にこの記事が少しでも役に立てれば幸いです。
 

コメント