ML - 数据标准化与模型评估

时间:2024-10-23 07:40:33

数据特征决定模型结果的上限,而模型的优化不过是在逼近这个上限
如果某一列数值特别大,模型可能会不精确,比如误认为这一列数据特别重要。

特征标准化

特征标准化就是希望数据在处理后,每个特征的数值在同一范围内浮动

零均值归一化

在这里插入图片描述
常用标准化方法,原始数据-原始数据均值,再除以原始数据标准差。
首先,减去均值,数据就以原点为中心对称了。
将与均值的差与标准差做比,就是让数据压缩到较小的空间中。

线性函数归一化

对原始数据进行线性变换,使结果映射到【0,1】范围内,实现对原始数据的等比缩放。
在这里插入图片描述
数据归一化并不是万能的。实际应用中,**通过梯度下降法求解的模型通常需要归一化,**像线性回归,逻辑回归,SVM, NN。决策树就不需要,C4.5的信息增益率就和是否归一化无关。

模型评估

交叉验证

把宝贵的测试集留着。
把训练集切成多份,其中一份当作验证集,剩下的做训练集。
同时为了避免某份验证集有错误点或离群点一类影响结果的意外,我们轮流选择其他份额当作验证集。
最后对所有结果进行取平均,就是对队中模型评估的结果。

混淆矩阵

它叫混淆矩阵不是没有原因的,因为它真的很容易就混淆了鸭

实际值1 实际值0
预测值1 TP 正例预测为正例 FP 负例预测为正例
预测值0 FN 正例预测为负例 TN 负例预测负例

True, False代表预测结果是否正确
Positive, Negetive 指预测的结果是正例还是负例
接下来是这三个概念,注意第一句话

准确率

所有样本中,正确预测的结果占总体的百分比
在这里插入图片描述

召回率

所有正例中,正确预测的正例的比例。表示的是样本中的正例有多少被预测正确了
在这里插入图片描述
也叫查全率

精确度

预测为正例的样本中,正确预测的正例的比例
在这里插入图片描述
也叫查准率
召回率和精确度是一对矛盾的度量,此消彼长。比如,样本是一个班级中所有学生,我们希望选出所有的女生,那我们把全班学生都选出来说这个班的人都是女生,女生必然都被选出来,召回率为1,但是精确度并不高。如果我们只选穿裙子的人(假设这个班级没有女装大佬),这样穿裤子的女生会被落下,但我们选出的同学全部为女生,精确度为1,召回率却不高。

F1

既然查全率查准率不可兼得,那怎么才算好呢?其实,在不同任务中,我们对这两个指标的重视程度是不同的,有些时候“宁可错杀一千,不可放过一个”,那我们就要对查全率有很高要求,有些时候“错杀代价太高”,就要求查准率高一点。

第一种衡量方法是,两个模型在查准率=查全率时的值平衡点(Break-Event Point),哪个大,哪个好.

这种方式过于简单,于是提出了F1度量。

F 1 = 2 ∗ 召 回 率 ∗ 准 确 率 准 确 率 + 召 回 率 F1 = \frac{2*召回率*准确率}{准确率+召回率} F1=+2

这种方法和平衡点的特点一样,不偏不倚

为了衡量有不同侧重的任务中模型的表现,对F1进行扩展得到

F β = ( 1 + β 2 ) ∗ 召 回 率 ∗ 准 确 率 ( β 2 ∗ 准 确 率 ) + 召 回 率 F_\beta = \frac{(1+\beta^2)*召回率*准确率}{(\beta^2*准确率)+召回率} Fβ=(β2)+(1+β2)

当 β = 1 , 就 是 标 准 F 1 , 当 β > 1 召 回 率 影 响 更 大 , 当 0 < β < 1 准 确 率 影 响 更 大 当\beta=1,就是标准F1, 当\beta>1召回率影响更大,当0<\beta<1准确率影响更大 β=1F1,β>10<β<1
这里的 β \beta β是召回率的权值,因为这个式子的来源是对召回率和准确率的加权调和平均
1 F β = 1 1 + β 2 ∗ ( 1 准 确 率 + β 2 召 回 率 ) \frac{1}{F_\beta} = \frac{1}{1+\beta^2}*(\frac{1}{准确率}+\frac{\beta^2}{召回率}) Fβ1=1+β21(1+β2)

ROC和AUC

先占个坑
大概就是AUC越大越好

代价曲线

把无辜的人判死刑和把杀人犯视作无罪,都是误判但这代价能一样吗?杀人犯视作无罪勉强还可以继续找证据,良民杀了就没了鸭。

不同的类型的错误的代价不同,当ROC曲线不能反应总体代价时,代价曲线可以达到目的

相关文章