「通勤講座」は10周年で「STUDYing(スタディング)」に生まれ変わりました!

文字列を解析する~テキストマイニングの基礎~

テキストマイニングとは何を解析するの?
TwitterやFacebook、または口コミサイトの投稿などを解析し、自社や競合のの評価などを分析することが多くなってきました。「テキストマイニング」と呼ばれるこれらの手法は英語圏を中心に発達してきましたが、最近では解析技術の向上によって、それまで構造上難しいとされてきた日本語でも使われるようになってきています。テキストマイニングとはなにか、そして、解析のフローについて、株式会社アイズファクトリー データサイエンス部 谷口氏の下記エントリーをご覧ください。

テキストを掘る(マイニングする)ツルハシのイメージ画像

テキストマイニングとは

テキストマイニング(※注1)とはテキスト(文字列)の中から

  • 特徴ある単語や文節を見つける。
  • 代表的な単語や文節を見つける。
  • 単語や文節間の関係を見つける。

などを解析によって実現し可視化することです。

(※注1)テキストマイニング(text mining)は、文字列を対象にしたデータマイニングのことである。通常の文章からなるデータを単語や文節で区切り、それらの出現の相関、出現傾向、時系列などを解析することで、有用な情報を取り出す、テキストデータの分析方法(出典:Wikipedia https://ja.wikipedia.org/wiki/テキストマイニング)。

最近は、ブログやSNSなどのソーシャルメディアが普及してきており、有益な情報をこれらのインターネットを介して得る需要が増えてきています。実際にtwitterからインフルエンザの流行をとらえ、事前に予防処置をとることができるなどが話題になりました。

本投稿ではテキストマイニングとはいったい何をやる解析なのかをご紹介したいと思います。

まず、テキストマイニングといっても、実は普通のデータ解析と基本的に変わりのないものだということを先に述べておきます。
とは言え、そこにはテキストマイニング特有の注意点もありますので、解析のフローに沿ってテキストマイニングとは何かを見ていきましょう。

解析のフロー

(1)データ

通常、データを取り扱おうとすると、データを集める(つくる)仕組が必要です。
それは、小売りであれば購買POSシステムや、ECサイトにおけるwebのアクセスログであったりします。
テキストマイニングで扱うデータは自由記述のテキストが多くなりますが、特にwebサイトの特定ページやTwitterなどのSNSから得られるテキストデータに需要があります。
この2つのケースでは、データを集める仕組みが既に用意されているため、それを利用できるというところが利点です。
一方で、真に欲しいデータからは外れていることが多いため、取り扱いには気をつけないといけません。
例えば火事がどの場所で起こっているかをTwitterから解析する場合、tweetの中には「近所で火事があった」のような具体的な投稿テキスト以外にも、「地震雷火事親父」や「対岸の火事」などの“実際の火事とは関係のない“と考えられる投稿テキストが含まれていることに注意が必要です。

(2)前処理

テキストデータは文字列の連なりであり、そのままでは解析することができません。
そのためデータ前処理として、形態素解析やクレンジングを実施します。形態素解析(分かち書き)では、テキストデータをそれ以上分けることのできない単語単位に分割します。こうすることで、単語の出現頻度を集計することができ、テキストデータを数値データとして扱えるようになります。

また、データを整理するために、クレンジング処理を行います。
この処理の中で「表記ゆれ統一」と「クレンジング」の2ステップを踏みます。
「表記ゆれ統一」では、単語中に現れる大文字・小文字・半角・全角を統一し、一つの単語として扱えるようにします(ex. 「タナカ」、「タナカ」を「タナカ」へ統一)。
また「クレンジング」では、テキスト中に現れる「、(句点)」や「★(記号)」などそれ自身には意味のない単語を除去します。これらは必須の処理ではありませんが、解析結果にごみを出す可能性があるため通常は実施します。
例として単語の頻度を集計する場合、「句読点」などはよく使われるため、高頻出の単語ということになってしまいます。

こういった工程を経て、分析できる状態のデータを作成することができます。

(3)解析

テキストマイニングで解析できることに、他のデータ解析と比べて特殊なものがあるわけではありません。
代表的な単語であれば、単語を頻度集計することで知ることができます。また単語同士のつながりの強さは、単語同士の相関や距離によって算出できます。
よく知られているような受信したメールがスパムメールかどうかを判定(分類)したいのであれば、スパムメールを正解としたロジスティック回帰やナイーブベイズなどを用いることで実施できます。
またそのような特定テキストに現れる特徴ある単語も知ることが可能です。目的は何かによって解析手法を選ぶ点は、他の解析と何ら変わりはありません。

(4)施策

「(1)データ」や「(3)解析」で記述したように、テキストマイニングは特殊な分析ではありません。
しかし、webから入手できるという点において、「データを集めて分析ができれば何か新しい発見があるだろう」という安易な気持ちで始めてしまうと、その分析やその先の施策はうまくいきません。

結局のところ、「CRISP-DMにおける“ビジネスの理解”」を行う事なくテキストマイニングをしても意味がないのは他の解析と同じです。

解析の考え方は常に目的から始まります。

  1. 目的・目標の設定
  2. 達成までに超えるべき困難・問題の整理
  3. 解決する方法の決定

これら3つを順に考えていくことで、最終的には目的を達成することができます。
(c)の中に解析という方法(手段)が含まれているだけであり、分析をしなければ解決できないわけではありません。

結論として、テキストマイニングは他のデータ解析と大きく変わるものではありません。目的・目標を明確にもって取り組むことで、その力を発揮するでしょう。

投稿者: データサイエンス部 谷口 (株式会社アイズファクトリー)

この記事は株式会社アイズファクトリーが提供しています。

株式会社アイズファクトリー

株式会社アイズファクトリーは、理学博士が中心となり設立されました。
「全ての人に成功確率UPを届ける」をキャッチフレーズに、科学を活用してより良い社会に貢献すること、その後のシステム開発を通じて、お客様企業の業務効率向上に貢献すること、を目指しております。

 近年、ビッグデータ活用の必要性が高まっており、データマイニングがより注目されています、過去300超のプロジェクトで培った解析力と実ビジネスへの応用力は、グルメ情報提供サイト、ECサイト、広告関連企業、教育関連企業、自動車メーカー、公官庁、といった幅広い業界の大手企業・団体様から高い評価を得ております。

データサイエンスの概要を無料配信中!無料セミナーの動画と講義レジュメを配信!

通勤講座は今すぐ無料で受講できます。
まずはお試しください!

登録すると無料で試せます

  • 無料セミナー
    「データサイエンスの入口」
  • 講義レジュメ(PDF)
    無料セミナーのスライドがダウンロードできます!

※無料講座の内容は予告なく変更される場合があります。
あらかじめご了承ください。