机器学习基本概念

本文介绍了机器学习的基础,包括数据划分、模型训练和调优,以及深度学习的特点和常用框架。重点讲解了NLP、混淆矩阵、ROC曲线、AUC和PR曲线等评估指标,同时阐述了参数与超参数的区别。此外,还讨论了数据集划分、交叉验证和模型选择的重要性。
摘要由CSDN通过智能技术生成

深度学习和机器学习

在这里插入图片描述
机器学习(Machine Learning, ML),是人工智能的核心,属于人工智能的一个分支,是一个大的领域,是让计算机拥有像人一样的学习能力,模拟和实现人的学习行为和能力,可以像人一样具有识别和判断的能力,可以看作是仿生学。

机器学习的工作方式:

1)选择数据:将你的数据分成三组:训练数据、验证数据和测试数据。
2)模型数据:使用训练数据来构建使用相关特征的模型。
3)验证模型:使用你的验证数据接入你的模型。
4)测试模型:使用你的测试数据检查被验证的模型的表现。
5)使用模型:使用完全训练好的模型在新数据上做预测。
6)调优模型:使用更多数据、不同的特征或调整过的参数来提升算法的性能表现。

常见的15种机器学习算法:
在这里插入图片描述

深度学习(Deep Learning)是机器学习的一种,是它的一个大的分支。实际上指的的深度神经网络学习,普通神经网络由于训练代价较高,一般只有3-4层,而深度神经网络由于采用了特殊的训练方法加上一些技术算法,可以达到8-10层。深度神经网络能够捕捉到数据中的深层联系,从而能够得到更精准的模型,而这些联系不容易被普通的机器学习方法所发觉。

传统机器学习的特征提取主要依赖人工,针对特定简单任务的时候人工提取特征会简单有效,但是并不能通用。

深度学习的特征提取并不依靠人工,而是机器自动提取的。

常用的深度学习框架有:TensorFlowPytorch

4种典型的深度学习算法
在这里插入图片描述

在这里插入图片描述

  • 监督学习:数据有label信息,对输入样本经过模型训练后有明确的预期输出。典型算法:分类和回归;
  • 无监督学习:数据没有label信息,对输入样本经过模型训练后得到什么输出没有预期。典型算法:聚类;
  • 强化学习:强化学习更接近生物学习的本质,因此有望获得更高的智能。它关注的是智能体如何在环境中采取一系列行为,从而获得最大的累积回报。通过强化学习,一个智能体应该知道在什么状态下应该采取什么行为。典型的场景就是打游戏。

NLP(Natural language processing)

深度学习应用的一个分支:自然语言处理。

Confusion Matrix: 混淆矩阵

二分类的混淆矩阵
在这里插入图片描述
其中:
TP(True Positive): 指正确分类的正样本数,即预测为正样本,实际也是正样本。
TN(True Negative): 指正确分类的负样本数,即预测为负样本,实际也是负样本。
FP(False Positive): 指被错误的标记为正样本的负样本数,即实际为负样本而被预测为正样本,所以是False。
FN(False Negative): 指被错误的标记为负样本的正样本数,即实际为正样本而被预测为负样本,所以是False。
TP+FP+TN+FN: 样本总数。
TP+FN: 实际正样本数。
TP+FP: 预测结果为正样本的总数,包括预测正确的和错误的。
FP+TN: 实际负样本数。
TN+FN: 预测结果为负样本的总数,包括预测正确的和错误的。
在这里插入图片描述
补充:
准确率(Accuracy) = 预测正确的样本 / 样本总数 = (TP + TN) / (TP+FP+TN+FN)
在这里插入图片描述
在这里插入图片描述

图示中,绿色部分为预测正确的部分,即数据主要集中在对角线上时,表明模型越好。
在这里插入图片描述
在这里插入图片描述

ROC(Receiver Operator Characteristic)

接收者操作特征曲线(ROC)

在ROC曲线中,以FPR为x轴,TPR为y轴。
FPR指实际负样本中被错误预测为正样本的概率。TPR指实际正样本中被预测正确的概率。因此TPR越大越好

因为混淆矩阵是在某一个概率阈值的条件下生成的混淆矩阵,当阈值从0调整到1时,可以有多个混淆矩阵。多个混淆矩阵就能得到多个FPR和TPR的散点图,即点P(FPR, TPR)。这些点连成线就得到了ROC曲线。

在这里插入图片描述

如下图:
在这里插入图片描述

AUC(Area Under Curve)

定义为ROC曲线下与坐标轴围成的面积。范围在0-1之间,越大表明算法模型越好
在这里插入图片描述

PR曲线(Precision-Recall曲线)

以Recall为X轴,Precision为Y轴,同理ROC曲线的生成,也是在不同阈值下的多个混淆矩阵而生成的PR曲线。
两个值都是越大越好,所以曲线越靠近右上角越好
在这里插入图片描述在这里插入图片描述

  • 当正负样本数量差距极大时,ROC曲线不敏感,所以要用PR曲线

参数和超参

模型参数是模型内部的配置变量,其值可以根据数据进行估计。
具有以下特征:

  • 进行模型预测时需要模型参数。
  • 模型参数值可以定义模型功能。
  • 模型参数用数据估计或数据学习得到。
  • 模型参数一般不由实践者手动设置。
  • 模型参数通常作为学习模型的一部分保存。

模型参数的一些例子包括:

  • 人造神经网络中的权重。
  • 支持向量机中的支持向量。
  • 线性回归或逻辑回归中的系数。

模型超参数是模型外部的配置,其值不能从数据估计得到。
具体特征有:

  • 模型超参数常应用于估计模型参数的过程中。
  • 模型超参数通常由实践者直接指定。
  • 模型超参数通常可以使用启发式方法来设置。
  • 模型超参数通常根据给定的预测建模问题而调整。

模型超参数的一些例子包括:

  • 训练神经网络的学习速率。
  • 支持向量机的C和sigma超参数。
  • k邻域中的k。

总之,模型参数是根据数据自动估算的。但模型超参数是手动设置的,并且在过程中用于帮助估计模型参数。

数据集

  • 训练集:有label,参与训练;
  • 验证集:有label,用于评估模型,调节超参。最后选取最佳的模型算法和超参,参与训练出最佳的模型;
  • 测试集:无label,用于测试验证模型。
    在这里插入图片描述
    当数据集很小的时候,验证集和训练集不同的划分,训练得到的模型差异较大,很可能无法得到最优的超参组合。因此这里引入交叉验证。

交叉验证

交叉验证是说除了测试集以外的数据集至少作为一次训练集,至少作为一次验证集。
在这里插入图片描述
如上图所示,使用的是4-fold交叉验证,因为按照训练集 : 验证集 = 3 : 1,被分成了四等份。
k-fold代表则是分成了k等份。
留一交叉验证: 表示验证集数量为1。

分层交叉验证

对于k-折交叉验证,如果数据不平衡如何?
在这里插入图片描述
这里我们引入分层交叉验证,即按照样本中正负例的比例抽取训练集和验证集。
在这里插入图片描述

嵌套交叉验证

当测试集很小时,可以通过改变测试集样本,让每份样本都至少一次作为测试集。这样子就会有嵌套的两层循环,外循环用于选取不同的测试集,内循环则按照上面说的交叉验证进行。这样子整体的计算量会被增加,但这有助于我们能够更加客观的评估模型。
在这里插入图片描述

参考

【小萌五分钟】机器学习
机器学习中的参数与超参数之间的区别
机器学习和深度学习概念入门
easy-ai知识库

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值