9. 优化和满足指标(machine learning yearning)

有另一种方法合并多个评估指标。

假设你同时关心一个算法的精确度和运行时间。你需要在这三个分类器上做选择:


采用简单的公式将准确率和运行时间合并为一个单一的指标看上去并不自然,比如:
Accuracy - 0.5*RunningTime

你可以这样做:首先,定义一个“可接受的”运行时间。比如100ms以内是可以接受的。然后,在你的分类器满足运行时间的准则下,最大化准确率。这里,运行时间是一个“满足指标”(satisficing metric)——你的分类器只需要在该指标上足够好即可,在这个场景下它最多100ms。准确率是“优化指标”(optimizing metric)。

如果你权衡N个不同的准则,比如模型二进制文件的大小(对于手机应用这是重要的,因为用户不想下载很大的应用),运行时间和准确率,你可能需要考虑将其中N-1个作为满足指标。也就是说,你简单地需要这N-1个满足一个特定值。然后定义最后一个为优化指标。比如,对于二进制大小和运行时间可接受的数值设置一个阈值,然后在这些约束下试着优化准确率。

最后一个例子,假设你创建一个硬件设备,这个设备通过麦克风监听用户说话,当发现说特定的“唤醒词(wakeword)”,则会唤醒系统。比如,亚马逊的Echo监听“Alexa”,苹果的Siri监听“Hey Siri”,Android监听“Okay Google”,百度的应用监听“Hello Baidu”。你会关心假正例的比率(the false positive rate)——没有说唤醒词的情况下系统被唤醒的频率,同时也会关心假反例的比率(the false negative rate)——当某个人说了唤醒词它唤醒失败的频率。这样一个系统的合理性能应该是在每24个小时的操作不超过一个假正例的情况下(满足指标),最小化假反例比率(优化指标)。

一旦你的团队对评估指标进行优化,他们将会获得更快的进展。

你可能感兴趣的:(9. 优化和满足指标(machine learning yearning))