WEB+DB PRESS (ウェブDBプレス) Vol.100「形態素解析」(P.26)をやってみた

WEB+DB PRESS Vol.100(技術評論社)の「形態素解析」(P.26)をやってみました。ここは、MeCabを使ってみるところ。

  • 記事の内容や、操作を理解するための概念などは、このページには書きません。上のリンクから雑誌を購入してご覧ください。

この記事は、以下の記事の続きです。

WEB+DB PRESS (ウェブDBプレス) Vol.100「第2章 自然言語処理」(P.24)をやってみた

形態素解析

Windows PowerShellを起動し、以下の記事で準備したDockerコンテナに接続して操作します。ここでは、Dockerコンテナに接続するまでの操作は省略します。

WEB+DB PRESS (ウェブDBプレス) Vol.100「第2章 自然言語処理」(P.24)をやってみた

「私は本を買った」の形態素解析

  1. 「mecab」と入力し、Enterキーを押します。
  2. 「私は本を買った」と入力し、Enterキーを押します。

    形態素解析を行った結果が表示されます。
  3. Ctrlキーを押しながらCキーを押します。

「ガンダムの映画を見た」の形態素解析

標準のIPA辞書で形態素解析を行った結果と、新語辞書NEologdで形態素解析を行った結果を比較します。

  1. 「mecab」と入力し、Enterキーを押します。
  2. 「ガンダムの映画を見た」と入力し、Enterキーを押します。

    標準のIPA辞書で形態素解析を行った結果が表示されます。
  3. Ctrlキーを押しながらCキーを押します。
  4. 「IPA辞書とNEologdそれぞれを用いた結果」(P.27)の中央に記載されているコマンドを入力し、Enterキーを押します。
  5. 「ガンダムの映画を見た」と入力し、Enterキーを押します。

    新語辞書NEologdで形態素解析を行った結果が表示されます。
  6. Ctrlキーを押しながらCキーを押します。

「WEB+DB PRESSという雑誌」の形態素解析

ユーザー辞書を使用して形態素解析を行います。雑誌の記事にあるユーザー辞書「original_dic.csv」はソースコードに含まれています。

  1. ここまでと同様にmecabを起動し、「WEB+DB PRESSという雑誌」と入力して、Enterキーを押します。
  2. 雑誌記事の「ユーザー辞書の作成」に記載されているコマンドを入力し、Enterキーを押します。
    ただし、最後の「original.csv」は「/webdb100/02/original.csv」に置き換えます。

    ユーザー辞書が作成されます。
  3. 「vi /usr/local/lib/mecab/dic/ipadic/dicrc」と入力し、Enterキーを押します。
  4. 大文字のGを入力します。
    カーソルが最終行に移動します。
  5. 小文字のoを入力します。
    カーソルが次の行に移動し、文字を入力できるようになります。
  6. Enterキーを押してから、「userdic = /original.dic」と入力し、Enterキーを押します。
  7. ESCキーを押し、「:wq」と入力して、Enterキーを押します。
  8. 手順1と同様にmecabを起動し、「WEB+DB PRESSという雑誌」と入力して、Enterキーを押します。
    「WEB+DB PRESS」が1つの単語として解析されていることがわかります。

この手順のとおりに操作した場合は、Dockerコンテナを削除すると、ユーザー辞書が削除されます。

PythonからのMeCabの利用

  1. ここまでと同様にDockerコンテナに接続し、「cd /webdb100/02」と入力して、Enterキーを押します。
  2. 雑誌記事(P.28)の「mecab.pyの実行」の1行目のコマンドを入力し、Enterキーを押します。
    なお、記載されているコマンドの先頭にある「$」は、入力しません。

    (雑誌記事とは異なり)上位10位の名詞が表示されます。

内容語の取り出し

  1. ここまでと同様にDockerコンテナに接続し、「cd /webdb100/02」と入力して、Enterキーを押します。
  2. 雑誌記事(P.28)の「content_word.pyの実行」の1行目のコマンドを入力し、Enterキーを押します。

    内容語が表示されます。