Microsoft Cognitive Toolkit (CNTK), an open source deep-learning toolkit
Перейти к файлу
Mark Hillebrand f5f1a3e570 Source/ComputationNetworkLib/LinearAlgebraNodes.h: fix wrong version guard in Times() node. 2016-09-02 11:46:16 +02:00
Dependencies/CNTKCustomMKL some CRLF fix in build-windows.cmd 2016-07-19 16:42:04 -07:00
Documentation renamed ErrorPrediction to ClassificationError, second attempt 2016-08-22 11:16:39 -07:00
Examples Deterministic test (mkl flags, omp thread set to 1), updated baselines 2016-09-01 09:36:24 +02:00
Scripts Addressed Review comments 2016-07-14 09:50:07 +02:00
Source Source/ComputationNetworkLib/LinearAlgebraNodes.h: fix wrong version guard in Times() node. 2016-09-02 11:46:16 +02:00
Tests Integrate mahilleb/WindowsUnitTestsViaTestDriver into master 2016-09-01 09:55:48 -07:00
Tools Tools/make_binary_drop_linux: exclude Examples/Evaluation/{CPP,CS}EvalClient-CntkSln 2016-08-30 15:08:01 +02:00
Tutorials updated ImageHandsOn 2016-08-25 21:16:14 -07:00
contrib merged from mahilleb/CuDnn5Test 2016-08-24 18:45:39 -07:00
.clang-format Re-format code using clang-format (plus some post-processing) 2016-01-18 09:36:14 +01:00
.gitattributes Tests/EndToEndTests/UnitTests/run-boost-test-common: add and use 2016-09-01 14:47:40 +02:00
.gitignore .gitignore: add unit test output files 2016-09-01 14:02:45 +02:00
.gitmodules Update location for Source/1BitSGD 2016-01-23 07:23:12 +01:00
CNTK.Cpp.props Update CNTK.Cpp.props to CUDA8; 2016-08-25 15:57:17 -07:00
CNTK.sln Fixes for X.cntk -> X_ndl_deprecated.cntk config name changes 2016-08-30 14:21:11 +02:00
CONTRIBUTING.md Added CONTRIBUTING.md to the root directory 2016-02-17 13:14:44 +01:00
CppCntk.vssettings Update CppCntk.vssettings (wolfma) 2016-01-22 10:08:52 +01:00
LICENSE.md CNTK custom MKL support 2016-06-14 17:39:24 +02:00
Makefile Moving forceDeterministicAlgorithms to globals 2016-09-01 10:26:18 +02:00
README.md Main ReadMe News, August 31, 2016 2016-08-31 13:19:13 +02:00
configure configure: prefer cudnn-5.1 over cudnn-5.0 2016-08-26 15:37:00 +02:00

README.md

CNTK

Latest news

2016-08-31. V 1.7 Binary release
Highlights of this Release:

  • Improvements in BrainScript (New library of predefined common layer types, Support of cuDNN5 RNN and Common random-initialization types, improved handling of GRUs)
  • Support of NVIDIA cuDNN 5.1
  • Improvements in Readers and Deserializers
  • Additions to Evaluator Library (Eval Client Sample, Strong Name for EvalWrapper)
  • New in Unit Tests (Linux support, Randomization engines)
  • Python API Preview (since V.1.5)
  • Multiple bug fixes

See more in the Release Notes
Get the Release from the CNTK Releases page

2016-08-29. Two new Tutorials are available:
Image recognition (CIFAR-10) and Language understanding (ATIS).

2016-08-10. We have significantly simplified handling of Gated Recurrent Units (GRU). Read more in the corresponding article.

2016-07-15. V 1.6 Binary release
CNTK v.1.6 binaries are on the CNTK Releases page

2016-07-12. We have further expanded Licensing options for CNTK 1bit-SGD and related components. See the details at the Wiki page. These new options are an extension of the new CNTK 1bit-SGD License that we have announced on Jun 23, 2016.

See all news.

What is CNTK

CNTK (http://www.cntk.ai/), the Computational Network Toolkit by Microsoft Research, is a unified deep-learning toolkit that describes neural networks as a series of computational steps via a directed graph. In this directed graph, leaf nodes represent input values or network parameters, while other nodes represent matrix operations upon their inputs. CNTK allows to easily realize and combine popular model types such as feed-forward DNNs, convolutional nets (CNNs), and recurrent networks (RNNs/LSTMs). It implements stochastic gradient descent (SGD, error backpropagation) learning with automatic differentiation and parallelization across multiple GPUs and servers. CNTK has been available under an open-source license since April 2015. It is our hope that the community will take advantage of CNTK to share ideas more quickly through the exchange of open source working code.

Wiki: Go to the CNTK Wiki for all information on CNTK including setup, examples, etc.

License: See LICENSE.md in the root of this repository for the full license information.

Tutorial: Microsoft Computational Network Toolkit (CNTK) @ NIPS 2015 Workshops

Blogs:

Performance

The figure below compares processing speed (frames processed per second) of CNTK to that of four other well-known toolkits. The configuration uses a fully connected 4-layer neural network (see our benchmark scripts) and an effective mini batch size (8192). All results were obtained on the same hardware with the respective latest public software versions as of Dec 3, 2015.

Performance chart

Citation

If you used this toolkit or part of it to do your research, please cite the work as:

Amit Agarwal, Eldar Akchurin, Chris Basoglu, Guoguo Chen, Scott Cyphers, Jasha Droppo, Adam Eversole, Brian Guenter, Mark Hillebrand, T. Ryan Hoens, Xuedong Huang, Zhiheng Huang, Vladimir Ivanov, Alexey Kamenev, Philipp Kranen, Oleksii Kuchaiev, Wolfgang Manousek, Avner May, Bhaskar Mitra, Olivier Nano, Gaizka Navarro, Alexey Orlov, Hari Parthasarathi, Baolin Peng, Marko Radmilac, Alexey Reznichenko, Frank Seide, Michael L. Seltzer, Malcolm Slaney, Andreas Stolcke, Huaming Wang, Yongqiang Wang, Kaisheng Yao, Dong Yu, Yu Zhang, Geoffrey Zweig (in alphabetical order), "An Introduction to Computational Networks and the Computational Network Toolkit", Microsoft Technical Report MSR-TR-2014-112, 2014.

Disclaimer

CNTK is in active use at Microsoft and constantly evolving. There will be bugs.

Microsoft Open Source Code of Conduct

This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.