潜在意味分析では、文書単語行列(DTM; Document-Term Matrix)を、指定された次元まで特異値分解(SVD; Singular Value Decomposition)します。この手法では、文書単語行列を特異値分解して、少数の次元まで縮小します。潜在意味分析は、文書単語行列に対する主成分分析(PCA; principal components analysis)です。
文書単語行列に対する特異値分解では、U、S、V‘の3つの行列を使って文書単語行列を近似します。これらの行列の関係は、次のとおりです。
DTM ≈ U * S * V‘
nDocをDTMの文書数(行数)、nTermをDTMの単語数(列数)、nVecを指定された特異値ベクトルの数とします。なお、nVecは、nDocとnTermのうちの小さい方の値以下になります。UはnDoc×nVecの行列で、各列が文書単語行列の左特異値ベクトルになっています。Sは、次元数がnVecの対角行列で、Sの対角成分が、文書単語行列の特異値となります。V‘は、nVec× nTermの行列です。SV‘の行(またはVSの列)は、右特異値ベクトルに特異値を掛けたものです。
右特異ベクトル(に特異値を掛けたもの)は、似たような意味やトピックをもつ単語間の関連を捉えます。たとえば、3つの単語が同じ文書でよく一緒に使用される場合は、SV‘において、その3つの単語に対応する数値がどれも大きくなります。一方、左特異ベクトルUSは、特異値分解で得られた右特異ベクトルに文書を射影したものです。
潜在意味分析では、間接的な関連も捉えることができます。たとえば、2つの単語が同じ文書で使用されていなくても、それぞれがまた別の同じ単語とよく一緒に使用されている場合、そのような間接的な関連を捉えることができます。なお、2つの文書に共通する単語がまったくなくても、それぞれの文書に含まれる単語が縮減された次元では近くに位置すれば、それらの文書も似たような座標に射影されます。
テキストデータを特異値分解すると、数値のベクトルに変換されますので、その変換された数値データに基づいて、クラスタリング・分類・回帰分析といった統計分析を行えるようになります。他のJMPプラットフォームの統計分析を行いたい場合には、保存に関するオプションを使って、特異値分解の結果を保存してください。
デフォルトでは、文書単語行列を中心化、尺度化して、nDoc-1で割ってから、特異値分解が実行されます。この分析は、文書単語行列の相関行列に対して主成分分析を実行することと同じです。
特異値分解の「設定」ウィンドウで、[中心化]または[中心化しない]を選択することもできます。
• [中心化]を選択すると、文書単語行列を中心化して、nDoc-1で割ってから、特異値分解が実行されます。この分析は、文書単語行列の共分散行列に対して主成分分析を実行することと同じです。
• [中心化しない]を選択すると、文書単語行列をnDocで割ってから、特異値分解が実行されます。この分析は、尺度化しない文書単語行列に対して主成分分析を実行することと同じです。
なお、文書単語行列の特異値分解で使われるアルゴリズムでは、中心化されている場合を含め、この行列が疎であることを活用しています。