Microsoft Cognitive Toolkit 简明教程
Microsoft Cognitive Toolkit (CNTK) - Introduction
在本章中,我们将了解什么是 CNTK,它的特点,其 1.0 和 2.0 版本之间的区别,以及 2.7 版本的重要亮点。
What is Microsoft Cognitive Toolkit (CNTK)?
Microsoft Cognitive Toolkit (CNTK),以前称为 Computational Network Toolkit,是一个免费、易于使用、开源、商业级别的工具包,使我们能够训练深度学习算法,以像人脑一样学习。它使我们能够创建一些流行的深度学习系统,如 feed-forward neural network time series prediction systems and Convolutional neural network (CNN) image classifiers 。
为了获得最佳性能,其框架功能以 C 语言编写。虽然可以使用 C 调用其功能,但最常用的方法是使用 Python 程序。
CNTK’s Features
以下是 Microsoft CNTK 最新版本中提供的一些功能:
Built-in components
-
CNTK 具有经过高度优化的内置组件,可以处理来自 Python、C++ 或 BrainScript 的多维稠密或稀疏数据。
-
我们可以实现卷积神经网络、前馈神经网络、循环神经网络、批归一化和带注意力机制的序列到序列网络。
-
它为我们提供了从 Python 在 GPU 上添加新的用户定义核心组件的功能。
-
它还提供自动超参数调整。
-
我们可以实现强化学习、生成对抗网络 (GAN)、监督学习和无监督学习。
-
对于海量数据集,CNTK 内置了经过优化的读取器。
Usage of resources efficiently
-
通过 1 位 SGD,CNTK 为我们在多 GPU/机器上,通过高精度提供并行化。
-
为了将最大模型放入 GPU 内存中,它提供了内存共享和其他内置方法。
Version 1.0 vs Version 2.0
下表比较了 CNTK V1.0 和 V2.0:
Version 1.0 |
Version 2.0 |
它于 2016 年发布。 |
它对 1.0 版本进行了重大重写,并且在 2017 年六月发布。 |
它使用了一种名为 BrainScript 的专属脚本语言。 |
它的框架功能可以使用 C++、Python 进行调用。我们可以轻松地使用 C# 或 Java 加载我们的模块。BrainScript 也支持 2.0 版本。 |
它可以在 Windows 和 Linux 系统上运行,但不能直接在 Mac OS 上运行。 |
它也可以在 Windows(Win 8.1、Win 10、Server 2012 R2 和更高版本)和 Linux 系统上运行,但不能直接在 Mac OS 上运行。 |