你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

KDD 2016 教程

CNTK:Microsoft 的Open-Source Deep-Learning工具包

KDD 2016 Hands-On Tutorial by Frank Seide and Amit Agarwal, Microsoft

教程中使用的幻灯片

注意:需要进行两次大型下载,CNTK 二进制文件 (约 300 MB) ,CIFAR-10 数据集 (170 MB) ,并在计算机上安装 CNTK 二进制文件和所有必需的依赖项。 我们建议事先执行此操作,例如从酒店房间执行此操作。 有关说明,请参阅 下面的 说明。

训练神经网络,如 Microsoft 产品组! 本教程将介绍适用于 Windows 和 Linux 的 Microsoft 可缩放开源深度学习工具包Microsoft Cognitive Toolkit或 CNTK。 CNTK 是一个功能强大的基于计算图的深度学习工具包,用于训练和评估深度神经网络。 Microsoft 产品组使用 CNTK,例如创建 Cortana 语音模型和 Web 排名。

目标受众和期望

本教程面向当前或未来的深度学习从业者,寻找一个工具,该工具在多计算机 GPU 群集中易于使用可缩放,适用于实际工作负荷。

本教程假设对深度学习有基本的了解。 参与者将了解 CNTK 的核心概念和用法,并练习使用 CNTK 运行神经网络训练,以便进行图像识别和文本处理。 本教程将是使用 CNTK 解决自己的实际深度学习任务的起点。

先决条件、下载和设置说明

若要在本教程中执行动手实验室会话,需要具有 64 位Windows 8.1+ 或 Linux 的笔记本电脑或远程计算机,建议使用支持 CUDA 的 GPU (更快) 。 如果计算机正在运行 Mac-OS,则可以在 docker 容器中运行 Linux,并在此 docker 容器中执行下面所述的安装/安装程序。

需要下载并安装 CNTK 二进制包、CIFAR-10 集和教程文件,总共大约 500 MB。 理想情况下,请事先执行此操作。

  • 下载并安装 CNTK 二进制文件

本页介绍了将Microsoft Cognitive Toolkit安装到计算机的不同替代方法。 对于本教程的范围,基于二进制 CNTK 安装的安装已足够。 无需从源代码生成 CNTK。 有关设置说明。 只需按照说明从该页下载二进制安装包。

在任何情况下,请确保将 CNTK 可执行文件包含在环境中。

联机执行动手教程

这两个动手教程已在此处发布为可遵循的页面:

抽象

本教程将介绍适用于 Windows 和 Linux 的 Microsoft 尖端开源深度学习工具包Microsoft Cognitive Toolkit或 CNTK。 CNTK 是一个功能强大的基于计算图的深度学习工具包,用于训练和评估深度神经网络。 Microsoft 产品组使用 CNTK,例如创建 Cortana 语音模型和 Web 排名。 CNTK 还支持语音、图像和文本工作负荷的源转发、卷积和循环网络。 常用网络类型支持本机 (卷积) ,也可以描述为 CNTK 配置 (LSTM、序列到序列) 。 CNTK 可扩展到多个 GPU 服务器,旨在提高效率。 本教程概述了 CNTK 的一般体系结构,并介绍了用于自动区分、循环推理和执行、内存共享、大型公司群的实时随机化和多服务器并行化的特定方法和算法。 然后,我们将展示图像识别、序列到序列建模和语音识别等相关任务的典型用途。

大纲

本教程将介绍以下主题:

  • 什么是 CNTK?
    • 计算网络简介
  • CNTK 的典型用法如何?
    • 定义计算网络
    • 配置数据 I/O
    • SGD 超参数
    • 典型工作流
  • 深入了解特定技术
    • 隐式处理时间
    • 可变长度序列的微型批处理
    • 数据并行训练
  • 动手示例,包括
    • 图像识别 (AlexNet、ResNet)
    • 文本处理 (ATIS)
  • 预览版:适用于 Python 和 C++ 的 CNTK 库 API

演讲者传记

弗兰克·塞德是德国汉堡的本地人,是微软研究的高级研究员。 他目前的研究重点是深度神经网络,用于对话语音识别:与共同作者董宇一起,他首先展示了深度神经网络对对话语音的识别的有效性。 在他的职业生涯中,他一直对自动语音识别的各种主题和组成部分感兴趣,包括口语对话系统、普通话识别,特别是使用音频索引、听录和语音转语音翻译的应用程序,对对话语音进行大词汇识别。 他目前的重点是 Microsoft 的 CNTK 深度学习工具包。
Amit Agarwal 是 Microsoft 技术和研究部门的主要软件工程师。 他目前的重点在于构建 Microsoft 大规模分布式深度学习平台 CNTK,以实现前所未有的规模、速度和能力,以训练大型数据集上的大规模深度学习模型,这些模型用于 Microsoft 和社区中广泛的语音、图像和文本相关深度学习任务。 Amit Agarwal 在各种 Microsoft 产品和导师图形上工作。 他拥有与异类和 GPU 编程相关的 7 项专利。

REFERENCES

[1] 阿米特·阿加瓦尔、埃尔达尔·阿克丘林、克里斯·巴索卢、郭国国、斯科特·西弗斯、贾莎·Droppo、亚当·埃弗索勒、布赖恩·根特、马克·希伦布兰德、T.瑞安·霍恩斯、 黄学东、志恒黄、弗拉基米尔·伊万诺夫、亚历克·卡梅内夫、菲利普·克拉宁、奥列克西·库查耶夫、沃尔夫冈·马努塞克、阿夫纳特拉、巴什卡尔·米特拉、奥利维尔纳、盖兹卡·纳瓦罗、亚历克谢·奥洛夫、哈里·帕查萨拉蒂、宝林彭、马科·拉德米拉克、亚历克西·雷斯尼琴科、弗兰克·塞德、 Michael L.Seltzer、Malcolm Slaney、Andreas Stolcke、华明王、永强王、凯生姚、董宇、余张、Geoffrey Zweig (按字母顺序) ,“计算网络和计算网络工具包简介”,Microsoft 技术报告 MSR-TR-2014-112,2014 年。
[2] “CNTK”,”