Spherical,cnns( 三 )


神经网络的原理是受我们大脑的生理结构——互相交叉相连的神经元启发 。但与大脑中一个神经元可以连接一定距离内的任意神经元不同,人工神经网络具有离散的层、连接和数据传播的方向 。例如,我们可以把一幅图像切分成图像块,输入到神经网络的第一层 。在第一层的每一个神经元都把数据传递到第二层 。第二层的神经元也是完成类似的工作,把数据传递到第三层,以此类推,直到最后一层,然后生成结果 。
每一个神经元都为它的输入分配权重,这个权重的正确与否与其执行的任务直接相关 。最终的输出由这些权重加权决定 。我们仍以停止(Stop)标志牌为例 。将一个停止标志牌图像的所有元素都打碎,然后用神经元进行“检查”:八边形的外形、救火车一样的红颜色、鲜明的字母、交通标志的典型尺寸和静止不动运动特性等等 。神经网络的任务就是给出结论,它到底是不是一个停止标志牌 。
神经网络会根据所有权重,给出一个经过深思熟虑的猜测——“概率向量” 。这个例子里,系统可能会给出这样的结果:86%可能是一个停止标志牌;7%的可能是一个限速标志牌;5%的可能是一个风筝挂在树上等等 。然后网络结构告知神经网络,它的结论是否正确 。此前,这样的神经网络并没得到为人工智能圈的认可 。然而,事实上在人工智能出现的早期,神经网络就已经存在了,只是神经网络对于“智能”的贡献微乎其微 。
其主要原因是因为即使是最基本的神经网络,也需要大量的运算 。神经网络算法的运算需求难以得到满足 。不过,还是有一些虔诚的研究团队(例如:多伦多大学的Geoffrey Hinton)坚持研究,实现了以超算为目标的并行算法的运行与概念证明 。但也直到GPU得到广泛应用,这些努力才见到成效 。我们回过头来看这个停止标志识别的例子 。
【Spherical,cnns】神经网络是调制、训练出来的,时不时还是很容易出错的 。它最需要的,就是训练 。需要成百上千甚至几百万张图像来训练,直到神经元的输入的权值都被调制得十分精确,无论是否是雾天、晴天还是雨天,每次都能得到正确的结果 。只有这个时候,我们才可以说神经网络成功地自学习到一个停止标志的样子;或者在Facebook的应用里,神经网络学习了如何识别你妈妈的脸;又或者是2012年吴恩达(Andrew Ng)教授在Google实现了神经网络学习到猫的样子等等 。
吴恩达教授的突破在于,把这些神经网络从基础上显著地增大了 。层数非常多,神经元也非常多,然后给系统输入海量的数据,来训练网络 。在他的示例中,数据是一千万YouTube视频中的图像 。吴教授为深度学习(deep learning)加入了“深度”(deep) 。这里的“深度”所指的,正是神经网络中众多的层 。现在,经过深度学习训练的图像识别,在一些场景中甚至可以比人做得更好:从识别猫,到辨别血液中癌症的早期成分,再到识别核磁共振成像中的肿瘤 。
Google的AlphaGo先是学会了如何下围棋,然后与它自己下棋训练 。它训练自己神经网络的方法,就是不断地与自己下棋,反复地下,永不停歇 。深度学习,给人工智能以璀璨的未来深度学习使得机器学习能够实现众多的应用,并拓展了人工智能的领域范围 。如今,深度学习已经能够实现各种任务,几乎使得所有的机器辅助功能都变为可能 。

推荐阅读