机器学习笔记(十):机器学习系统的设计

版权声明:本文为博主原创文章,转载请注明出处。 https://blog.csdn.net/cg129054036/article/details/84816492

目录

1)Prioritizing what to work on:Spam classification example

2)Error analysis

3)Error metrics for skewed classes

4)Trading off precision and recall

5)Data for machine learning


下面将学习到在构建大型机器学习系统时有用的方法,数学性不会很强,但是也很使用。来看一个垃圾邮件分类器。

1)Prioritizing what to work on:Spam classification example

首先我们构建一个垃圾分类器:

我们接下来可以按照以下方法尝试:

2)Error analysis

除了学习曲线外,误差分析也是很有用的工具。构建一个学习算法的推荐方法为:

3)Error metrics for skewed classes

类偏斜问题表现为我们的训练集中有非常多的同一类的实例,只是很少或没有其他类的实例。来看我们最初提高的癌症的例子:

我们训练的逻辑回归模型比我们非学习来的算法准确率还低,此时误差大小不能视为评判算法的依据。

我们要学习到两个重要指标:准确率和召回率

准确率: P =\frac{TP}{TP+FP}

召回率:R=\frac{TP}{TP+FN}

4)Trading off precision and recall

还是以癌症检查的例子来说明情况:下图显示了我们如何改变阈值提高准确率和召回率:

但在实际中我们一般使用F1值来作为判别标准:

5)Data for machine learning

下图显示了数据量大小对算法性能的影响:

下面介绍了如何解决高偏差(特征足够多)和高方差问题(庞大训练集)的方法。

猜你喜欢

转载自blog.csdn.net/cg129054036/article/details/84816492