婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > Python機器學習入門(四)之Python選擇模型

Python機器學習入門(四)之Python選擇模型

熱門標簽:外呼并發線路 地圖標注審核表 西藏房產智能外呼系統要多少錢 長沙高頻外呼系統原理是什么 ai電銷機器人源碼 ai電話機器人哪里好 湛江智能外呼系統廠家 百度地圖標注沒有了 宿遷星美防封電銷卡

1.數據分離與驗證

要知道算法模型對未知的數據表現如何,最好的評估辦法是利用已經明確知道結果的數據運行生成的算法模型進行驗證。此外還可以使用新的數據來評估算法模型。

在評估機器學習算法時,不將訓練集直接作為評估數據集最直接的原因就是過度擬合。過度擬合是指為了得到一致性假設而變得過度嚴格,簡單來說就是指模型僅對訓練數據有較好的效果,而對于新數據則適應性很差

如圖所示是一個分類實例,綠色曲線表示過擬合,黑色曲線表示正常模型。可以看到過擬合模型僅對當前數據表現較好,而對新數據適應性明顯不如正常模型。

接下來將講解四種不同的分離數據集的方法,用來分離訓練集和評估集,并用其評估算法模型。

1.1分離訓練數據集和評估數據集

可以簡單地將原始數據集分為兩部分,第一部分用來訓練算法生成模型,第二部分通過模型來預測結果,并于已知的結果進行比較,來評估算法模型的準確度。

from pandas import read_csv
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LogisticRegression
from sklearn.model_selection import KFold
from sklearn.model_selection import cross_val_score
from sklearn.linear_model import LogisticRegression
from sklearn.model_selection import LeaveOneOut
from sklearn.model_selection import ShuffleSplit
 
 
filename = 'pima_data.csv'
names = ['preg', 'plas', 'pres', 'skin', 'test', 'mass', 'pedi', 'age', 'class']
data = read_csv(filename, names=names)
# print(data.head(10))
array = data.values
X = array[:, 0:8]
Y = array[:, 8]
test_size = 0.33
seed = 4
X_train, X_test, Y_train, Y_test = train_test_split(X, Y, test_size=test_size, random_state=seed)
model = LogisticRegression(max_iter=3000)
model.fit(X_train, Y_train)
result = model.score(X_test, Y_test)
print("算法評估結果:%3f%%" % (result * 100))

執行后得到的結果約為80%。為了讓算法模型具有良好的可復用性,在指定了分離數據大小的同時,還指定了隨機粒度(seed=4),將數據隨即進行分離。通過指定隨機的粒度,可以確保每次執行程序得到相同的結果,這有助于比較兩個不同的算法生成模型的結果。

算法評估結果:80.314961%

1.2K折交叉驗證分離

K折交叉驗證是將原始數據分成K組(一般是均分),將第一部分作為測試集,其余作為訓練集,訓練模型,計算模型在測試集上的準確率,每次用不同部分作為測試集,重復上述步驟K次,最后將平均準確率作為最終的模型準確率。

# K折交叉驗證分離
num_folds = 10
seed = 7
kfold = KFold(n_splits=num_folds, random_state=seed,shuffle=True)
model = LogisticRegression(max_iter=3000)
result = cross_val_score(model, X, Y, cv=kfold)
print("算法評估結果:%.3f%% (%.3f%%)" % (result.mean() * 100, result.std() * 100))

執行后得到評估得分及標準方差。

算法評估結果:77.216% (4.968%)

1.3棄一交叉驗證分離

相較于K折交叉驗證分離,棄一交叉驗證有顯著優點:

  • 每一回合中幾乎所有樣本你皆用于訓練模型,因此最接近原始樣本的分布,這樣評估所得的結果比較可靠。
  • 實驗過程中沒有隨機因素會影響實驗數據,確保實驗過程可重復。

但棄一交叉驗證計算成本高,當原始數據樣本數量多時,棄一交叉驗證需要花費大量時間完成評估

# 棄一交叉驗證分離
# 計算量非常大!!
loocv = LeaveOneOut()
model = LogisticRegression(max_iter=3000)
result = cross_val_score(model,X,Y,cv = loocv)
print("算法評估結果:%.3f%% (%.3f%%)"% (result.mean()*100,result.std()*100))

運算得出的標準方差與K折交叉驗證有較大差距。

算法評估結果:77.604% (41.689%)

1.4重復隨機分離評估數據集與訓練數據集

另外一種K折交叉驗證的用途是隨即分離數據為訓練數據集和評估數據集。

n_splits = 10
test_size = 0.33
seed = 7
kfold = ShuffleSplit(n_splits=n_splits, test_size=test_size, random_state=seed)
model = LogisticRegression(max_iter=3000)
result = cross_val_score(model, X, Y, cv=kfold)
print("算法評估結果:%.3f%% (%.3f%%)" % (result.mean() * 100, result.std() * 100))

算法評估結果:76.535% (2.235%)

2.算法評估

2.1分類算法評估

2.1.1分類準確度

分類準確度就是算法自動分類正確的樣本數除以所有的樣本數得出的結果。準確度是一個很好、很直觀的評價指標,但是有時候準確度高并不代表算法就一定好。

from pandas import read_csv
import pandas as pd
from sklearn.model_selection import KFold
from sklearn.model_selection import cross_val_score
 
#分類準確度
filename = 'pima_data.csv'
names = ['preg', 'plas', 'pres', 'skin', 'test', 'mass', 'pedi', 'age', 'class']
data = read_csv(filename,names=names)
#print(data.head(10))
#將數據分為輸入數據和輸出結果
array = data.values
X = array[:,0:8]
Y = array[:,8]
num_folds = 10
seed = 7
kfold = KFold(n_splits=num_folds,random_state=seed,shuffle=True)
model = LogisticRegression(max_iter=3000)
result = cross_val_score(model, X,Y,cv=kfold)
print("算法評估結果準確度:%.3f(%.3f)" % (result.mean(),result.std()))

算法評估結果準確度:0.772(0.050)

2.1.2分類報告

在scikit-learn中提供了一個非常方便的工具,可以給出對分類問題的評估報告,Classification__report()方法能夠給出precision,recall,F1-score,support。

from pandas import read_csv
import pandas as pd
from sklearn.model_selection import KFold
from sklearn.metrics import classification_report
 
#分類準確度
filename = 'pima_data.csv'
names = ['preg', 'plas', 'pres', 'skin', 'test', 'mass', 'pedi', 'age', 'class']
data = read_csv(filename,names=names)
print(data.head(10))
#將數據分為輸入數據和輸出結果
array = data.values
X = array[:,0:8]
Y = array[:,8]
num_folds = 10
seed = 7
kfold = KFold(n_splits=num_folds,random_state=seed,shuffle=True)
model = LogisticRegression(max_iter=3000)
model.fit(X_train,Y_train)
predicted = model.predict(X_test)
report = classification_report(Y_test, predicted)
print(report)

precision recall f1-score support
0.0 0.84 0.87 0.86 171
1.0 0.71 0.66 0.69 83
accuracy 0.80 254
macro avg 0.78 0.77 0.77 254
weighted avg 0.80 0.80 0.80 254

2.2回歸算法評估

回歸算法評估將使用波士頓房價(Boston House Price)數據集。可通過百度網盤下載

鏈接:https://pan.baidu.com/s/1uyDiXDC-ixfBIYmTU9rrAQ
提取碼:eplz

2.2.1平均絕對誤差

平均絕對誤差是所有單個觀測值與算術平均值偏差絕對值的平均值。平均絕對誤差相比于平均誤差能更好地反映預測值誤差的實際情況。

cross_val_score中的scoring參數詳解可見官方開發文檔

https://scikit-learn.org/stable/modules/model_evaluation.html#scoring-parameter

from pandas import read_csv
from sklearn.model_selection import KFold
from sklearn.model_selection import cross_val_score
from sklearn.linear_model import LinearRegression
 
filename = 'housing.csv'
names = ['CRIM','ZN','INDUS','CHAS','NOX','RM','AGE','DIS','RAD','TAX','PRTATIO','B','LSTAT','MEDV']
data = read_csv(filename,names=names,delim_whitespace=True)
array = data.values
X = array[:,0:13]
Y = array[:,13]
n_splits = 10
seed = 7
kfold = KFold(n_splits=n_splits,random_state=seed,shuffle=True)
model = LinearRegression()
 
#平均絕對誤差
scoring = 'neg_mean_absolute_error'
result = cross_val_score(model, X, Y, cv=kfold, scoring=scoring)
print('MAE:%.3f(%.3f)'%  (result.mean(),result.std()))

MAE:-3.387(0.667)

2.2.2均方誤差

均方誤差是衡量平均誤差的方法,可以評價數據的變化程度。均方根誤差是均方誤差的算術平均跟。均方誤差越小,說明用該預測模型描述實驗數據準確度越高。

#均方誤差
scoring = 'neg_mean_squared_error'
result = cross_val_score(model, X, Y, cv=kfold, scoring=scoring)
print('MSE:%.3f(%.3f)'%  (result.mean(),result.std()))

MSE:-23.747(11.143)

2.2.3判定系數(

判定系數(coefficient of determination),也叫可決系數或決定系數,是指在線性回歸中,回歸平方和與總離差平方和之比值,其數值等于相關系數的平方。

#決定系數
scoring = 'r2'
result = cross_val_score(model, X, Y, cv=kfold, scoring=scoring)
print('R2:%.3f(%.3f)'%  (result.mean(),result.std()))

R2:0.718(0.099)

K折交叉驗證是用來評估機器學習算法的黃金準則。黃金準則為:當不知如何選擇分離數據集的方法時,選擇K折交叉驗證來分離數據集;當不知如何設定K值時,將K設為10。

到此這篇關于Python機器學習入門(四)選擇模型的文章就介紹到這了,更多相關Python機器學習內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • Python機器學習入門(一)序章
  • Python機器學習入門(二)之Python數據理解
  • Python機器學習入門(三)之Python數據準備
  • Python機器學習入門(五)之Python算法審查
  • Python機器學習入門(六)之Python優化模型
  • python機器學習高數篇之函數極限與導數

標簽:漯河 南平 盤錦 林芝 普洱 大同 海南 寧夏

巨人網絡通訊聲明:本文標題《Python機器學習入門(四)之Python選擇模型》,本文關鍵詞  Python,機器,學習,入門,四,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Python機器學習入門(四)之Python選擇模型》相關的同類信息!
  • 本頁收集關于Python機器學習入門(四)之Python選擇模型的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    一区二区三区四区av| www.日韩大片| 94色蜜桃网一区二区三区| 中文字幕中文字幕一区二区| 91老师片黄在线观看| 中文字幕精品三区| 精品国偷自产国产一区| 色欧美88888久久久久久影院| 捆绑紧缚一区二区三区视频 | 亚洲欧美日韩国产另类专区| 自拍偷拍亚洲激情| 久久精品久久久精品美女| 国产乱一区二区| 中文字幕一区二区三区不卡| 日韩欧美一级在线播放| 99麻豆久久久国产精品免费优播| 国产精品综合一区二区| 国产高清不卡二三区| 日韩三级免费观看| 国产精品1区2区| 免费观看91视频大全| 国产精品久久久久影院亚瑟| 日韩美一区二区三区| 色八戒一区二区三区| 日韩亚洲欧美高清| 99久久免费精品| 国产一区二区福利视频| 国产精品嫩草影院av蜜臀| 91精品蜜臀在线一区尤物| 国产亚洲成年网址在线观看| 捆绑变态av一区二区三区| 久久久久久一级片| 亚洲动漫第一页| 国产精品午夜免费| 日韩视频在线你懂得| 日韩网站在线看片你懂的| 色呦呦一区二区三区| 大尺度一区二区| 波多野结衣亚洲| 欧美日本视频在线| 国产成人丝袜美腿| 国产真实乱子伦精品视频| 中文字幕第一区二区| 91精品国产综合久久精品app| 色8久久人人97超碰香蕉987| 国产ts人妖一区二区| 精品一区二区三区免费视频| 日韩精彩视频在线观看| 久久精品男人的天堂| 日韩精品资源二区在线| 日韩欧美你懂的| 日韩三级视频中文字幕| 国产女人aaa级久久久级| 国产色综合久久| 国产精品丝袜一区| 午夜欧美2019年伦理| 日本视频免费一区| 天天综合日日夜夜精品| 国产老肥熟一区二区三区| 国产一区二区三区久久悠悠色av| 亚洲一区二区黄色| 青青草成人在线观看| 久久精品999| 国产高清久久久| 99久久婷婷国产综合精品电影 | 久久先锋影音av鲁色资源| 欧美日韩国产一区| av网站免费线看精品| 91女厕偷拍女厕偷拍高清| 日本精品一区二区三区高清| 精品日韩一区二区三区免费视频| 日韩三级av在线播放| 精品成人一区二区三区四区| 国产精品久久午夜| 午夜精品免费在线| 极品少妇xxxx精品少妇偷拍| 色婷婷综合久色| 欧美性淫爽ww久久久久无| 日韩女优毛片在线| 日韩美女视频在线| 国产网站一区二区三区| 亚洲品质自拍视频网站| 国产欧美综合色| 亚洲欧美一区二区三区国产精品| 亚洲午夜精品网| 日韩主播视频在线| 26uuu亚洲婷婷狠狠天堂| 日韩精品在线看片z| 国产精品网站一区| 日本伊人精品一区二区三区观看方式| 国产一区二区在线观看免费| 色88888久久久久久影院野外| 国产精品国产三级国产aⅴ入口| 五月婷婷欧美视频| 99久久99久久久精品齐齐| 91麻豆精品国产91久久久久| 日韩美女啊v在线免费观看| 久久精品99久久久| 欧美成人猛片aaaaaaa| 综合在线观看色| 日本vs亚洲vs韩国一区三区二区 | 一区二区三区小说| 国产精品一区二区久激情瑜伽 | 精品国产免费一区二区三区四区 | 欧美另类一区二区三区| 欧美一区二区视频在线观看| 国产精品麻豆视频| 男人的j进女人的j一区| 日韩精品一区国产麻豆| 国产亚洲精久久久久久| 免费成人小视频| 91在线免费视频观看| 26uuu精品一区二区在线观看| 日韩精品91亚洲二区在线观看| 欧美一区二区人人喊爽| 亚洲国产视频网站| 不卡一二三区首页| 在线不卡中文字幕| 午夜成人免费电影| 欧美日韩在线直播| 国产尤物一区二区在线| 日韩免费观看高清完整版在线观看| 亚洲国产精品久久久久秋霞影院| a亚洲天堂av| 国产精品久久久久久久第一福利| 国产一区二区三区免费看| 精品国产99国产精品| 免费不卡在线视频| 欧美大片一区二区| 国产原创一区二区| 91精品欧美福利在线观看| 日本不卡一二三| 五月天激情综合网| 6080国产精品一区二区| 日韩av在线免费观看不卡| 欧美美女bb生活片| 午夜精品aaa| 精品捆绑美女sm三区| 国产精品1区2区| 国产精品网站在线| 色www精品视频在线观看| 亚洲成人动漫精品| 欧美在线观看视频一区二区三区| 五月天婷婷综合| 久久综合久久综合九色| 成人av网站在线观看免费| 亚洲人成网站色在线观看| 欧美日韩黄色影视| 久久99最新地址| 中文字幕字幕中文在线中不卡视频| 在线免费观看成人短视频| 亚洲色欲色欲www在线观看| 欧美日韩久久一区| 午夜欧美视频在线观看| 成人一区二区三区视频 | 久久久欧美精品sm网站| 成人美女视频在线观看| 中文字幕视频一区二区三区久| 欧美日韩亚洲不卡| 亚洲成人av一区| 久久精品国产一区二区三| 日韩一区国产二区欧美三区| 国产成人精品亚洲777人妖| 亚洲女同女同女同女同女同69| 91亚洲永久精品| 日本va欧美va精品| 国产精品的网站| 激情伊人五月天久久综合| 麻豆freexxxx性91精品| 色婷婷亚洲精品| 国产一区高清在线| 亚洲国产精品视频| 欧美激情综合五月色丁香小说| 欧美三级乱人伦电影| 成人午夜大片免费观看| 裸体一区二区三区| 一区二区久久久| 色爱区综合激月婷婷| 国产一区日韩二区欧美三区| 亚洲色图清纯唯美| 欧美午夜一区二区三区| 精品一区二区久久| 中文字幕一区二区三区蜜月| 91麻豆swag| 捆绑紧缚一区二区三区视频| 一区二区三区中文免费| 国产精品久久影院| 精品视频123区在线观看| 91精品在线观看入口| 免费观看日韩av| 久久精品国产澳门| 亚洲综合自拍偷拍| 亚洲精品欧美在线| 天堂久久久久va久久久久| 97久久精品人人做人人爽50路 | 国产麻豆午夜三级精品| 国产一区二区三区观看| 麻豆国产精品一区二区三区| 国产福利一区二区三区视频在线| 亚洲精品老司机|