机器学习基础知识(2)

一、验证

1、了解

  • 模型不能过拟合于训练集,否则将不能在测试集上得到最优结果;但是否能直接以测试集上的表现来选择模型参数呢? 答案是否定的。因为这样的模型参数将会是针对某个特定测试集的,得出来的评价标准将会失去其公平性,失去了与其他同类或不同类模型相比较的意义
  • 因此参数的选择(即调参)必须在一个独立于训练集和测试集的数据集上进行,这样的用于模型调参的数据集被称为开发集或验证集。
  • 然而很多时候我们能得到的数据量非常有限。这个时候我们可以不显式地使用验证集,而是重复使用训练集和测试集,这种方法称为交叉验证。
  • 常用的交叉验证方法有: 简单交叉验证。 K-重交叉验证。

2、交叉验证

  • 留出法(Holdout cross validation) 按照固定比例将数据集静态的划分为训练集、验证集、测试集。
  • 自组法(bootstrapping) 适合于样本数目较少,有放回的取法。
  • k 折交叉验证(k-fold cross validation):k 一般取 10 将数据集分为训练集和测试集,将测试集放在一边: 将训练集分为 k 份 、每次使用 k 份中的 1 份作为验证集,其他全部作为训练集。 通过 k 次训练后,我们得到了 k 个不同的模型。 评估 k 个模型的效果,从中挑选效果最好的超参数 使用最优的超参数,然后将 k 份数据全部作为训练集重新训练模型,得到最终模型。

二、正则化

  • Dropout :是一种正则化方法,用于随机禁用神经网络单元。

三、无监督学习

  1. 在无监督学习中,数据集{x^(i)}_i=1^N中只有模型的输入,而并不提供正确的输出y^(i)作为监督信号
  2. 数据中不含有“目标”的机器学习问题通常被为无监督学习(unsupervised learning)
  3. 聚类(clustering)问题:
  • 没有标签的情况下,我们是否能给数据分类呢?比如,给定一组照片,我们能把它们分成风景照片、狗、婴儿、猫和山峰的照片吗?同样,给定一组用户的网页浏览记录,我们能否将具有相似行为的用户聚类呢?
  • 将相似的对象归入同一个“类”

4.主成分分析(principal component analysis)问题(PCA):

  • 我们能否找到少量的参数来准确地捕捉数据的线性相关属性?
  • 比如,一个球的运动轨迹可以用球的速度、直径和质量来描述。
  • 再比如,裁缝们已经开发出了一小部分参数,这些参数相当准确地描述了人体的形状,以适应衣服的需要。
  • 主成分分析PCA是一种常用的数据分析方法。PCA通过线性变换将原始数据变换为一组各维度线性无关的表示,可用于提取数据的主要特征分量,常用于高维数据的降维

5.因果关系(causality)和概率图模型(probabilistic graphical models)问题

  • 我们能否描述观察到的许多数据的根本原因? 例如,如果我们有关于房价、污染、犯罪、地理位置、教育和工资的人口统计数据,我们能否简单地根据经验数据发现它们之间的关系?
  • 如果想通过物体a去推断物体b,就是将物体a放在这里会增加物体b出现概率的多少,想要找到这样一个确定的促进关系即因果关系 往往会被confounder干扰到,而这个confounder就是物体a与b之间的共因。

6.生成对抗性网络(generative adversarial networks):

  • 为我们提供一种合成数据的方法,甚至像图像和音频这样复杂的非结构化数据。潜在的统计机制是检查真实和虚假数据是否相同的测试,它是无监督学习的另一个重要而令人兴奋的领域。

7.无监督学习衡量指标

  • 直观检测:这是一种非量化的方法。 例如对文本的主题进行聚类,我们可以在直观上判断属于同一个类的文本是否具有某个共同的主题,这样的分类是否有明显的语义上的共同点
  • 基于任务的评价:如果聚类得到的模型被用于某个特定的任务,我们可以维持该任务中其他的设定不变,使用不同的聚类模型,通过某种指标度量该任务的最终结果来间接判断聚类模型的优劣。
  • 人工标注测试集:有时候采用非监督学习的原因是人工标注成本过高,导致标注数据缺乏,只能使用无标注数据来训练。 在这种情况下,可以人工标注少量的数据作为测试集,用于建立量化的评价指标。

四、监督学习

  1. 回归问题:在生活中非常常见,其最简单的形式是一个连续函数的拟合
  • 一个购物网站想要计算出其在某个时期的预期收益,研究人员会将相关因素如广告投放量、网站流量、优惠力度等纳入自变量,根据现有数据拟合函数,得到在未来某一时刻的预测值。
  • 回归问题中通常使用均方损失函数来作为度量模型效果的指标,最简单的求解例子是最小二乘法。

3.线性回归可以用于预测什么中的场景?

预测房价

  • 假设我们想要预测某个城市的房价。我们可以收集到该城市过去几年的房价数据,以及一些相关的因素,比如房屋的面积、房龄、所处区域、楼层等。我们可以使用这些数据建立一条最佳拟合直线,从而对未来的房价进行预测。
  • 在这个例子中,自变量可以包括面积、房龄、所处区域等,因变量是房价。
  • 我们可以通过最小二乘法来估计截距和斜率的值,从而得到一条最佳拟合直线。这条直线可以用来预测未来的房价,也可以用来分析不同因素对房价的影响。

预测销售额

  • 假设我们想要预测某家公司未来一年的销售额。 我们可以收集到该公司过去几年的销售额数据,以及一些相关的因素,比如广告投入、促销活动、季节性因素等。我们可以使用这些数据建立一条最佳拟合直线,从而对未来的销售额进行预测。
  • 在这个例子中,自变量可以包括广告投入、促销活动、季节性因素等,因变量是销售额。我们可以通过最小二乘法来估计截距和斜率的值,从而得到一条最佳拟合直线。这条直线可以用来预测未来的销售额,也可以用来分析不同因素对销售额的影响。

4.分类问题

  • 想要预测(检测)的目标是猫,那么在数据集中猫为正样本(Positive ),其他狗、兔子、狮子这些数据为负样本(Negative )。
  • 将这只猫预测(分类)为狗、兔子、其他预测结果为错(False);将这只猫预测为猫,预测结果为对(True)。
  • 将正样本预测正样本(True Positive, TP)
  • 将正样本预测为负样本(False Negative, FN)
  • 将负类样本预测为正样本(False Positive, FP)
  • 将负类样本预测为负样本(True Negative, TN)

5.分类评估指标:

  • 准确率(Accuracy):对于测试集中D个样本,有k个被正确分类,D-k个被错误分类,则准确率为:虽然准确率可以判断总的正确率,但是在样本不平衡 的情况下,并不能作为很好的指标来衡量结果。 举个简单的例子,比如在一个总样本中,正样本占 90%,负样本占 10%,样本是严重不平衡的。 对于这种情况,我们只需要将全部样本预测为正样本即可得到 90% 的高准确率,但实际上我们并没有很用心的分类,只是随便无脑一分而已。 这就说明了:由于样本不平衡的问题,导致了得到的高准确率结果含有很大的水分。即如果样本不平衡,准确率就会失效。
  • 精确率(查准率)- Precision:所有被预测为正样本中实际为正样本的概率精准率代表对正样本结果中的预测准确程度。 准确率则代表整体的预测准确程度,既包括正样本,也包括负样本
  • 召回率(查全率)- Recall:实际为正的样本中被预测为正样本的概率召回率的应用场景: 比如拿网贷违约率为例,相对好用户,我们更关心坏用户,不能错放过任何一个坏用户。因为如果我们过多的将坏用户当成好用户,这样后续可能发生的违约金额会远超过好用户偿还的借贷利息金额,造成严重偿失。 召回率越高,代表实际坏用户被预测出来的概率越高,它的含义类似:宁可错杀一千,绝不放过一个。 召回率越高,也代表网络可以改进的空间越大。
  • 把精确率(Precision)和召回率(Recall)之间的关系用图来表达,就是下面的PR曲线:平衡点(BEP)P=R,AP(Average Precision):PR曲线下的面积。 通常来说一个越好的分类器,AP值越高。mAP是多个类别AP的平均值。这个mean的意思是对每个类的AP再求平均,得到的就是mAP的值,mAP的大小一定在[0,1]区间,越大越好。该指标是目标检测算法中最重要的一个。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值