<!DOCTYPE html>
<html lang=" en"><head>
  <meta charset="utf-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <link href="https://raw.githubusercontent.com/dmlc/web-data/master/mxnet/image/mxnet-icon.png" rel="icon" type="image/png"><!-- Begin Jekyll SEO tag v2.6.1 -->
<title>Apache MXNet | A flexible and efficient library for deep learning.</title>
<meta name="generator" content="Jekyll v3.8.6" />
<meta property="og:title" content="Apache MXNet" />
<meta property="og:locale" content="en_US" />
<meta name="description" content="A flexible and efficient library for deep learning." />
<meta property="og:description" content="A flexible and efficient library for deep learning." />
<link rel="canonical" href="https://mxnet.apache.org/" />
<meta property="og:url" content="https://mxnet.apache.org/" />
<meta property="og:site_name" content="Apache MXNet" />
<script type="application/ld+json">
{"description":"A flexible and efficient library for deep learning.","headline":"Apache MXNet","@type":"WebSite","url":"https://mxnet.apache.org/","name":"Apache MXNet","@context":"https://schema.org"}</script>
<!-- End Jekyll SEO tag -->
<script src="https://medium-widget.pixelpoint.io/widget.js"></script>
  <link rel="stylesheet" href="/versions/1.6.0/assets/main.css"><link type="application/atom+xml" rel="alternate" href="https://mxnet.apache.org/feed.xml" title="Apache MXNet" /><script>
if(!(window.doNotTrack === "1" || navigator.doNotTrack === "1" || navigator.doNotTrack === "yes" || navigator.msDoNotTrack === "1")) {
  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
  })(window,document,'script','https://www.google-analytics.com/analytics.js','ga');

  ga('create', 'UA-96378503-1', 'auto');
  ga('send', 'pageview');
}
</script>
  
<script src="https://code.jquery.com/jquery-3.3.1.min.js" integrity="sha256-FgpCb/KJQlLNfOu91ta32o/NMZxltwRo8QtmkMRdAu8=" crossorigin="anonymous"></script>

  <script src="/versions/1.6.0/assets/js/clipboard.js"></script>
  <script src="/versions/1.6.0/assets/js/copycode.js"></script>
  <script src="/versions/1.6.0/assets/js/globalSearch.js"></script>
  <style>
    .dropdown {
      position: relative;
      display: inline-block;
    }
  
    .dropdown-content {
      display: none;
      position: absolute;
      background-color: #f9f9f9;
      min-width: 160px;
      box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
      padding: 12px 16px;
      z-index: 1;
      text-align: left;
    }
  
    .dropdown:hover .dropdown-content {
      display: block;
    }
  </style>
</head>
<body><header class="site-header" role="banner">

  <script>
    $(document).ready(function () {

      // HEADER OPACITY LOGIC

      function opacity_header() {
        var value = "rgba(4,140,204," + ($(window).scrollTop() / 300 + 0.4) + ")"
        $('.site-header').css("background-color", value)
      }

      $(window).scroll(function () {
        opacity_header()
      })
      opacity_header();

      // MENU SELECTOR LOGIC
      $('.page-link').each( function () {
        if (window.location.href.includes(this.href)) {
          $(this).addClass("page-current");
        }
      });
    })
  </script>
  <div class="wrapper">
    <a class="site-title" rel="author" href="/versions/1.6.0/"><img
            src="/versions/1.6.0/assets/img/mxnet_logo.png" class="site-header-logo"></a>
    <nav class="site-nav">
      <input type="checkbox" id="nav-trigger" class="nav-trigger"/>
      <label for="nav-trigger">
          <span class="menu-icon">
            <svg viewBox="0 0 18 15" width="18px" height="15px">
              <path d="M18,1.484c0,0.82-0.665,1.484-1.484,1.484H1.484C0.665,2.969,0,2.304,0,1.484l0,0C0,0.665,0.665,0,1.484,0 h15.032C17.335,0,18,0.665,18,1.484L18,1.484z M18,7.516C18,8.335,17.335,9,16.516,9H1.484C0.665,9,0,8.335,0,7.516l0,0 c0-0.82,0.665-1.484,1.484-1.484h15.032C17.335,6.031,18,6.696,18,7.516L18,7.516z M18,13.516C18,14.335,17.335,15,16.516,15H1.484 C0.665,15,0,14.335,0,13.516l0,0c0-0.82,0.665-1.483,1.484-1.483h15.032C17.335,12.031,18,12.695,18,13.516L18,13.516z"/>
            </svg>
          </span>
      </label>

      <div class="trigger">
        <a class="page-link" href="/versions/1.6.0/get_started">Get Started</a>
        <a class="page-link" href="/versions/1.6.0/blog">Blog</a>
        <a class="page-link" href="/versions/1.6.0/features">Features</a>
        <a class="page-link" href="/versions/1.6.0/ecosystem">Ecosystem</a>
        <a class="page-link" href="/versions/1.6.0/api">Docs & Tutorials</a>
        <a class="page-link" href="https://github.com/apache/incubator-mxnet">GitHub</a>
        <div class="dropdown">
          <span style="display:inline-flex;">1.6.0
            <svg viewBox="0 0 32 32" class="icon icon-caret-bottom" aria-hidden="true" style="width: 18px;"><path d="M24 11.305l-7.997 11.39L8 11.305z" style="fill: white;"></path></svg>
          </span>
          <div class="dropdown-content">
            <a href="/">master</a>
            <a href="/versions/1.7.0/">1.7.0</a>
            <a style="color:#FF4500;" href="/versions/1.6.0/">1.6.0</a>
            <a href="/versions/1.5.0/">1.5.0</a>
            <a href="/versions/1.4.1/">1.4.1</a>
            <a href="/versions/1.3.1/">1.3.1</a>
            <a href="/versions/1.2.1/">1.2.1</a>
            <a href="/versions/1.1.0/">1.1.0</a>
            <a href="/versions/1.0.0/">1.0.0</a>
            <a href="/versions/0.12.1/">0.12.1</a>
            <a href="/versions/0.11.0/">0.11.0</a>
          </div>
        </div>
      </div>
    </nav>
  </div>
</header>
<main class="page-content-home" aria-label="Content">
    <div class="wrapper">
        <div class="home">
            <h1 style="margin-bottom:40px;"> A FLEXIBLE AND EFFICIENT<br> <span
                    style="margin-left:100px"> LIBRARY FOR DEEP LEARNING</span>
            </h1>

            <p style="margin-bottom:40px;">A truly open source deep learning framework suited<br>for flexible research
                prototyping and
                production.</p>
            <div>
                <a href="/versions/1.6.0/get_started" class="btn" style="float:left; margin-bottom:20px; margin-top:0px">Get Started
                    <span class="span-accented">›</span></a>
            </div>

        </div>


    </div>
    </div>
    <div class="key-features-section section">
        <div class="wrapper">
            <div class="row">
                <div class="col-8">
                    <h2>Key Features &amp;<br>Capabilities</h2>
                </div>
                <div class="col-4">
                    <div>
                        <a href="/versions/1.6.0/features" class="btn btn-action">All Features <span class="span-accented">›</span></a>
                    </div>
                </div>
            </div>

            <div class="row key-features">
                <div class="col-3">
                    <div class="card">
                        <div class="card-text">
                            <h3>Hybrid Front-End</h3>
                            <p>A hybrid front-end seamlessly transitions between Gluon eager imperative mode and symbolic mode to provide both flexibility and speed.</p>
                        </div>
                        <div class="key-feature-image">
                            <img width=50px src="/versions/1.6.0/assets/img/circuit.svg">
                        </div>
                    </div>
                </div><div class="col-3">
                    <div class="card">
                        <div class="card-text">
                            <h3>Distributed Training</h3>
                            <p>Scalable distributed training and performance optimization in research and production is enabled by the dual Parameter Server and Horovod support.</p>
                        </div>
                        <div class="key-feature-image">
                            <img width=50px src="/versions/1.6.0/assets/img/algorithm.svg">
                        </div>
                    </div>
                </div><div class="col-3">
                    <div class="card">
                        <div class="card-text">
                            <h3>8 Language Bindings</h3>
                            <p>Deep integration into Python and support for Scala, Julia, Clojure, Java, C++, R and Perl.</p>
                        </div>
                        <div class="key-feature-image">
                            <img width=50px src="/versions/1.6.0/assets/img/programming.svg">
                        </div>
                    </div>
                </div><div class="col-3">
                    <div class="card">
                        <div class="card-text">
                            <h3>Tools &amp; Libraries</h3>
                            <p>A thriving ecosystem of tools and libraries extends MXNet and enable use-cases in computer vision, NLP, time series and more.</p>
                        </div>
                        <div class="key-feature-image">
                            <img width=50px src="/versions/1.6.0/assets/img/chip.svg">
                        </div>
                    </div>
                </div></div>

        </div>
    </div>
    <div class="ecosystem-section section">
        <div class="wrapper">
            <div class="row">
                <div class="col-8">
                    <h2>Ecosystem </h2>
                </div>
                <div class="col-4">
                    <div>
                        <a href="/versions/1.6.0/ecosystem" class="btn btn-action">All Projects <span
                                class="span-accented">›</span></a>
                    </div>
                </div>
                <div class="col-8">
                    <p>Explore a rich ecosystem of libraries, tools, and more to support development.</p>
                </div>
            </div>

            <div class="row"><div class="col-3">
                    <div class="card">
                        <a href="https://d2l.ai">
                            <div class="card-text">
                                <div class="card-header-title">
                                    <h3>D2L.ai</h3>
                                    <img src="/versions/1.6.0/assets/img/textbook.svg">
                                </div>
                                <p class="card-summary">An interactive deep learning book with code, math, and discussions. Used at Berkeley, University of Washington and more.</p>
                            </div>
                        </a>
                    </div>
                </div><div class="col-3">
                    <div class="card">
                        <a href="https://gluon-cv.mxnet.io">
                            <div class="card-text">
                                <div class="card-header-title">
                                    <h3>GluonCV</h3>
                                    <img src="/versions/1.6.0/assets/img/visual.svg">
                                </div>
                                <p class="card-summary">GluonCV is a computer vision toolkit with rich model zoo. From object detection to pose estimation.</p>
                            </div>
                        </a>
                    </div>
                </div><div class="col-3">
                    <div class="card">
                        <a href="https://gluon-nlp.mxnet.io/">
                            <div class="card-text">
                                <div class="card-header-title">
                                    <h3>GluonNLP</h3>
                                    <img src="/versions/1.6.0/assets/img/artificial-intelligence.svg">
                                </div>
                                <p class="card-summary">GluonNLP provides state-of-the-art deep learning models in NLP. For engineers and researchers to fast prototype research ideas and products.</p>
                            </div>
                        </a>
                    </div>
                </div><div class="col-3">
                    <div class="card">
                        <a href="https://gluon-ts.mxnet.io/">
                            <div class="card-text">
                                <div class="card-header-title">
                                    <h3>GluonTS</h3>
                                    <img src="/versions/1.6.0/assets/img/line-graph.svg">
                                </div>
                                <p class="card-summary">Gluon Time Series (GluonTS) is the Gluon toolkit for probabilistic time series modeling, focusing on deep learning-based models.</p>
                            </div>
                        </a>
                    </div>
                </div></div>
        </div>
    </div>

    <div class="news-section section ">
        <div class="wrapper">
            <div class="row">
                <div class="col-8">
                    <h2>Latest News</h2>
                </div>
                <div class="col-4">
                    <div>
                        <a href="/versions/1.6.0/blog" class="btn btn-action">More Blog Posts <span
                                class="span-accented">›</span></a>
                    </div>
                </div>
                <div class="col-8">
                    <p>Follow our blog post publications to get the latest news on MXNet and its ecosystem</p>
                </div>
            </div>

            <div id="medium-widget"></div>
            <script>
                MediumWidget.Init({renderTo: '#medium-widget',
                    params: {
                        "resource": "https://medium.com/apache-mxnet",
                        "postsPerLine": 3,
                        "limit": 3,
                        "picture": "big",
                        "fields": ["description", "claps", "publishAt"],
                        "ratio": "landscape"
                    }
                })
            </script>
        </div>
    </div>

    <div class="community-section section ">
        <div class="wrapper">
            <div class="row">
                <div class="col-6">
                    <h2>Community</h2>
                </div>
                <div class="col-8">
                    <p>Join the MXNet scientific community to contribute, learn, and get
                        answers to your questions.</p>
                </div>
            </div>

            <div class="row"><div class="col-4">
                    <div class="card">
                        <a href="https://github.com/apache/incubator-mxnet">
                            <div>
                                <div class="card-header-title">
                                    <h3>GitHub</h3>
                                    <img src="/versions/1.6.0/assets/img/octocat.png">
                                </div>
                                <p class="card-summary">Report bugs, request features, discuss issues, and more.</p>
                            </div>
                        </a>
                    </div>
                </div><div class="col-4">
                    <div class="card">
                        <a href="https://discuss.mxnet.io/">
                            <div>
                                <div class="card-header-title">
                                    <h3>Discuss Forum</h3>
                                    <img src="/versions/1.6.0/assets/img/mxnet_m.png">
                                </div>
                                <p class="card-summary">Browse and join discussions on deep learning with MXNet and Gluon.</p>
                            </div>
                        </a>
                    </div>
                </div><div class="col-4">
                    <div class="card">
                        <a href="mailto:dev@mxnet.apache.org">
                            <div>
                                <div class="card-header-title">
                                    <h3>Slack</h3>
                                    <img src="/versions/1.6.0/assets/img/slack-logo-icon.svg">
                                </div>
                                <p class="card-summary">Discuss advanced topics. Request access by mail dev@mxnet.apache.org</p>
                            </div>
                        </a>
                    </div>
                </div></div>
        </div>
    </div>
    <div class="trusted-by-section section ">
        <div class="wrapper">
            <div class="trusted-by">
                <h2>Already trusted by</h2>
                <img src="/versions/1.6.0/assets/img/logos.png">
            </div>
        </div>
    </div>
</main><footer class="site-footer h-card">
    <div class="wrapper">
        <div class="row">
            <div class="col-4">
                <h4 class="footer-category-title">Resources</h4>
                <ul class="contact-list">
                    <li><a href="/versions/1.6.0/community/contribute.html#mxnet-dev-communications">Mailing lists</a></li>
                    <li><a href="https://cwiki.apache.org/confluence/display/MXNET/Apache+MXNet+Home">Developer Wiki</a></li>
                    <li><a href="https://issues.apache.org/jira/projects/MXNET/issues">Jira Tracker</a></li>
                    <li><a href="https://github.com/apache/incubator-mxnet/labels/Roadmap">Github Roadmap</a></li>
                    <li><a href="https://discuss.mxnet.io">MXNet Discuss forum</a></li>
                    <li><a href="/versions/1.6.0/community/contribute.html">Contribute To MXNet</a></li>

                </ul>
            </div>

            <div class="col-4"><ul class="social-media-list"><li><a href="https://github.com/apache/incubator-mxnet"><svg class="svg-icon"><use xlink:href="/versions/1.6.0/assets/minima-social-icons.svg#github"></use></svg> <span class="username">apache/incubator-mxnet</span></a></li><li><a href="https://www.twitter.com/apachemxnet"><svg class="svg-icon"><use xlink:href="/versions/1.6.0/assets/minima-social-icons.svg#twitter"></use></svg> <span class="username">apachemxnet</span></a></li><li><a href="https://youtube.com/apachemxnet"><svg class="svg-icon"><use xlink:href="/versions/1.6.0/assets/minima-social-icons.svg#youtube"></use></svg> <span class="username">apachemxnet</span></a></li></ul>
</div>

            <div class="col-4 footer-text">
                <p>A flexible and efficient library for deep learning.</p>
            </div>
        </div>
    </div>
</footer>
<footer class="site-footer2">
    <div class="wrapper">
        <div class="row">
            <div class="col-3">
                <img src="/versions/1.6.0/assets/img/apache_incubator_logo.png" class="footer-logo col-2">
            </div>
            <div class="footer-bottom-warning col-9">
                <p>Apache MXNet is an effort undergoing incubation at The Apache Software Foundation (ASF), <span
                        style="font-weight:bold">sponsored by the <i>Apache Incubator</i></span>. Incubation is required
                    of all newly accepted projects until a further review indicates that the infrastructure,
                    communications, and decision making process have stabilized in a manner consistent with other
                    successful ASF projects. While incubation status is not necessarily a reflection of the completeness
                    or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF.
                </p><p>"Copyright © 2017-2018, The Apache Software Foundation Apache MXNet, MXNet, Apache, the Apache
                    feather, and the Apache MXNet project logo are either registered trademarks or trademarks of the
                    Apache Software Foundation."</p>
            </div>
        </div>
    </div>
</footer>




</body>

</html>
