在主成分分析 (PCA) 或因子分析 (FA, 或譯:因素分析) 之前,通常會先進行 Bartlett 球形檢定 (test of Sphericity);判斷是否適合做因子分析,則通常用 KMO 檢驗。
Bartlett 球形檢定和 Bartlett 變異數均質性檢定(通常簡稱 Bartlett 檢定)不同,前者是 Bartlett 於 1950-51 年提出,用以檢定一個多變量常態群體是否其成分變數相互獨立;後者是他 1937 年提出,用以檢定多個單變量常態群體變異數是否相等。多個多變量群體共變異矩陣之均質性檢定,則可用 Box 的 M 檢定。這些檢定都有一個共同特性:它們都很依賴群體的常態性,或反過來說它們對群體的非常態性很敏慼。假設隨機向量 Y 服從多元常態分布 MVN(μ, V),Bartlett 球形檢定是 H0: V = diag(σ^2_1, ..., σ^2_m) 對 Ha: V = [σ_{ii'}] 的概度比檢定。自 Y 群體取得隨機樣本 Yj = (Y(1j), ..., Y(mj)), j = 1, ..., n。在 H0 之下,
(σ^2_i)^ = Σ_j (Y(ij) - Y(i.))^2/n, 其中 Y(i.) = (μ_i)^ = Σ_j Y(ij)/n
在 Ha 之下,(μ_i)^, (σ_{ii})^ = (σ^2_i)^ 均不變,多了 i ≠ij' 時
(σ_{ii')^ = Σ_j (Y(ij) - Y(i.))(Y(i'j) - Y(i'.))/n
用 W 代表樣本共變異矩陣,則 W = [S(ii')] 其中 S(ii') = n(σ(ii'))^/(n-1)。概度比統計量是
λ = [det(S)/(Π_i S(ii))]^{n/2}
其對數形式
-2 ㏑(λ) = - n ㏑(R) 其中 R = [r(ii')], r(ii') = S(ii')/√(S(ii)S(i'i'))
實際上 Bartlett 用 -(n−1−(2m+5)/6) ㏑(R) 與 χ^2(m(m-1)/2) 比較。自由度 m(m-1)/2 是因全模型 (Ha) 比縮減模型 (H0) 多了 m(m-1)/2 個參數 σ(ii') 或 ρ(ii'), i ≠ i'。之所以名為「球形」檢定而非「橢球」檢定,蓋因檢定只涉及相關矩陣,即可考慮 Y 之各成分變數其變異數相同,故各成分間零相關,則 Y 之分布等密度「曲面」為一圓球。
在 PCA,若 Y 不能拒絕其成分相互無關之虛無假說,也就是不能證實成分變數間有相關,那麼對 Y 做正交變換取主成分,成為多此一舉無聊之事;在 FA,若 Bartlett 檢定有效(群體是多變量常態)但不顯著,意謂無共同因子影響諸成分變數,因此想抽取共同因子也是無意義的。不過,Bartlett 球形檢定只適合資料來自多變量常態群體,但要進行 PCA 或 FA 的資料其實不一定要取自多變量常態群體,此時可考慮較穩健的方法。
對於 FA 模型,Y = μ + ΛF + ε,其中 F 具均值向量 0 與共變異矩陣 I,特殊因子向量 ε 同樣具均值向量 0,而其共變異矩陣則是對角線矩陣 Ψ,則
V = ΛΛ' + Ψ
這是正交因子模型;若允許因子斜交,則 F 之共變異矩陣為 Φ,其主對角線仍都是 1,而非對角線元素則代表因子間的相關。但「因子」本身可說是空間中的座標軸,或基底,而這座標軸或基底可以用相互垂直之標準單位軸,或規格正交基呈現,因此用前述 F ~ (0, I) 來表示並不失去其一般性。換言之,因子模型是假設存在一個由隨機向量 F 之分布構成的空間,因子分析的進行與推論,就以此為基礎而展開,其中之一是對模型做適合度檢定,也就是模型正確與否的檢定:
H0: V = ΛΛ' + Ψ against Ha: V is general (positive definite)
假設 Y 服從多變量常態分布,樣本 Yj = (Y(1j), ..., Y(mj)), j = 1, ..., n。在 H0 模型下得到 Λ 與 Ψ 的 MLE,與全模型之 V 的 MLE 比較,Bartlett (1954) 也有一個檢定,與球形檢定一樣來自概度比:
χ^2 = [n-1-(2m+5)/6-2p/3] ㏑(|ΛΛ'+Ψ|/|V|)
式中 n 是樣本數,m 是 Y 的成分(變數)數,p 是因子數,即因子空間維度數;Λ,, Ψ 及 V 是其 MLE, 其中 Λ 和 Ψ 是在 H0 之下的 MLE, V 是在全模型下的 MLE。依參數個數差,如果 F 是固定的而 Λ 是自由的,自由度應是
m(m+1)/2 - m(p+1)
但實際上 F 只是 p 維因子空間中任意指定的一組基底,所以上述卡方統計量的自由度是
ν = m(m+1)/2 - m(p+1) + p(p-1)/2 = [(m-p)^2-m-p]/2
事實上 Lawley (1940) 已提出前述卡方統計量中兩行列式對數值可以很好地用加權殘值平方和近似:
(㏑(|ΛΛ'+Ψ|/|V|))^ ≒ ΣΣ_{i<j} (S(ij) - σ(ij)^)^2/(Ψi^ Ψj^)
其中 σ(ij)^ = Σ_{k=1~p} λ(ik)^ λ(jk)^,是由因子模型得出的 V 中元素 σ(ij) 的估計。用矩陣形式表示,可以說:
㏑(|ΛΛ'+Ψ|/|V|) ≒ Ψ^{-1/2} (V - ΛΛ') Ψ^{-1/2
如果 p = 0,也就是 Y 的共變異矩陣是對角線矩陣,此處的模型適合度檢定統計量及其自由度,都與前面球形檢定相同。換句話說,球形檢定可以看成是因子模型正確性檢定的一個特例。
「KMO 檢驗」並不是在做統計假說檢定,而是計算出一個指標,代表 FA 模型是否適合,其指標是
KMO = ΣΣ_{i<j} r^2(ij)/(ΣΣ_{i<j} r^2(ij) + ΣΣ_{i<j} p^2(ij))
其中 r(ij) 是成分變數 Yi 與 Yj 的簡單相關,而 p(ij) 是調整 Yi, Yj 以外變數對此兩變數之線形影響後的偏相關係數。式中 i < j 也有寫 i≠j 的,由於對稱性,加總範圍改成後者只是把分子分母都變成兩倍,結果一樣。有一相關指標,
MSA(i) = Σ_{j: i≠j} r^2(ij)/(Σ_{j: i≠j} r^2(ij) + Σ_{j: i≠j} p^2(ij))
其中 i 對於 MSA(i) 而言當然是固定的,變動的只有 j,因此加總的範圍是所有不等於 i 的 j。
在 KMO 及 MSA(I) 中, r^2(ij) 表示 Yi 或 Yj 以對方為(線形)解釋項能解釋自身變異數的比例;p^2(ij) 則是兩變數各自以其他變數為線形迴歸式(擬線性關係式)調整後的殘值,相互能解釋的殘餘變異數的比例。所以,筆者對 KMO 及 MSA 指標一直無法理解:其分子分母各自何意?例如,若以 R^2(i.z) 表示用 Yi, Yj 以外的所有變數能解釋的 Yi 變異數的比例,即複判則
p^2(ij)(1-R^2(i.z))/r^2(ij)
是在有 z (代表 Yi, Yj 以外其他變數)Yj 能多解釋 Var(Yi) 的比例與沒有 z 時 Yj 能解釋的比例相對的比值;但 p^2(ij) 與 r^2(ij) 等於在兩個世界看 Yi 與 Yj 的關係,計算 p^2(ij) 與 r^2(ij) 之比值看起來就怪怪的,更別說把兩者相加。單一配對 (i,j) 如此,固定 i 對 j 加總,或對所有 i<j 配對加總,仍然無法解釋其所代表的意義。
以 MSA 來說,此指標是 Measure of Sampling Adequacy 的縮寫,它是什麼意思?且不管 r^2(ij) 與 p^2(ij) 相加或求比有無意義,單看 MSA(i) 的定義式,
MSA(i) = R/(R+P), R = Σ_{j: i≠j} r^2(ij), P = Σ_{j: i≠j} p^2(ij)
依其定義,MSA(i) 高意味著 P 相對於 R 是小的;反過來說,MSA(i) 低就是 P 相對於 R 佔有顯著的份量。但是,如前面說的,p(ij) 是用 Yi, Yj 以外變數調整後殘值的相關,其平方顯示的變異數被另一變數解釋比例,如 Yi 的殘值變異數被 Yj 的殘值解釋比例,而不像 r^2(ij) 表示 Yi 的變異數被 Yj 解釋的比例,p^2(ij) 高表示 Yj 的殘值與 Yi 的殘值受共同因素的作用,這作用的大小也許對 Yi 殘值而言是重要的,但對 Yi 本身卻不夠重要,假如這樣的 Yj 不少,P 可能就佔有重要地位,而‵ MSA(i) 相對地較低,但這樣就表示 Y(i) 不適當嗎?另一方面,P 很小以致 MSA(i) 很高,表示多數 Yj 和 Yi 多有相對高的簡單相關,但 Yi 本身以外的 Yj 似乎相重疊以致被其他變數解釋後 Yj 對 Yi 已幾乎沒有用,這固然表示「共同因子」的作用,但是否就意謂 Yi 是在這因子模型中是一個不可或缺的變數?
假設一個例子,m = 3,則
p^2(12) = (r(12) - r(13)r(23))^2/[(1-r^2(13))(1-r^2(23))]
p^2(13) = (r(13) - r(12)r(23))^2/[(1-r^2(12))(1-r^2(23))]
對 MSA(1) 而言,r(12), r(13), r(23) 的正負、大小都會對 p(12), p(13) 及其平方值有複雜影響。為了簡化,我們假設 r(ij) 都是正值,而且 r(ij) > r(ik)r(kj)。這假設只是一種特別的情況,讓我們的觀察特別簡化。以 r(12) 為例,在這限制下,例如 r(12) 提高,則 p(12) 也隨之提高,但對 p(13) 的影響就複雜些,因為分子分母同時減少。而 r(13) 提高的效果,類似前一情形,此時 p(13) 隨著提高,而對 p(12) 的作用較不明顯。另外,r(23) 提高,則對 p(12) 及 p(13) 的分子分母都產生降低的作用。這些影響的幅度,也與其他 r(ij) 的數值大小有關。當 r(ij) 有負值時,其影響又有不同,例如若只有 r(23) < 0, 則 r(12) 的提高不僅對 p(12) 有提高的效果,對 p(13) 亦然,而 r(13) 的增加也是如此。不過,r(23) < 0 則 r(12) 和 r(13) 可能一正一負,那麼,r(ij) 對 p(1j) 的作用又複雜了。所以在這個例子,MSA(1) 也許不可能太高,即使 r(12), r(13) 都很高,那麼,這表示 Y1 不應納入這個因子模型嗎?這樣的現象不只對 MSA(1),,而是所有 MSA(i) 都成立,而 KMO 只是諸 MSA(i) 的一種平均值。
可能上述例子不能說明為何 KMO 和 MSA(i) 可以表示資料適合 FA 與否以及某個變數 Yi 是否應從因子模型中移除,因為在前述例子,三個變數太一般了,當然情況也會太複雜而難以說明。再者,除非只有一個共同因子,否則三個變數太少了。我們以一個單一共同因子的模型為例,假設
Y_i = λ_i F + ε_i, F~(0, 1), ε~(0, ψ_i), i = 1, ..., m
其中 p_i 都不為 0。若 m ≧ 3,則(在群體模型)任一變數 Y_i被另一變數 Y_k 解釋後只剩特殊因子 ε_i。但在因子模型中我們假設特殊因子之間是相互獨立的,至少是相互零相關的,所以任兩變數間都有非零相關,但同時任兩變數間的偏相關是 0,也就是說所有的 MSA(i) 都是 1,也因此 KMO = 1。其實這種現象不只單一共同因子,以兩個共同因子為例:
Y_i = λ(i1) F_1 + λ(i2) F_2 + ε_i, i = 1, ..., m
同樣假設 F = [F_1 F_2]' 平均值向量 0,共變異矩陣 I,而特殊因子向量均值 0,共變異矩陣為對角線矩陣。如果 m ≧ 4, 並且任意 Y_i, Y_j 之外的變數其因子負荷量 λ(hk) 構成的矩陣秩 (rank) 都是 2,那麼所有 Y_i 與 Y_j, i ≠ j, 其偏相關係數是 0,於是 MSA(i) 都是 1 而 KMO 也是 1。
以上從因子模型說明了:即使把 r(ij) 與 p(ij) 硬湊在一起似乎不具實際意義,或說筆者學淺看不出其意義,但 MSA(i) 及 KMO 指標在因子模型成立時確實理想上應得值 1,其所以得值偏低,就 MSA(i) 來說,若 Y_i 不受 Y_j 以外變數的共同因子的影響,或至少有那些共同因子以外,和 Y_j 擁有相同的因素,那麼除了 Y_j 以外,Y_i 與其他變數就會顯得格格不入;若某個 Y_j 也是如此,那就是 Y_i, Y_j 這一對變數與其他 m-2 變數構成兩個不相干的模型。如果 Y_i 與 Y_j 偏相關大而與其他 Y_k 簡單相關小,那表示 Y_i 與 Y_j 有一共同因子是其他 Y_k 所沒有的,而 Y_i 本身又不包含(即受其影響)其他變數所共有的共同因子,而這因子對整體(含其他變數)而言是不重要的,所以把 Y_i 除去無妨。從這點來看,比較 r(ij) 與 p(ij) 是有意義的;而 MSA(i) 與 KMO 以綜合指標評判,將 r(ij) 及 p(ij) 先平方後再加總,形成
R = Σ r^2(ij), P = Σ p^2(ij)
而對非負值無上限雙指標 P 和 R 的比較,用 R/(R+P) 化成 0-1 的相對指標,倒也是合理的了。
最近,U. Lorenzo-Seva and P. J. Ferrando (2021) 發表的論文 "MSA: The Forgotten Index for Identifying Inappropriate Items Before Computing Exploratory Item Factor Analysis" 說明了 MSA 為什麼是 " sampling adequacy” 的指標:
因子分析(模型)中,研究中的變數是被視為代表因子的變數群體中抽出的樣本,如果代表一個因子的變數樣本夠多(不要和觀測值樣本混淆了),變數間的共變異矩陣的反矩陣將接近對角線矩陣。
上面那段話的意思是:假設 Y = Λ F + ε,令 V = Cov(Y),則當 F 不變而 Y 的維度(即變數 Yi 個數)無限增多時,V^{-1} 的非對角線元素趨近於 0。
由於令
D = (diag(V^{-1}))^{-1} = S^2
其中 diag 表示取對角線元素構成對角線矩陣,S 是 D 的唯一正平方根(因為 D 是正確定矩陣之對角線元素構成)。則 P = [ p(ij) ] = 2 I - S V^{-1} S 是 Y 的偏相關矩陣,當 V^{-1} 接近對角線矩陣,則 S V^{-1} S 因此 P 也是,也就是說所有偏相關會接近 0。因此如果變數夠多並且都在同一因子模型架構之下,KMO 應會相當高;如果 Yi 內含的因子也是許多其他變數所具有的,那麼在 p(ij) 都接近 0 的情況,MSA(i) 也將很高。
為什麼說在因子模型成立之下,如果因子不變,每一因子代表的變數無限增多,則變數的共變異矩陣 V 其反矩陣趨向於對角線矩陣?以下我們先從單一共同因子模型談起。在確證型因子分析 (confirmatory factor analysis) 其實就是假設每一變數都只涉及(或:代表)單一共同因子:
Y = Λ F + ε, F~(0, 1), ε~ (0, Ψ)
基於「變數是變數群體的樣本」的想法,我們先假設一個似乎不實際的模型
[Model 1] Y = λJ F + ε, F~(0, 1), ε~(0, ψ I)
其中 J 是元素皆為 1 的行向量。則 Y 之共變異矩陣 V = a^2 J J' + ψ I,而 V 的反矩陣是
V^{-1} = - {λ^2/[ψ(m λ^2 + ψ)]} J J' + (1/ψ) I
當 m → ∞ 時,非對角線元素值為 -{λ^2/[ψ(m λ^2 + ψ)]} → 0。不過,畢竟這是不符實際的模型,比較符合實際的單一共同因素模型,各變數與共同因子 F 的關係不是常數,因此考慮:
[ Model 2 ] Y = λ F + ε, F~(0, 1), ε~(0, ψ I)
則 Cov(Y) = V = λλ' + ψ I,而其反矩陣為
V^{-1} = - {1/[ψ (λ' λ + ψ)]} λ λ' + (1/ψ) I
因為 F 是固定的因子,只是代表變數 Yi 增多,而諸變數的因子負荷量 λ_i 並不會因變數增多就消失,所以 λ' λ → ∞,而 V^{-1} 的非對角線元素隨著 m → ∞ 而趨近於 0。不過,實際適用的單一共同因子模型應是
[ Model 3 ] Y = λ F + ε, F~(0, 1), ε~(0, Ψ)
則 V = λλ' + Ψ。為計算 V^{-1},假設 Ψ = QQ' 而後將 V 表示成
V = Q (Q^{-1} λ λ' Q'^{-1} + I) Q'
即可容易得出:
V^{-1} = - {1/( λ' Ψ^{-1} λ + 1 ) ] Ψ^{-1} λ λ' Ψ^{-1} + Ψ^{-1}
再一次由於 λ' Ψ^{-1} λ → ∞,因此 V^{-1} 的對角線外元素隨著 m 增大而逐漸消失。
在探索型因素分析 (exploratory factor analysis) 理想上也希望找到的共同因子分別對應到不同群的變數,斜交轉軸法也就是因為正交轉軸達不到這種理想的情況被提出。如果有一組正交因子可以將所有變數分別歸類到不同因子,則分屬不同因子的變數群之間本來就不存在相關或僅微小相關,也就是說 V 本身等於或接近區塊對角線形,則 V^{-1} 也是區塊對角線或接近,因此把各群變數(及其共變異矩陣)和其代表的因子看成前述單一共同因子模型,則 V^{-1} 本來各對角線區塊,在變數夠多時自接近對角線矩陣,所以整個 V^{-1} 接近對角線矩陣。但一般多共同因子模型呢?仍先從 Cov(ε) = ψ I 開始:
[ Model 4 ] Y = Λ F + ε, F~(0, 1), ε~(0, ψ I)
此模型之 V = ΛΛ' + ψ I,其反矩陣
V^{-1} = -(1/ψ) Λ ( Λ'Λ + ψ I )^{-1} Λ' + (1/ψ) I
除非很特殊的情況使 Λ'Λ 接近奇異矩陣,正常情形那是各元素值很大,行列式值更大的方陣,結果是 ( Λ'Λ + ψ I )^{-1} 趨於 0 矩陣,因而 V^{-1} → (1/ψ) I。我們再看標準的正交因子模型:
[ Model 5 ] Y = Λ F + ε, F~(0, 1), ε~(0, Ψ)
得 V = Λ Λ' + Ψ,其反矩陣
V^{-1} = - Ψ^{-1} Λ (Λ' Ψ^{-1} Λ + I)^{-1} Λ' Ψ^{-1} + Ψ^{-1}
斜交因子模型
[ Model 6 ] Y = Λ F + ε, F~(0, Φ), ε~(0, Ψ)
得 V = Λ Φ Λ' + Ψ,
V^{-1} = - Ψ^{-1} Λ (Λ' Ψ^{-1} Λ + Φ^{-1})^{-1} Λ' Ψ^{-1} + Ψ^{-1}
同樣得到 V^{-1} ≒ Ψ^{-1},當 m 夠大時。