How Many AI Application Development Frameworks Are Too Many?
Most AI developers have decided what their primary modeling tools will be. It’s come down to a horse race between TensorFlow and PyTorch, though, as O’Reilly observed in their latest enterprise AI-adoption survey, a long tail of other Python tools, libraries, patterns, and projects hang on to narrow segments of loyal data scientists.
Can there possibly be a niche in this crowded segment that’s not yet addressed by a wide range of sophisticated open-source and/or commercial offerings? That question ran through my mind as I perused Huawei’s recent announcement that it has open-sourced MindSpore, its extensible software framework for AI development and training.
Huawei’s End-to-End AI DevOps Portfolio
Perhaps Huawei’s launch is best understood as addressing the specific needs of their partner ecosystem, rather than trying to rival the likes of TensorFlow and PyTorch for the loyalty of the larger AI DevOps community.
Source: Huawei
Considered in that perspective, one can find plenty of features that complement Huawei’s cloud- and hardware offerings, especially its Ascend training and inferencing accelerators, in the AI market. These core features include:
· AI modeling as code: More AI development is being done by programmers who aren’t data scientists in the classic sense. MindSpore enables development of full AI applications as code, supporting Python 3.7+ now with support of C++, Rust, and Julia promised soon. It currently runs best on Linux distributions Ubuntu and EulerOS.
· Distributed AI deployment: More AI is being developed for cloud-to-edge deployment scenarios. To address these requirements, MindSpore’s distributed libraries run on device on CPUs, GPUs, and dedicated neural processing units such as Huawei’s Ascend 310 edge-based inferencing chips and Ascend 910 AI-training chip. MindSpore scales across mobile and edge devices that run the Android and IOS operating systems, as well as across cloud environments. It supports parallel training, bug isolation, and dynamic debugging across disparate hardware platforms.
· Automated AI DevOps: Automation of the AI DevOps pipeline is becoming standard practice. MindSpore automatically optimizes algorithms to improve runtime efficiency and computing performance on target hardware platforms. MindSpore complements Huawei Cloud’s fully managed ModelArts SaaS offering. The newly announced ModelArts Pro provides full-pipeline data preprocessing, semi-automated data labeling, distributed training, automated model building, compression and model deployment for AI builders. ModelArts Pro incorporates an AI development notebook along with MindSpore and commonly used AI frameworks and software libraries. The complementary MindInsight runtime speeds model debugging and tuning by generating computation graphs of the training process as well as visualizations of training-progress metrics, model accuracy, and other parameter information.
Takeaway
Sophistication is there in spades, but it’s not clear whether Huawei intends to differentiate its end-to-end AI DevOps workbench from the rest of the market.
MindSpore provides many capabilities that are essential for enterprise-grade AI within the DevOps pipeline. However, this new offering and its sister modules and services don’t offer much functionality that couldn’t already be found in existing open-source frameworks.
Seemingly aware that it must pitch MindSpore as a credible alternative to TensorFlow and PyTorch, Huawei touts such features as unified programming of neural networks, automatic model parallelization and partitioning, automatic optimization of the same code for dynamic and static computation graphs, and on-demand distributed processing from cloud to edge.
Huawei has also upped its developer story for MindSpore with various performance claims into its story. These include the framework’s supposed ability to generate 20 percent fewer lines of code than other frameworks when building natural language processing models; to achieve a 50 percent efficiency boost on average compared to similar models built in other frameworks; and to cut down on model training time.
Clearly, those are the sorts of performance claims that every AI tool vendor and open-source advocate makes for their favorite framework. Each developer must evaluate such claims in their own environment. Now that MindSpore is open-source, there should be no significant licensing or budgetary impediment to doing so. The framework is now available on GitHub and Gitee.
From what I can see, MindSpore’s privacy and anti-adversarial features are the most interesting and perhaps differentiated. MindSpore incorporates privacy protection as a core AI pipeline safeguard. To enable training, tuning, and optimization of models, it doesn’t process data directly. Instead, it incorporates model protection technology that ingests gradient and parameter information that was already processed in the AI modeling pipeline. The framework also includes submodules for adversarial example generation and detection, model defense, and model evaluation.
To the extent that MindSpore can enable downstream retraining of neural networks without revealing source data to developers, it can be an effective guardrail against privacy encroachment. Also, MindSpore’s ability to automate creation and testing of anti-adversarial examples is essential for hardening AI apps against the hack attacks that will certainly intensify in years to come.
There aren’t too many data science workbenches on the market yet that incorporate these types of AI-hardening guardrails.