日本語の「テキストマイニング」を統計解析フリーソフト「R」でサクッ実行したいあなた、こちらはいかがでしょうか

Textmining of Japanese using R R

 

最近、人工知能の分野で、「テキストマイニング」の技術が注目されています。

え!そうなの?

テキストマイニングってなんなの?

と思われる方もおられるかもしれません。

そこで本記事では、テキストマイニングをやっていたい方がスムーズに入っていけるように、テキストマイニングの概要と、おすすめ書籍等を紹介しています。

本記事の概要

テキストマイニングとは?

「テキストマイニング」とは、集めたテキストデータに対して、統計学や情報科学の知見をつかうことで、データの特徴や新しい知見などを見つけることです。

「テキストデータ」とは、例えばインターネット上にはブログやツイッター、フェイスブックなど、多くの人が書き込んだデータはテキストデータと呼ばれます。

「マイニング」とは、掘り出す、の意味で、データから重要な情報を取り出す、の意味で使われます。

 

ちなみに、テキストマイニングのデータの掘り出し方については、こちらの記事にもございます↓
「テキストマイニング」ってなに?猫でもわかる、3つのポイント

 

さきほどテキストデータを簡単に説明しましたが、具体的には以下のように、さまざまなものがあります。

  • 学生さんが書いた作文
  • 政治家の所信表明演説
  • 世界のさまざまな言語のデータ
  • 映画やドラマの台本データ
  • 文学や小説のデータ
  • 日本各地の方言データ

などなど、まだまだ他にもたくさんあります。要は文章で書かれたデータと思ってもらえばオッケーです。

テキストマイニングのメリットは、大量のテキストデータを分析することで、1つ1つ読んでいたら気づきにくい全体の中からの特徴を発見したりすることができることです。

では、テキストマイニングには、どのような手法があるのでしょうか?

 

 

 

 

 

 

 

 

テキストマイニングはどのように行われるのか?代表的な4つの手法

1、形態素解析

テキストデータを単語単位に分割します。

テキストデータは文章であることが多いのですが、そのままでは解析に適しません。なので、文章を品詞ごとに分解したデータに変換します。

「どの単語がどのくらいの頻度で出現しているか」などを調べることに使います。単語の頻度の特徴によって、たとえば古典や文学作品では、作者が誰なのかを推定したりすることに使えたりします。

 

2、構文解析

文章を句に分けて、係り受け関係を分析します。

1で各単語の出現頻度などはわかりましたので、今度は、単語と単語の関係について調べていきます。それが構文解析です。

単語同士の係り受け関係を判断することで、文の主語や修飾関係を、機械的に判断することができます。機械的にできるので、大量のテキストデータでもだいじょうぶです。構文解析によって、文の構造を調べることができます。

 

3、意味解析

 1で形態素に分割した単語は、同じ意味でも違うものとしてカウントされる場合があります。たとえば、「からあげ」は、「から揚げ」「唐揚げ」「カラアゲ」など同じ意味ですが、違うものとカウントされるわけです。

同じ意味のものは同じものとして調べるために行うのが「意味解析」です。

 これは単語を同義語のグループに分類した「同義語辞書」を使って自動的に行う方法があります。ただし、同義語辞書がないような分野では、同じ意味の単語を自分で目で見てまとめるといった作業(辞書化)が必要になることがあります。

この場合にはこのプロセスには手間がかかることになります。なので、テキストマイニングをしたい分野に同義語辞書があるかなど前もって調べておくと後で困らないかもしれません。

 

4、マイニング

分解した単語を統計的に解析する過程です。

テキストマイニングといっても、解析する過程までに、1,2,3のようなプロセスが含まれていて、3などに時間がかかる割りに、このマイニングの過程はサクッと終わることもあります。

マイニングではどういうことをやるのでしょうか?

たとえば、夏目漱石や森鴎外の作品のテキストマイニングをすることを考えてみます。二人の作品を単語単位に分解したデータを1-3の方法などで作成してあるとします。

それらの分解した単語データの中から、注目する単語を変数として、多変量解析を行うことができます。たとえば、「~と」、「~を」・・・を変数として、「主成分分析」や「コレスポンデンス分析」などを行います。

そうして得られた結果をみると、それぞれの作家で「単語の使い方」が違っていることが見て取れることがあります。つまり、作家ごとに言葉の使い方に特徴があることを見出すことができるわけです。

 

 

 

 

 

 

 

 

テキストマイニングをすると何がうれしいの?

って思う方もおられるかもしれません。

実は先ほど、大量の文章から作者の文章の特徴を知ることができる、と書きました。

この例を逆に考えると、作者不詳の文章があったときに、文章の特徴から書いた人を推測する、という使い方ができることがわかるかと思います。

それにはまず、すでに作者のわかっている文章の特徴を調べておきます。

次に作者不詳の文章の特徴と比べてみます。もし作者Aの特徴と似ていれば、作者不詳の文章もAのものではないか?と推定することができるわけです。

古典などの分野では、この文章は紫式部が書いたんじゃないだろうか?とか、作者は清少納言となってるけど、文章の特徴をみると実は違う人が書いてるかもしれない!などが推定できたりするわけです。

 

このような内容は「計量文献学」と呼ばれていて、以下のような書籍がございます。↓

”「源氏物語」の作者は2人いた。「静かなドン」は盗作だった。シェイクスピアはベーコンだった”(書籍紹介より引用)

などなど、興味深い話が出てきています。

 

このように、文章に隠れた特徴をうまく活用するのがテキストマイニングのメリットの1つです。

 

 

 

 

 

 

 

 

テキストマイニングをビジネスに活かしたい

テキストマイニングはビジネスに活かすことも可能です。

例えば、Twitterやブログのテキストデータを収集して、自社の新商品に対する評判を解析することができます。

テキストマイニングを行えば、自社商品に対して好意的な内容が書かれているのか否定的な内容が書かれているのかを(自動的に)判別して集計することができます。

人手で1つ1つやることも可能ではありますが、大量のデータをテキストマイニングで行えば、数十分でできてしまうかもしれません。

さらに、それらのデータをグループ分けしてその特徴を知ることも可能です。たとえば

  • ポジティブに評価したのは学生さんが多かった
  • ネガティブに判断したのは主婦
  • パッケージはポジティブに評価された
  • 味がネガティブに評価された

などなど、より詳細に顧客の反応を調べることができるわけです。この分析をもとにして商品の改良を行ったり、次の商品開発に活かしたりすることができます。

このように、テキストマイニングは、ビジネスの場面でも活用することができます。

じゃあ実際に、どうやってテキストマイニングをすればいいんだろう?

って思われた方も多いのではないでしょうか。

 

 

 

 

 

 

 

 

テキストマイニングは、統計解析フリーソフト「R」をつかうと、手軽にサクッと実行できます

 テキストマイニングを行うには、統計解析ソフトである「R」を使うのがおすすめです。Rは無料で、かつ、最先端の手法もカバーしてくれる優れたソフトです。

 テキストマイニングを行うには、R単体だけでなく、追加で別のソフトをインストールして使います。形態素解析、構文解析、意味解析などは、それらは別の専門のソフトにやってもらうわけです。

でも、そんなにたくさんのソフトを使うなんてむずかしそう~

なんて思われるかもしれません。

たしかに、ソフトの使い方を覚えるだけでもそれなりに時間もかかります。

そこで本記事では、それらの情報を網羅した、Rだけでなく、テキストマイニングをスムーズに始めれて、サクッと実行できるための本をご紹介します。

本書では、RやR以外のテキストマイニングで使うソフトのインストールなども解説されています。

もちろん、テキストマイニングの方法を基本をシッカリ学べます。

さらに、以下の目次を見ても分かるのですが、バラエティに富んださまざまな解析例が参考にできるので、自社や自分のデータにもすぐに応用できる解析がみつかるのではないでしょうか。

本書の構成は以下の通りです

まえがき

第1章    テキストマイニングとは何か

はじめに
軽量言語学
コーパス
形態素解析
構文解析
意味解析
日本語・日本文学研究におけるテキストマイニング

第2章    Rと基本等軽量

はじめに
インストール
Rの基本操作
プログラミング言語としてのR
基本統計量

第3章    Rによるテキストマイニング

はじめに
形態素解析済みのテキストの読み込み
RMeCabパッケージ

第4章    日本語作文のテキストマイニング 

大学生が書いた作文を例に

はじめに
分析データ
独立性の検定
相関分析
まとめ

第5章 政治的談話のテキストマイニング

所信表明演説を例に

はじめに
分析データ
分割表の用意
対応分析によるクラスタリング
クラスター分析によるクラスタリング
まとめ

第6章    対照言語データのテクストマイニング

ヨーロッパ10言語の数詞を例に

はじめに
分析データ
多次元尺度法によるクラスタリング
系統樹によるクラスタリング
まとめ

第7章    対話形式データのテキストマイニング

「機動戦士ガンダム」の台本を例に

はじめに
分析データ
変数
ネットワーク分析による人間関係の可視化
まとめ

第8章    文学作品のテキストマイニング

芥川龍之介と太宰治を例に

はじめに
分析データ
説明変数
クラスター分析による著者推定
線形判別分析による著者推定
サポートベクターマシンによる著者推定
まとめ

第9章    ジャンル別データのテキストマイニング

書き言葉均衡コーパスを例に

はじめに
分析データ
説明変数
ナイーブベイズによるジャンル判定
k近傍法によるジャンル判定
バギングによるジャンル判定
まとめ

第10章    方言データのテキストマイニング

「茸」のアクセントパターンを例に

はじめに
分析データ
説明変数
決定木によるアクセントパターンの推定
ランダムフォレストによるアクセントパターンの推定
まとめ

参考文献

索引

となっています

日本語テキストマイニングをこれからやってみたいあなたに最適の本となっています。

 

 

同じ著者による、テキストマイニングの入門書です。こちらも分かりやすいです。↓

Rによるテキストマイニングでは、こちらの書籍もございます。↓

 

 

 

エクセルで、テキストマイニングをするならこちらもございます↓

こちらは、アカデミック版もございます↓

 

 

 

テキストマイニングのビジネス事例も豊富に載っています。↓

ビッグデータを活かす 技術戦略としてのテキストマイニング

やってみよう テキストマイニング ―自由回答アンケートの分析に挑戦! ―

社会調査のための計量テキスト分析―内容分析の継承と発展を目指して

Pythonによるテキストマイニング入門

自然言語処理の全体像がサクッと理解できる1冊です。↓

自然言語処理の基本と技術

言語研究で統計を使いたい方にはこちらもございます。↓

言語研究のための統計入門

言語に関して機械学習をやりたいあなたにはこちらがおすすめです。↓

言語処理のための機械学習入門 (自然言語処理シリーズ)

そのほかに、こちらの記事もございます↓

 

「テキストマイニング」の記事のまとめはこちらです

 

「多変量解析」の記事のまとめはこちらです