1.7 什么时候开始改变开发/测试集和指标
When to change dev/test sets and metrics
改变评价指标的例子:

Cat vs Non-cat

第三部分 机器学习(ML)策略1 - 4 笔记

从评价指标上看算法A优于算法B,但是可以存在这种情况,算法A会将pornographic图片错分为猫,而算法B并不会,爱猫人士是不能容忍算法A的结果,这样即使算法A在评价指标上优于算法B,从公司的角度来看也会倾向于选择算法B。
不合理的评价指标可以用函数的形式表达:

第三部分 机器学习(ML)策略1 - 4 笔记

当评价指标并不能反映实际算法的优劣时,需要改进评价指标或开发/测试集。
针对Cat vs Non-cat的例子,可以对Cat Non-cat两种类别定权来改变误差指标,权重可以表示为:

第三部分 机器学习(ML)策略1 - 4 笔记

相应的误差指标可以改进为:

第三部分 机器学习(ML)策略1 - 4 笔记

由此例子可以总结出机器学习的两个步骤(正交):1、选择合理的评价指标去评估分类器 2、利用数据集针对评价指标进行算法优化。
综合的一个例子:
第三部分 机器学习(ML)策略1 - 4 笔记

在训练猫分类器时,用到的开发/测试数据如果是高清的、标准的,而在实际应用场景中,用户上传的图像可能是不标准的甚至模糊的。
这样评价指标较好的A分类器,在实际应用中的表现并不一定会比B要好。当遇到这种情况时,需要总体考虑这个学习策略,改善开发/测试集数据以及评价指标。
老吴指出在明确训练目标之后,首先要做的任务,并不一定是花费大量时间找到最佳的评价指标以及最佳的数据集划分,时间很宝贵,先确定一个评价指标以及数据集划分,先让系统运转起来,然后让系统高速迭代起来,并不断的改善性能,这样的系统迭代方法往往最为现实。
1.8 为什么是人的表现
Why human-level performance?
第三部分 机器学习(ML)策略1 - 4 笔记

随着机器学习的发展,机器学习算法已经可以和人类水平相媲美,在不少任务上甚至已经超过人类水平。
随着时间的推移,机器学习系统不断的改进和完善,但是任何任务都会有一个理论误差上限,称之为贝叶斯最优误差(Bayes/Bayesian (optimal) error),即理论上所能达到的最优误差。完美的准确率不可能为100%。机器学习算法在超过人类水平之后会逐渐接近理论上限,但并不会超过。并且机器学习的表现在超过人类水平之前,学习的效率会很快,超过之后会放慢。
原因1:人类在很多任务上的表现已经非常接近贝叶斯误差。
原因2:在低于人类水平之前,可以运用很多工具去提高性能,而一旦超过了人类水平,这些工具并不那么好用。
与人类表现进行比较,对机器学习系统进行改进的工具:
  1. 人工数据标签。
  2. 通过人工对机器学习系统的误差进行分析,模仿人类思维进行改进。
  3. 分析偏差和方差,减小或者增大,随后改进模型方法。

相关文章: