各大科技企业近来不约而同地发力“人工智能”和“深度学习”领域。“Google大脑之父”、现百度首席科学家Andrew Ng一个月前在PingWest于旧金山举办的SYNC大会上提到过,“深度学习是许多现代科技产品背后的“引擎”,作为核心技术支撑着商业上的
应用,比如网络搜索、机器翻译、产品推荐和医学图像等,带来了相当可观的经济价值。”
现在,微软也加入了这个“角斗场”。
微软的研究人员称,他们的深度学习系统——名叫Adam(亚当)——取得了突破性的成果,比起之前的深度学习系统而言更为成熟。微软的研究人员举例说,比如在
图片识别方面,这个系统不仅可以识别出指定的物品,还能够在该类目分类项下,进行更精确的识别。和先前的“Google大脑”作对比,如果说“Google大脑”能做到的是,在看完一周Youtube
视频后,识别出猫,那么Adam可以识别出猫及猫的品种,并且使用的机器数量只有之前的三十分之一。
微软研究院主管Peter Lee博士表示,“Adam计划”寻找的并不是在模拟神经网络的规模上有所突破,而是构建方式上的改进。这些改进指的是:优化和微调了机器处理数据和机器间数据沟通的方式。当计算系统变得更为复杂时,每个部件之间都在同一时间传送信息——这件事会随着系统越来越庞大而越来越困难,而Adam系统允许了异步算法的存在。异步算法指的是将一个大的系统拆分为不同的部分,并且在分享和输出计算结果前允许他们分别独立运作,同时,在分享结果时各个部分的结果相互覆盖也没有问题。
威斯康辛大学计算机科学学院的研究者Feng Niu, Benjamin Recht等人的研究报告指出,在使用传统的随机梯度下降算法(SGD)来进行几个并行计算任务时,通常需要保证计算结果输出的同步,否则会引发数据冲突。但如果只是应用在小型计算系统里,首先,数据冲突的几率很低。其次,由于数据结果的写入往往是递增性的,每个部分输出和叠加只是顺序不同,因此即便发生冲突但计算结果通常都是一致的。这个在研究报告中被称为“Hogwild!”技术使得异步计算在深度学习系统中成为可能。
另外,微软的深度学习系统,不同于Google大脑采用GPU为搭建的元件,而是使用了造价更为昂贵的CPU,这些机器由微软的Azure云服务提供支持。