智能机器在特定的领域越来越智能,甚至在某些领域(比如围棋领域的阿法狗,射击领域的Top Gun)已经超过了人类。也许在未来的某一天,机器能够取代人成为智能性水平的最终定义者。
4.5. 可释性测试
如同图灵测试一样,我们现在更多的关注智能机器的外在表现多于机器内部的运行机制。如果某智能机器通过了所有的测试任务,我们就承认了其在该领域的智能性。但是我们很难知道怎样的外在表现是最优的。
当今的智能机器越来越复杂,我们很难完全搞懂其内部的算法(例如复杂的深度学习算法),这就类似于一个“黑盒子”。并且我们基于传统可释性逻辑制造出来的机器很难和这种“黑盒子”媲美,距今为止,很少有人能找出一种“内外兼修”的测试方法,这将是未来一个很重要的研究方向。
4.6. 智能性测试在智能机器软件开发中的必要性
鉴于目前大部分AI的程序都是在电脑中通过编程完成,所以测试实现AI的软件显得尤为重要,所以我们需要建立一套完善的对这些软件的测试体系。例如测试驱动型开发(TDD)就在当今工业界被广为接受:TDD最基础的思路是首先把需求分解转换成相应的测试用例,然后不停的优化软件让其通过这些测试。在这种研发思路中,我们能很好的保证软件的质量并能让软件有更好的可读性。
目前在该领域最缺乏的是良好的测试和调试工具,这种对于AI软件的测试工具市面上非常少。
4.7. 终生测试
就像前文所述的,现在有越来越多的方法来测试智能性,但是这些测试方法的落地还需要很长一段时间。我们把这一落地过程称之为“终生测试”(Life-long Testing)。我们应该把AI机器的研发和测试当作一个整体来考虑,随着测试的不断深入,机器的智能性也会因此而提升。
在当今工业界,我们更多的是把多种“低级别”的简单机器进行组合来制造“高级别”机器。很难想象,我们400年前只能制造一些很小的玩具,而如今我们却有着十分复杂的GPU,CPU等。同样的,我们相信在AI领域,也会是如此,会有更多的“高智能性”机器从“低智能性”机器中衍生而来,我们可以一起见证这一时刻的到来。
4.8. 测试的商业化
目前的AI革命正在极大的改变我们的生活,有很多人类的工作正在或者在不就的将来就会被机器代替。同时,新的AI领域也催生了一大批新的工作,智能性测试当然也在其中之列,例如我们现在需要非常多的人来标定视频数据来训练我们的深度学习模型。
5. 结论
本文主要讨论了智能性测试的难点,并以此为基础提出了智能性测试方法:智能性测试和机器学习的过程类似,两者如同一个硬币的两面。并且我们提出了虚实结合的平行测试方法:首先在虚拟环境中描述测试任务,然后进行取样,最后执行测试,通过这个流程我们能够找到其中最难的测试任务;另外,虚拟测试需要平行的去执行,这样可以帮助我们更好的找到更“真实”更“丰富”的测试数据集,这将极大的改善测试的效率和经济性。
但是,“终生测试”将是一场持久战,目前我们还没有能够找到一个脱离人能够自己运行的虚实结合的平行测试系统,我们相信,这一天迟早会到来。