新闻详情

新闻详情

首页 / 资讯中心 / 详情

避免过拟合的秘诀:莫烦Python tutorials K折交叉验证与网格搜索参数调优实战

发布时间:2026/9/19 11:42:15来源:尧图网络
避免过拟合的秘诀:莫烦Python tutorials K折交叉验证与网格搜索参数调优实战
避免过拟合的秘诀莫烦Python tutorials K折交叉验证与网格搜索参数调优实战【免费下载链接】tutorials机器学习相关教程项目地址: https://gitcode.com/gh_mirrors/tut/tutorials在机器学习项目中模型训练集上考99分、真实场景却不及格的现象就是过拟合。莫烦Python tutorials 的 sklearn 教程提供了 K折交叉验证与网格搜索Grid Search的完整实战代码帮你用最小代价找到稳定、不过拟合的最优模型是新手参数调优的最佳入门路径。为什么单次训练-测试划分不够可靠很多新手的第一反应是把数据切成训练集和测试集然后盯着测试集准确率调参数。问题在于单次划分的得分带有随机性——换个随机种子分数可能上下浮动好几个百分点你根本无法判断模型是真的变好了还是只是运气好。教程中 sk4_learning_pattern.py 演示了最基础的train_test_split划分方式X_train, X_test, y_train, y_test train_test_split( iris_X, iris_y, test_size0.3)它能跑通但只能告诉你这一次的结果。要得到可复现、可比较的评估就需要下一节的 K 折交叉验证。快速上手cross_val_score 一键计算 K 折得分K 折交叉验证K-Fold Cross Validation的思想很直观把数据分成 K 份轮流用其中 1 份当验证集、其余 K-1 份训练最终取 K 次得分的平均值。K 取 5 或 10 都是常见做法。莫烦教程用鸢尾花Iris数据集演示了这一过程核心就一行见 full_code.pyscores cross_val_score(knn, X, y, cv5, scoringaccuracy)新手要记住的 3 个要点cv5表示 5 折数据被分成 5 份轮流验证得分更稳健scoringaccuracy分类任务用准确率回归任务可换成mean_squared_error拿到scores是 K 个值用它们的均值和方差来判断模型是否稳定而不是只看某一个。同目录下的 for_you_to_practice.py 是留白练习版适合你自己动手补全这三段逻辑效果比直接看答案好得多。 小提示仓库代码沿用了早期 scikit-learn 的cross_validation模块名新版 sklearn 中已迁移为model_selection函数用法完全一致替换导入路径即可。用交叉验证选参数画出 K 值与准确率曲线验证机制建好后就能解决参数调优的第一大问题KNN 的邻居数 k 该取多少教程的做法非常巧妙——把 k 从 1 遍历到 30每个 k 都跑一次 10 折交叉验证把平均准确率画成折线图见 full_code.pyfor k in k_range: knn KNeighborsClassifier(n_neighborsk) scores cross_val_score(knn, X, y, cv10, scoringaccuracy) k_scores.append(scores.mean()) plt.plot(k_range, k_scores)读图有两个关键经验k 太小 → 过拟合曲线左端准确率虚高模型对训练数据过度敏感k 太大 → 欠拟合曲线右端趋于平缓甚至下滑模型失去区分能力。取曲线高位平台区的 k 值就是在偏差与方差之间取得平衡——这正是避免过拟合的核心操作。网格搜索GridSearchCV参数调优的终极武器当模型有多个参数需要同时调整时手写循环就不够用了。网格搜索Grid Search会自动枚举你给定的所有参数组合内部用交叉验证逐一评估最后直接输出最优参数。以 SVM 为例现代 sklearn 的写法是from sklearn.model_selection import GridSearchCV param_grid {C: [0.1, 1, 10], gamma: [0.01, 0.1, 1]} grid GridSearchCV(SVC(), param_grid, cv5, scoringaccuracy) grid.fit(X_train, y_train) print(grid.best_params_, grid.best_score_)它和手动交叉验证是同一套思想的自动化交叉验证是考官网格搜索是批量考试best_params_就是最终录取名单。参数网格不宜太密否则计算量会爆炸。调参前别忘了先做归一化否则量纲差异大的特征会拖垮 SVM 等距离敏感模型。教程 sk7_normalization.py 展示了preprocessing.scale的标准用法X preprocessing.scale(X) # normalization step clf SVC() clf.fit(X_train, y_train)学习曲线与验证曲线判断过拟合的可视化手段调完参数还要回答一个问题我的模型到底是过拟合、欠拟合还是刚刚好sklearn 提供了两条诊断曲线教程用 digits 手写数字数据集做了完整演示。1. 学习曲线learning_curve——诊断数据够不够sk9_cross_validation2.py 改变训练集比例10% → 100%同时记录训练集与交叉验证集的得分两条曲线都高且接近 → 模型健康训练得分高、验证得分低且差距大 →过拟合需要更多数据或更强正则化两条曲线都低且接近 → 欠拟合需要更复杂的模型。2. 验证曲线validation_curve——诊断某个参数对不对sk10_cross_validation3.py 固定模型、只扫描 SVM 的gamma参数。gamma太小曲线整体低迷欠拟合gamma太大训练曲线飙高而验证曲线塌陷——那条塌陷的绿线就是过拟合最直观的证据。 一句话总结学习曲线回答要不要更多数据验证曲线回答这个参数该往哪调配合网格搜索就能完成闭环调优。学习路径与代码索引按以下顺序跟着仓库代码走一遍K 折交叉验证与网格搜索调参就能完全掌握步骤文件学什么1sk4_learning_pattern.py单数据集划分训练的基线写法2sk7_normalization.py数据归一化调参前的必修课3sk8_cross_validation/full_code.pycross_val_score KNN 参数曲线4sk9_cross_validation2.pylearning_curve 学习曲线5sk10_cross_validation3.pyvalidation_curve 参数诊断6sk11_save.py训练好的模型持久化保存避坑清单交叉验证的 fold 划分要在划分后再做且每折内部独立归一化否则会发生数据泄漏得分虚高调参只用训练集测试集只在最终验收时看一次交叉验证分数是均值方差一起看0.92 ± 0.03远好于孤零零的0.92。掌握 K 折交叉验证 网格搜索这套组合拳你的模型评估将从碰运气升级为有依据这正是机器学习工程化最重要的第一步。【免费下载链接】tutorials机器学习相关教程项目地址: https://gitcode.com/gh_mirrors/tut/tutorials创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

Spring AI MCP 换 LLM 供应商:同一把 TaoToken Key 就够 2026/9/19 12:30:22

Spring AI MCP 换 LLM 供应商:同一把 TaoToken Key 就够

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

阅读更多 →
华为数据中台架构与实践:数据入湖、主题联接与DAYU平台详解 2026/9/19 12:30:22

华为数据中台架构与实践:数据入湖、主题联接与DAYU平台详解

简介:一份聚焦华为大数据中台建设的架构分享资料,适合大数据架构师、数据平台工程师及企业数字化转型决策者阅读。内容基于华为云数据中台解决方案DAYU展开,针对当前企业普遍存在的数据孤岛、数据缺失、数据难理解等问题,系统梳理…

阅读更多 →
ITSS知识库管理制度:四角色权限与全流程落地设计 2026/9/19 12:30:22

ITSS知识库管理制度:四角色权限与全流程落地设计

简介:一份适用于ITSS体系建设的知识库管理制度实例文件,面向IT服务管理、运维团队及认证材料编写人员,用于规范知识库的入库、更新、备份、权限与审计流程,实现知识的沉淀和共享。文档为docx格式,共1个文件&#xff0c…

阅读更多 →
基于CNN的煤矸石自动分选:从图像采集到模型部署 2026/9/19 12:30:22

基于CNN的煤矸石自动分选:从图像采集到模型部署

简介:一篇发表于《江苏建筑职业技术学院学报》2019年第4期的学术论文PDF,围绕基于CNN卷积神经网络的煤矸石自动分选展开,面向深度学习、计算机视觉及矿山智能化方向的科研人员和从业者。论文提出利用卷积神经网络这一深度学习算法&#xff0c…

阅读更多 →
西交大概率论真题PDF的深度解析与知识图谱构建 2026/9/19 12:30:22

西交大概率论真题PDF的深度解析与知识图谱构建

简介:本资源为西安交通大学《概率论与数理统计》课程历年真题及标准答案汇编,面向高校数学、统计、工科类本科生及考研备考学生,助力系统巩固核心理论与解题能力。PDF文件共1个,大小600KB,内容完整覆盖随机事件与概率计…

阅读更多 →
GitHub热榜月报:从数据归档到大模型实战,这些项目值得一试 2026/9/19 12:27:22

GitHub热榜月报:从数据归档到大模型实战,这些项目值得一试

每个月月初我都有个固定动作:把上一个月的 GitHub 热榜从头到尾扫一遍,挑几个感兴趣的项目 clone 到本地跑一跑。这个习惯保持了好几年,热榜一年比一年热闹,但真正能让我愿意花几个小时去读代码、试功能的项目,其实一直…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞