線性回歸原理與spark實(shí)踐_第1頁(yè)
線性回歸原理與spark實(shí)踐_第2頁(yè)
線性回歸原理與spark實(shí)踐_第3頁(yè)
線性回歸原理與spark實(shí)踐_第4頁(yè)
線性回歸原理與spark實(shí)踐_第5頁(yè)
已閱讀5頁(yè),還剩6頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

線性回歸原理與spark實(shí)踐提綱線性回歸算法原理利用線性回歸做成績(jī)預(yù)測(cè)線性回歸是利用數(shù)理統(tǒng)計(jì)中回歸分析,來(lái)確定兩種或兩種以上變量間相互依賴的定量關(guān)系的一種統(tǒng)計(jì)分析方法,運(yùn)用十分廣泛。其表達(dá)形式為y=w'x+e,e為誤差服從均值為0的正態(tài)分布。線型回歸模型一般需滿足方差齊性,變量間相互獨(dú)立且服從正態(tài)分布,樣本間相互獨(dú)立,在大數(shù)據(jù)應(yīng)用中,由于特征體量巨大,往往不可避免出現(xiàn)與上述假設(shè)矛盾的情況,針對(duì)這種情況,數(shù)據(jù)標(biāo)準(zhǔn)化必不可少,同時(shí),我們?cè)O(shè)計(jì)了一個(gè)基于非參數(shù)檢驗(yàn)方式預(yù)先挑選特征。線性回歸算法簡(jiǎn)介線性回歸算法流程數(shù)據(jù)整理清洗劃分訓(xùn)練集遍歷各個(gè)變量的相關(guān)性,構(gòu)建F檢驗(yàn),挑選特征針對(duì)測(cè)試集數(shù)據(jù),特征代入回歸方程訓(xùn)練階段計(jì)算模型相關(guān)系數(shù),回歸殘差應(yīng)用評(píng)價(jià)階段按訓(xùn)練集特征標(biāo)準(zhǔn)化訓(xùn)練與檢驗(yàn)數(shù)據(jù)整理階段構(gòu)建并訓(xùn)練回歸模型提綱線性回歸算法原理利用線性回歸做成績(jī)預(yù)測(cè)線性回歸實(shí)驗(yàn)前提準(zhǔn)備系統(tǒng)準(zhǔn)備:centos6.8、Spark2.3.1、Pyrhon3.X。導(dǎo)入pandas,numpy,statsmodels,Selection_regression數(shù)據(jù)準(zhǔn)備:某校某專業(yè)某年級(jí)成績(jī),包含25門歷史學(xué)科,以及一門目標(biāo)學(xué)科,樣本量110個(gè)。建模目的:1、通過(guò)非參數(shù)檢驗(yàn)獲取顯著特征,2、訓(xùn)練回歸方程,預(yù)測(cè)目標(biāo)學(xué)科。importpandasaspd#讀取數(shù)據(jù)并打亂

df=pd.read_csv("本地文件/成績(jī)數(shù)據(jù)集.txt",index_col=0,header=0).sample(frac=1)

實(shí)例:?jiǎn)?dòng)python,讀取數(shù)據(jù)實(shí)例:源數(shù)據(jù)展示#展示數(shù)據(jù)

df.head()實(shí)例:源數(shù)據(jù)劃分,標(biāo)準(zhǔn)化#數(shù)據(jù)集劃分訓(xùn)練集80%,測(cè)試集20%PP=0.8

df_train=df.iloc[:int(np.ceil(len(df)*PP))]

df_test=df.iloc[int(np.ceil(len(df)*PP)):]

#數(shù)據(jù)標(biāo)準(zhǔn)化

avg_col=df_train.mean()

td_col=df_train.std()df_train_norm=(df_train-avg_col)/td_col

實(shí)例:特征選取,線性回歸#基于F檢驗(yàn)的特征選擇

#由于建模需要標(biāo)準(zhǔn)化字符串,故需重命名表頭importSelection_regressionasSrlist_columns_to_train=df_train_norm.columns

change_columns=['A'+str(zr+1)forzrinnp.arange(len(list_columns_to_train))]

df_train_norm.columns=change_columns

co=dict(zip(change_columns,list_columns_to_train))

select_list=Sr.forward_step(df_train_norm,response=change_columns[-1])#獲取選擇結(jié)果

#線性回歸模型訓(xùn)練importstatsmodels.formula.apiassmf

formula="{}~{}+1".format(change_columns[-1],'+'.join(select_list))

model=smf.ols(formula,df_train_norm).fit()實(shí)例:利用模型進(jìn)行預(yù)測(cè),輸出準(zhǔn)確率#利用訓(xùn)練集統(tǒng)計(jì)量標(biāo)準(zhǔn)化測(cè)試集df_test_norm=(df_test-avg_col)/td_col

df_test_norm.columns=change_columns#模型預(yù)測(cè),并還原百分制predict=model.predict(df_test_norm)

predict_df=predict*td_col[-1]+avg_col[-1]

#被選擇特征反編碼

select_list_old=[co[z]forzinselect_list]#結(jié)果對(duì)比,計(jì)算回歸殘差,以及結(jié)果相關(guān)系數(shù)

F=pd.DataFrame(df_test["目標(biāo)學(xué)科"]).join(pd.DataFrame(predict_df))

corr=F.corr()["目標(biāo)學(xué)科"][0]

stds=abs(F["目標(biāo)學(xué)科"]-F[0]).sum()

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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)論