{"id":6535,"date":"2016-06-10T06:00:55","date_gmt":"2016-06-10T13:00:55","guid":{"rendered":"https:\/\/blogs.msdn.microsoft.com\/msr_er\/?p=6535"},"modified":"2016-07-20T07:28:27","modified_gmt":"2016-07-20T14:28:27","slug":"microsoft-improves-programming-flexibility-of-its-ai-toolkit","status":"publish","type":"post","link":"https:\/\/www.microsoft.com\/en-us\/research\/blog\/microsoft-improves-programming-flexibility-of-its-ai-toolkit\/","title":{"rendered":"Microsoft improves programming flexibility of its AI toolkit"},"content":{"rendered":"<p><em>By Chris Basoglu, Partner Engineering Manager, Microsoft Technology and Research<\/em><\/p>\n<p>Earlier this year, Microsoft made its open source Computational Network Toolkit (CNTK), a tool used to speed up advances in artificial intelligence, available on <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" href=\"https:\/\/github.com\/Microsoft\/CNTK\" target=\"_blank\">GitHub<span class=\"sr-only\"> (opens in new tab)<\/span><\/a>. Today, with CNTK 1.5, we are adding significant language enhancements, an expanded toolbox of features, and improved readers for text and speech.<\/p>\n<p>One of CNTK\u2019s advantages is its ability to scale efficiently across multiple GPUs and machines. CNTK 1.5 introduces a new parallelism technique known as Block Momentum that takes training scalability to a new level of performance, while still preserving accuracy.<\/p>\n<p><a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"https:\/\/msdnshared.blob.core.windows.net\/media\/2016\/06\/block-momentum.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-6565 \" style=\"border: 3px solid #eeeeee;padding: 3px;margin: 3px\" src=\"https:\/\/msdnshared.blob.core.windows.net\/media\/2016\/06\/block-momentum.jpg\" alt=\"Block Momentum chart\" width=\"828\" height=\"550\" \/><span class=\"sr-only\"> (opens in new tab)<\/span><\/a><\/p>\n<p>We are also making it easier for developers to program CNTK by updating our network description language, known as BrainScript, with new features.<\/p>\n<p><em>\u201cExpressing very deep nets, beam decoding, and other complex structures is greatly simplified with BrainScript, which supports infix operators, nested variables and function definitions, recursive function calls, arrays, and even lambdas,\u201d <\/em>said Frank Seide, principal researcher and one of the architects of CNTK.<\/p>\n<p>Additionally, CNTK 1.5 includes a revamped I\/O architecture, including more flexible readers for text and speech, making it easier to input popular formats into the toolkit for deep learning training. This saves users from having to write their own code to parse these formats themselves. We have also included a growing library of standard components, such as Sequence-to-Sequence with Attention and the state-of-the-art Deep Residual Nets for Image Recognition. Features like these expand the toolbox available to CNTK users, giving developers advanced recipes they can use out of the box.<\/p>\n<p>Since CNTK\u2019s initial release on GitHub, we have received an incredible amount of feedback from the community. Many of the improvements in CNTK 1.5 stem directly from community requests and contributions.\u00a0We will continue working with the community to help advance CNTK, including the addition of more popular programming languages like Python.<\/p>\n<p>The bottom line for developers: With CNTK 1.5, you now have access to efficient and easy-to-use tools to add artificial intelligence capabilities, like speech and image recognition, to your applications.<\/p>\n<p><strong>Related<\/strong><\/p>\n<ul>\n<li><a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/www.cntk.ai\">The CNTK website<span class=\"sr-only\"> (opens in new tab)<\/span><\/a><\/li>\n<li>Download the <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"https:\/\/github.com\/Microsoft\/CNTK\">CNTK toolkit from GitHub<span class=\"sr-only\"> (opens in new tab)<\/span><\/a><\/li>\n<li><a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/blogs.microsoft.com\/next\/2016\/01\/25\/microsoft-releases-cntk-its-open-source-deep-learning-toolkit-on-github\/#sm.0015ygsd1ncdeqh11b71qvua46amf\">Microsoft releases CNTK, its open source deep learning toolkit, on GitHub<span class=\"sr-only\"> (opens in new tab)<\/span><\/a><\/li>\n<li><a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/blogs.technet.com\/b\/inside_microsoft_research\/archive\/2015\/12\/07\/microsoft-computational-network-toolkit-offers-most-efficient-distributed-deep-learning-computational-performance.aspx\">CNTK offers most efficient distributed deep learning computational performance<span class=\"sr-only\"> (opens in new tab)<\/span><\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>By Chris Basoglu, Partner Engineering Manager, Microsoft Technology and Research Earlier this year, Microsoft made its open source Computational Network Toolkit (CNTK), a tool used to speed up advances in artificial intelligence, available on GitHub. Today, with CNTK 1.5, we are adding significant language enhancements, an expanded toolbox of features, and improved readers for text [&hellip;]<\/p>\n","protected":false},"author":0,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"msr-url-field":"","msr-podcast-episode":"","msrModifiedDate":"","msrModifiedDateEnabled":false,"ep_exclude_from_search":false,"_classifai_error":"","msr-author-ordering":[],"msr_hide_image_in_river":0,"footnotes":""},"categories":[194467,194456,194457,194462],"tags":[205423,205425,200955,186925,195698],"research-area":[],"msr-region":[],"msr-event-type":[],"msr-locale":[268875],"msr-post-option":[],"msr-impact-theme":[],"msr-promo-type":[],"msr-podcast-series":[],"class_list":["post-6535","post","type-post","status-publish","format-standard","hentry","category-artifical-intelligence","category-natural-language-processing","category-open-source","category-speech-and-dialog","tag-block-momentum","tag-brainscript","tag-cntk","tag-deep-learning","tag-github","msr-locale-en_us"],"msr_event_details":{"start":"","end":"","location":""},"podcast_url":"","podcast_episode":"","msr_research_lab":[],"msr_impact_theme":[],"related-publications":[],"related-downloads":[],"related-videos":[],"related-academic-programs":[],"related-groups":[],"related-projects":[],"related-events":[],"related-researchers":[],"msr_type":"Post","byline":"","formattedDate":"June 10, 2016","formattedExcerpt":"By Chris Basoglu, Partner Engineering Manager, Microsoft Technology and Research Earlier this year, Microsoft made its open source Computational Network Toolkit (CNTK), a tool used to speed up advances in artificial intelligence, available on GitHub. Today, with CNTK 1.5, we are adding significant language enhancements,&hellip;","locale":{"slug":"en_us","name":"English","native":"","english":"English"},"_links":{"self":[{"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/posts\/6535","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/types\/post"}],"replies":[{"embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/comments?post=6535"}],"version-history":[{"count":2,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/posts\/6535\/revisions"}],"predecessor-version":[{"id":278421,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/posts\/6535\/revisions\/278421"}],"wp:attachment":[{"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/media?parent=6535"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/categories?post=6535"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/tags?post=6535"},{"taxonomy":"msr-research-area","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/research-area?post=6535"},{"taxonomy":"msr-region","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-region?post=6535"},{"taxonomy":"msr-event-type","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-event-type?post=6535"},{"taxonomy":"msr-locale","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-locale?post=6535"},{"taxonomy":"msr-post-option","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-post-option?post=6535"},{"taxonomy":"msr-impact-theme","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-impact-theme?post=6535"},{"taxonomy":"msr-promo-type","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-promo-type?post=6535"},{"taxonomy":"msr-podcast-series","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-podcast-series?post=6535"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}