Apache MXNet

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search
Apache MXNet
DeveloperApache Software Foundation
Repository
  • {{URL|example.com|optional display text}}Lua error in Module:EditAtWikidata at line 29: attempt to index field 'wikibase' (a nil value).
Written inC++, Python, R, Java, Julia, JavaScript, Scala, Go, Perl
Engine
    Lua error in Module:EditAtWikidata at line 29: attempt to index field 'wikibase' (a nil value).
    Operating systemWindows, macOS, Linux
    TypeLibrary for machine learning and deep learning
    LicenseApache License 2.0
    Websitemxnet.apache.org

    Apache MXNet is an open-source deep learning software framework that trains and deploys deep neural networks. It aims to be scalable, allows fast model training, and supports a flexible programming model and multiple programming languages (including C++, Python, Java, Julia, MATLAB, JavaScript, Go, R, Scala, Perl, and Wolfram Language). The MXNet library is portable and can scale to multiple GPUs[1] and machines. It was co-developed by Carlos Guestrin at the University of Washington, along with GraphLab.[2]

    As of September 2023, it is no longer actively developed.[3] Apache MXNet was effectively abandoned due to a combination of factors including lack of significant contributions, outdated builds, and a shift in focus by its major backer, Amazon, towards other frameworks like PyTorch. The project saw no new releases for over a year, and there were very few pull requests or updates from contributors, leading to its move to the Apache Attic in 2023. Additionally, the community began migrating to other frameworks that offered more robust support and development activity.[4]

    Features

    [edit | edit source]

    Apache MXNet is a scalable deep learning framework that supports deep learning models, such as convolutional neural networks (CNNs) and long short-term memory networks (LSTMs).

    Scalability

    [edit | edit source]

    MXNet can be distributed on dynamic cloud infrastructure using a distributed parameter server (based on research at Carnegie Mellon University, Baidu, and Google[5]). With multiple GPUs or CPUs, the framework can approach linear scale.

    Flexibility

    [edit | edit source]

    MXNet supports both imperative and symbolic programming. The framework allows developers to track, debug, save checkpoints, modify hyperparameters, and perform early stopping.

    Multiple languages

    [edit | edit source]

    MXNet supports Python, R, Scala, Clojure, Julia, Perl, MATLAB, and JavaScript for front-end development and C++ for back-end optimization.

    Portability

    [edit | edit source]

    The framework supports deployment of a trained model to low-end devices for inference, such as mobile devices by using Amalgamation.[6] Other deployment targets include Internet of things devices (using AWS Greengrass), serverless computing (using AWS Lambda), or containers. These low-end environments can have only weaker CPU or limited memory (RAM) and should be able to use the models that were trained on a higher-level environment (GPU-based cluster, for example)

    Cloud Support

    [edit | edit source]

    MXNet is supported by public cloud providers including Amazon Web Services (AWS)[7] and Microsoft Azure.[8] Currently, MXNet is supported by Intel, Baidu, Microsoft, Wolfram Research, and research institutions such as Carnegie Mellon, MIT, the University of Washington, and the Hong Kong University of Science and Technology.[9]

    See also

    [edit | edit source]

    References

    [edit | edit source]
    1. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    2. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    3. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    4. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    5. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    6. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    7. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    8. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    9. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).