关于人工智能的根本性思考(二)

发布一下 0 0

前一篇讲到了人们意识到在强人工智能方面的无解难题,也就是无法让机器拥有人一样的意识,或表现得像人一样能处理通用的问题。这篇文章主要探讨和思考一下人们转向弱人工智能后发生的转变和进展。

关于人工智能的根本性思考(二)

关于人工智能的综述文章已经很多了,有很多详细的,专业性的文章,我觉得没有必要用同样的风格来重复,我就试图用简单的,方便没有基础的普通人理解的方式来简述一下这些事情,主要分为以下几个方面来探讨:

  • 一,人们对人工智能的重新定义和思考。
  • 二,人工智能所依据的基础性原理或假设。
  • 三,人工智能需要执行哪些任务?
  • 四,在各种任务中使用到的原理和方法。
  • 五,怎样评估人工智能的效果。


一,人们对人工智能的重新定义和思考

当遇到上面所说的无解难题时,主流学者们开始重新定义人工智能,不需要它像人一样处理所有问题,只需要它像机器一样用算法处理具体的问题,在有限范围内,做出对人们来说经济,合理的行为就够了。

连现代计算机的祖师爷阿兰图灵都在建议,应该把“机器可以思考吗?”,换成“机器可以表现出智能的行为吗?”,这反映了人们对人工智能期望的转变。

这样可以绕过产生意识的问题,也不需要弄清楚物质的本质,只需要假设一些基础性的原理,用目前力所能及的方法,在弱人工智能领域施展开来,专注于实用性。(为什么要强调假设二字呢?因为严谨的科学家都这样认为,对没办法证实的事情不妄下定论)

于是,人们在曲折中,取得了许多进展。所谓曲折,就是指经历了好几次希望与失望的起起落落,曾经人们以为进展很顺利,把前景想得过于乐观,几十年前该领域有些领头的学者甚至宣称几十年后的今天就能实现通用的强人工智能(即使是机器的,没有人类意识的),于是,那时掀起了一阵投资的热潮。

然而,期望越高,失望越大,这好像是逃不掉的魔咒,自古以来,类似的情景在人世间一幕幕地上演。人工智能也不例外,在理想和现实的碰撞下,人工智能并没有达到人们期望的效果,很多时候投入与产出的差距让人失望,并且在一些核心运算的基本原理上遇到了难以解决的问题。

于是它经历不止一个的低潮时期,熟悉这段历史的人都知道,那几个低潮叫做“人工智能寒冬”。在起伏跌宕期间,又因为相关理论和技术的突破,也有了一些回升的时候,人世间的事情也都如此,潮涨潮落知多少。

虽然如今人们在弱人工智能领域里如火如荼地进展着,但对于强人工智能的妥协和专注于实用性,一些学者又担心人们忘记了初心,不再追求通用的强人工智能,少数的学者和投资者还不服输,仍然抱有强人工智能的幻想,寄托于未来的科技突破。

普通人也幻想着强人工智能的出现,甚至幻想到它威胁人们的生存,人类与之斗争,等等,这样的场景,在科幻小说,影视作品里屡见不鲜。

二,人工智能所依据的基础性原理或假设

但是,真正从事科研的人知道这还差得远呢,而且他们知道,目前,弱人工智能所依据的基础性原理并不牢固。主要的基础前提仍然只是一些假设,比如:

  1. 唯物论,这种假设认为人的意识由物质决定,意识的运作符合物理规律。这个普通人认为是真理的原理,在学术界里还只是有争议的假设。
  2. 人的智能可以用数理逻辑的算法来描述,并且可以被机器模拟出来,这也是一个假设,在哲学与科学中对此仍存在着争议。

这不难理解,仔细体会一下,我们在思考生活中的问题时,并不需要这么多复杂的数理逻辑和算法知识,比如,识别图片,看一眼就能知道答案,并没有做出很多运算,说话,写文章,很多时候不假思索就会源源不断的地从心中涌出语言文字,面对很多复杂的问题,我们有时拍拍脑袋就能想到解决的办法,如果用机器算法来做,会是很复杂的,甚至是办不到的事情。

也许有人会觉得,人在思考时,大脑和神经系统也做了复杂的运算,只是自己感觉不到,实际上科学家对大脑与神经的了解还不足,即便是有做运算,那就等同于计算机算法的规则吗?显然两者不能等同,哪怕是计算机模仿神经系统的神经网络算法,其本质也是基本的数理逻辑运算,与人脑运行原理有着很大差别。

但没有这些假设,弱人工智能也就失去了理论基础,很难开展下去。所以都得默认这样的假设是成立的,把悬而未决的问题交给未来,先关注眼前够得着的问题,这也是很多其他领域的常用手段。

三,人工智能需要执行哪些任务?

具体来说,人们希望人工智能来干些什么事情呢?如果是为了自动化一些人们的工作的话,那传统的计算机程序也可以做到的。人工智能有什么不同?其实两者之间的界限不是完全割裂的,有很多重叠的区域。

我想,人工智能的不同之处就是类比人的智能来说的,比如,人可以看,人可听,可以嗅,可以尝,可以触摸,可以思考,可以行动,如果一个程序是在做类似的事情,那么不管它是不是用人工智能算法,还是传统的计算机算法,那它就可以叫做人工智能。

而且,在人工智能界有一个现象叫“AI效应”,也就是说,一项智能技术还没有出现或者刚出现时,人们觉得很先进,很人工智能,等大家都习以为常了,就不把它当回事儿了,这样的例子很多,就说计算机吧,刚出现时,人们叫它电脑,就把它当成先进的人工智能,现在几乎家家都有电脑,人人都有手机,里面确实也有不少人工智能的模块,但大家都觉得这是基本的,很普通,不算什么智能了。

同样,现在我们看起来很智能的东西,以后的人们说不定都觉得它是老古董了,所以,有人调侃人工智能,说“人工智能总是那些还没有完成的事情。”,一旦完成了,就不叫人工智能了。

再回到人工智能的基本任务的话题上,总的来说,人们给人工智能总结了几个方面的任务需求,感知,推理,学习,知识,行动。

可以用这样的比喻来看,感知模块相当于人的前五个感知器官,眼,耳,鼻,舌,身,而学习和推理,相当于人的意识功能,知识模块相当于人脑的知识组织和存储功能,行动模块相当于身体,四肢和手脚等表现语言或动作的器官:

感知,这是人工智能的输入模块,可以用来识别各种传感器,比如摄像头,话筒,雷达,激光雷达,声呐,触觉传感器,嗅觉传感器等等,来传送相关的图像,文字,视频,声音,等信号,然后对信号进行识别与处理等任务。

推理,这是人工智能的核心模块之一,它可以对输入的数据进行模拟的抽象思维,根据人们制定的算法规则,来进行推理,分析,分类,预测,决策,等等活动,产生人们想要的结果。

关于人工智能的根本性思考(二)

学习,上面谈到推理的模块,是根据规则来产生结果,但是人们发现,很多情况中,无法制定详细的算法规则来进行推理,因为人们都不知道自己是怎么推理出来的(因为很多时候都是灵光一现,拍拍脑袋就知道结果了),要把这个自己都不知道的规则教给计算机,就更没办法了,或者是很难用算法来实现。

所以,人们又设计了一些自动学习的算法模型,给它喂数据和已知的结果,让它产生规则,也就是根据数据而得出结果的规则,这些规则可以是人们可以看懂的规则(术语叫可解释性),或者是看不懂的规则(不可解释性),后面一节会大概谈一下。

关于人工智能的根本性思考(二)

知识,全名叫知识表示(knowledge representation),这也是人工智能的一块重要的模块,它主要用于构建一个关于应用场景的知识库,数据结构,以及运算规则,等等。以便于用它来进行推理,学习和分析等人工智能活动。

行动,这是属于人们听得见,看得见的行动部分,比如生成语言文字,声音和图像,让机器人写字,画画,进行工业操作,下棋,搬运,打仗,或者是产生软件中的虚拟动作,等等。这个是人工智能的输出模块,需要结合以上所讲到的输入和核心模块才有好的效果。

记得以前我的人工智能老师给我们说任务分类的时候,是参照佛教所说的五蕴来分类的,色,受,想,行,识,他说色就代表视觉的感知,受是声,香,味,触,法方面的感知,想和识是推理,学习等抽象活动,行是行动模块。虽然不能完全等同,但这种比喻也是挺有意思的。

四,在各种任务中使用到的基本原理和方法

这一节的内容有很多,篇幅有限,我就只能从原理上来大概说说,以后想要详细探讨的话,可以再写很多文章来继续。

总的来说,在人工智能的任务中,人们使用的方法大概有三种:

(一),基于符号规则算法的机器推理模型,这种方法是把应用场景中的概念或实体:人,事,物,关系,规则,等,用运算符号,规则引擎,或其他数据结构,表示出来,再运用数理逻辑的规则来写算法,进行推理等运算。

这是人工智能领域中最早被使用的方法,它对于某些运用到抽象的,逻辑思维的任务很适合,比如下棋,搜索,统筹,约束求解,定理证明,等等。

这种方法曾经因为成功构建了一些领域的专家系统而名声大噪,导致人们高估了它,以为没有它解决不了的问题,所以很多人来投资,但正是捧得高摔得重,后来发现应用场景的范围扩大后,它的效果并不好,而且符号规则的维护太复杂,很多事情连我们自己都不知道是用什么规则来完成的,比如识别图形,如何教计算机来做呢。

于是,投资人的兴趣锐减,也就形成了人工智能寒冬期。后来出现的机器学习方法,特别是基于神经网络的深度学习方法,逐渐占据了主流,但是这样的推理模型并没有退休,仍然是一种合理的方法,仍然可以在适合的领域和范围内继续使用。

(二),基于概率统计算法的机器学习模型,这种方法的原理是通过学习已知的数据中的准确结果,和数据中与这些结果相关联的条件,来估算出一个基于概率的预测结果的模型。这样就不需要预先制定任何规则,就根据这种对已知数据的概率性的估算,来对新的数据进行推理和预测。

很多情况下,我们所能得到的数据是不全的,想要设计的规则也不可能全面,所以这种概率模型很适合用来处理这样的已知信息和规则不确定的情况。

比如,文本分类任务中,我们可以通过现有的历史题材的文章中,不同词汇出现的频率,来构建一个词汇频率与文章主题的概率模型,就可以用来预测一篇没有见过的文章,看它是否是在说关于历史题材的内容。

(三),基于神经网络结构和算法的机器学习模型,这一节,我会稍微用到一些专业的术语来解释,但没有篇幅和时间深入解释,先提出来,以后再深入探讨。

神经网络的结构,虽然灵感是来自于的神经系统中神经元细胞的概念和互动原理,但它并不是真正按照神经系统的规则来运算的,神经系统的规则人们还只是一知半解。

神经网络吸取了神经元的基本概念,制定了一个很简单的数学模型,叫感知机,它就是一个简单的数学函数,输入一串数字X1, X2, X3到Xn,然后乘以可调整的参数W,加上另一个参数B,再经过简单的激活函数运算,产生输出结果,也是另一个数字,一个感知机就做这么点事情,如果明白了,用笔都可以手写一个感知机出来,亲自运算。

关于人工智能的根本性思考(二)

很多个这样的感知机数学函数组合在一起,一串一串地串联,一层一层地叠加起来,形成一个网络模型,经过一次又一次地训练与调整,对输入数据和结果进行学习,最终得到一个能够推理和预测结果的网络结构。

但单层感知机有致命的缺陷,就是不能进行异或运算(XOR),所以不能对输入数据进行人们最期望的非线性关系的预测,就没有太大用处,这个缺陷导致神经网络被打入冷宫数十年。

直到后来发现了多层神经网络可以解决这个问题以后,才又被重视起来,所以人们管多层神经网络的机器学习模型叫深度学习。其实基本原理并不深,我的老师曾用电子表单Excel来制作了一个完整的神经网络模型表,还带反向传播算法的功能,也就是一种在训练过程中,根据标准答案来自动调整参数的算法。

然而人们对深度神经网络的训练一直找不到合适的方法,不能把网络层数加太深。所以效果就不好。加上半路上杀出了程咬金,人们研究出的其他的机器学习方法,特别是支持向量机(SVM),随机森林算法,和梯度提升机,等算法,在各领域都取得了不错的效果,于是神经网络的热度还是没有起来。

然而人们并没有放弃神经网络的研究,总有柳暗花明,云开月圆的时候,到2009到2010年之间,开发出的一系列的新方法,比如,更好的激活函数,更好的权重初始化方案,更好的优化方案,使得人们可以训练10层以上的深度网络模型时,它才开始大放异彩。

以至于后来,人们发现了更多好方法,比如批标准化残差连接卷积神经网络,等等,以及计算机硬件,互联网,大数据的发展,让我们可以从头训练上千层甚至更深的大模型。深度学习模型终于一骑绝尘,在很多场景下的效果将其他的模型甩得远远的了,成为今天的主流模型。

当然,并不是每一个场景都适合用深度学习模型,其他模型也得到了很多发展,也有各自的生存空间,共同支撑着机器学习的生态。

五,怎样评估人工智能的效果

人们很早就开始探讨这个问题了,在思考如何定义人工智能的时候,就得想出有一个评估的标准,怎样才算人工智能。这种标准也不是一成不变的,是随着时间和人们的期望转变而转变的,在不断地调整。

最高的标准当然是强人工智能的标准,但是怎么评估呢?其实就连我们面对一个活生生的人时,都无法站在他的主观角度来直接判断的,因为我们只知道自己有意识,其他人的意识我们感觉不到,严格来说,我们并不能确定面对的就是活生生的人,万一他是超级智能的仿真机器人呢,像电影中,长成和人一样机器人,人们难以分辨出来一样。

图灵想出了一个从外在表现来评估人工智能的标准,叫做图灵测试,就是让人与一个机器相隔,互相看不见,(现在还没达到电影中不用相隔的水平),然后让人与它交流,判断这个机器是真人还是假人,如果判错率超过30%,也就是说30%的人认为这个机器是个真人,那就说明这个人工智能效果好。这是目前对强人工智能的评估标准,这一标准也肯定会随着科技的进步而调整的。

在弱人工智能领域中,评判的就不是它像不像个真人了。而是具体的任务指标,比如,识别图片的正确率,预测的准确率,等等,有很多不同的评判方法,都是通过衡量它产生的结果与标准答案之间的差距来算的。

总之,人工智能还有很长的路要走,未来不一定永远是春天,也许下一个寒冬也会到来,但只有耐得住寂寞,深入基础的理论研究,甚至哲学的探讨,才有更大的发展空间。

今天先写到这里,以后有空再继续发文,学习和研究人工智能的基础理论,以及应用。

版权声明:内容来源于互联网和用户投稿 如有侵权请联系删除

本文地址:http://0561fc.cn/202638.html