您的位置:首页 > 科技 > 能源 > 武汉公司查询_独一无二的公司名称_四川百度推广和seo优化_网站的开发流程

武汉公司查询_独一无二的公司名称_四川百度推广和seo优化_网站的开发流程

2024/12/30 14:49:35 来源:https://blog.csdn.net/weixin_45697036/article/details/144241499  浏览:    关键词:武汉公司查询_独一无二的公司名称_四川百度推广和seo优化_网站的开发流程
武汉公司查询_独一无二的公司名称_四川百度推广和seo优化_网站的开发流程

机器学习 --- 模型评估

  • 你需要得到更好的模型,怎么判断模型更好呢?
  • 你需要先得到训练集和测试集,怎么划分它们呢?
  • 训练完模型之后,在验证集上测试的时候,用什么指标衡量好坏呢?
  • 云里雾里,考察的重点来哩!
    • ROC曲线的含义与作用
    • AUC的定义
    • 计算AUC的过程
    • AUC的实现
  • 基础面试题

你需要得到更好的模型,怎么判断模型更好呢?

在机器学习任务中,通常将训练集上的误差叫做训练误差或经验误差,在新样本上的误差叫做泛化误差,我们肯定是希望模型或者得到的学习器的训练误差越小越好,但是一般情况下,我们并不知道新的样本,所以我们只能关注于经验误差,但是经验误差就算是0,也不能保证泛化误差很小,相反,如果泛化误差很小,一般说明对样本中不重要的特征也记录下来了,一般就会导致过拟合。那么我们应该怎么根据训练集来判断模型之间的好坏呢?就需要一套评价标准。

你需要先得到训练集和测试集,怎么划分它们呢?

一帮情况下,我们会将得到的数据划分为训练集和测试集,通过测试集上的性能来近似评估训练出的模型的泛化性能,因为最终训练出的模型的参数和训练集有关,所以不同的划分方式,可能就会导致得到的模型参数不同,从而导致泛化性能也不同,下面是几种常用的划分训练集和测试集的方法。

  • 留出法:直接将数据集划分为互斥的两个集合,一般70%-80%作为训练集,剩余的作为测试集,并且要注意的是,为了让训练的模型在整个数据集上的偏差较小,一般训练集和测试集中正负样本的数目是相同的,也就是正样本占50%,负样本占50%。
  • 交叉验证法:这种方法将整个数据集划分为互斥的大小相似的k个子集,然后去其中一个作为验证集,一般k取10。若另k=m(样本数量),则每一个子集包含一个样本。这种划分的好处是,使得在训练集上训练的模型和数据集上想要训练出的模型较为相似,但是会导致需要训练的模型很多,计算量很大(因为在k次划分的时候,需要重复p次取不同的训练集训不同的模型)。
  • 自助法:每一次从数据集D中随机抽一个,假设数据集D有m个样本,那么该样本被抽到的概率为 1 m \frac{1}{m} m1,不被抽到的概率为 ( 1 − 1 m ) (1-\frac{1}{m}) (1m1),抽取m次,则一个样本不被抽到的概率为 ( 1 − 1 m ) m (1-\frac{1}{m})^m (1m1)m,当m趋于无穷的时候,一个样本不被抽到的概率近似为 1 e \frac{1}{e} e1(因为m是整数,所以先换元,再洛必达,便得到极限值),即一个样本不被抽到的概率近似为0.368,自助法在数据集较小,难以有效划分训练集和测试集时比较有效,但是自助法产生的数据集改变了初始数据集的分布,会引入估计偏差。

训练完模型之后,在验证集上测试的时候,用什么指标衡量好坏呢?

在衡量一个模型的好坏的时候,需要借助多种性能度量方法,一般有以下几种:
错误率与精度,这个完全就是按照你从测试集中的样本总数中,预测的错误的数量除以总数,从而得到错误率。
查准率、查全率与F1。
查准率,就是在自己预测的所有的正样本中,预测正确的正样本的比率。
查全率,就是在所有的正样本中,预测的正样本的数量与所有正样本的数量的比率。
F1,就是跟这两有关的一个函数
P-R曲线通过将查准率作为纵轴,查全率作为横轴画的图。
ROC的纵轴为真正利率,横轴为假正利率。AUC为ROC下的面积。

云里雾里,考察的重点来哩!

ROC曲线的含义与作用

ROC曲线(Receiver Operating Characteristic Curve) 是一种常用于二分类模型的评价工具,用于可视化模型在不同分类阈值下的表现。ROC曲线描绘了 假正例率(FPR) 和 真正例率(TPR) 之间的关系,帮助我们评估模型在各种分类阈值下的分类能力。
这里提到的真正例率表示所有真样本中,预测出的正的比例,假正例率为所有假的样本中,预测出的正的比例。你看,ROC就是不一样,它既考虑正样本的分类能力,又考虑负样本下的预测分类能力,不像其他,只考虑一个。

AUC的定义

AUC(Area Under the Curve)是ROC(Receiver Operating Characteristic)曲线下的面积,衡量的是模型在不同分类阈值下的表现。AUC值越大,表示模型对正负类样本的区分能力越强。具体来说,AUC的值介于0和1之间,越接近1表示模型越好;AUC为0.5时表示模型表现与随机猜测相似。
AUC实际上刻画的是模型对正负类样本的整体区分能力,不受具体分类阈值的影响。因此,AUC越高,表示模型在 几乎所有的分类阈值下 都能更好地区分正类和负类。

  • AUC = 1:完美分类器,所有正类样本的分数都大于负类样本的分数。
  • AUC = 0.5:随机分类器,模型无法有效地区分正负类,等同于随机猜测。
  • AUC < 0.5:模型性能很差,比随机猜测还要差。
    AUC通过对ROC曲线下的面积计算得出,而ROC曲线是由不同的分类阈值下的 假正例率(FPR)真正例率(TPR) 组成的。

计算AUC的过程

AUC的计算可以通过以下步骤来实现:

  1. 计算模型的输出概率
    模型通常会输出每个样本属于正类的概率,而不是直接给出分类标签。AUC基于这些概率来评估模型的区分能力。
  2. 将样本按预测的概率排序
    将所有测试样本按模型预测的概率从高到低排序,较高的概率表示模型更倾向于该样本是正类。
  3. 计算真正例率和假正例率
    对于每个可能的阈值(即每个预测概率),计算TPR和FPR:
    TPR(召回率) = True Positives True Positives + False Negatives ​ \frac{\text{True Positives}}{\text{True Positives} + \text{False Negatives}}​ True Positives+False NegativesTrue Positives
    FPR = False Positives False Positives + True Negatives \frac{\text{False Positives}}{\text{False Positives} + \text{True Negatives}} False Positives+True NegativesFalse Positives
    然后,绘制ROC曲线,横轴是FPR,纵轴是TPR。
  4. 计算ROC曲线下的面积(AUC)
    AUC值即为ROC曲线下的面积。常用的计算方法包括 梯形法则(Trapezoidal Rule) 来近似计算AUC。

AUC的实现

import numpy as np
from sklearn.metrics import roc_curve, auc
import matplotlib.pyplot as plt# 假设y_true是真实标签,y_scores是模型预测的概率值
y_true = np.array([0, 0, 1, 1])  # 真实标签(0表示负类,1表示正类)
y_scores = np.array([0.1, 0.4, 0.35, 0.8])  # 模型预测的概率值# 计算ROC曲线的FPR和TPR
fpr, tpr, thresholds = roc_curve(y_true, y_scores)# 计算AUC
roc_auc = auc(fpr, tpr)# 输出AUC
print(f'AUC: {roc_auc}')# 绘制ROC曲线
plt.figure()
plt.plot(fpr, tpr, color='darkorange', lw=2, label='ROC curve (area = %0.2f)' % roc_auc)
plt.plot([0, 1], [0, 1], color='navy', lw=2, linestyle='--')
plt.xlim([0.0, 1.0])
plt.ylim([0.0, 1.05])
plt.xlabel('False Positive Rate')
plt.ylabel('True Positive Rate')
plt.title('Receiver Operating Characteristic (ROC)')
plt.legend(loc="lower right")
plt.show()

基础面试题

  • 有哪些评价指标?
    错误率、精度、查准率、查全率(Recall、查全率)、F1分数、ROC、AUC、PR曲线
    AUC是ROC曲线的面积,衡量的是模型的分类能力,值越大表示模型越好,AOC等于0.5,相当于随机判断模型。
  • AOC的计算方式?
    ROC曲线下的面积,即梯度的面积公式

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com