读书会讨论第一讲问题

读书会讨论第一讲问题

1、Bagging & Boosting

知乎上对于bias与boosting对于偏差方差的影响讲解的比较好,将其链接放这。
为什么说bagging减少variance,boosting减少bias?
引用其中我认为对此问题的必答点

(1)Bagging对样本重采样,对每一重采样得到的子样本集训练一个模型,最后取平均。子样本集的相似性及使用的同种模型,因此各模型有近似相等的bias和variance。
(2)因为E[Xin]=E[Xi]E[\frac{\sum{X_i}}{n}]=E[X_i],所以经过Bagging后bias和单个子模型接近,一般来说不能显著降低bias。另一方面,若各子模型独立,则Var([Xin])=Var(Xi)nVar([\frac{\sum{X_i}}{n}])=\frac{Var(X_i)}{n},此时可以显著降低variance。若各子模型完全相同,则Var([Xin])=Var(Xi)Var([\frac{\sum{X_i}}{n}])=Var(X_i),此时不会降低variance
(3)boosting 是串联地最小化损失函数,其bias逐步下降。将许多弱分类器组合成一个强分类器,弱的分类器bias高,强的分类器bias低

对比方面 Bagging Boosting
样本选择 训练集有放回,各轮训练集独立 每轮训练集不变,每个样例的权重改变,据上一轮结果调整
样例权重 均匀取样,每个样例权重相等 错误率越大,权重越大
预测函数 权重相等 分类误差小的分类器,权重大
并行计算 各个预测函数可以并行生成 各个预测函数只能顺序生成

2、P-R图与ROC曲线的绘制

绘图过程:假设给定m个正例子,n个反例子,根据模型预测结果进行排序,首先把分类阈值设为最大,使得所有例子均预测为反例,再将分类阈值依次设为每个样例的预测值,即依次将每个例子划分为正例。

实际类别 预测值 阈值11 阈值10 阈值9 阈值8 阈值7 阈值6 阈值5 阈值4 阈值3 阈值2 阈值1
- 10.1 - + + + + + + + + + +
+ 9.1 - - + + + + + + + + +
+ 8.1 - - - + + + + + + + +
+ 7.1 - - - - + + + + + + +
- 6.1 - - - - - + + + + + +
- 5.1 - - - - - - + + + + +
+ 4.1 - - - - - - - + + + +
+ 3.1 - - - - - - - - + + +
- 2.1 - - - - - - - - - + +
- 1.1 - - - - - - - - - - +
Recall TP/(TP+FN) 0/5 0/5 1/5 2/5 3/5 3/5 3/5 4/5 5/5 5/5 5/5
Precision TP/(FP+TP) 0/0 0/1 1/2 2/3 3/4 3/5 3/6 4/7 5/8 5/9 5/10

读书会讨论第一讲问题
比较对于同样的样本,不同学习器的好坏
A:[反正正正反反正正反反]
B : [反正反反反正正正正反]
按照绘图过程,可以得到学习器对应的ROCROC曲线点

A:
y:[0,0,0.2,0.4,0.6,0.6,0.6,0.8,1,1,1]
x:[0,0.2,0.2,0.2,0.2,0.4,0.6,0.6,0.6,0.8,1]

B:
y:[0,0,0.2,0.2,0.2,0.2,0.4,0.6,0.8,1,1]
x:[0,0.2,0.2,0.4,0.6,0.8,0.8,0.8,0.8,0.8,1]

实际类别 预测值 阈值11 阈值10 阈值9 阈值8 阈值7 阈值6 阈值5 阈值4 阈值3 阈值2 阈值1
- 10.1 - + + + + + + + + + +
+ 9.1 - - + + + + + + + + +
+ 8.1 - - - + + + + + + + +
+ 7.1 - - - - + + + + + + +
- 6.1 - - - - - + + + + + +
- 5.1 - - - - - - + + + + +
+ 4.1 - - - - - - - + + + +
+ 3.1 - - - - - - - - + + +
- 2.1 - - - - - - - - - + +
- 1.1 - - - - - - - - - - +
TPR TP/(TP+FN) 0/5 0/5 1/5 2/5 3/5 3/5 3/5 4/5 5/5 5/5 5/5
FPR FP/(FP+TN) 0/5 1/5 1/5 1/5 1/5 2/5 3/5 3/5 3/5 4/5 5/5
实际类别 预测值 阈值11 阈值10 阈值9 阈值8 阈值7 阈值6 阈值5 阈值4 阈值3 阈值2 阈值1
- 10.1 - + + + + + + + + + +
+ 9.1 - - + + + + + + + + +
- 8.1 - - - + + + + + + + +
- 7.1 - - - - + + + + + + +
- 6.1 - - - - - + + + + + +
+ 5.1 - - - - - - + + + + +
+ 4.1 - - - - - - - + + + +
+ 3.1 - - - - - - - - + + +
+ 2.1 - - - - - - - - - + +
- 1.1 - - - - - - - - - - +
TPR TP/(TP+FN) 0/5 0/5 1/5 1/5 1/5 1/5 2/5 3/5 4/5 5/5 5/5
FPR FP/(FP+TN) 0/5 1/5 1/5 2/5 3/5 4/5 4/5 4/5 4/5 4/5 5/5

读书会讨论第一讲问题
结论:学习器A的ROC图包含了学习器B的ROC图,故学习器A的效果更好。

3、ROC曲线与PR曲线的区别

(1) 不同点:

① ROC曲线是单调,方便调参,可以用AUC的值得大小来评价分类器的好坏,PR曲线不单调。
② 数据不平衡时,PR曲线是敏感的,随着正负样本比例的变化,PR会发生强烈的变化,因此能够看出分类器随着样本比例变化的效果以此进行模型的改进。ROC曲线不敏感,故其曲线能够基本保持不变,面对不平衡数据的一致性表明其能够衡量一个模型本身的预测能力。

(2)使用场景

①ROC曲线由于兼顾正例与负例,所以适用于评估分类器的整体性能,相比而言PR曲线完全聚焦于正例,故如果想要评估在相同的类别分布下正例的预测情况,则宜选PR曲线。
②如果有多份数据且存在不同的类别分布,比如广告点击率预测问题中每个月正例和负例的比例可能都不相同,类别分布改变可能使得PR曲线发生变化时好时坏,则比较分类器的性能时选用ROC曲线比较适合。