探索性因素分析
一份問卷有四十道題。它們究竟在測「一件事」,還是「三件事」?背後有幾個潛在的向度?哪幾題又對應哪一個向度?探索性因素分析(exploratory factor analysis, EFA)正是回答這類問題的工具。它的妙處在於:研究者無須事先告訴它結構,它便能從「一大堆觀測變項彼此的相關」之中,找出少數幾個足以解釋這些相關的潛在因素。一堆糾纏在一起的題目,經它一提煉,就可能濃縮為「外向性」「語文能力」這類可詮釋的向度。本章要把 EFA 的核心,也就是共同因素模型,建立起來,把它與一個經常被混淆的近親(主成分分析)區分清楚,並正面迎戰 EFA 最難的兩個判斷:究竟有幾個因素,以及該如何旋轉。開篇之前,先花一節回顧這門技術的思想史,因為 EFA 的許多爭議,其實從它誕生的那一刻起便已埋下。
從相關到因素:一段思想史
因素分析的故事,要從一個觀察說起。當一群人接受各式各樣的認知測驗,例如語文、數學、空間,會發現一件耐人尋味的事:這些分數幾乎全都正相關,某方面強的人,其他方面往往也不弱。Spearman (1904) 正是由這個「正流形」(positive manifold)出發,提出以單一個「一般智力」因素 g 來解釋,並輔以各測驗的特殊因素,這便是著名的雙因素理論。Spearman 甚至給出一個可檢驗的印記,即第二章提過的四差分:若一組測驗確由單一共同因素支配,則任取四個測驗的相關會滿足特定的乘積等式。這使「背後是否只有一個因素」由玄想化為可用資料檢驗的命題,堪稱因素分析的濫觴。
然而世界顯然不只一個因素。二十世紀三○年代,Thurstone 提出多因素理論,主張人的能力由多個共同因素(語文、數值、空間等)構成,並在《心智的向量》一書中,把因素分析改寫為一套線性代數:觀測變項是若干共同因素的線性組合,因素分析的任務便是由相關矩陣反解出這組負荷。在電子計算機問世之前,他以繁複的形心法(centroid method)手工逼近這一分解,其計算量之大,今日難以想像。Thurstone 更提出兩個至今仍居核心的概念:一是簡單結構(simple structure),主張應把因素旋轉到「每個變項只在少數因素上有高負荷」的位置以利詮釋;二是以著名的「盒子問題」示範,因素分析能由一批盒子的各種測量,回復出長、寬、高這三個實質的維度,藉此論證因素並非純粹的數學虛構。差不多同時,Hotelling (1933) 發展出主成分分析,雖在數學上與因素分析相鄰,出發點卻不同,這一區別將於後文詳論。
Thurstone 的簡單結構,其實是對一個更深難題的回應,這個難題便是旋轉不定性,也是本章稍後要正式推導的核心。早在因素分析數學化的初期,學者便已察覺一件令人不安的事:由相關矩陣反解出的因素負荷,在數學上並非唯一,任意一個正交旋轉都給出適配完全相同的另一組負荷。這意味著,因素分析本身無法指出哪一組負荷才是「對的」,於是萃取之後「該把座標軸轉到哪裡」便成了一個懸而未決的問題,史稱旋轉問題(rotation problem)。Thurstone 主張以簡單結構為準繩,把軸轉到最易詮釋的位置,這是一種訴諸可解釋性的實質判準;然而何謂「簡單」本身帶有主觀性,也因此招來「因素分析不夠客觀」的長年批評。到了一九五○年代,Kaiser 的 varimax 試圖以一個明確的數學準則,把簡單結構形式化為可由電腦自動求解的最佳化問題,旋轉才由手工的藝術,部分地轉為可程式化的程序。這段圍繞旋轉的爭論說明,因素分析的不確定性並非後人吹毛求疵,而是深植於模型結構、自其誕生便已存在。
其後的發展,大致沿兩條線推進。理論線上,Lawley 於一九四○年代把因素分析放進最大概似的框架,使它得以「自帶推論」,這條線後來由 Jöreskog 推向驗證性因素分析(第十五章)。計算線上,Kaiser 於一九五八年提出 varimax 正交旋轉,並適逢電子計算機普及,因素分析遂由少數專家的手藝,變成一般研究者按鍵可得的日常工具,其副作用則是誤用的氾濫。至於 Spearman 與 Thurstone 之間「一個 g 還是多個因素」的爭論,最終在階層模型中獲得調和:多個一階因素之上,可再抽取一個高階的一般因素,Cattell 的流體與晶體智力、以至 Carroll 的三階層理論,都是這一調和的體現。這段歷史留下的教訓是:因素分析既是一套統計技術,也承載著關於「心智結構為何」的實質理論主張,兩者從未真正分開。
因素分析的歷史,也留下了一則必須銘記的警示,即命名不等於證成。一個因素被抽取出來、被冠上「一般智力」或「內化問題」之名後,人們往往不自覺地把它當成真實存在的實體,這便是所謂的具體化謬誤(reification)。然而,一個能重現相關結構的數學因素,未必對應任何實質的心理實體;它究竟是真實的共同原因,還是僅為統計上的方便,須靠第二章的量化預設與第七章的效度證據來論斷,而非因素分析本身所能回答。這一自省,貫穿了因素分析百年的爭論,也預告了第三十五章網絡取向對「共同潛在原因」本體論的正面挑戰。
共同因素模型
把上述直覺寫成數學,就是共同因素模型(common factor model)。它主張:每一個觀測變項,都可拆解為「共同因素的加權和」加上「一個專屬於它自己的部分」,如下面的方塊所示。
設有 p 個觀測變項、m 個共同因素(m 遠小於 p)。第 i 個變項為
其中 \eta 是共同因素、\lambda 是因素負荷(loading)、\varepsilon_i 是該變項的獨特因素(unique factor,含測量誤差與變項特有的變異)。以矩陣寫為 \mathbf{x} = \boldsymbol{\Lambda}\boldsymbol{\eta} + \boldsymbol{\varepsilon}。假設共同因素與獨特因素不相關、各獨特因素之間也不相關(即 \boldsymbol{\Psi} = \mathrm{Cov}(\boldsymbol{\varepsilon}) 為對角矩陣),則觀測變項的隱含共變數矩陣為
其中 \boldsymbol{\Phi} = \mathrm{Cov}(\boldsymbol{\eta}) 是因素間的共變數矩陣、\boldsymbol{\Psi} 是獨特變異的對角矩陣。這條式子是全章的核心:因素分析的整個任務,就是找出一組 \boldsymbol{\Lambda}、\boldsymbol{\Phi}、\boldsymbol{\Psi},使模型隱含的 \boldsymbol{\Sigma} 盡量貼近樣本的相關(或共變數)矩陣。每個變項被共同因素解釋的變異比例,稱為共同性(communality,記為 h_i^2);剩下的 1 - h_i^2 便是獨特性(uniqueness)。
值得停下來體會一件事:這個共同因素模型,其實就是第三章所談的反映性測量模型,因素是「因」、指標是「果」,每個指標等於「負荷乘以構念,加上誤差」。因素分析,正是估計這個測量模型的方法。這也是何以「因素分析」與「潛在變項」在心理計量裡幾乎成為同義詞。
因素分析與主成分分析:一個常見的混淆
在應用心理學裡,最普遍的一個技術混淆,就是把主成分分析(principal component analysis, PCA)當成因素分析。許多論文寫著「做了因素分析」,實際上跑的卻是 PCA,這往往是舊版統計軟體預設選項所致。兩者表面相似,都給出一個「負荷矩陣」、都在「化約維度」,本質卻南轅北轍。
差別的關鍵,在於「有沒有誤差」。PCA 把主成分定義為觀測變項的加權和,成分是觀測變項「湊出來的」,方向反而與第三章的形成性測量較為相近;它的目標是以少數成分重現「全部」的變異,模型裡沒有獨特因素、沒有誤差項。因素分析則相反:因素是潛在的共同原因,只解釋變項之間「共享」的那部分變異(共同性),並明確地把「獨特/誤差」那部分分離出去。這也正是 Hotelling (1933) 的成分取向與 Thurstone 的因素取向自始便分道揚鑣之處。
這個差別有實質後果。因為 PCA 把「誤差變異」也算進去一起解釋,它估出的負荷通常會系統性地偏高,也無法把測量誤差與真實共變分開。因此,若目的是「測量一個潛在構念」,而這正是心理計量的核心目的,那麼共同因素模型才是正確的選擇,PCA 並不是一個測量模型。Fabrigar et al. (1999) 與 Preacher & MacCallum (2003) 對心理學界濫用 PCA、以及其他 EFA 陋習,提出了經典的批評與可操作的建議。一個簡單的判準是:若研究者相信題目背後有一個「造成」它們的潛在構念,就用因素分析;若只是想把一堆變項壓縮成幾個綜合指標、不假設任何潛在原因,PCA 才適用。
因素萃取:主軸因素與最大概似
確立了模型,下一步是「萃取」(extraction),也就是由樣本相關矩陣估出負荷 \boldsymbol{\Lambda} 與獨特變異 \boldsymbol{\Psi}。有兩種主流方法。
主軸因素法(principal axis factoring, PAF)是較傳統的做法。它的巧思在於:先把相關矩陣對角線上的「1」換成「共同性的估計」,因為因素只該解釋共同變異、不該解釋獨特變異,再對這個「化約後的相關矩陣」做特徵分解;由於共同性一開始未知,通常以迭代方式逐步逼近。與之相近的還有最小殘差法(MINRES)等,皆屬幾乎不依賴分布假設的穩健取徑。最大概似法(maximum likelihood, ML)則把因素分析放進第十二章的最大概似框架:假設資料多元常態,找出使概似最大的 \boldsymbol{\Lambda} 與 \boldsymbol{\Psi}。它最大的優點,是「自帶推論」,提供整體適配的卡方檢定、參數的標準誤,也讓研究者能以第十二章的資訊準則去比較不同因素數目的模型。代價是它要求常態假設,違反時檢定會失真。
實務上的取捨相當清楚:資料大致常態、又想要推論統計,用 ML;資料明顯不常態,PAF 較安全。而當題目是次序類別(如李克特量尺)時,兩者都不理想,應改以第十五章將詳談的多分相關為基礎進行萃取,否則會低估負荷、甚至憑空生出因人為的「難度因素」。無論哪一種萃取法,萃取出的初始負荷矩陣,都還不是最終、最易詮釋的版本,因為它面臨一個根本的不定性問題,這就帶到旋轉。
因素旋轉與旋轉不定性
因素分析有一個內建的、深刻的不確定性:同一個模型,有無限多組同樣好的負荷矩陣。這不是估計不夠準的問題,而是模型本身的數學性質,如下面的方塊所示。
回顧隱含共變數 \boldsymbol{\Sigma} = \boldsymbol{\Lambda}\boldsymbol{\Phi}\boldsymbol{\Lambda}' + \boldsymbol{\Psi}(先看正交情形,\boldsymbol{\Phi} = \mathbf{I},故 \boldsymbol{\Sigma} = \boldsymbol{\Lambda}\boldsymbol{\Lambda}' + \boldsymbol{\Psi})。取任意一個正交矩陣 \mathbf{T}(滿足 \mathbf{T}\mathbf{T}' = \mathbf{I}),令新的負荷為 \boldsymbol{\Lambda}^{*} = \boldsymbol{\Lambda}\mathbf{T}。則
也就是說,\boldsymbol{\Lambda}^{*} 隱含的共變數與 \boldsymbol{\Lambda} 完全相同。換言之,只要把負荷矩陣「旋轉」一下,模型的適配一絲一毫都不會變。因此,萃取出的初始負荷,只是無限多個「等價好」的解之一;研究者有自由、也有必要,從中挑一個「最易詮釋」的版本。這就是旋轉(rotation)。
既然可以自由旋轉,該往哪裡轉?Thurstone 的答案是簡單結構:把因素轉到「每個變項只在少數幾個因素上有高負荷、在其他因素上接近零」的位置。這樣的負荷矩陣最易詮釋,一看便知哪題屬於哪個因素。旋轉分兩大類。正交旋轉(orthogonal rotation,如 varimax、quartimax)強迫因素之間彼此不相關;斜交旋轉(oblique rotation,如 oblimin、promax、geomin)則允許因素相關。這裡有一個常被忽略卻重要的建議:心理學的構念彼此往往相關,例如焦慮與憂鬱、語文與推理,硬要求它們正交,反而扭曲了現實。因此除非有特別理由,斜交旋轉通常是更誠實、更合理的預設。斜交旋轉會給出兩個矩陣:型態矩陣(pattern matrix,各因素對變項的「偏」效果,用以詮釋)與結構矩陣(structure matrix,變項與因素的相關),詮釋時主要看型態矩陣。
到底有幾個因素?
這是 EFA 最難、也最主觀的一步。抽太多因素(over-extraction),會把雜訊當成結構、擠出一些湊數的小因素;抽太少(under-extraction),則會把不同的向度硬揉成一團。可惜沒有一個完美的判準,只有一組各有優劣的工具,如下面的概念方塊所示。
Kaiser 準則(特徵值 >1):最古老、也最常被誤用;它幾乎總是傾向「抽太多」,方法學界普遍不建議單獨使用 (Kaiser, 1960)。
陡坡圖(scree plot):把特徵值由大到小畫出,找「手肘」轉折點 (Cattell, 1966);直觀,但轉折點常不明確、判讀主觀。
平行分析(parallel analysis):古典方法中表現最穩健者 (Horn, 1965)。它以「同樣大小的隨機資料」所產生的特徵值為基準,只保留「觀測特徵值大於隨機特徵值」的因素,等於在問「這個因素解釋的,是否比純雜訊多」。
最小平均偏相關(MAP):以偏相關為基礎的另一種統計判準,常與平行分析並用 (Velicer, 1976)。
模型適配與資訊準則:以 ML 萃取時,可比較不同因素數目模型的卡方、AIC、BIC(第十二章)。
近年一個大規模的模擬比較 (Auerswald & Moshagen, 2019) 更新了這方面的建議:在多數實際情境下,平行分析與經驗 Kaiser 準則表現優異,而傳統 Kaiser 準則與陡坡圖則不可靠。另有一類「比較資料」取向,以已知因素結構的模擬資料為對照,逐步逼近最能重現實際相關型態的因素數目。這些方法各有適用邊界,因此實務上的黃金守則是:不要只靠單一判準,而應以平行分析等穩健方法為主,輔以理論的可解釋性,並比較「相鄰幾個因素數目」的解,看哪一個最穩定、最說得通。因素數目終究是統計證據與實質判斷的合議,而非某個門檻自動吐出的答案。
因素分數的不定性
配好因素模型後,研究者可能想為每個人算一個「因素分數」,例如某人的「外向性」有多高。但這裡潛藏一個深刻、卻常被忽略的問題:因素分數是不定的(factor score indeterminacy)。
共同因素模型 \mathbf{x} = \boldsymbol{\Lambda}\boldsymbol{\eta} + \boldsymbol{\varepsilon} 中,潛在因素 \boldsymbol{\eta} 並未被觀測變項 \mathbf{x} 唯一決定。直觀地說:我們有 p 個觀測變項,卻要反推 p 個獨特因素再加上 m 個共同因素,未知的「因素分」比方程式還多,因此存在無限多組因素分,全都與同一個模型、同一批資料完全相容。這不是估計誤差,而是模型的先天結構:即使樣本無限大、參數估得完美,因素分數仍不唯一。實務上,不同的計分法(如迴歸法、Bartlett 法)會給出不同的分數,彼此甚至可能相關不高。
這個不定性有實質含意:當研究者把因素分數當成「那個人真正的構念值」拿去做後續分析,例如作為另一個迴歸的預測變項,其實是在一個本質上不唯一的量上操作,可能引入偏誤。因應之道有幾種:若測量模型接近 tau 等值,簡單的加總分數(第五章)往往夠用、也更透明;若要嚴謹地把「構念間關係」與「測量」一併處理,最好的辦法是直接用結構方程模型(第十六章),讓潛在變項留在模型裡,根本不必先算出因素分數。換言之,因素分數不定性,正是 SEM 之所以更受青睞的理由之一。
分析實務
把前面的原理,收攏成一套可操作的工作流程。動手之前,先確認「這批資料到底適不適合做因素分析」。兩個常用的檢核是:KMO 取樣適切性量數(衡量變項間是否有足夠的共同變異,一般要求 0.6 以上),以及 Bartlett 球形檢定(檢定相關矩陣是否顯著偏離單位矩陣;若不顯著,表示變項間根本沒什麼相關,做因素分析並無意義)。樣本數方面,與其套用「每題幾人」的粗略規則,不如記住一個原則:當共同性高、每個因素有夠多高負荷的指標時,所需樣本較小,反之則需要相當大的樣本。
接著是決策流程:檢核適切性、選萃取法(常態用 ML,否則 PAF,次序類別用多分相關取徑)、決定因素數目(以平行分析為主、參酌理論)、斜交旋轉、判讀型態矩陣。判讀時要留意幾個訊號:交叉負荷(一題在多個因素上都高,暗示它不乾淨)、過低的共同性(這題與其他題共享太少,或許該刪),以及第十二章提過的 Heywood case(負的獨特變異,是模型有問題的警訊)。最後,列幾個心理學文獻裡最常見的 EFA 陋習作為反面提醒:把 PCA 當因素分析報告;只用 Kaiser 準則決定因素數;不假思索地用正交旋轉;把很小的負荷(如 0.2)也拿來詮釋;以及最根本的,把「探索」得到的結構,當成「驗證」過的結論來報告。就軟體而言,R 的 psych 套件與 lavaan 的 efa 功能都能勝任,但工具再好,也取代不了上述的判斷。
把上述要點串成一棵決策樹,並在每一個分叉點標出最常見的誤用,或許最能幫助研究者避開陷阱。第一個分叉是資料檢核:若 KMO 過低或 Bartlett 檢定不顯著,本就不該勉強進行因素分析,然而實務上常見的誤用,是跳過這一步、對根本不相關的變項硬抽因素,抽出的自然是無意義的雜訊結構。第二個分叉是萃取法的選擇:面對明顯偏態或次序的資料仍套用假設常態的最大概似,是這一步最典型的錯誤,其後果是負荷被低估、甚至憑空生出因作答難度而非構念所致的假因素。第三個分叉是因素數目:僅憑 Kaiser 準則便定案,幾乎必然抽出過多因素,正確的做法是以平行分析或 EGA 為主,輔以理論與相鄰解的比較。第四個分叉是旋轉:對彼此相關的心理構念強加正交旋轉,會扭曲因素間的真實關係,斜交旋轉通常才是誠實的預設。最後一個分叉是詮釋:把 0.2 這類微弱負荷也拿來命名因素、或把交叉負荷嚴重的題目強行歸類,都會製造出比資料所支持的更「乾淨」的假象。這棵決策樹真正的終點,其實不在旋轉後的負荷矩陣,而在一個誠實的認知,即這裡得到的一切都只是有待驗證的假設。
前沿與新近研究
因素分析看似古老,近十年卻是方法學的活躍前沿,這裡擇要介紹幾個新近的發展。
第一是網絡取向對「維度」的重新想像。探索性圖論分析(exploratory graph analysis, EGA)不從特徵值下手,而是把變項間的關聯畫成一張網絡圖,再以社群偵測演算法找出網絡中「抱團」的變項群,每一個社群便對應一個維度 (H. F. Golino & Epskamp, 2017)。就決定因素數目而言,EGA 提供了一個與平行分析並列的網絡替代方案,在若干模擬情境下的準確度可與之比肩,並附帶一張同時回答「有幾維」與「哪些題聚在一起」的直觀圖形 (H. Golino et al., 2020)。對本章的實務目的,可將 EGA 視為決定維度數目的另一件工具,與平行分析交叉參照即可;至於其網絡估計的技術細節、與傳統方法的系統性效能比較,以及拔靴穩定性與階層版本等延伸,則屬網絡心理計量的範疇,留待第三十五章詳述。
第二是機器學習進入因素數目的決定。Goretzko & Bühner (2020) 以大量模擬資料訓練隨機森林等演算法,由相關矩陣萃取上百個特徵,學習「該保留幾個因素」,其準確度在若干情境下超越了傳統判準。這代表因素保留由「單一統計量對照門檻」,走向「以資料驅動的預測模型綜合眾多線索」,也與其他領域的「次一特徵值充分性檢定」等新判準,共同構成一個更豐富的工具箱。
第三是探索與驗證之間的鬆綁。探索性結構方程模型(exploratory structural equation modeling, ESEM;(Asparouhov & Muthén, 2009))意在化解 EFA 與 CFA 之間的僵硬二分。傳統 CFA(第十五章)要求「每題只負荷在它該屬的因素、在其他因素上嚴格為零」,這個要求常常過嚴,導致適配不良;ESEM 則允許在一個驗證性的 SEM 架構裡,對某些因素採用探索性的旋轉,等於容許次要的交叉負荷存在。與之精神相近的還有正則化因素分析,以懲罰項自動把微小的負荷壓成零,直接估出稀疏而易詮釋的結構,可視為 lasso(第十一章)在測量模型上的應用。這些取向讓研究者在「完全探索」與「完全驗證」之間,有了一塊更貼近真實資料的中間地帶。
此外還有兩條較新的線索值得留意。其一是貝氏因素分析(第三十三章),它以弱資訊先驗把「近乎零」的交叉負荷輕輕壓向零,既保留了 ESEM 的彈性,又給出完整的後驗不確定性,是近似不變性與稀疏測量的自然工具。其二是把因素分析帶入時間維度,以密集追蹤資料(第三十章)對「個體內」的共變結構做因素分析,藉此檢驗一個在群體層次成立的因素結構,是否也在單一個體隨時間的波動中成立,這正呼應了第三章齊質性的關切。這些發展的共同方向,是把因素分析由一張靜態、跨個體的快照,推向更能反映不確定性與動態的模型。
與再現性的關切相呼應,近年也更強調對因素結構本身做交叉驗證,例如以一半樣本探索、另一半以 CFA 確認,或以拔靴法評估負荷與維度估計的穩定性。這類做法把「這個結構是否可複製」由事後的期望,變成分析流程內建的檢驗,與第十二章交叉驗證的精神一脈相承。
最後一個老問題,在再現性的時代更值得警惕,也就是本章一再強調的:一個 EFA 找出的結構,只是「假設」,它需要以獨立樣本、用 CFA 去確認,才能真正站得住腳。無論工具多麼新穎,把探索性結果當成驗證性結論來報告,都是不可取的。
小結
探索性因素分析,把一大堆彼此相關的指標,透過共同因素模型(\boldsymbol{\Sigma} = \boldsymbol{\Lambda}\boldsymbol{\Phi}\boldsymbol{\Lambda}' + \boldsymbol{\Psi})提煉為少數幾個潛在因素,而這個模型,正是第三章反映性測量模型的實作。本章的幾個關鍵訊息值得複誦:因素分析不是主成分分析,前者是測量模型、後者不是;EFA 有兩個最難的判斷,因素數目該靠平行分析、EGA 等工具而非 Kaiser 準則,旋轉該用斜交以逼近簡單結構;而因素分數的先天不定性,提醒我們謹慎,並指向 SEM 這條更嚴謹的路。
最重要的是記住 EFA 的定位:它是「探索」,它生成關於測量結構的假設。這些假設要成為可靠的知識,還必須經過「驗證」。下一章的驗證性因素分析,就是拿一個明確的因素結構假設,以第十二章的估計與適配工具,嚴格地放到資料面前受檢的方法。