美文网首页
Python数据分析实战-实现模型K折交叉验证(附源码和实现效果

Python数据分析实战-实现模型K折交叉验证(附源码和实现效果

作者: V数据杂坛 | 来源:发表于2022-11-27 13:54 被阅读0次

前面我介绍了可视化的一些方法以及机器学习在预测方面的应用,分为分类问题(预测值是离散型)和回归问题(预测值是连续型)(具体见之前的文章)。

从本期开始,我将做一个数据分析类实战的系列文章,列举一些在平时数据处理中遇到的一些小问题,提供一个解决方案,让读者慢慢理解python数据分析的原理和方法,每一篇文章从实现功能、实现代码、实现效果三个方面进行展示。

实现功能:

k折交叉验证是将数据分为k份,选取其中的k-1份为训练数据,剩余的一份为测试数据。k份数据循环做测试集进行测试。此原理适用于数据量小的数据。使用KFpld函数,实现模型的交叉验证,选择最佳模型。n_splits = 5,表示进行5折交叉验证,分别计算每一次的准确率,最后求得平均准确率。

实现代码:

from sklearnimport datasets

from sklearn.model_selectionimport KFold

from sklearn.treeimport DecisionTreeClassifier

iris = datasets.load_iris()

data, target = iris.data, iris.target

print(data)

print(target)

kf = KFold(n_splits =5, shuffle=True, random_state=0)

curr_score=0

for train_index, test_indexin kf.split(data):

clt = DecisionTreeClassifier(max_depth=5, random_state=0).fit(data[train_index], target[train_index])

curr_score = curr_score + clt.score(data[test_index], target[test_index])

print("准确率为:", clt.score(data[test_index], target[test_index]))

avg_score = curr_score /5

print("平均准确率为:", avg_score)

实现效果:

本人读研期间发表5篇SCI数据挖掘相关论文,现在在某研究院从事数据挖掘相关工作,对数据挖掘有一定的认知和理解,会不定期分享一些关于python机器学习、深度学习、数据挖掘基础知识与案例。致力于只做原创,以最简单的方式让你理解和学习它们,关注V数据杂坛可在后台联系我获取相关数据集和源码,送有关数据分析、数据挖掘、机器学习、深度学习相关的电子书籍。

相关文章

网友评论

      本文标题:Python数据分析实战-实现模型K折交叉验证(附源码和实现效果

      本文链接:https://www.haomeiwen.com/subject/qmzhfdtx.html