テキストマイニング
テキストマイニングの概要
テキストマイニングとは、テキストデータに記述されている内容の特徴や傾向を把握するための手法で、テキストに含まれる単語や表現を抽出し、その出現頻度を集計することでテキストという定性データを統計的に分析可能なデータに変換します。
テキストマイニングのツールは現在様々ありますが、ほとんどの場合以下の2つの解析機能を基本としており、ツールの違いはこの2つの基本機能をベースにした派生分析の種類や結果の可視化の仕方、搭載されている単語の辞書の充実さなどで現れるといえます。
①形態素解析(分かち書き)
文章を意味の持つ最小の言語単位(文字列)に分割し、その文法的素性(品詞など)を付与します。
②構文解析(係り受け分析)
抽出した形態素を文節にまとめ、文節間の文法的な係り受け関係(主語と述語、修飾語と被修飾語など)を抽出し、文章の構造を解析します。
テキストマイニングのアウトプットの例
文章に含まれる単語や係り受け表現を抽出し、その頻度を集計しておおまかな全体像を把握したり、同時に出現しやすい単語同士をネットワークでつないで可視化し、このかたまりではこのような話題がされていると定性的に考察したり(共起ネットワーク)、テキストデータに紐づく属性情報と出現単語の対応関係を同じ平面上にマッピングし(コレスポンデンス分析)、その位置関係から属性ごとの記述傾向を考察するといったことがよく行われます。
テキストマイニングの適用シーン
テキストマイニングは例えば以下のような適用シーンがあります。
・コールセンターの問い合わせデータ
問い合わせ内容から、顧客のニーズや製品・サービスの改善点を把握したり、FAQの作成や経験の浅いオペレータのマニュアルの作成などを行います。
・特許文書データ
特許文書に含まれる技術単語の出現頻度を時系列に分析して技術動向を把握したり、特許の出願人と技術単語の関係を分析して競合他社の技術動向を把握したりします。
・口コミデータ
Web上に投稿された口コミから、その内容を好評と不評に分類して製品やサービスの評判を分析し、現状商品の改善や、新商品の企画に活用します。
・ブログやツイッター
SNSで発信されたブログやツイッターで出現する単語の頻度の時系列変化を分析することで、トレンドを把握します。
・ヒヤリハットレポート
工場などのヒヤリハットレポートから、現場で存在する危険を整理し、安全管理における改善ポイントを把握します。
テキストマイニングの基本的な流れ
テキストマイニングの基本的な機能は先述の通り、単語を抽出する形態素解析と、その単語間の係り受けを抽出する構文解析となります。その結果を集計して可視化したり、統計分析を実行することで全体の概要や特徴を理解し、その特徴に該当する原文を確認することで全体像からより詳細を理解していくというのがテキストマイニングのおおまかな流れといえます。以下により詳しく説明していきます。
評判分析やポジネガ分析と呼ばれる手法がありますが、これは単語に名詞や動詞といった品詞が割り当てられるのと同様に、例えば、綺麗、楽しいなどは良い意味、汚い、つまらないなどは悪い意味というように、単語にポジティブとネガティブの印象を割り当てており、その印象を集計することで、文章やある対象の評判を分析しています。
またテキストマイニングのツールには、単語と品詞の辞書が標準で搭載されていますが、それだけでは対応できないものが多く存在します。例えば、カタカナ表記、ひらがな表記、漢字表記などの表記揺れや、タイプミス、類義語などは新たに辞書を作成し、ツールの搭載辞書に追加登録する必要があります。そしてその新たな辞書を反映して再度テキストマイニングを実行し、その結果を見てまた新たな辞書を検討するといった、ある程度繰り返し辞書を更新するという作業が必要となります。辞書の作成は最初は大変ですが、一度作ってしまえばそれを流用できるので、最初だけの我慢といえます。
テキストマイニングでは、全体像や概要をおおまかに理解するにはとても有効ですが、その結果から何かアクションを考えようとするともっと具体的な深い内容の情報が必要となります。そこで何か気になる特徴が抽出されたら、その特徴に該当する原文を参照するというように、元の文章データに立ち戻って理解するということが重要です。テキストマイニングというのは、すべての文章を人間が読まなくても内容の概要が得られる手法といえますが、そこで得られるのは表面的な情報なので、テキストマイニングの使い方というのは、まずキーワードを抽出して、そこから特徴的なキーワードや注目すべきキーワードを見つけ、それに焦点を当ててその原文をしっかりと読んで理解するという、ドリルダウンの分析アプローチが正しい使い方といえます。
ここまでがテキストマイニングの基本的な分析となりますが、続いてはその結果をどう見せるのかということになります。代表的な結果の見せ方としては、一番シンプルに出現単語のリストを表にするグラフ化するといったものがあります。またそれぞれの文章に対して、抽出された単語が出現するかしないかを{0,1}で示した単語の出現有無データを作成することで、ここから様々な派生分析ができます。
例えば、データに時間の情報があれば、単語の出現頻度の時系列の変化を見ることでトレンドを分析することができます。同じ文章で同時に出現する単語の傾向をネットワークで図示して、どんなかたまりの話題がされているのかということも可視化できます。クラスター分析を実行して文章を分類するということもできます。文章に性別や年代といった属性情報があれば、その属性別で単語を集計したり、対応分析やコレスポンデンス分析といった手法で単語と属性情報の位置関係をマッピングすることもできます。その他、この単語の出現有無データをベースにすることで様々な統計解析が可能となり、その機能の種類はツールによって異なっています。
※本解説記事の内容を引用または転載される場合は、その旨を明記いただくようにお願いいたします。