【机器学习笔记】5 机器学习实践

数据集划分

子集划分

训练集(Training Set) :帮助我们训练模型,简单的说就是通过训练集的数据让我们确定拟合曲线的参数。
验证集(Validation Set) :也叫做开发集( Dev Set ),用来做模型选择(model selection),即做模型的最终优化及确定的,用来辅助我们的模型的构建,即训练超参数,可选 ;
测试集(Test Set) : 为了测试已经训练好的模型的精确度。

三者划分:训练集、验证集、测试集,区别与数据量有关

机器学习:60%,20%,20%;70%,10%,20%(不划验证集就75%,25%)

深度学习:98%,1%,1% (假设百万条数据)

交叉验证

  1. 使用训练集训练出k个模型
  2. 用k个模型分别对交叉验证集计算得出交叉验证误差(代价函数的值)
  3. 选取代价函数值最小的模型
  4. 用步骤3中选出的模型对测试集计算得出推广误差(代价函数的值)

不平衡数据的处理

数据不平衡是指数据集中各类样本数量不均衡的情况.

常用不平衡处理方法有采样和代价敏感学习

采样欠采样、过采样和综合采样的方法

SMOTE(Synthetic Minority Over-sampling Technique)算法是过采样中比较常用的一种。算法的思想是合成新的少数类样本,而不是简单地复制样本。算法过程如图:

代价敏感学习

代价敏感学习是指为不同类别的样本提供不同的权重,从而让机器学习模型进行学习的一种方法

比如风控或者入侵检测,这两类任务都具有严重的数据不平衡问题,可以在算法学习的时候,为少类样本设置更高的学习权重,从而让算法更加专注于少类样本的分类情况,提高对少类样本分类的查全率,但是也会将很多多类样本分类为少类样本,降低少类样本分类的查准率。

评价指标(分类问题)


例: 有100张照片,其中,猫的照片有60张,狗的照片是40张。

输入这100张照片进行二分类识别,找出这100张照片中的所有的猫。

正例(Positives):识别对的

负例(Negatives):识别错的

TP、TN对角线的数据越多越好


AUC是ROC曲线下的面积,面积越大越好

PR曲线是精度和昭回度的曲线,曲线下的面积越大越好

正则化、偏差与方差






模型复杂度与误差的关系,一般来说,随着模型复杂度的增加,方差会逐渐增大,偏差会逐渐减小,在虚线处,差不多是模型复杂度的最恰当的选择,其"偏差"和"方差"也都适度,才能"适度拟合"

训练集误差和交叉验证集误差近似时:偏差/欠拟合
交叉验证集误差远大于训练集误差时:方差/过拟合

  1. 获得更多的训练实例------解决高方差
  2. 尝试减少特征的数量------解决高方差
  3. 尝试获得更多的特征------解决高偏差
  4. 尝试增加多项式特征------解决高偏差
  5. 尝试减少正则化程度λ------解决高偏差
  6. 尝试增加正则化程度λ------解决高方差
相关推荐
唠点键盘之外的1 小时前
27 存量系统接大模型:旁挂一个 AI 微服务,老架构一行不改
人工智能·微服务·架构
摇滚侠1 小时前
《计算机是如何工作的:人人都能懂的计算机软硬件工作原理》第 9 章 机器码与汇编语言 阅读笔记 9
java·开发语言·笔记
kaixin_啊啊1 小时前
【用于更准确 G×E 基因组预测的大规模作物数据集与基于深度学习的多模态融合框架】论文学习
人工智能·深度学习·学习
GOWIN革文品牌咨询2 小时前
工业测量品牌系统化搭建指南:从内容架构到长期治理的全流程
大数据·人工智能·架构
xier_ran2 小时前
【infra之路】AI 编译器学习笔记(六):重拾 C++——lambda 与 MLIR 中的回调
c++·笔记·学习
拿本唠嗑AI研究2 小时前
本体工程实战指南:从建模到可维护的完整落地路径
java·人工智能·python·jena·ontology
志尊宝2 小时前
Vue3 零基础每日笔记(078):首屏加载速度优化汇总——清单化方案
笔记
deepseek232 小时前
AI 模型隐藏任意能力拆解:把加密神经网络塞进宿主权重,能力评估为什么在密码学上抓不到
人工智能·深度学习·神经网络·密码学·模型安全
揽秀亭长2 小时前
从音频到五线谱,自动扒谱的完整技术流程
人工智能
Smoothcloud润云2 小时前
PyTorch推理服务模型热切换与失败回滚实战:降低版本更新中断
服务器·人工智能·pytorch·python·深度学习·gpu