第9講多元線性回歸主成分回歸_第1頁(yè)
第9講多元線性回歸主成分回歸_第2頁(yè)
第9講多元線性回歸主成分回歸_第3頁(yè)
第9講多元線性回歸主成分回歸_第4頁(yè)
第9講多元線性回歸主成分回歸_第5頁(yè)
已閱讀5頁(yè),還剩30頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

多元線性回歸主成分及其回歸第9講多元線性回歸解決的問題系數(shù)矩陣Y=XA建模:求解回歸系數(shù)A,該過程稱為建模預(yù)報(bào):在A已知時(shí),對(duì)于新測(cè)Xnew,預(yù)報(bào)Ynew,稱為預(yù)報(bào)例子某保健品含片產(chǎn)品,說明書標(biāo)明:由營(yíng)養(yǎng)物質(zhì)A、B、C組成,產(chǎn)品標(biāo)注中寫出了每片中A、B、C物質(zhì)的含量。問,如何認(rèn)定?配置A、B、C的一組溶液,建立濃度與光吸收的關(guān)系。既建模求回歸系數(shù)將藥片配置成溶液,測(cè)吸光,利用上面的模型,預(yù)報(bào)濃度。建模公式推導(dǎo)Y=XAXtY=XtXA(XtX)-1XtY=AE:\學(xué)校教學(xué)\python\X.txtE:\學(xué)校教學(xué)\python\Y.txt問題求解的關(guān)鍵步驟是什么?方程數(shù)與未知數(shù)的關(guān)系設(shè)有規(guī)律上符合如下方程的一

組實(shí)驗(yàn)數(shù)據(jù)

y=ax+b通過實(shí)驗(yàn),不斷變更x,測(cè)得對(duì)應(yīng)的y求a,b的值,需要幾組這樣的數(shù)據(jù)?唯一解最小二乘解y1y2…ynx11x21…1xn1ab=矩陣形式XtX是2*2的矩陣方程數(shù)與未知數(shù)的關(guān)系設(shè)有規(guī)律上符合如下方程的一

組實(shí)驗(yàn)數(shù)據(jù)

y=1.2x1+0.9x2+3.3x3通過實(shí)驗(yàn),不斷變更x1、x2、x3,測(cè)得對(duì)應(yīng)的y需要幾組這樣的數(shù)據(jù)?唯一解最小二乘解方程數(shù)小于未知數(shù),一定無解嗎y=1.2x1+0.9x2+3.3x3當(dāng)X1,X2,X3存在線性相關(guān)時(shí),問題會(huì)怎樣?如果x個(gè)數(shù)很多,樣本打不到要求,怎么辦?現(xiàn)實(shí)中存在這樣的問題嗎不同濃度成分相同的溶液,在不同波長(zhǎng)x1、x2下的吸光值的比值,溶液濃度變化,比值不變。既X1和X2之間是線性相關(guān)的。怎樣知道變量之間有相關(guān)性?答案:通過線性變化主成分算法能解決這類問題死計(jì)算:檢查XtX有沒有逆,沒逆,則線性相關(guān)10主成份分析

PCAPrincipleComponentAnalysis能有效的提取測(cè)量數(shù)據(jù)的有用信息解決變量之間的相關(guān)性問題有效去除誤差,建立有效的模型11PCA分解算法原理采用非線性迭代偏最小二乘法(NonlinearIterativePartialLeastSquares,NIPALS)方法分解量測(cè)矩陣SS=TPt+E=Σtipi+ET得分矩陣特征值方程Ax=λxP載荷矩陣T和P都是列正交矩陣T的第i列ti的模,就是第i個(gè)特征值λi

E為殘差矩陣,對(duì)應(yīng)噪聲每個(gè)主成分就是T和P的對(duì)應(yīng)列

主成分示例12方差最大方向NIPALS算法每次只求一個(gè)主成分,目前最大散差方向儀器的信噪比儀器測(cè)量時(shí),信號(hào)強(qiáng)度要遠(yuǎn)遠(yuǎn)大于噪聲信號(hào)的數(shù)據(jù)的方差要遠(yuǎn)遠(yuǎn)大于噪聲的方差所以,PCA可以區(qū)別噪聲樣例x0.91.10.80.8722.21.92.1y1.21.00.921.11.811.91.72.5t11.4861.4851.2161.3932.6942.8982.5453.253t2-0.2080.075-0.081-0.1580.1420.2210.149-0.273原數(shù)據(jù)圖PCA后15通過特征值比值判斷有效變量數(shù)在λi/λi+i,應(yīng)該達(dá)到最大值根據(jù)i值,取T和P的前i列,即可扔掉噪聲16主成分回歸PCRPrincipleComponentRegression是多元線性回歸!原來Y=XA現(xiàn)在Y=TAT為X的主成分得分,即X經(jīng)PCA分解后的得分因?yàn)門只是X的線性組合,提取了線性相關(guān)的部分,且只取前i列,所以模型穩(wěn)定,去掉噪聲numpy中主成分分解—SVD分解實(shí)矩陣的SVD(SingularValueDecomposition,奇異值分解)分解:分解結(jié)果:A=USV其中S是對(duì)角矩陣numpy中主成分分解---SVD程序代碼:B=np.linalg.svd(A,full_matrices=False)full_matrices=False一定要寫,否則會(huì)按復(fù)數(shù)分解分解結(jié)果:U=B[0]lamda=B[1]V=B[2]Lamda是所有的特征值,可以計(jì)算相鄰比值,決定主成分,它不是一個(gè)矩陣實(shí)例—光譜矩陣的SVD分解數(shù)據(jù):E:\學(xué)校教學(xué)\教改項(xiàng)目教材\數(shù)據(jù)\S-093790.txt是一個(gè)16*6的矩陣看看能求解個(gè)特征值?16個(gè)?6個(gè)?96個(gè)?實(shí)例—光譜矩陣的SVD分解data=np.mafromtxt("E:\\學(xué)校教學(xué)\\教改項(xiàng)目教材\\數(shù)據(jù)\\S-093790.txt")data=data.dataB=np.linalg.svd(data,full_matrices=False)>>>B[1]array([5.48250094e+00,1.10440342e+00,3.27012276e-01,3.23153080e-03,2.19720845e-03,1.11546885e-03])實(shí)例—光譜矩陣的SVD分解>>>ld=B[1]>>>foriinrange(len(ld)-1): temp=ld[i]/ld[i+1] print(temp)4.964219451633.37725370576101.1942313561.470743841531.96976226926矩陣中有3個(gè)有效特征值根據(jù)有效特征值,設(shè)定PCA的得分和載荷實(shí)例—光譜矩陣的SVD分解根據(jù)主成分,規(guī)劃得分U和載荷矩陣PSVD:X=USVPCA:X=TPtT=US,P=Vti=len(lamda)

S=np.zeros((i,i))

S[:i,:i]=np.diag(lamda)

T=np.dot(U,S)V=V.TP=VT=T[:,:k]P=P[:,:k]可否編寫PCA類傳遞矩陣給類求得T、P矩陣,特征值比值列表根據(jù)特征值比值,規(guī)劃T和PPCA類importnumpyasnpclassPCA:def__init__(self,A):self.A=AdefSVDdecompose(self):B=np.linalg.svd(self.A,full_matrices=False)U=B[0]lamda=B[1]V=B[2]i=len(lamda)S=np.zeros((i,i))S[:i,:i]=np.diag(lamda)PCA類

self.T=np.dot(U,S)

V=V.Tself.P=Vcompare=[]foriinrange(len(lamda)-1):temp=lamda[i]/lamda[i+1]compare.append(temp)returnU,S,V,comparedefPCAdecompose(self,k):T=self.T[:,:k]P=self.P[:,:k]returnT,PPCA類調(diào)用應(yīng)該先調(diào)用decompose方法,根據(jù)返回的特征之比值,確定主成分再調(diào)用PCAdecompose方法,設(shè)定得分和載荷矩陣主成分回歸原來Y=XA現(xiàn)在Y=TATtY=TtTATtT-1TtY=A求得最終的回歸系數(shù):主成分X=TPt因?yàn)镻是正交矩陣,所以T=XPY=TA=XPA=XAnew主成分回歸數(shù)據(jù)E:\學(xué)校教學(xué)\python\S-093843.txtE:\學(xué)校教學(xué)\python\C-093843.txt求解方程C=SAS是6*16的矩陣所以StS的逆不存在S是光譜矩陣,光譜的不同波長(zhǎng)間線性相關(guān),所以可以用PCR程序代碼—建模過程S=np.mafromtxt(“E:\\學(xué)校教學(xué)\\python\\S-093843.txt")S=S.dataC=np.mafromtxt(“E:\\學(xué)校教學(xué)\\python\\C-093843.txt")C=C.dataB=np.linalg.svd(data,full_matrices=False)U=B[0]lamda=B[1]i=len(lamda)S=np.zeros((i,i))S[:i,:i]=np.diag(lamda)T=np.dot(U,S)V=B[2]程序代碼—建模過程P=V.Tforiinrange(len(lmada)-1): temp=lamda[i]/lamda[i+1] print(temp)k=int(input(“主成分?jǐn)?shù)為:”))T=T[:,:k]P=P[:,:k]TtT=np.dot(T.T,T)inv=np.linalg.inv(TtT)A=np.dot(inv,T.T)Alast=np.dot(P,A)程序代碼—預(yù)報(bào)對(duì)新測(cè)定Snew:C=np.dot(Snew,Alast)擴(kuò)展--能否用MLR、PCA類PCR類傳遞X,Y給PCRPCR內(nèi),以X調(diào)用PCA,確定主成分?jǐn)?shù)根據(jù)確定的主成分?jǐn)?shù),確定T、P,以T,Y建模,并結(jié)合P確定回歸系數(shù)建立預(yù)報(bào)方法。擴(kuò)展--能否用MLR、PCA類PCR類importnumpyasnpfromPCAimportPCAfromMLRimportMLRclassPCR:def__init__(self,X,Y):self.X=Xself.Y=YdefconfirmPCs(self):pca=PCA(self.X)U,S,V,compare=pca.SVDdecompose()returncompare擴(kuò)展----能否用MLR、PCA類defmodel(self,PCs):pca=PCA(self.X)U,S,V,compare=pca.SVDdecompose()T,P=pca.PCAdecompose(PCs)mlr=MLR(T,self.Y)mlr.modelling()self.A=np.dot(P,mlr.A)defpredict(self,Xnew):ans=np.dot(Xnew,self.A)returnans調(diào)用函數(shù)S=np.mafromtxt("E:\\學(xué)校教

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論