テキストデータをクラスタリングするための手法
テキストデータに限らず、クラスタリングには2種類の手法があります。それぞれ見ていきましょう。
1.階層型
階層型とは、近い関係にあるクラスタ(集団)同士を併合し、階層的なクラスタ形成を繰り返す手法です。例として、以下をクラスタリングする場合を考えてみましょう。
上記を「赤い」という観点で分類するなら「リンゴ」と「サクランボ」は同じクラスタに属します。しかし、「果物」という観点ならば、すべて同じクラスタに含めることが可能です。このとき、4つの関係は下記のとおりになります。
→赤い →リンゴ
果物 →サクランボ
→赤くない →ミカン
→ブドウ
「赤い」と「赤くない」というクラスタは、さらに上の階層にある「果物」に属します。これが、「階層的なクラスタ形成」の意味です。
階層型では、データ同士の関係性を詳細に調べられます。しかし、データが多いほど計算が大変になるため、ビッグデータへの適用には不向きです。
2.非階層型
非階層型は、階層的にクラスタを形成せず、すべてのデータが単一のクラスタに属するようにする手法です。処理する情報量が少ないため、ビッグデータのクラスタリングに適しています。ただし、クラスタを分ける数の基準を分析者によって決めなければなりません。
一方、グループ分けの方法にはいくつかの手法が存在します。その中で代表的なのがK-Means法です。以下の手順でグループ分けします。
- 1.クラスタの数だけデータを選び、核とする
- 2.すべてのデータと核の距離(性質の近さ)を測定する
- 3.各データを、もっとも近い核のクラスタに分類する
- 4.各クラスタの重心点を新たな核とする
- 5.重心点が移動しなくなるまで2~4を繰り返す
先述の果物を色別に3つのクラスタに分けようとし、リンゴ・ブドウ・ミカンを核にしたとしましょう。すると、サクランボはリンゴともっとも色が似ているため、同じクラスタに分類されるという仕組みです。
テキストデータをクラスタリングする方法
これまで紹介したクラスタリングの手法を、テキストデータに適用するにはどうすればよいのでしょうか。2つの方法を紹介します。
テキストマイニングツールの導入が最適
テキストデータから有益な情報を取り出すことを、テキストマイニングと言います。そして、そのためのITツールがテキストマイニングツールです。
近年、テキストマイニングは注目されています。SNSの情報を分析し、顧客の生の声をビジネスに活かせるからです。
従来、SNSの情報は数値ではなく言語であるため、分析が困難でした。しかし、テキストマイニングの進歩により、言語であっても充分な分析が可能になりました。登場する言葉などから、文章のジャンルや書き手(顧客)の感情・意見を明らかにすることで、ジャンルや意見ごとにテキストをクラスタリングできます。
テキストのクラスタリングを行いたい場合は、テキストマイニングツールを導入すると良いでしょう。
データマイニングツールとの連携も検討すべき
データマイニングとは、データから有益な情報を取り出すことです。ここでいうデータには、購買データやアンケート結果などさまざまなものが含まれます。
このデータマイニングを行うデータマイニングツールと、テキストマイニングツールを連携するのも有効です。データマイニングツールで扱うデータは、基本的に数値(定量)データだからです。数値からは事実がわかりますが、顧客の好みや意見を把握するのは難しいでしょう。
一方、テキストマイニングの対象は文章(定性)データです。数値からは判断しにくい顧客の生の声を扱います。
つまり、テキストマイニングツールとデータマイニングツールが連携することで、定性・定量データの両面からデータを分析できます。互いに弱点を補完することで、隙の無い分析が実現するでしょう。
テキストクラスタリングを行い、ユーザーの声を分析しよう!
クラスタリングの手法は、以下の2種類に分けられます。
クラスタリングの手法をテキストデータに適用する方法は以下のとおりです。
- ■テキストマイニングツールの導入
- ■データマイニングツールとテキストマイニングツールの連携
以上を踏まえてテキストデータのクラスタリングを行い、顧客の声を分析・活用しましょう。