为什么要选择性选择机器学习策略
在机器学习(深度学习)系统开发过程中有很多策略可以用来改善机器学习系统,如果没有针对性的选择这些策略则容易做些无用的尝试,以下为常见的机器学习策略。
正交化 (Orthogonalization)
如下图所示为生活中正交化的例子 ,电视机调方向、调大小的开关分开互不影响,若同时设置几个开关:他们既调位置也调大小,理论上这几个开关互相组合便能调出合适图像,但生活经验可知这几乎不可行。汽车方向盘和油门也是这个意思,如果设计两个开关都可以同时调节速度和方向,理论上通过组合也是可以达到想要的速度和方向。这种正交化的方法把功能互相独立的思想在机器学习系统中也非常适用,如下图所示:
注:课程中提到早停策略就是典型的非正交,因为会同时影响训练集和验证集的误差。
单一数字评价指标(using a single number evaluation metric)
如上图所示,当我们评价一个分类器A和分类器B时,若同时参考查准率和查全率则无法比较这两个分类器的好坏,此时综合两项指标,用F1作为单一的评价标准则可以很快的评价两个分类器。
满足指标和优化指标
当有多项指标需要评价时,我们通常把其中一项设置为优化指标,其他指标设置为满足指标,以下图做例子,给running time设置一个阈值,小于该阈值的分类器再选择一个准确率最高的分类器。
验证集(开发集)和测试集的选择
如上图所示,当我们要开发一个猫的分类器时,猫的图片来自不同的国家,一种不好的验证集和测试集的设置是选择几个国家的图片作为验证集,然后选择其余不同国家的图片作为测试集。正确是方式应该随机选取,保持验证集和测试集的数据符合同一分布并且要能够反映将来你需要用到的场合的数据特点
什么时候该改变开发/测试集和指标
在实际开发机器学习系统时,评价指标是根据实际需求改变的。以下有两个例子,其一,如下图所示,当做一个图片分类器时,算法A的误差比算法B的误差要小,但是如果在算法A中的那
3%
3
%
的误差图片中很多是色情图片,而算法B中
5%
5
%
的误差图片几乎没有色情图片,这种情况我们可以重新给误差函数加入一个权重
ωi
ω
i
若样本为非色情图片则
ωi=1
ω
i
=
1
,为色情图片则可以给
ωi
ω
i
设置一个比较大的值。
第二个例子如下图所示,我们训练时是用比较高清的图片进行训练,模型的效果也比较好,但是当用户的照片是非高清时,模型的效果表现并没有那么好,此时,则可以改变训练集、验证集和测试集了。
可避免的误差
贝叶斯误差:我们把误差的最小值称为贝叶斯误差(理论上不可测),现实中,人类对很多任务可以做得很好,我们可以近似的把人的误差看成贝叶斯误差(贝叶斯误差的实际近似根据情况不同设置也不同,如有时可以把专家的误差看成贝叶斯误差)。如下图所示,如果人的误差为
1%
1
%
机器的误差为
8%
8
%
,我们则可以认为可避免误差为
7%
7
%
把主要精力放在减少误差上,如果人的误差为
7.5%
7.5
%
,则可避免误差为
0.5%
0.5
%
把主要精力放到减少方差上。
总结 (改善模型的表现)
主要总结了本周的一些方法,利用正交化来改善性能
注:这里并没有完全理解图中提供的方法是否做到了正交化,如bigger model是否会有提高方差的风险?