微软在 GitHub 上开源其深度学习工具包 CNTK

  • 臧秀涛

2016 年 1 月 26 日

话题:微软语言 & 开发架构机器学习深度学习AI

1 月 25 日,微软在 GitHub 上发布了其深度学习工具包——Computational Network Toolkit(简称 CNTK)

CNTK 是一个统一的深度学习工具包,它通过一个有向图将神经网络描述为一系列计算步骤。在有向图中,叶节点表示输入值或网络参数,边表示输入之上的矩阵运算。CNTK 使得实现和组合前馈型神经网络 DNN、卷积神经网络(CNN)和循环神经网络 (RNNs/LSTMs) 变得非常容易。实现了支持跨多个 GPU 和服务器自动分化和并行化的随机梯度下降(SGD)学习。

微软首席语音科学家黄学东提到,已经证明CNTK 比开发者在创建语音和图像识别的深度学习模型时常用的其他四个工具包性能要好,具体如下图所示。

在快速变化的深度学习领域,这种性能优势非常重要,因为很多复杂的深度学习任务往往要花掉数周时间。

CNTK 的优势是,不管是一台计算机,还是大规模 GPU 集群,都能使用。在内部,微软是在使用了 GPU 的一组强大的计算机上使用 CNTK。

Hacker News 上有人评论说:

先是 TensorFlow,然后是百度的 Warp-CTC,现在有了微软的 CNTK,对于开源机器学习而言,真是一个激动人心的时代。”

InfoQ 曾报道过百度的 Warp-CTC,感兴趣的读者可以查阅。

微软语言 & 开发架构机器学习深度学习AI