differential PLSA
differential PLSAの概要
differential PLSAとは、テキストデータから頻度の大小に依存しない個性的なトピックを抽出する技術です(特許登録済:特許第7221527号)。differential PLSAはPLSAを応用して開発したトピック抽出の技術ですが、通常のPLSAでは出現頻度の多い要素で構成される典型的なトピックが抽出されがちであるのに対し、differential PLSAでは頻度の大小によらないトピックを抽出して、データ全体では埋もれがちな特徴の発見を支援します。
データ分析の理想と現実
この技術を開発するに至った背景として、トピックモデルの分析に限らず、ビジネス領域でデータ分析を実行すると、ビジネスの実務担当者からはよくこのような困ったコメントが届きます。例えば「この結果は経験的によく知ってるんだよな…」「わざわざ分析しなくても分かっていたよ…」「これまで見えてこなかった発見はないの?」「ビジネスはもっとインサイトなんだよ!」などです。要するに、データ分析の結果に目新しさがなく、期待外れと評価されることがあります。
ただこれはデータ分析においては自然なことで、そもそもデータをモデル化するということは、データに潜む傾向やルールを抽象化するということなので、元のデータに対して説明力の高いモデルを構築しようとすると、当然頻度の多い事象がよく反映され、結果として経験的によく知っていることが優先的に表現されるということになります。経験的にわかっていることでも、その仮説をきちんとデータで示せたり、定性的な仮説を定量的な知識として獲得できることには十分価値があるはずですが、ビジネスの現場ではそれだけでは満足されないという現実があります。この問題はPLSAでトピックを抽出するときにも該当し、PLSAではテキストデータ全体を表現する典型的なトピックが抽出されることが多くなります。differential PLSAはそんなPLSAに対してより個性的なトピックを抽出する新しい手法として開発したものです。
通常のPLSAとdifferential PLSAの考え方
通常のPLSAでは、テキストデータに含まれる単語を抽出し、その単語群の共起頻度を集計した共起行列をインプットにPLSAを適用することで、この共起行列において、関係性の強い行の要素と列の要素で構成されたいくつかのトピックを抽出します。
通常のPLSAでインプットとする共起行列は各要素の実際の共起頻度を集計したものですが、differential PLSAではこれに加えて、各要素の全体の頻度割合から期待頻度を集計した共起行列を作成します。そしてこの2つの共起行列の各共起ペアにおいて、期待頻度に対する実測頻度の比率の対数を取った共起行列をPLSAのインプットとしてトピックを抽出します。
通常のPLSAに対するdifferential PLSAのメリット
通常のPLSAでは、トピックの確率解は尤度最大化の計算過程において、頻度の高い要素に高い確率値が割り当てられる傾向にあり、結果として抽出されるトピックは典型的なものとなってしまいます。
differential PLSAでは、実測頻度を期待頻度で除した値の対数を取った共起行列をインプットとすることで、実測頻度が高い共起ペアでも、元々全体の頻度が高ければ期待頻度も高くなるため、その比率を取ることで値の大きさが制限されますし、逆に実測頻度が低い共起ペアでも、期待頻度がそれよりも十分低ければ比率の値は大きくなるため、頻度の低い要素にも高い確率が割り当てられる可能性があり、結果として個性的なトピックの抽出が期待できるというものです。
単純な比率ではなくその対数を取ることは、期待頻度が低すぎることで極端に高くなる値を制限し、必要以上にデフォルメされた歪んだトピックが抽出されることを防ぐ効果があります。なお、比率の対数を計算したときに値が負数となるものは0に置換する工夫を取ります。
通常のPLSAとdifferential PLSAの使い分け
differential PLSAは、より具体的で細かい要素で構成されるエッジの立ったトピックの抽出が期待できるので、特に新たな気づきとなるインサイトを獲得したい場面では効果的です。しかし、differential PLSAはインプットの共起行列を加工してしまっているので、結果は元のデータ全体を表現するものではなくなっていることに注意が必要です。結果が典型的ではあってもデータ全体を表現するような代表的なトピックを把握して全体を俯瞰したいときは通常のPLSAを適用したほうが良いため、分析の目的に応じた使い分けが重要です。
differential PLSAによる特許分析事例のダウンロード(4399KB)