国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術(shù)文章
文章詳情頁

python實(shí)現(xiàn)K折交叉驗(yàn)證

瀏覽:29日期:2022-06-22 08:05:48

本文實(shí)例為大家分享了python實(shí)現(xiàn)K折交叉驗(yàn)證的具體代碼,供大家參考,具體內(nèi)容如下

用KNN算法訓(xùn)練iris數(shù)據(jù),并使用K折交叉驗(yàn)證方法找出最優(yōu)的K值

import numpy as npfrom sklearn import datasetsfrom sklearn.neighbors import KNeighborsClassifierfrom sklearn.model_selection import KFold # 主要用于K折交叉驗(yàn)證# 導(dǎo)入iris數(shù)據(jù)集iris = datasets.load_iris()X = iris.datay = iris.targetprint(X.shape,y.shape)# 定義想要搜索的K值,這里定義8個(gè)不同的值ks = [1,3,5,7,9,11,13,15]# 進(jìn)行5折交叉驗(yàn)證,KFold返回的是每一折中訓(xùn)練數(shù)據(jù)和驗(yàn)證數(shù)據(jù)的index# 假設(shè)數(shù)據(jù)樣本為:[1,3,5,6,11,12,43,12,44,2],總共10個(gè)樣本# 則返回的kf的格式為(前面的是訓(xùn)練數(shù)據(jù),后面的驗(yàn)證集):# [0,1,3,5,6,7,8,9],[2,4]# [0,1,2,4,6,7,8,9],[3,5]# [1,2,3,4,5,6,7,8],[0,9]# [0,1,2,3,4,5,7,9],[6,8]# [0,2,3,4,5,6,8,9],[1,7]kf = KFold(n_splits = 5, random_state=2001, shuffle=True)# 保存當(dāng)前最好的k值和對(duì)應(yīng)的準(zhǔn)確率best_k = ks[0]best_score = 0# 循環(huán)每一個(gè)k值for k in ks: curr_score = 0 for train_index,valid_index in kf.split(X):# 每一折的訓(xùn)練以及計(jì)算準(zhǔn)確率clf = KNeighborsClassifier(n_neighbors=k)clf.fit(X[train_index],y[train_index])curr_score = curr_score + clf.score(X[valid_index],y[valid_index]) # 求一下5折的平均準(zhǔn)確率 avg_score = curr_score/5 if avg_score > best_score:best_k = kbest_score = avg_score print('current best score is :%.2f' % best_score,'best k:%d' %best_k) print('after cross validation, the final best k is :%d' %best_k)

python實(shí)現(xiàn)K折交叉驗(yàn)證

以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 西藏| 任丘市| 泸定县| 嘉善县| 昔阳县| 益阳市| 南岸区| 彰化县| 河东区| 仁寿县| 余江县| 天门市| 德昌县| 登封市| 贵州省| 偏关县| 盈江县| 高青县| 枞阳县| 富平县| 平顶山市| 万宁市| 林芝县| 彭阳县| 杭锦后旗| 武胜县| 石渠县| 宣城市| 黔西县| 瑞安市| 二连浩特市| 阿荣旗| 平乡县| 屏南县| 吉木乃县| 彭州市| 台中市| 乌鲁木齐市| 巴马| 塔城市| 台东县|