优化验证测试的一般形式
你可以在如下情况运用优化验证测试,给定输入
,且知道如何计算 来表示 对输入 的响应好坏。此外,你正在使用一种近似算法来尽可能地找到 ,但却怀疑该搜索算法有时候并不能找到最大值。在我们先前提到的语音识别的例子中, 代表某个音频片段, 代表输出的转录。
假设
是 “正确的” 输出,可算法输出了 . 此时的关键在于测量是否有 . 如果该不等式成立,我们便可以将误差归咎于优化算法。(请参考前一章的内容,以确保你理解这背后的逻辑。)否则,我们将误差归咎于 的计算方式。
让我们再看一个例子:假设你正在构建一个中译英的机器翻译系统,输入一个中文句子
,并计算出每一个可能的翻译句子 的得分,例如,你可以使用,表示给定输入句子 ,对应翻译句子为 的概率。
你的算法将通过计算下面的公式来进行句子的翻译:
然而所有可能的英语句子构成的集合太大了,所以你将依赖于启发式搜索算法。
假设你的算法输出了一个错误的翻译
,而不是正确的翻译 . 优化验证测试会要求你计算是否有 . 如果这个不等式成立,表明 正确地辨认 是一个更好的输出;因此你可以将把这个误差归咎于近似搜索算法。否则,你可以将这个误差归咎于 的计算方式。
在人工智能领域,这是一种非常常见的 “设计模式”,首先要学习一个近似的得分函数
,然后使用近似最大化算法。如果你能够发现这种模式,就能够使用优化验证测试来理解造成误差的来源。
当前内容版权归 吴恩达教授(Andrew Ng) 或其关联方所有,如需对内容或内容相关联开源项目进行关注与资助,请访问 吴恩达教授(Andrew Ng) .