トップページ | ひとつ上のページ | 目次ページ | このサイトについて | ENGLISH

テキストマイニングのソフト

テキストマイニング は、専用ソフトがいろいろ出ています。 日進月歩の分野なので、 このサイトの内容はすぐに古くなるかもしれませんが、まとめてみました。

なお、このページの内容は、フリーソフトです。

形態素解析 のフリーソフトとして、 MeCabやChasenがありますが、 これらは膨大な量の文章を処理したい時には不便です。 テキストマイニングのフリーソフトと呼ばれているものは、ChasenやMeCabを内部に組み込んで、 自由な解析をしやすいように作られています。

KH Coder

テキストマイニングの主要な解析を、ひとつのソフトでできるようになっています。 マウス操作で使えるので、とても簡単です。

KH Coderをインストールすると、Chasenは自動的に組み込まれています。 MeCabも別にインストールすれば、MeCabをエンジンにする事もできます。

形態素解析した結果を、csvファイルで出力してくれます。これは、いろいろな解析の出発点にできます。

KH Coderの注意点

半角文字が扱えません。 半角文字を含んだ単語は、未知語になります。 カタカナや英数字は、予め全角文字に直しておく必要があります。

RMeCabとRCaboCha

RMeCabは、Rのモジュールのひとつです。 Rの中でMeCabを使えるようになっているので、MeCabの出力を、そのままRの豊富な機能で解析できます。

RMeCabを使うには、RとMeCabのインストールも必要になります。

RCaboChaは、RでCaboChaを使えるようになっているらしいのですが、 2016年現在は、開発がストップしているせいもあり、バージョンの組み合わせを適切に選ばないと、使えないようです。 筆者自身は、試せていません。

TTM(TinyTextMiner)

TTMは、形態素解析と係り受け解析のソフトです。 MeCabとCaboChaを使った比較的規模の大きな解析が、簡単にできるように作られています。

とてもシンプルなソフトです。 形態素解析や、係り受け解析だけの機能を持っていて、主要な形式で解析結果を出力します。 この結果をどうやってまとめるのかは、解析者に任せています。 要は、テキストマイニングで、テキストマイニングならではの部分を、しっかりやってくれます。 グラフの機能はないので、係り受け解析をするつもりはなく、 ざっくりテキストの内容を見たいのなら、KH Coderの方が良いと思います。

TTMの注意点

KH Coderのように、txtのファイルは扱えません。

csvファイルの場合は、2列の構造にする必要があり、1列目はタグで、2列目が解析したいテキストになります。 一般的なデータ解析の形式では、1行目は変数の名前にしますが、TTMは1行目から解析の対象になるので、不要です。

Excelでは、セルの中で改行をする事がでいて、KH Coderはそうやって作ったcsvファイルも解析できます。 TTMでは解析できないので、clean関数などで改行を取り除く必要があります。

RMeCabの使用例

RMeCabは、KH Coderよりも使うための知識が必要です。 筆者なりに、最短でできるようにするための知識をまとめてみたのが、下記になります。

前提条件

※ フォルダの場所や、ファイル名等は、一例です。
(1) パソコンに、R、MeCabをダウンロードして、インストールする。
(2) RMeCabをダウンロードして、Rのモジュールとして使えるようにしておく。
(3) Cドライブに「Rtest」というフォルダを作る。
(4) 「Rtest」フォルダの中に、「DataSet」というフォルダを作る。
(5) 形態素解析したいテキストファイルを、「DataSet」フォルダに置く。ファイルは複数でも良い。 1つのファイルの結果が1列のデータになる。
(6) 名詞、動詞、形容詞のみを抽出する。
(7) 形態素解析の結果は、「DM」というリストで記憶される。
(8) 「DM」の内容は、「Rtest」フォルダの中の、「MecabKekka.csv」というファイルに出力される。

Rの命令文

※ 下記の6行を、一度にコピーペーストして実行すると、エラーになる場合があります。  その場合は、1行ずつ進めればできました。

library(RMeCab) # RMeCabを読み込み
setwd("C:/Rtest") # 作業用ディレクトリを変更
DM <- docMatrix("DataSet", pos = c("名詞","動詞","形容詞")) # 形態素解析して、表に集計
DM <- DM[ row.names(DM) != "[[LESS-THAN-1]]" , ]  # 不要な文字列を削除
DM <- DM[ row.names(DM) != "[[TOTAL-TOKENS]]" , ] # 不要な文字列を削除
write.csv(DM, file = "MecabKekka.csv") # csvファイルを出力





参考文献

Rによるテキストマイニング入門」 石田基広 著 森北出版 2008
RMeCabの作者による本です。 「Rによる」とありますが、R単体の他に、MeCabとRMeCabのインストールが必要です。
形態素解析の結果を、 主成分分析クラスター分析 に持っていく方法等が、事例を使って詳しく解説されています。


Rで学ぶ日本語テキストマイニング」 石田基広、小林雄一郎 著 ひつじ書房 2013
同著者の上記の本と比べると、係り受けのCaboChaの話が、増えています。
事例が多いのはこの本も同じですが、そのテキスト特有の内容の考察よりも、多変量解析的なアプローチでわかる事の話が多い印象でした。


データマイニング入門 :Rで学ぶ最新データ解析」 豊田秀樹 編著 東京図書 2008
データマイニング の手法を、コード付きの例題を使って、Rで勉強できる本です。 第9章が潜在意味解析(Latent Sematic Analysis : LSA)です。 この章では、形態素解析からの手順を説明しています。
潜在意味解析は、言葉の同義性や、多義性に対処するために発展した統計手法とのことです。 知識の獲得、小論文の自動採点、等、幅広い応用があるそうです。


人文・社会科学のためのテキストマイニング」 松村真宏、三浦麻子 著 誠信書房 2014
タイトルからはわからないのですが、この本は、TTMのマニュアルとしてまとめられていますし、 テキストマイニングの一般的な入門書としても、まとめられています。 著者がTTMの開発者です。
HADという統計解析のフリーソフトは、Excel上で動き、 回帰分析や、 SEM・共分散構造分析など、 心理学の統計で使う手法が一通り入っているそうです。 このソフトとExcelTTMは相性が良いので、連携させる開発が進んでいるそうです。


順路 次は 辞書を整備しないで解析する方法

Tweet データサイエンス教室