changdejie的专栏,玻尔兹曼机( 五 )


弱人工智能是能够与人一样,甚至比人更好地执行特定任务的技术 。例如,Pinterest上的图像分类;或者Facebook的人脸识别 。这些都是弱人工智能在实践中的例子 。这些技术实现了人类智能中某些特定部分 。但它们是如何实现的?这种智能是从何而来?其答案就是同心圆中的第二层,机器学习 。机器学习—— 一种实现人工智能的方法Spam free diet:机器学习能够帮助你的收件箱(相对地)摆脱垃圾邮件的困扰 。
机器学习最基本的做法,是使用算法来解析数据、从中学习,然后对真实世界中的事件做出决策和预测 。与传统的为解决特定任务的人工编码程序不同,机器学习是用大量的数据来“训练”,通过各种算法从数据中学习如何完成任务 。机器学习直接来源于早期的人工智能领域 。传统算法包括决策树学习、推导逻辑规划、聚类、强化学习和贝叶斯网络等等 。
众所周知,我们现在还没有实现强人工智能,而早期机器学习方法甚至连弱人工智能都无法实现 。机器学习最成功的应用领域是计算机视觉,虽然也还是需要大量的手工编码来完成工作 。人们需要手工编写分类器、边缘检测滤波器,以便让程序能识别物体从哪里开始,到哪里结束;写形状检测程序来判断检测对象是不是有八条边;写分类器来识别字母“S-T-O-P” 。
使用以上这些手工编写的分类器,人们总算可以开发算法来感知图像,判断图像是不是一个停止标志牌 。这个结果还算不错,但还算不上是那种能让人为之一振的成功,特别是遇到云雾天,标志牌变得不是那么清晰可见,又或者被树遮挡一部分,算法就难以成功了 。这也是为什么此前很长一段时间中,计算机视觉的性能一直无法接近到人类的水平 。
它太僵化,并且太容易出现错误 。随着时间的推进,学习算法的发展改变了一切 。深度学习——一种实现机器学习的技术Herding cats:从YouTube视频中挑选猫的图像是深度学习的第一个突破性演示之一 。人工神经网络(Artificial Neural Networks)是早期机器学习中的一个重要的算法,历经了数十年的推演 。
神经网络的原理是受我们大脑的生理结构——互相交叉相连的神经元启发 。但与大脑中一个神经元可以连接一定距离内的任意神经元不同,人工神经网络具有离散的层、连接和数据传播的方向 。例如,我们可以把一幅图像切分成图像块,输入到神经网络的第一层 。在第一层的每一个神经元都把数据传递到第二层 。第二层的神经元也是完成类似的工作,把数据传递到第三层,以此类推,直到最后一层,然后生成结果 。
每一个神经元都为它的输入分配权重,这个权重的正确与否与其执行的任务直接相关 。最终的输出由这些权重加权决定 。我们仍以停止(Stop)标志牌为例 。将一个停止标志牌图像的所有元素都打碎,然后用神经元进行“检查”:八边形的外形、救火车一样的红颜色、鲜明的字母、交通标志的典型尺寸和静止不动运动特性等等 。神经网络的任务就是给出结论,它到底是不是一个停止标志牌 。
神经网络会根据所有权重,给出一个经过深思熟虑的猜测——“概率向量” 。这个例子里,系统可能会给出这样的结果:86%可能是一个停止标志牌;7%的可能是一个限速标志牌;5%的可能是一个风筝挂在树上等等 。然后网络结构告知神经网络,它的结论是否正确 。此前,这样的神经网络并没得到为人工智能圈的认可 。然而,事实上在人工智能出现的早期,神经网络就已经存在了,只是神经网络对于“智能”的贡献微乎其微 。
其主要原因是因为即使是最基本的神经网络,也需要大量的运算 。神经网络算法的运算需求难以得到满足 。不过,还是有一些虔诚的研究团队(例如:多伦多大学的Geoffrey Hinton)坚持研究,实现了以超算为目标的并行算法的运行与概念证明 。但也直到GPU得到广泛应用,这些努力才见到成效 。我们回过头来看这个停止标志识别的例子 。

推荐阅读