CNN太牛!微软计算机视觉在ImageNet挑战中首超人类视觉

Yann LeCun曾说,深度卷积神经网络(CNN)会“解决”ImageNet。但我们没想到进步会这么快。根据微软公司公布的信息,由于prelu激活函数和更好的初始化,微软亚洲研究院视觉计算组所开发的基于CNN的计算机视觉系统,在ImageNet 1000 挑战中首次超越了人类进行对象识别分类的能力。

微软研究团队在题为“Delving Deep into Rectifiers: Surpassing Human-Level Performance on ImageNet Classification”的论文中指出,他们的系统在ImageNet 2012分类数据集中的错误率已降低至4.94%。此前同样的实验中,人眼辨识的错误率大概为5.1%。这个数据集包含约120万张训练图像、5万张验证图像和10万张测试图像,分为1000个不同的类别。

获得突破的原因

现任视觉计算组首席研究员孙剑将团队取得的最新成果归功于以下两项关键突破:

  • 开发了适应性更强的非线性神经元;
  • 改进训练算法,使得神经网络更为强大。

微软研究员在论文中指出,修正神经元 (rectifier neuron)是近期将深度神经网络应用于计算机视觉挑战时取得成功的关键要素之一。

微软论文表示:

我们从两个方面对主要由修正神经元驱动的神经网络进行了研究。首先,我们生成了一种新的修正线性单元(ReLU),并将其称为参数化修正线性单元(PReLU)。该激活函数不仅可自适应获取修正参数,还可提高计算精度,且所需额外计算成本几乎可以忽略不计。其次,我们研究了深度修正模型的训练难度。我们通过对修正线性单元(即ReLU/PReLU)的非线性特征进行直接建模,推导出一种符合理论的初始化方法,并直接从头开始训练网络,将其应用于深度模型(例如,具有30个带权层的模型)的收敛过程。这为我们探索功能更强大的网络体系结构提供了更多的灵活性。

相对于此前百度更多的是通过硬件加速技术取得的成绩(百度称Deep Image系统在ImageNet物体分类测试中的错误率为5.98%,Deep Image运行于超级计算机Minwa 上),微软的方式似乎更“软”。

百度在论文中披露Minwa的配置:

这一系统包含36个服务器节点,每一服务器节点配备了2颗六核英特尔至强E5-2620处理器。每个服务器包含4颗英伟达Tesla K40m GPU,以及1个FDR InfiniBand(速度为56GB/S)。这带来了高性能、低延时的连接,以及对RDMA的支持。每一颗GPU的最高浮点运算性能为每秒4.29万亿次浮点运算,而每一颗GPU也配备了12GB的内存。

由此算来,Minwa内置了6.9TB的主内存、1.7TB的设备内存。百度称开发Minwa是为了解决与Deep Image算法相关的问题:

考虑到随机梯度优化算法的特性,设备互联需要极高的带宽和超低的延时,从而最小化通信开销。对于这类算法的分布式版本来说,这是必要的。

超越人类视觉的意义

虽然取得重大突破,微软强调,计算机视觉目前从根本上仍无法与人类视觉相比,计算机系统在识别物体、理解图像上下文及场景高级信息等领域仍面临诸多挑战。

虽然我们的算法基于该特定的数据集得出了极为理想的结果,但这并不表明在对象识别领域机器视觉普遍优于人类视觉。某些对于人类来说轻而易举的基本对象类别的识别,机器识别仍然存在明显错误。尽管如此,我们的研究结果表明机器算法在众多视觉识别任务上具有巨大的发展潜力。

对于微软的成绩,国内某互联网公司机器学习专家表示看好:

业界的持续快速进展会给同行很多信心,说明CNN还有提升空间。