UPDATED 12:00 EDT / OCTOBER 25 2017


As deep learning frameworks converge, automation possibilities unfold

From a developer’s standpoint, deep learning is usually a hands-on exercise conducted within a particular modeling framework. Typically, a developer has needed to adapt their own manual coding style to interfaces provided by a specific framework, such as TensorFlowApache MXNet, Microsoft Cognitive Toolkit (CNTK), Caffe, Caffe2, Torch and Keras.

Getting productive on a new DL project may require that DL developers be cross-trained on a different modeling framework. However, this requirement is becoming more cumbersome as the range of open-source and commercial DL frameworks grows. One way in which developers are attempting to mitigate these complexities is by standardizing the most popular DL modeling frameworks. A recent article provides quantitative metrics on adoption of the leading DL frameworks.

Another important trend is that DL modeling frameworks are converging around higher-level development abstractions, intermediate representation languages and optimized cross-platform model compilers. Building DL models is becoming just another branch of application development, so it was significant when Amazon Web Services Inc. and Microsoft Corp. recently announced their jointly developed Gluon reference specification.

As detailed in a recent SiliconANGLE article, Gluon provides a development abstraction for prototyping, building, training and optimization of DL models. The Gluon application programming interface, defined in Python, is agnostic to underlying DL frameworks and runtime engines. The specification allows other DL engines to be plugged into the Gluon API without hurting the training speed enabled by those engines.

Currently available in the AWS-developed MXNet 0.11 and to be rolled out soon in CNTK, Gluon enables DL developers to:

  • Prototype, build, train and deploy DL models in any framework and deploy in an efficient format to any target platform;
  • Program models using a concise Python API, which reduces the amount of coding associated with any given DL project;
  • Model DL models flexibly like any other data structure;
  • Create DL models on the fly, with any structure, and change them rapidly using Python’s native control flow;
  • Reuse pre-built, optimized DL building blocks, including predefined layers, optimizers and initializers;
  • Allow developers to use standard programming loops and conditionals to prototype, build, revise and debug DL models;
  • Free developers from having to know about specific DL compilation or execution details; and
  • Optimize DL training algorithms automatically in alignment with model revisions.

From what I can see, the most important innovation in Gluon is the last feature: automatic optimization of DL training workflows to align with changes in the models. Considering that training is one of the most time-consuming aspects of any DL initiative and that DL developers rarely have expertise in how to accelerate this process, this automation feature promises a significant boost in developer productivity — that is, if Gluon becomes widely adopted.

Though its developers haven’t announced any future roadmap for Gluon, it’s highly likely that more automation features will be introduced. This is almost inevitable, considering how rapidly automation is coming to every aspect of the DL and machine learning development cycle. Across the industry, we’re seeing mainstream DL development tools starting to incorporate these features:

  • Automatically generate customized REST APIs and Docker images around DL models during the promotion and deployment stages;
  • Automatically deploy DL models for execution into private, public or hybrid multi-cloud platforms;
  • Automatically scale DL models’ runtime resource consumption up or down based on changing application requirements;
  • Automatically retrain DL models using fresh data prior to redeploying them;
  • Automatically keep track of which DL model version is currently deployed; and
  • Automatically ensure that a sufficiently predictive DL model in always in live production status.

It wouldn’t be surprising if Microsoft were to weave more of its ML-accelerated auto-programming technology into Gluon to speed writing of Python code for DL deployment across runtime engines, platforms and hardware platforms.

What do you think? If you’re a DL, data science, DevOps or IT operations professional, you almost certainly have practical insights for automating data-driven business processes. I would love to hear your thoughts. Please join me on Wednesday, Nov. 1, from 2 to 3 p.m. EDT for the Wikibon CrowdChat “Automating Data Analytics Management to the Max.” You can participate simply by clicking here, logging in with your Twitter handle and posting your thoughts in an interactive, moderated Q&A format.

Image: geralt/Pixabay

A message from John Furrier, co-founder of SiliconANGLE:

Your vote of support is important to us and it helps us keep the content FREE.

One click below supports our mission to provide free, deep, and relevant content.  

Join our community on YouTube

Join the community that includes more than 15,000 #CubeAlumni experts, including Amazon.com CEO Andy Jassy, Dell Technologies founder and CEO Michael Dell, Intel CEO Pat Gelsinger, and many more luminaries and experts.

“TheCUBE is an important partner to the industry. You guys really are a part of our events and we really appreciate you coming and I know people appreciate the content you create as well” – Andy Jassy