————人工智能是否能真正地理解人类语言? 当前的人工智能似乎很容易理解数据,但事实证明,设计对机器是否真正"理解"人类语言的测试很困难。2010年,一项人工智能挑战活动中来自IBM的Watson人工智能获得冠军,随后IBM宣称:"Watson能够理解人类自然语言的所有歧义和复杂性"。在这十年中,社会各界对人工智能一片"唱响",但是计算机科学家们通过长时间的研究发现我们高兴的还是太早了! 虽然人工智能在这十年中在各行业领域都发挥出了巨大的优势,但是经过十年的发展,人工智能可能要再次面临瓶颈期。科学家在随后寻求"用Watson人工智能彻底改变医学"的过程中就惨遭失败,最近科研人员发现与Watson人工智能在医学上失败一样,人工智能对人类语言的处理能力实际上处于"表层理解"与实际理解人类语言并不相同。 自然语言理解长期以来一直是人工智能研究的主要目标。人工智能发展初期,研究人员试图手动编程机器需要理解人类的新闻故事、小说或人类可能表达的任何内容。但这种方法是徒劳的——不可能写下理解文本所需的所有规则和假设,包括成文的和不成文的。 随着机器神经网络的快速发展,人工智能建立起语言识别的新模式——通过神经网络让机器自己学习理解语言,只需为机器训练大量文本并学习预测单词即可,这就是目前的建立语言模型基本方法。 基于大型神经网络的人工智能,比如OpenAI的GPT-3,这样的模型甚至可以生成不可思议的人类散文和诗歌并且似乎能够执行复杂的语言推理。 虽然GPT-3对来自数千个网站数据、书籍和百科全书的文本进行训练,但是GPT-3是否就正在超越了Watson的"表面理解"模式?GPT-3真的理解它生成的语言所代表的推理吗?目前这是AI研究界存在明显分歧的话题。 此类讨论曾经是哲学家的职权范围,但在过去十年中,人工智能已经从学术泡沫中迸发出来,进入了现实世界,它对现实世界缺乏的了解可能会产生真实的、甚至是毁灭性的后果。 科幻电影---机械公敌海报 在科研人员对IBM的Watson人工智能应用于医疗实践中,发现Watson多次对患者提出极不安全和不正确治疗建议,谷歌的机器翻译系统在为非英语患者翻译医疗说明时也出现过重大错误(事实证明医疗药品的英文说明不能指望机器翻译,因为它可能会让您"吃出毛病")。 但是我们如何在实践中确定机器是否可以理解?1950年,计算先驱艾伦图灵试图用他著名的"模仿游戏"来回答这个问题,现在称为图灵测试。一台机器和一个人都隐藏在幕后,仅使用对话的方式让对面的测试者判断哪个才是真人。如果测试者无法分辨哪个是人类,那么,我们应该认为机器正在以人类的方式思考——实际上就是理解人类的语言。 不幸的是,不是图灵高了机器,而是高估了人类。例如,1960年代的机器心理治疗师Eliza是一个很简单的聊天机器人,它也会欺骗人们,让人们相信他们正在与正常人类交谈,难以理解的是即使人们知道他们对话的伙伴是一台机器,仍然有很多人相信对面是一个人! 2012年的一篇论文中,计算机科学家提出了一个更客观的测试,称之为"威诺格拉德模式挑战(Winograd)"的模式挑战。此测试已被AI语言领域广泛采用,作为评估机器理解能力的一种有效方式,也许是最好的方式——尽管它并不完美。模式由一对句子组成,这些句子仅相差一个词,每个句子后跟一个问题。 【威诺格拉德模式挑战:英語:Winograd Schema Challenge,缩写WSC,是多伦多大学计算机科学家提出的机器智能测试,该测试是对传统图灵测试的改进,在机器不能使用谷歌搜索(或类似搜索引擎)来正确回答问题的前提下,通过向机器询问特别设计的选择题来检测其人机交互的智能水平】 这里有两个例子: 例一 第1句:我把瓶子里的水倒进杯子里,直到它满了。问题:什么是满的,瓶子还是杯子?第2句:我把瓶子里的水倒进杯子里,直到杯子空了。问题:什么是空的,瓶子还是杯子? 例二 第1句:乔的叔叔在网球上仍然可以击败他,尽管他已经 30 岁了。问题:谁大,乔还是乔的叔叔?第2句:乔的叔叔在网球上仍然可以击败他,即使他比他年轻 30 岁。问题:谁更年轻,乔还是乔的叔叔? 基于神经网络的语言模型在测试上达到了大约 97% 的准确率,这大致相当于人类的表现。 在每个句子对话中,一个词的差异可以改变代词所指的事物或人。正确回答这些问题似乎需要常识性的理解。"威诺格拉德模式挑战(Winograd)"正是为了测试这种理解而设计的,目的是尽量减少人工智能对人类语言的误解和理解上的脆弱性。 随着大型神经网络语言模型的出现,人工智能程序解决 Winograd 模式的能力迅速提高。2020年,OpenAI的GPT-3通过Winograd测试的准确率达到90%,在专门针对这些任务进行训练后,其他语言模型的表现甚至更好。最近的人工智能语言理解竞赛SuperGLUE,某神经网络语言模型达到了约 97% 的准确率,这种准确性接近人类的水平。 这是否意味着神经网络语言模型已经达到了人类的理解水平? 不必然,尽管竞赛创建者尽了最大的努力使竞赛的问题无法通过谷歌或其他引擎搜索,但是这些挑战,就像许多其他当前的人工智能语言理解测试一样,对于神经网络在不理解的情况下也能表现良好成绩是允许的(高分低能)。 例如,句子"跑车超过邮车因为它开得更快"和"跑车超过邮车因为它开得更慢"。通过庞大英语词、句语料库上训练的语言模型将吸收"跑车"和"快"之间以及"邮车"和"慢"之间的数学相关性。因此,仅仅根据大量数据训练出来的关联性不用借鉴任何理解也能正确的回答类似问题。目前各类类似SuperGLUE的比赛中无法排除利用统计相关性作答正确的情况。 当前神经网络语言模型已经变得越来越大,而且它们越大在这种挑战中的得分就越高。目前最好的神经网络语言模型——已经在TB级文本上进行训练,然后在数千个WinoGrande(Winograd等增强版本)示例上再进一步训练——已经能够接近90% 的正确率(人类获得大约 94% 的正确率)。这种性能的提高几乎完全是由于神经网络语言模型及其训练数据大小增加的。 理解语言需要理解世界,而只接触语言的机器无法获得这样的理解。 这些越来越大的神经网络语言模型最终是否达到了人类的常识性理解?部分科研人员认为这不太可能。WinoGrande竞赛的结果带有一些重要的警示意义。例如,由于挑战赛的句子依赖于人工编写,因此编写的质量和连贯性参差不齐。此外,用于剔除"谷歌搜索"句子的方法可能过于简单,人工又无法发现大型神经网络所有的统计捷径。 当前的问题关键在于理解语言需要理解世界,而只接触语言的机器是无法获得这样的理解。人类理解"跑车超过邮车因为它开得更慢"的含义相比机器要广泛和深层的多。"跑车超过邮车因为它开得更慢"的人类理解含义是:开跑车的人嫌邮车开得慢,人的理解是建立在人驱动车的基础上,而不是跑车与快、邮车与慢的关联性统计。语言真正代表的是人类思想的表达,而不是当前人工智能数据关联性的统计。 人工智能的机器可以在阅读测试中击败人类,但他们真的明白吗? 通过最新生物神经学的研究成果,人脑神经网络的复杂程度和工作模式远远不是现在的人工智能比拟的,人类大脑仅仅百万分之的神经元映射数据就需要1.4 PB(计算机存储单位1.4 PB=1024TB)计算机存储空间。人类大脑拥有860 亿个神经元,每一个神经元都与其他神经元之间会有数十个至上千的连接,甚至于神经元的连接也有可能拓展至量子领域,计算这种网络结构的复杂性已经不亚于天文学和量子力学的计算量,这也是人类大脑可以用无数种方式做事的根本原因。(关于人类大脑神经网络的最新科研进展,有兴趣的读者可以查阅作者之前发布的文章"科学家即将揭示人类大脑神经网络结构的奥秘") 人类神经网络结构 人类神经网络映射 为什么像AlphaZero这样的人工智能在现实世界中遇到诸多麻烦?所有这些机器遇到的问题都是我们人类认为理所当然的常识,但这些常识现在还无法内置到机器中,也没有可能性写在任何语言模型的训练文本中。人类依赖于空间、时间和许多其他先天的、语言之前就具备基本属性来学习和理解语言。 神经网络使用的是统计捷径——而不是实际展示对人类语言的理解能力!语言代表的是思想,而解析人类复杂的大脑和看似无限的神经元连接结构是一项极其宏伟的挑战,考验着人类和人工智能的极限。 当前社会的"量子热"、"人工智能热"需要以发展的角度"降降温"、"去去火",要知道任何科学技术的突破是都是逐步积累的过程,没有积累便不会有飞跃。在人类生物神经学和量子计算两大领域方向没有取得重大实质性突破前,当前的人工智能很难产生第三次飞跃,人工智能领域也将迎来第二次技术沉淀期,当然技术沉淀不代表不进步,目前人工智能的应用领域还是十分广阔的,现有的研究成果也足够促进人类文明前进一大步。