版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
綜合案例2第十四章:實(shí)戰(zhàn)案例(二)1.簡(jiǎn)介2.
計(jì)算回歸準(zhǔn)確率3.
保存數(shù)據(jù)模型4.創(chuàng)建嶺回歸器準(zhǔn)備工作
線性回歸的目標(biāo)是提取輸入變量與輸出變量的關(guān)聯(lián)線性模型,這就要求實(shí)際輸出與線性方程預(yù)測(cè)的輸出的殘差平方和(sumofsquaresofdifferences)最小化。這種方法被稱為普通最小二乘法(OrdinaryLeastSquares,OLS)。詳細(xì)步驟
步驟一:創(chuàng)建一個(gè)Python文件regressor.pyimportsysimportnumpyasnpfilename=sys.argv[1]X=[]y=[]withopen(filename,'r')asf:forlineinf.readlines():xt,yt=[float(i)foriinline.split(',')]X.append(xt)y.append(yt)詳細(xì)步驟
步驟二:把數(shù)據(jù)分成訓(xùn)練數(shù)據(jù)集與測(cè)試數(shù)據(jù)集:num_training=int(0.8*len(X))num_test=len(X)-num_training#訓(xùn)練數(shù)據(jù)X_train=np.array(X[:num_training]).reshape((num_training,1))y_train=np.array(y[:num_training])#測(cè)試數(shù)據(jù)X_test=np.array(X[num_training:]).reshape((num_test,1))y_test=np.array(y[num_training:])詳細(xì)步驟
步驟三:創(chuàng)建一個(gè)回歸器對(duì)象fromsklearnimportlinear_model#創(chuàng)建線性回歸對(duì)象linear_regressor=linear_model.LinearRegression()#用訓(xùn)練數(shù)據(jù)集訓(xùn)練模型linear_regressor.fit(X_train,y_train)詳細(xì)步驟
步驟四:擬合importmatplotlib.pyplotasplty_train_pred=linear_regressor.predict(X_train)plt.figure()plt.scatter(X_train,y_train,color='green')plt.plot(X_train,y_train_pred,color='black',linewidth=4)plt.title('Trainingdata')plt.show()詳細(xì)步驟
步驟五:在命令行工具中執(zhí)行$pythonregressor.pydata_singlevar.txt詳細(xì)步驟
步驟六:在前面的代碼中,我們用訓(xùn)練的模型預(yù)測(cè)了訓(xùn)練數(shù)據(jù)的輸出結(jié)果,但這并不能說(shuō)明模型對(duì)未知的數(shù)據(jù)也適用,因?yàn)槲覀冎皇窃谟?xùn)練數(shù)據(jù)上運(yùn)行模型。這只能體現(xiàn)模型對(duì)訓(xùn)練數(shù)據(jù)的擬合效果。從步驟五中可以看到,模型訓(xùn)練的效果很好。詳細(xì)步驟
步驟七:用模型對(duì)測(cè)試數(shù)據(jù)集進(jìn)行預(yù)測(cè)y_test_pred=linear_regressor.predict(X_test)plt.scatter(X_test,y_test,color='green')plt.plot(X_test,y_test_pred,color='black',linewidth=4)plt.title('Testdata')plt.show()第十四章:1.簡(jiǎn)介2.
計(jì)算回歸準(zhǔn)確率3.
保存數(shù)據(jù)模型4.創(chuàng)建嶺回歸器準(zhǔn)備工作平均絕對(duì)誤差(meanabsoluteerror):這是給定數(shù)據(jù)集的所有數(shù)據(jù)點(diǎn)的絕對(duì)誤差平均值。均方誤差(meansquarederror):這是給定數(shù)據(jù)集的所有數(shù)據(jù)點(diǎn)的誤差的平方的平均值。中位數(shù)絕對(duì)誤差(medianabsoluteerror):這是給定數(shù)據(jù)集的所有數(shù)據(jù)點(diǎn)的誤差的中位數(shù)。解釋方差分(explainedvariancescore):這個(gè)分?jǐn)?shù)用于衡量我們的模型對(duì)數(shù)據(jù)集波動(dòng)的解釋能力。詳細(xì)步驟importsklearn.metricsassmprint"Meanabsoluteerror=",round(sm.mean_absolute_error(y_test,y_test_pred),2)print"Meansquarederror=",round(sm.mean_squared_error(y_test,y_test_pred),2)print"Medianabsoluteerror=",round(sm.median_absolute_error(y_test,y_test_pred)2)print"Explainedvariancescore=",round(sm.explained_variance_score(y_test,y_test_pred),2)print"R2score=",round(sm.r2_score(y_test,y_test_pred),2)
每個(gè)指標(biāo)都描述得面面俱到是非常乏味的,因此只選擇一兩個(gè)指標(biāo)來(lái)評(píng)估我們的模型。通常的做法是盡量保證均方誤差最低,而且解釋方差分最高。第十四章:1.簡(jiǎn)介2.
計(jì)算回歸準(zhǔn)確性3.
保存模型數(shù)據(jù)4.創(chuàng)建嶺回歸器詳細(xì)步驟
步驟一:在Python文件regressor.py中加入以下代碼:importcPickleaspickleoutput_model_file='saved_model.pkl'withopen(output_model_file,'w')asf:pickle.dump(linear_regressor,f)詳細(xì)步驟
步驟二:回歸模型會(huì)保存在saved_model.pkl文件中withopen(output_model_file,'r')asf:model_linregr=pickle.load(f)y_test_pred_new=model_linregr.predict(X_test)print"\nNewmeanabsoluteerror=",round(sm.mean_absolute_error(y_test,y_test_pred_new),2)
步驟三:把回歸模型從Pickle文件加載到model_linregr變量中第十四章:1.簡(jiǎn)介2.
計(jì)算回歸準(zhǔn)確率3.
保存模型數(shù)據(jù)4.創(chuàng)建嶺回歸器準(zhǔn)備工作
普通最小二乘法在建模時(shí)會(huì)考慮每個(gè)數(shù)據(jù)點(diǎn)的影響,因此,最終模型就會(huì)像左圖顯示的直線那樣。顯然,我們發(fā)現(xiàn)這個(gè)模型不是最優(yōu)的。為了避免這個(gè)問(wèn)題,我們引入正則化項(xiàng)的系數(shù)作為閾值來(lái)消除異常值的影響。這個(gè)方法被稱為嶺回歸。詳細(xì)步驟
步驟一:
你可以從data_multi_variable.txt文件中加載數(shù)據(jù)。這個(gè)文件的每一行都包含多個(gè)數(shù)值。除了最后一個(gè)數(shù)值外,前面的所有數(shù)值構(gòu)成輸入特征向量。步驟二:把下面的代碼加入regressor.py文件中,用一些參數(shù)初始化嶺回歸器:ridge_regressor=linear_model.Ridge(alpha=0.01,fit_intercept=True,max_iter=10000)詳細(xì)步驟
步驟三:alpha參數(shù)控制回歸器的復(fù)雜程度。當(dāng)alpha趨于0時(shí),嶺回歸器就是用普通最小二乘法的線性回歸器。因此,如果你希望模型對(duì)異常值不那么敏感,就需要設(shè)置一個(gè)較大的alpha值。這里把a(bǔ)lpha值設(shè)置為0.01。詳細(xì)步驟
步驟四:訓(xùn)練嶺回歸器ridge_regressor.fit(X_train,y_train)y_test_pred_ridge=ridge_regressor.predict(X_test)print"Meanabsoluteerror=",round(sm.mean_absolute_error(y_test,y_test_pred_ridge),2)print"Meansquarederror=",round(sm.mean_squared_error(y_test,y_test_pred_ridge),2)print"Medianabsoluteerror=",round(sm.median_absolute_error(
溫馨提示
- 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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年知識(shí)產(chǎn)權(quán)咨詢服務(wù)合同
- 建筑物清潔服務(wù)項(xiàng)目管理中的質(zhì)量控制措施考核試卷
- 農(nóng)業(yè)科技園區(qū)建設(shè)投資合同
- 數(shù)據(jù)中心設(shè)備租賃及維護(hù)合同
- 化工設(shè)備生產(chǎn)過(guò)程優(yōu)化與控制考核試卷
- 互聯(lián)網(wǎng)+農(nóng)業(yè)智能設(shè)備研發(fā)考核試卷
- 寵物影像學(xué)診斷技巧考核試卷
- 代理采購(gòu)合同
- 小吃店鋪顧客滿意度提升技巧考核試卷
- 巧克力品質(zhì)保證措施考核試卷
- 2025公司開(kāi)工大吉蛇年起航萬(wàn)象啟新模板
- GB/T 11263-2024熱軋H型鋼和剖分T型鋼
- 平面幾何強(qiáng)化訓(xùn)練題集:初中分冊(cè)數(shù)學(xué)練習(xí)題
- 項(xiàng)目獎(jiǎng)金分配獎(jiǎng)勵(lì)制度和方案完整版
- 支氣管鏡試題
- 送達(dá)地址確認(rèn)書(訴訟類范本)
- 陰道鏡幻燈課件
- 現(xiàn)代漢語(yǔ)詞匯學(xué)精選課件
- PCB行業(yè)安全生產(chǎn)常見(jiàn)隱患及防范措施課件
- 上海音樂(lè)學(xué)院 樂(lè)理試題
- SAP中國(guó)客戶名單
評(píng)論
0/150
提交評(píng)論