常见机器学习问题

Part I. 基本概念

 

Part II. 典型算法:

1. 决策树: https://blog.csdn.net/bmwlwg/article/details/101267306

2. 支持向量机

3. 随机森林(基本原理/如何调参): https://blog.csdn.net/bmwlwg/article/details/101351158

4. GBDT

5. Xgboost(基本原理/如何调参)

 

[Done] Part III: 如何处理过拟合问题:

参考<神经网络训练技巧>, 采用的典型方法有:

https://blog.csdn.net/bmwlwg/article/details/100932882

  • L1正则化
  • L2正则化
  • Early stop
  • drop out

其他方法:

  • 数据增强
  • 采用更简单的模型(如神经网络减少网络层数和宽度等)
  • 决策树可以采用剪枝;
  • 集成学习, 如随机森林, 随机采样, 随机训练特征子集

 

[Done] Part IV: 特征工程:

1. 特征构造

参考: <特征提取与特征工程> https://blog.csdn.net/bmwlwg/article/details/101690096

2. 特征选择

参考: <特征选择> : https://blog.csdn.net/bmwlwg/article/details/101624229

 

[Done] Part IV: 算法评估

4.1 模型训练评估

一、为分类任务选择正确的衡量指标
不平衡的分类问题:如恐怖分子检测、当疾病在公众中的发病率很低时的疾病监测等
有这么一个模型:将从美国机场起飞的所有乘客简单地标注为非恐怖分子。已知美国全年平均有 8 亿人次的乘客,并且在 2000-2017 年间共发现了 19 名恐怖分子,这个模型达到了接近完美的准确率——99.9999999%。
在恐怖分子检测的问题中宣布所有的数据点为负例(非恐怖分子)是毫无裨益的,相反,我们应该聚焦于正例(恐怖分子)的识别。
直觉告诉我们,我们应该最大化的是统计学上称为召回率或查全率(recall)的衡量指标,或者是最大化模型找到数据集中所有相关案例的能力。
精度:P = TP/(TP+FP);
反映了被分类器判定的正例中真正的正例样本的比重。
准确率(Accuracy)
A = (TP + TN)/(P+N) = (TP + TN)/(TP + FN + FP + TN);
反映了分类器统对整个样本的判定能力——能将正的判定为正,负的判定为负。
召回率(Recall && True Positive Rate)
Recall=TP/(TP+FN);
反映了所有真正为正例的样本中被分类器判定出来为正例的比例
精度就是找得对,召回率就是找得全。
精度(查准率)不冤枉一个好人
召回率(查全率)不放过一个坏人
大概就是你问问一个模型,这堆东西是不是某个类的时候,准确率就是 它说是,这东西就确实是的概率吧,召回率就是, 它说是,但它漏说了(1-召回率)这么多。
二、精度—召回率权衡
在某些情况中,我们也许需要以牺牲另一个指标为代价来最大化精度或者召回率。
例如,在之前的例子中,在对患者进行随访检查的初步疾病筛查中,我们可能希望得到接近于 1 的召回率—我们想找到所有实际患病的患者。如果随访检查的代价不是很高,我们可以接受较低的精度。
然而,如果我们想要找到精度和召回率的最佳组合,我们可以使用 F1 score 来对两者进行结合:精度和召回率的调和平均:

我们使用调和平均而不是简单的算术平均的原因是:调和平均可以惩罚极端情况。一个具有 1.0 的精度,而召回率为 0 的分类器,这两个指标的算术平均是 0.5,但是 F1 score 会是 0。
三、可视化精度和召回率
混淆矩阵(confusion matrix)

注意假正,假负都是针对预测结果而言的

ROC曲线(Receiver Operating Characteristic,受试者工作特征曲线)


ROC曲线显示了当我们调节模型中阈值(高于阈值的为正例)时,召回率与精度的关系如何变化。

假设有一个识别疾病的模型,模型会为每个患者输出一个0到1间的分数,我们可以在0-1范围内设置一个阈值来标记患者是否患有该疾病。 通过调节阈值,我们可以让精度与召回率之间有一个较好的平衡。


ROC 曲线的Y 轴表示真阳性率(TPR), X 轴表示假阳性率 (FPR)。真阳性率就是召回率,假阳性率是负例被判断为正例的概率,两者都可以通过混淆矩阵计算得到。

当阈值为1.0时,我们将位于曲线的左下角,此时没有将数据点标识为正类,也就没有真阳性结果和假阳性结果(TPR = FPR = 0)。
降低阈值时,会沿着曲线向右和向上移动,曲线的右上角对应阈值为0的情况

(1)最好阈值:ROC曲线越靠近左上角,试验的准确性就越高。最靠近左上角的ROC曲线的点是错误最少的最好阈值,其假阳性和假阴性的总数最少
(2)分类器比较:可将各分类方法的ROC曲线绘制到一起,靠近左上角的ROC曲线所代表的受试者工作最准确。亦可通过分别计算各个试验的ROC曲线下的面积(AUC)进行比较,哪一种分类方法的 AUC最大,则诊断价值(分类效果)最佳。
 

4.2 模型落地评估

假设检验

二项分布检验

t检验

 

建模宽表

 

参考信息:

[1]. xgboost入门与实战(原理篇)

[2]. RF、GBDT、XGBoost面试级整理

[3]. RF、GBDT、XGBOOST常见面试算法整理

[4]. AI 算法工程师手册 - 华校专

[5]. [Machine Learning & Algorithm] 随机森林(Random Forest)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值