偏最小二乘迴歸(PLSR)- 2 標準演算法(NIPALS)
http://www.cnblogs.com/pegasus/p/3396085.html
1 NIPALS 演算法
Step1:對原始資料X和Y進行中心化,得到X0和Y0。從Y0中選擇一列作為u1,一般選擇方差最大的那一列。
注:這是為了後面計算方便,如計算協方差時,對於標準化後的資料,其樣本協方差為cov(X,Y)=XTY/(n-1)。
Step2:迭代求解X與Y的變換權重(w1,c1)、因子(u1,t1),直到收斂
step 2.1:利用Y的資訊U1,求X的變換權重w1(w1實現有X0到因子t1的變換,t1=X0*w1)及因子t1。從而將X0的資訊用t1來近似表達。
Step2.2:利用X的資訊t1,求Y的變換權重c1(c1實現有Y0到因子u1的變換,u1=Y0*c1),並更新因子u1。從而將Y0的資訊用t1來近似表達。
Step2.5:判斷是否已找到合理解
若<閾值(如)則繼續下面步驟;否則,取,返回step2.1。
注:
1)以上過程的意義及其收斂性的直觀分析
a)公式2.1,實際上求解了由Y的因子u1到X的迴歸模型的係數
,公式2.2與2.3將X對映為第一個因子t1。b)同理,公式2.4,實際上求解了由X的因子t1到Y的迴歸模型的係數,公式2.5與2.6將X對映為第一個因子t1。
c)這裡交替建立X與Y直接回歸關係的方式,通常會很快收斂。
2)w1與c1的其他求法。[2,3]中已經證明以上求解過程收斂後找到的解w1與c1可以利用矩陣分析方法找到
a)特徵值分解方法(Eigen Value Decomposition):w1是的最大特徵值的單位特徵向量,c1是的最大特徵值的單位特徵向量,
b)SVD分解法(singular vector decomposition):w1和c1分別於對X0
TY0進行SVD分解獲得的第一對左奇異向量(left singular vector)和右奇異向量的單位向量。
Step3:求X與Y的殘差矩陣
step 3.1:求X的載荷(X-loading)p1(p1反映X0與因子t1的直接關係,)
注:前面求得X的變換權重w1是由X0到t1的關係,此處的p1是由t1到X0的關係。而且,由於後續的Wi(i>1)是根據Xi的殘差求得的,因此它無法反映T到X0的關係。所以,才要求出P以直接反映T到X0的關係)
p1求解公式的推導如下
a)前面已求出t1,現在希望用t1來表達X0,建立迴歸模型
b)模型不能表達的資訊即為X0的殘差矩陣X1。
c)上式的關鍵是求p1,其求解公式推導過程:對轉置得,兩邊右乘t1有,從而有
注:p1代表因子t1在X上的載荷(loadings),它反映了原始變數X與第一個因子向量t1間的關係。
step 3.2:求X0的殘差X1。此殘差表達了u1所不能反映的X0中的資訊。
step 3.3:求Y的載荷(Y-loading)q1(q1反映Y0與因子U1的關係,)
step 3.4:建立X因子t1與Y因子u1間的迴歸模型,用t1預測u1的資訊。
step 3.5:求Y0的殘差Y1。此殘差表達了X因子t1所不能預測的Y0中的資訊
Step4:利用X1與Y1,重複上面步驟,求解下一批PLS引數(因子、轉換權重、載荷、迴歸係數等)。
在這個演算法中,當一個因子計算出來後,進一步計算出X(及Y)的殘差。下一個因子是從當前殘差矩陣計算出來,因此PLS模型引數(因子scores,loadings, weights)與最初的X0無關,而是與殘差有關。
2 NIPALS-PLS 引數的理解
1)變換權向量w
在第二輪及以後的計算過程中,權向量wa將殘差Xa-1變換為因子得分ta,而不是對原始預處理後的資料X0直接進行變換,這阻礙了對於因子的有效解釋。實際上,權向量在PLS迴歸模型中的解釋中用處不大。
2)構建X0到T直接聯絡的權向量R
PLS演算法執行完成後,我們得到所有的因子t,那麼我們就可以直接建立原始資料X0與其之間的轉換權重矩陣R。其實R就是由X0到T的迴歸係數,其計算公式為
3 NIPALS-PLS 的預測過程
當完成PLS模型構建後,我們得到的PLS模型引數包括:
1)轉換權重:W(X-weights),C(Y-wights)
2)因子得分:T(X-factor scores),U(Y-factor scores)
3)載荷:P(X-loadings),Q(Y-loadings)
1)預處理:。注:預處理方法與建模時保持一致,這裡公式採用中心化處理方法。
3)計算預測值
上面是由T到Y預測值的迴歸方程,而不是由X0到Y預測值的迴歸方程。如果在PLS建模過程中獲得第2節中介紹的可將X0直接轉換為T的權重R,那麼就能獲得一個針對X0的更直接的迴歸公式。
參考文獻
[1] S. de Jong. SIMPLS: an alternative approach to partial least squares regression. Chemometrics and Intelligent Laboratory Systems, 18:251–263, 1993.
[2] R. Manne. Analysis of Two Partial-Least-Squares Algorithms for Multivariate Calibration. Chemometrics and Intelligent Laboratory Systems, 2:187–197, 1987.
[3] A. H¨oskuldsson. PLS Regression Methods. Journal of Chemometrics, 2:211–228,1988.