谷歌人工智能专家:机器学习面临新的挑战

2019-01-27 17:18 来源:站长作者:站长
  

如果调试机器学习如此困难,为什么要使用它?虽然机器学习验证有局限性,但它在开发速度方面仍有一些优势。对于特定问题,例如语音识别或图像分类,复杂系统解决方案的速度可以是传统编程方法的两倍。、是、的两倍甚至三倍。例如,芯片制造商Nvidia工程师为自动驾驶汽车原型编写了一个100小时的培训数据程序。应用机器学习效率对于需要使用它并需要新的验证方法的程序员来说非常有吸引力。

实际上,调试机器学习的出发点是区分问题中固有的风险和危险以及问题解决方案中技术的风险和危害。只有后者,技术解决方案中的固有风险和危害才能得到控制。

不稳定的条件会影响传统的编程和机器学习。所谓的不稳定意味着条件随着时间的推移而发生变化。最初,在相同条件下设计的系统非常有效,但慢慢开始表现不佳。在传统编程中,当要发布新程序时,通常在正式发布之前使用可验证的调试过程对其进行测试和验证。

但是在机器学习中,似乎这种验证失败了,因为机器学习不适合传统的编程技术的逐步过程:开发、测试、终于发布了。在机器学习中,数据被连续生成,然后由机器学习系统连续获取,并且机器学习系统被重新编程,这又导致不能实现的逐步方法。

Norvig解释了他对机器学习验证的看法。传统的测试套件是根据“真正的”、“假”、和“相等”条件判断的,机器学习测试应该基于评估测试,例如今天的测试结果是90%好,昨天的测试运行结果是一致的。

谷歌人工智能专家:机器学习面临新的挑战

除了验证问题的麻烦之外,机器学习系统产品的基础事实可能是未知的或主观的。例如,想象一下,我们设计了一个机器学习系统来确定下图中的裙子是金白色,蓝色还是黑色。这个问题不能在人类之间达成一致。

Norvig解释说:“对于一些问题,我们不知道正确的答案是什么。那么,你如何训练机器学习算法来判断一些根本没有答案的问题呢?”在Norvig看来,让机器学习寻求正确答案只能依靠无偏见的方法,例如引入“陪审团”机制。人类生成数据来训练机器学习,但是人类本身就有偏见,所以即使在这种模式下,机器学习仍然有一些偏见。为了匹配机器学习系统是否满足其原始设计,评估方法必须能够识别和消除偏差。传统软件是模块化的,每个模块的输入和输出都是独立的,因此很容易识别哪个模块是一个bug。然而,在机器学习中,尽管系统是使用数据开发的,但在系统内,任何错误都可以被复制,最终导致“携带整个身体”。虽然我们可以使用一些技术来理解机器学习中的内部错误,但是有一些方法可以重新训练机器学习系统,但是目前还没有办法解决任何这些独立问题。