テキストマイニング

英語名 Text Mining
読み方 テキスト マイニング
難易度
所要時間 3〜6時間
提唱者 自然言語処理(NLP)・情報検索の研究から発展
目次

ひとことで言うと
#

アンケートの自由回答、レビュー、SNS投稿などの大量のテキストデータから、頻出する話題・感情の傾向・隠れたパターンを自動的に抽出する分析手法。人間が1件ずつ読んでいては見つけられないインサイトを発見できる。

押さえておきたい用語
#

押さえておきたい用語
形態素解析(Morphological Analysis)
文を最小の意味単位(形態素)に分割する処理のこと。日本語ではMeCabやJanomeが代表的なツール。テキストマイニングの最初のステップ。
共起分析(Co-occurrence Analysis)
同じ文や段落の中で一緒に出現しやすい単語の組み合わせを発見する手法を指す。「配送」と「遅い」の共起→配送遅延が不満要因。
センチメント分析(Sentiment Analysis)
テキストに含まれる感情(ポジティブ/ネガティブ/ニュートラル)を自動判定する手法のこと。感情分析とも呼ぶ。
トピックモデリング(Topic Modeling)
大量のテキスト集合から潜在的な話題(トピック)を自動的に抽出する手法である。LDA(Latent Dirichlet Allocation)が代表的。
ストップワード(Stop Words)
「の」「は」「です」「ます」など、分析に有用な情報を持たない高頻度語のこと。前処理で除去して分析精度を上げる。

テキストマイニングの全体像
#

テキストマイニングの構造:収集→前処理→分析→アクション
テキストデータの収集アンケート自由回答口コミ・レビューSNS投稿サポートログ社内報告書前処理(成否の8割を決める)不要文字の除去形態素解析ストップワード除去表記ゆれの統一辞書カスタマイズ頻出語・共起分析よく使われる単語は?一緒に出る単語は?感情分析ポジ / ネガ / 中立感情の推移を追跡トピック分析潜在的な話題を抽出テキストを自動分類ビジネスアクションへ変換改善優先順位 / ペルソナ精緻化 / 競合差別化
テキストマイニングの進め方フロー
1
データ収集
アンケート・レビュー・SNSなどからテキストを集める
2
前処理
形態素解析・ストップワード除去・表記ゆれ統一
3
分析実行
頻出語・共起・感情・トピックを多角的に分析
アクション化
インサイトを改善施策・ペルソナ・差別化に変換する

こんな悩みに効く
#

  • アンケートの自由回答が何千件もあるが、全部読む時間がない
  • SNSでの自社製品の評判を体系的に把握したい
  • カスタマーサポートの問い合わせ内容を分類して改善に活かしたい

基本の使い方
#

ステップ1: テキストデータを収集・前処理する

分析対象のテキストデータを集め、分析できる状態に整える

データソースの例:

  • アンケートの自由回答
  • 商品レビュー、口コミサイト
  • SNS投稿(Twitter/X、Instagram)
  • カスタマーサポートのチャットログ

前処理の手順:

  1. 不要文字の除去: HTMLタグ、URL、記号の削除
  2. 形態素解析: 文を単語に分割(日本語はMeCab、Janomeなどを使用)
  3. ストップワード除去: 「の」「は」「です」など分析に不要な語を除去
  4. 正規化: 表記ゆれの統一(「サーバー」と「サーバ」など)

ポイント: テキストマイニングの成否は前処理の品質で8割決まる

ステップ2: 頻出語・共起語を分析する

テキスト全体でどんな単語がよく使われているかを分析する。

  • 頻出語分析: 出現回数の多い単語をランキングする
  • 共起分析: 一緒に使われやすい単語のペアを発見(例: 「配送」と「遅い」が共起する)
  • ワードクラウド: 頻出語を視覚的に表示(報告用に便利)

ポイント: 頻出語だけでなく、**「増加している語」や「特定セグメントに偏る語」**にも注目する。

ステップ3: 感情分析・トピック分析を行う

テキストの**感情(ポジティブ/ネガティブ)話題(トピック)**を自動分類する。

  • 感情分析(センチメント分析): 各テキストをポジティブ/ニュートラル/ネガティブに分類
    • ツール: Google Cloud NLP、Azure Text Analytics、Pythonのライブラリなど
  • トピックモデリング: テキスト集合から潜在的なトピックを自動抽出
    • LDA(Latent Dirichlet Allocation)が代表的な手法

ポイント: 日本語の感情分析は英語より精度が出にくい。結果をサンプルチェックして精度を確認すること。

ステップ4: インサイトを抽出してアクションにつなげる

分析結果をビジネスのアクションに変換する。

  • 頻出するネガティブ要因 → 改善施策の優先順位づけ
  • 特定セグメントの声 → ペルソナの精緻化
  • 時系列の感情変化 → キャンペーンや変更の効果測定
  • 競合のレビュー分析 → 自社の差別化ポイントの発見

ポイント: 定量データ(数値)と定性データ(テキスト)を組み合わせることで、「何が起きているか」と「なぜ起きているか」の両方がわかる。

具体例
#

例1:飲食チェーンが口コミ分析でワースト店舗を改善する

状況: 全国50店舗の飲食チェーン。Googleマップの口コミが年間12,000件あるが、全部読めていない。一部店舗の評価が低いが原因が特定できない。

テキストマイニングの実行:

頻出ネガティブ共起語(上位5組):

共起語ペア出現回数割合
「待ち時間」×「長い」850件7.1%
「店員」×「態度」620件5.2%
「メニュー」×「少ない」410件3.4%
「価格」×「高い」380件3.2%
「駐車場」×「狭い」290件2.4%

店舗別の感情スコア:

  • 全体のネガティブ率: 25%
  • ワースト3店舗: 渋谷店(45%)、梅田店(40%)、横浜店(38%)
  • ベスト3店舗: 金沢店(10%)、鹿児島店(12%)、仙台店(13%)

アクション:

  1. 待ち時間対策: ピーク時のオペレーション改善(最も多い不満)
  2. ワースト3店舗への重点指導(接客研修の実施)
  3. 金沢店のベストプラクティスを全店に展開

ネガティブ率は25%→18%に改善。ワースト3店舗の口コミ評価は平均★3.2→★3.8。12,000件の口コミを「全部読まなくても」改善すべきポイントが明確になった。

例2:BtoB SaaS企業がサポートチケットを自動分類して対応を効率化する

状況: 法人向けプロジェクト管理ツールを提供するSaaS企業。月間2,500件のサポートチケットを15名のスタッフが処理。チケットの内容分類を手動で行っており、振り分けに平均12分/件かかっている。

テキストマイニングの設計:

  • データ: 過去1年分のサポートチケット(約30,000件)のタイトル+本文
  • 前処理: 製品固有の用語辞書を追加(機能名、エラーコードなど)
  • 分析: トピックモデリング(LDA)で潜在的なカテゴリを抽出

トピック分析の結果:

トピック割合キーワード
ログイン・認証22%パスワード, SSO, 二段階認証, ロック
データ連携18%API, インポート, CSV, 同期エラー
権限・設定15%管理者, ロール, 閲覧権限, 制限
請求・契約14%プラン変更, 請求書, 解約, 料金
機能リクエスト12%ほしい, 追加, 対応予定, いつ
バグ報告10%動かない, エラー, 表示されない
操作方法9%やり方, 方法, 手順, できない

アクション:

  1. 自動分類モデルを構築 → チケット振り分け時間を12分→2分に短縮
  2. ログイン・認証の問い合わせ(22%)はFAQとチャットボットで自動回答化
  3. 「機能リクエスト」をプロダクトチームに月次レポートで共有

では、この自動分類はどれだけの効果をもたらしたか。チケット処理のスループットは1.5倍(月2,500件→3,750件対応可能)。ログイン関連の有人対応が60%減少し、スタッフ2名分の工数を削減。年間で約900万円の人件費削減とCSAT**72%→81%**への改善を同時に達成した。

例3:地方の観光協会がSNS分析で隠れた観光資源を発見する

状況: 年間観光客数45万人の地方都市の観光協会。主要観光地への集客は頭打ちで、新たな魅力の発信が課題。SNSでの観光客の投稿を活用して隠れた魅力を発見したい。

テキストマイニングの設計:

  • データ: Instagram・X(Twitter)の地域関連ハッシュタグ付き投稿(過去2年分、約48,000件)
  • 前処理: 地元の地名・店名を辞書に追加、スパム投稿を除去
  • 分析: 頻出語+感情分析+時系列でのトレンド変化

発見:

話題出現頻度感情スコアトレンド
城跡(定番)8,200件+0.45横ばい
温泉街6,100件+0.52微増
地元パン屋2,800件+0.88急増(前年比3.2倍)
朝市1,900件+0.82急増(前年比2.5倍)
旧街道の石畳1,200件+0.71増加

インサイト: 公式ガイドブックに載っていない「地元パン屋」と「朝市」がSNSで急速に話題化。感情スコアも定番の城跡より圧倒的に高い。

アクション:

  1. 「地元パン屋めぐりマップ」を観光パンフレットに新設
  2. 朝市を公式Instagramで週3回発信
  3. 石畳の旧街道を新しい散策コースとしてWeb掲載

SNS経由の観光問い合わせは前年比42%増。年間観光客数は45万人→51万人に。地元住民が当たり前と思っていた資源が、外からの視点では大きな魅力だった――データがそれを証明した。

やりがちな失敗パターン
#

  1. 前処理を軽視する — ゴミが入ったテキストをそのまま分析すると、意味のない結果が出る。**形態素解析の辞書カスタマイズ(業界用語や固有名詞の追加)**は精度向上に直結する
  2. ワードクラウドで満足する — きれいなワードクラウドを作って「こんな単語が多いですね」で終わるパターン。「だからどうする」のアクションまで落とし込むのがゴール
  3. サンプルサイズを考慮しない — 100件の口コミと10,000件の口コミでは結果の信頼度が全く違う。分析対象のデータ量が十分かを確認し、少ない場合は過度な解釈を避ける
  4. 結果を鵜呑みにする — 感情分析やトピックモデリングは完璧ではない。特に日本語の皮肉や婉曲表現は誤判定されやすい。必ずサンプル50〜100件を目視チェックし、精度を確認してから意思決定に使う

まとめ
#

テキストマイニングは、大量のテキストデータからパターンやインサイトを自動抽出する分析手法。顧客の声、レビュー、SNS投稿などの定性データを定量的に分析できるようになる。前処理の品質が成否を左右するため、辞書カスタマイズと表記ゆれ統一に時間をかけること。まずは自社のアンケート自由回答やレビューデータに対して、頻出語分析から始めてみよう。