(一)模型评估与模型参数选择
一,数据集:训练集,验证集,测试集
1,
2,三种数据集之间的关系:
训练集:
上课学的知识
验证集:
课后的的练习题
,用来纠正和强化学到的知识
测试集:
期末考试
,用来最终评估学习效果

二,验证集
当模型训练好之后,可以使用验证集来看看模型在新数据上的表现如何,同时通过调整超参数,让模型处于最好的状态。(相当于用来检测上课学习的情况)
1,验证集有两个主要的作用:
第一,评估模型效果,为了调整超参数而服务
第二,调整超参数,使得模型在验证集上的效果最好
2,说明
:
验证集不像训练集和测试集,它
是非必需的
。
如果不需要调整超参数,就可以不使用验证集,直接用测试集来评估效果。验证集评估出来的效果并非模型的最终效果,
主要是用来调整超参数的
,模型
最终效果以测试集的评估结果为准。
三,测试集
通过测试集来做最终的评估,来看学习效果(模型效果)好不好。
四,划分数据集
1,对于小规模样本集(几万量级),常用的划分比例
:
训练集:验证集:测试集
=
6:2:2
训练集:测试集
=
8:2、7:3
2,对于大规模样本集(百万级以上),只要验证集和测试集的数量足够即可。
•
例如有 100w 条数据,那么留 1w 验证集,1w 测试集即可。
•
1000w 的数据,同样留 1w 验证集和 1w 测试集。
•
超参数越少,或者超参数很容易调整,那么可以减少验证集的比例,更多的分配给训练集。
五,过拟合和欠拟合
过拟合:将训练样本自身的一些特点当作所有样本潜在的泛化特点。
1,表现:
在训练集上表现很好,在测试集上表现不好。
2,过拟合的原因:
(1)训练数据太少(比如只有几百组)
(2)模型的复杂度太高(比如隐藏层层数设置的过多,神经元的数量设置的过大)
(3)数据不纯
3,防止过拟合的方法:
(1)移除特征,降低模型的复杂度:减少神经元的个数,减少隐藏层的层数
(2)训练集增加更多的数据
(3)重新清洗数据
(4)数据增强
(5)正则化
(6)早停
欠拟合:还没训练好。
原因:
1. 数据未做归一化处理
2.
神经网络拟合能力不足
3.
数据的特征项不够
解决方法:
1.
寻找最优的权重初始化方案
2.
增加网络层数、
epoch
3.
使用适当的激活函数、优化器和学习率
4.
减少正则化参数
5.
增加特征
(二)监督学习
• 监督学习和无监督学习的方法:有无标签
一,回归:
回归问题的输出是连续值
1, 均方误差损失函数(Mean Squared Error,MSE):
最常用的回归问题的损失函数。其定义为预测值与真实值之间的平方差的平均值。
该损失函数的值越小,表示模型的预测结果越接近真实值。
2,
简单线性回归 (自变量 x 和因变量 y之间存在一条线性关系):
多元线性回归( 假设自变量 和因变量 y之间存在一条线性关系):
3,线性回归可以用于预测什么中的场景?
包括但不限于经济学、市场营销、医学研究、教育评估、人力资源管理、预测与趋势分析、特征选择与异常值检测。
二,分类:
分类问题的输出是离散值
1,准确率(Accuracy):对于测试集中D个样本,有k个被正确分类,D-k个被错误分类,则准确率为:
2,精确率(查准率)- Precision:所有被预测为正样本中实际为正样本的概率:
3,召回率(查全率)- Recall:实际为正样本中被预测为正样本的概率:
4,把精确率(Precision)和召回率(Recall)之间的关系用图来表达,就是下面的PR曲线:
平衡点(BEP
)P=R
AP(
Average Precision
):
PR曲线下的面积。
通常来说一个越好的分类器,AP值越高
mAP是多个类别
AP
的平均值。这个
mean
的意思是对每个类的
AP再求
平均,得到的就是mAP
的值,
mAP
的大小一定在
[0,1]区间,越大越
好。
该指标是目标检测算法中最重要的一个。