Python API

Python-first API

Apache MXNet provides a comprehensive and flexible Python API to serve a broad community of developers with different levels of experience and wide ranging requirements. Current efforts are focused on the Gluon API. Gluon provides a clear, concise, and simple API for deep learning. It makes it easy to prototype, build, and train deep learning models without sacrificing training speed.

You can checkout the rich ecosystem built around Apache MXNet Gluon, including D2L.ai, GluonCV, GluonNLP and GluonTS.

While most of the usability improvement around training are focused on the python API, the performance of Apache MXNet is accessible through a variety of different language bindings, checkout their respective API and guides below!

Other Bindings

Call for Contribution

The Clojure, Java, Julia, R, and Scala language bindings of MXNet v1.x were removed in v2.x due to some C APIs being deprecated and the bindings rely on the deprecated APIs. You can still use these language bindings in v1.x. MXNet's new C APIs in v2.x can be used to reestablish your preferred language binding. Your contribution is welcome!

Apache MXNet Architecture

Building a high-performance deep learning library requires many systems-level design decisions. In this design note, we share the rationale for the specific choices made when designing MXNet. We imagine that these insights may be useful to both deep learning practitioners and builders of other deep learning systems.

Deep Learning System Design Concepts

The following pages address general design concepts for deep learning systems. Mainly, they focus on the following 3 areas: abstraction, optimization, and trade-offs between efficiency and flexibility. Additionally, we provide an overview of the complete MXNet system.