定义人工智能不是困难,而简直是不可能,这完全不是因为我们并不理解人类智能。奇怪的是,人工智能的进步更多的将帮助我们定义人类智能不是什么,而不是定义人工智能是什么?
但不管人工智能是什么,过去几年我们确实已经在从机器视觉到玩游戏等众多领域取得了很多进展。人工智能正在从一项研究主题向早期的企业采用转变。谷歌和Facebook等公司已经在人工智能上投入了巨大的赌注,并且已经在它们产品中应用了这一技术。
但谷歌和Facebook只是开始而已:在未来十年,我们将见证人工智能蔓延进一个又一个的产品。我们将与Bot交流——它们不是照本宣科的机器人拨号程序(robo-dialer),我们甚至不能意识到它们不是人类。我们将依赖汽车进行路线规划,对道路危险做出反应。
可以毫不夸张地估计:在未来几十年中,我们所接触的每一种应用程序都将整合进一些人工智能功能,而如果使用应用程序,我们将无法做任何事。
鉴于我们的未来将不可避免地与人工智能捆绑在一起,我们就必须要问:我们现在发展得如何了?人工智能的现状是怎样的?我们将走向何方?
如今人工智能的能力和局限
对人工智能的描述围绕着以下几个中心:强度(有多智能)、广度(解决的是范围狭窄的问题,还是广义的问题)、训练(如何学习)、能力(能解决什么问题)和自主性(人工智能是辅助技术还是能够只靠自己行动)。这些每一个中心都有一个范围,而且这个多维空间中的每一个点都代表着理解人工智能系统的目标和能力的一种不同的方式。
在强度(strength)中心上,可以很容易看到过去20年的成果,并认识到我们已经造出了一些极其强大的程序。深蓝(Deep Blue)在国际象棋中击败了Garry Kasparov;沃森(Watson)击败了Jeopardy的常胜冠军;AlphaGo击败了可以说是世界上最好的围棋棋手李世石。
但所有这些成功都是有限的。深蓝、沃森和AlphaGo都是高度专业化的、目的单一的机器,只能在一件事上做得很好。深蓝和沃森不能下围棋,AlphaGo不能下国际象棋或参加Jeopardy,甚至最基本的水平都不行。它们的智能范围非常狭窄,也不能泛化。
沃森已经在医疗诊断等应用中取得了很多成果,但它基本上仍然只是一个必须为特定领域专门调制的问答机器。深蓝拥有大量关于国际象棋策略的专门知识和百科全书式的开放知识。AlphaGo是用更通用的架构构建的,但其代码中仍然有很多人工编码的知识。我不是轻视或低估他们的成就,但认识到他们还没有做成的事也是很重要的。
我们还没能创造出可以解决多种多样不同类型问题的人工通用智能(artificial general intelligence)。我们还没有听一两年人类对话的录音就能自己说话的机器。尽管AlphaGo通过分析数千局比赛然后又进行更多的自我对弈而“学会”了下围棋,但这同样的程序却不能用来掌握国际象棋。
同样的一般方法呢?也许可以吧。但我们目前最好的成就离真正的通用智能还很远——真正的通用智能能灵活地无监督地学习,或能足够灵活地选择自己想要学习的内容,不管那是玩棋盘游戏,还是设计PC板。
迈向通用人工智能
我们如何从狭窄的、特定领域的智能迈向更通用的智能呢?这里说的“通用智能”并不一定意味着人类智能,但我们确实想要机器能在没有编码特定领域知识的情况下解决不同种类的问题。我们希望机器能做出人类的判断和决策。
这并不一定意味着机器将实现创造力、直觉或本能等没有数字类比的概念。通用智能将具备处理多种类型的任务和适应未曾预料的情形的能力。一个通用智能无疑可以实现“正义”和“公平”这样的概念:我们已经在谈论人工智能对法律系统的影响了。
我们先以自动驾驶汽车来证明我们所面临的问题。要实现自动驾驶,汽车需要将模式识别和其它能力整合到一起,包括推理、规划和记忆。它需要识别模式,这样才能对障碍物和街道标志做出反应;它需要推理,这样才能理解交通规则和解决像避开障碍物等任务;它需要规划以获得从当前位置到目标位置的路径,并同时考虑到交通状况等其它模式。
它需要不断重复做这些事,不断更新它的解决方案。但是,即使一辆自动驾驶汽车整合了所有这些人工智能,它也不具备我们所期望的通用智能应该具备的灵活性。你不会期待一辆自动驾驶汽车能和你交谈或布置你的花园。将从一个领域学习到的知识应用到另一个领域的迁移学习是非常困难的。
你也许可以重新加工其中许多软件组件,但那只能指出缺少了什么:我们当前的人工智能能为特定问题提供范围狭窄的解决方案,它们并不是通用的问题解决者。你可以将范围狭窄的人工智能叠加到一起(一辆车可以带有能谈论去哪里、进行餐厅推荐和与你下棋让你不会感觉无聊的Bot),但狭窄人工智能的叠加永远不能得到一个通用人工智能。通用人工智能的关键不是有多少种能力,而是这些能力的整合。
尽管神经网络这样的方法原本是为模拟人脑过程而开发的,但许多人工智能计划已经放弃了模仿生物大脑的概念。我们不知道大脑的工作方式;神经网络计算是非常有用的,但它们并没有模拟人类的思维。