多重因子分析では、複数の部分テーブル(sub-tables)から、互いに直交する主成分スコアを求めます。基本的な手順は以下のとおりです。
• それぞれの部分テーブルに対する主成分分析を個別に行います。
• それぞれの部分テーブルの第1固有値から、重みを算出します。
• 部分テーブルを左右に連結し、まず、各列を平均0分散1に標準化します。
• 標準化した行列に対して、部分テーブルごとに重みを掛け合わせます。その重みを掛け合わされた行列に対して特異値分解を行います。これは、部分テーブルごとの重みを考慮した一般化特異値分解を標準化した行列に対して行うのと等価です。この計算を、「コンセンサス主成分分析」と言います。つまり、部分テーブルに対して重みを与えたものに主成分分析を適用します。
上記の手順によって、右特異ベクトル、左特異ベクトル、特異値という3つの行列が求められます。これらの行列から、コンセンサス主成分分析の主成分スコア、固有値、主成分負荷量が求められます。これらの3つの行列は、元のデータに含まれるさまざまな列を少数の次元にまで縮小したものになっています。最初の数次元を調べることにより、商品の類似度や相違性を判断することができます。
多重因子分析における行列Xの特異値分解は、以下のように定義することができます。
ここで、
各行列の定義は以下のとおりです。
Xは、部分テーブルから成るn × pの行列で、平均0分散1に標準化されています。官能検査のデータでは、n個の商品(製品、食品)と、複数の評価者から得られたp種類の評価に該当します。
Qは、右特異ベクトルから成るp × qの行列です。q個の主成分負荷量を計算するのに使用されます。
Dは、特異値から成るq × qの対角行列です。主成分分析と同様に、特異値の2乗は固有値であり、各主成分の重要度を表しています。
Pは、左特異ベクトルから成るn × qの行列です。q個の主成分スコアを求めるのに使用されます。
Mは、各データ行の重み(度数)を示すn × nの対角行列です。
Aは、ブロックの重みから成る、p × pの対角行列です。
多重因子分析の詳細については、Abdi et al.(2013)を参照してください。
JMPでは、慣性(分散)を計算する際にN - 1を使用しています。これらの計算は、データ行とブロックに対するスコアの計算に影響します。