{"id":235497,"date":"2015-12-07T09:33:00","date_gmt":"2015-12-07T09:33:00","guid":{"rendered":"https:\/\/blogs.technet.microsoft.com\/inside_microsoft_research\/2015\/12\/07\/microsoft-computational-network-toolkit-offers-most-efficient-distributed-deep-learning-computational-performance\/"},"modified":"2016-08-17T16:54:08","modified_gmt":"2016-08-17T23:54:08","slug":"microsoft-computational-network-toolkit-offers-most-efficient-distributed-deep-learning-computational-performance","status":"publish","type":"post","link":"https:\/\/www.microsoft.com\/en-us\/research\/blog\/microsoft-computational-network-toolkit-offers-most-efficient-distributed-deep-learning-computational-performance\/","title":{"rendered":"Microsoft Computational Network Toolkit offers most efficient distributed deep learning computational performance"},"content":{"rendered":"<p class=\"posted-by\"><em>By <span class=\"author\"><a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" title=\"Xuedong Huang\" href=\"https:\/\/en.wikipedia.org\/wiki\/Xuedong_Huang\" target=\"_blank\">Xuedong Huang<span class=\"sr-only\"> (opens in new tab)<\/span><\/a><\/span>, Chief Speech Scientist, Microsoft<\/em><\/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\/TNBlogsFS\/prod.evol.blogs.technet.com\/CommunityServer.Blogs.Components.WeblogFiles\/00\/00\/00\/90\/35\/xuedong-huang-xd-cntk.jpg\"><img decoding=\"async\" src=\"https:\/\/msdnshared.blob.core.windows.net\/media\/TNBlogsFS\/prod.evol.blogs.technet.com\/CommunityServer.Blogs.Components.WeblogFiles\/00\/00\/00\/90\/35\/xuedong-huang-xd-cntk.jpg\" alt=\" \" border=\"0\" \/><span class=\"sr-only\"> (opens in new tab)<\/span><\/a><br \/>\n<strong>Xuedong Huang<\/strong> (Photo by Scott Eklund\/Red Box Pictures)<\/p>\n<p>For more than 20 years, Microsoft <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" title=\"has invested\" href=\"http:\/\/news.microsoft.com\/features\/speak-hear-talk-the-long-quest-for-technology-that-understands-speech-as-well-as-a-human\/\" target=\"_blank\">has invested<span class=\"sr-only\"> (opens in new tab)<\/span><\/a> in advanced speech recognition research and development. It\u2019s great to see the return on that investment in products and services such as <a title=\"Windows Cortana\" href=\"https:\/\/www.microsoft.com\/en-us\/windows\/Cortana\" target=\"_blank\">Windows Cortana<\/a>, <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" title=\"Skype Translator\" href=\"http:\/\/www.skype.com\/en\/translator-preview\/\" target=\"_blank\">Skype Translator<span class=\"sr-only\"> (opens in new tab)<\/span><\/a>, and <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" title=\"Project Oxford Speech APIs\" href=\"https:\/\/www.projectoxford.ai\/\" target=\"_blank\">Project Oxford Speech APIs<span class=\"sr-only\"> (opens in new tab)<\/span><\/a>. Microsoft researchers <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" title=\"pioneered\" href=\"http:\/\/research.microsoft.com\/en-us\/news\/features\/speechrecognition-082911.aspx\" target=\"_blank\">pioneered<span class=\"sr-only\"> (opens in new tab)<\/span><\/a> using deep neural networks for speech recognition, and earlier this year, our speech researchers shared our deep learning tools with the speech research community when we introduced the <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" title=\"Computational Network Toolkit (CNTK)\" href=\"https:\/\/cntk.codeplex.com\/\" target=\"_blank\">Computational Network Toolkit (CNTK)<span class=\"sr-only\"> (opens in new tab)<\/span><\/a> under an open source license at the <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" title=\"ICASSP\" href=\"http:\/\/icassp2015.org\/\" target=\"_blank\">ICASSP<span class=\"sr-only\"> (opens in new tab)<\/span><\/a> Conference in April 2015.<\/p>\n<p>CNTK is a unified computational network framework that describes deep neural networks as a series of computational steps via a directed graph. In a directed graph, each node represents an input value or a network parameter, and each edge represents a matrix operation upon its children. CNTK provides algorithms to carry out both forward computation and gradient calculation. Most popular computation node types are predefined and users can easily extend node types under the open source license. With the combination of CNTK and Microsoft\u2019s upcoming <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" title=\"Azure GPU Lab\" href=\"https:\/\/azure.microsoft.com\/en-us\/documentation\/videos\/azurecon-2015-applications-that-scale-using-gpu-compute\/\" target=\"_blank\">Azure GPU Lab<span class=\"sr-only\"> (opens in new tab)<\/span><\/a>, we have a modern, distributed GPU platform that the community can utilize to advance AI research.<\/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\/TNBlogsFS\/prod.evol.blogs.technet.com\/CommunityServer.Blogs.Components.WeblogFiles\/00\/00\/00\/90\/35\/speed-comparison.PNG\"><img decoding=\"async\" src=\"https:\/\/msdnshared.blob.core.windows.net\/media\/TNBlogsFS\/prod.evol.blogs.technet.com\/CommunityServer.Blogs.Components.WeblogFiles\/00\/00\/00\/90\/35\/speed-comparison.PNG\" alt=\" \" border=\"0\" \/><span class=\"sr-only\"> (opens in new tab)<\/span><\/a><\/p>\n<p>Since the debut of CNTK in April, we\u2019ve significantly improved machine learning efficiency with Azure GPU Lab. The combination of CNTK and Azure GPU Lab allows us to build and train deep neural nets for Cortana speech recognition up to 10 times faster than our previous deep learning system. Our Microsoft colleagues also have used CNTK to run other tasks, such as ImageNet classification and a deep structured semantic model. We&#8217;ve seen firsthand the kind of performance CNTK can deliver, and we think it could make an even greater impact within the broader machine learning and AI community. It\u2019s our hope that the community will take advantage of CNTK to share ideas more quickly through the exchange of open source working code.<\/p>\n<p>For mission critical AI research, we believe efficiency and performance should be one of the most important design criteria. There are a number of deep learning toolkits available from <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" title=\"Torch\" href=\"https:\/\/en.wikipedia.org\/wiki\/Torch_%28machine_learning%29\" target=\"_blank\">Torch<span class=\"sr-only\"> (opens in new tab)<\/span><\/a>, <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" title=\"Theano\" href=\"https:\/\/en.wikipedia.org\/wiki\/Theano_%28software%29\" target=\"_blank\">Theano<span class=\"sr-only\"> (opens in new tab)<\/span><\/a> and <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" title=\"Caffe\" href=\"http:\/\/caffe.berkeleyvision.org\/\" target=\"_blank\">Caffe<span class=\"sr-only\"> (opens in new tab)<\/span><\/a> to the recently open sourced toolkits from <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" title=\"Google\" href=\"https:\/\/googleblog.blogspot.com\/2015\/11\/tensorflow-smarter-machine-learning-for.html\" target=\"_blank\">Google<span class=\"sr-only\"> (opens in new tab)<\/span><\/a> and <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" title=\"IBM\" href=\"http:\/\/researcher.watson.ibm.com\/researcher\/view_group.php?id=3174\" target=\"_blank\">IBM<span class=\"sr-only\"> (opens in new tab)<\/span><\/a>. We compared CNTK with four popular toolkits. We focus on comparing the raw computational efficiency of different toolkits using simulated data with an effective mini batch size (8192) in order to fully utilize all GPUs. With a fully connected 4-layer neural network (see our <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" title=\"benchmark scripts\" href=\"https:\/\/github.com\/Alexey-Kamenev\/Benchmarks\" target=\"_blank\">benchmark scripts<span class=\"sr-only\"> (opens in new tab)<\/span><\/a>), the number of frames each toolkit can process per second is illustrated in the chart. We include two configurations on a single Linux machine with 1 and 4 GPUs (Nvidia K40) respectively. We also report our 8-GPU CNTK speed on Azure GPU Lab with 2 identical Linux machines (2 x 4 GPUs) as used in the baseline benchmark. CNTK compares favorably in computational efficiency for distributed deep learning (4 GPUs or 8 GPUs) on all these toolkits we tested. CNTK can easily scale beyond 8 GPUs across multiple machines with superior distributed system performance.<\/p>\n<p>We understand there are many design considerations to balance between computational performance and flexibility, and each toolkit has its unique strengths. TensorFlow offers a user-friendly Python interface; Theano is unique with its symbolic operation; Torch uses Lua programming language; Caffe is popular for computer vision researchers due to its efficient performance; and CNTK on Azure GPU Lab offers the most efficient distributed computational performance.<\/p>\n<p>Until now, our focus with CNTK has primarily been within the speech research community. As a result, its superior distributed computational performance capabilities aren\u2019t well known within the broader AI community. We hope to change that with our <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" title=\"workshop on CNTK\" href=\"http:\/\/opt-ml.org\/schedule.html\" target=\"_blank\">workshop on CNTK<span class=\"sr-only\"> (opens in new tab)<\/span><\/a> this Friday at the Neural Information Processing Systems (<a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" title=\"NIPS\" href=\"https:\/\/nips.cc\/\" target=\"_blank\">NIPS<span class=\"sr-only\"> (opens in new tab)<\/span><\/a>) Conference. <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" title=\"Dong Yu\" href=\"http:\/\/research.microsoft.com\/en-us\/people\/dongyu\/\" target=\"_blank\">Dong Yu<span class=\"sr-only\"> (opens in new tab)<\/span><\/a> and I are looking forward to sharing CNTK\u2019s capabilities with the broader AI community. We\u2019re also looking forward to sharing future developments as we work together to deliver computing systems that can see, hear, speak, understand, and even begin to reason.<\/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\" title=\"Microsoft researchers win ImageNet computer vision challenge\" href=\"http:\/\/blogs.microsoft.com\/next\/2015\/12\/10\/microsoft-researchers-win-imagenet-computer-vision-challenge\/\" target=\"_blank\">Microsoft researchers win ImageNet computer vision challenge<span class=\"sr-only\"> (opens in new tab)<\/span><\/a><\/li>\n<li><a title=\"Finding a community: Women in Machine Learning workshop celebrates 10th year\" href=\"\/b\/inside_microsoft_research\/archive\/2015\/12\/07\/women-in-machine-learning-workshop-celebrates-10-years.aspx\">Finding a community: Women in Machine Learning workshop celebrates 10th year<\/a><\/li>\n<li><a title=\"Deep learning, machine learning advancements highlight Microsoft's research at NIPS 2015\" href=\"\/b\/inside_microsoft_research\/archive\/2015\/12\/04\/deep-learning-machine-learning-advancements-highlight-microsoft-research-nips-2015.aspx\">Deep learning, machine learning advancements highlight Microsoft&#8217;s research at NIPS 2015<\/a><\/li>\n<li><a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" title=\"Speak, hear, talk: The long quest for technology that understands speech as well as a human\" href=\"http:\/\/news.microsoft.com\/features\/speak-hear-talk-the-long-quest-for-technology-that-understands-speech-as-well-as-a-human\/\" target=\"_blank\">Speak, hear, talk: The long quest for technology that understands speech as well as a human<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\" title=\"Follow Xuedong Huang on Twitter\" href=\"https:\/\/x.com\/xdh\" target=\"_blank\">Follow Xuedong Huang\u00a0on Twitter<span class=\"sr-only\"> (opens in new tab)<\/span><\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>By Xuedong Huang, Chief Speech Scientist, Microsoft Xuedong Huang (Photo by Scott Eklund\/Red Box Pictures) For more than 20 years, Microsoft has invested in advanced speech recognition research and development. It\u2019s great to see the return on that investment in products and services such as Windows Cortana, Skype Translator, and Project Oxford Speech APIs. Microsoft [&hellip;]<\/p>\n","protected":false},"author":14,"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":[1],"tags":[200589,200803,200955,201029,195185,201357,203065,196909,203889,204237,204309,204707],"research-area":[13556,13562],"msr-region":[],"msr-event-type":[],"msr-locale":[268875],"msr-post-option":[],"msr-impact-theme":[],"msr-promo-type":[],"msr-podcast-series":[],"class_list":["post-235497","post","type-post","status-publish","format-standard","hentry","category-research-blog","tag-azure-gpu-lab","tag-caffe","tag-cntk","tag-computational-network-toolkit","tag-cortana","tag-dong-yu","tag-nips-2015","tag-project-oxford","tag-skype-translator","tag-theano","tag-torch","tag-xuedong-huang","msr-research-area-artificial-intelligence","msr-research-area-computer-vision","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":"December 7, 2015","formattedExcerpt":"By Xuedong Huang, Chief Speech Scientist, Microsoft Xuedong Huang (Photo by Scott Eklund\/Red Box Pictures) For more than 20 years, Microsoft has invested in advanced speech recognition research and development. It\u2019s great to see the return on that investment in products and services such as&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\/235497","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"}],"author":[{"embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/users\/14"}],"replies":[{"embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/comments?post=235497"}],"version-history":[{"count":3,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/posts\/235497\/revisions"}],"predecessor-version":[{"id":278634,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/posts\/235497\/revisions\/278634"}],"wp:attachment":[{"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/media?parent=235497"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/categories?post=235497"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/tags?post=235497"},{"taxonomy":"msr-research-area","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/research-area?post=235497"},{"taxonomy":"msr-region","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-region?post=235497"},{"taxonomy":"msr-event-type","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-event-type?post=235497"},{"taxonomy":"msr-locale","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-locale?post=235497"},{"taxonomy":"msr-post-option","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-post-option?post=235497"},{"taxonomy":"msr-impact-theme","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-impact-theme?post=235497"},{"taxonomy":"msr-promo-type","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-promo-type?post=235497"},{"taxonomy":"msr-podcast-series","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-podcast-series?post=235497"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}