資料探勘 建模調參

2021-10-04 16:47:49 字數 1733 閱讀 9552

線性回歸,模型決策樹模型 ,gbdt模型,xgboost模型 ,lightgbm模型

簡單的線性回歸,可以用sklearn

from sklearn.linear_model import linearregression

model = linearregression(normalize=

true

)model = model.fit(train_x, train_y)

當我們的模型簡單構建出來會發現**或者擬合的效果並不好,那麼我們就要反過去看我們的資料是否出現了問題。這裡說資料的問題更多的是指,符不符合模型的條件。

當我們在選擇或者不選擇乙個模型,首先要考慮這個模型適用的條件,要滿足那些基本假設。舉個不恰當的例子,我們不管三七二十一,用直線去擬合乙個曲線,那麼必然是不會取得乙個好的效果。

五折交叉驗證

使用sklearn

from sklearn.model_selection import cross_val_score

#evaluate a score by cross-validation

from sklearn.metrics import mean_absolute_error, make_scorer

#mean absolute error regression loss

#make a scorer from a performance metric or loss function.

在過濾式和包裹式特徵選擇方法中,特徵選擇過程與學習器訓練過程有明顯的分別。而嵌入式特徵選擇在學習器訓練過程中自動地進行特徵選擇。嵌入式選擇最常用的是l1正則化與l2正則化。在對線性回歸模型加入兩種正則化方法後,他們分別變成了嶺回歸與lasso回歸。

#引入子包

from sklearn.linear_model import linearregression

from sklearn.linear_model import ridge

from sklearn.linear_model import lasso

#構成模型組

models =

[linearregression(),

ridge(),

lasso()]

#對於每個迴圈,並將返回的分數,返回結果result字典

result =

dict()

for model in models:

model_name =

str(model)

.split(

'(')[0

] scores = cross_val_score(model, x=train_x, y=train_y_ln, verbose=

0, cv =

5, scoring=make_scorer(mean_absolute_error)

) result[model_name]

= scores

print

(model_name +

' is finished'

)#取出得分進行對比

result = pd.dataframe(result)

result.index =

['cv'

+str

(x)for x in

range(1

,6)]

result

資料探勘專案 調參

lr lr param lr grid gridsearchcv lr,lr param,cv n fold,scoring scoring,n jobs 1 lr grid.fit x train std,y train print lr grid.best score 最優分數 print lr...

金融資料 建模與調參

引數調整 logistic regression 雖然被稱為回歸,但其實際上是分類模型,並常用於二分類。logistic regression 因其簡單 可並行化 可解釋強深受工業界喜愛。logistic 回歸的本質是 假設資料服從這個分布,然後使用極大似然估計做引數的估計。logistic 分布是...

零基礎入門資料探勘 Task4 建模調參

一 介紹 1 線性回歸模型 線性回歸對於特徵的要求 處理長尾分布 理解線性回歸模型 2 模型效能驗證 評價函式與目標函式 交叉驗證方法 針對事件序列問題的驗證 繪製學習率曲線 繪製驗證曲線 3 嵌入式特徵選擇 lasso回歸 ridge回歸 決策樹4 模型對比 常用線性模型 常用非線性模型 5 模型...