Deep Learning Blog | Bitfusion

New: Bitfusion MXNet AMI Now Available

Written by tim | Dec 15, 2016 6:31:33 PM

We’re excited to announce the newest AMI in our lineup: Bitfusion Ubuntu 14 MXNet AMI, now available in the AWS Marketplace. Amazon CTO Werner Vogels has recently announced that MXNet is the company's official deep learning framework of choice, paving the way for fast growth and interest this previously lesser known project.

 

MXNet is a deep learning framework designed for efficiency, flexibility, and productivity. It allows you to mix symbolic programming and imperative programming, and includes a dynamic scheduler and graph optimization layer that makes fast, parallelized, and memory efficient. This AMI release includes MXNet v0.7.0, which is the latest generally available version as of this blog posting.

MXNet Jupyter Tutorial Included

For many, Jupyter is the primary interface for performing data work. In this AMI, we’ve included an extensive Jupyter notebook tutorial for getting started with MXNet. If this is your first time using MXNet, or you are still experimenting, the guide does a great job walking through how to tap into the core capabilities of the framework.

Comprehensive Python2 and Python3 Support

Regardless of whether you prefer Python 2 or Python 3, we’ve included new and updated tools, libraries, and frameworks to support and handle both.

Matplotlib, NumPy, SciPy, Pandas, SymPy, PyDot, and h5py Support

When working with MXNet, there are many libraries that provide complementary functionality. In order to provide a truly comprehensive data science and deep learning toolset, we’re including them all by default.

Matplotlib provides an extensive library of graphs and charts that can be implemented with just a few lines of Python.

NumPy is a Python library that provides a variety of fundamental scientific computing functions, including convenient and fast N-dimensional array manipulation.

SciPy builds on top of NumPy with modules for statistics, optimization, integration, linear algebra, Fourier transforms, signal and image processing, ODE solvers, and more.

Pandas is library of data structures and data analysis tools that extend Python’s data munging and prep strengths with powerful data analysis and modeling capabilities.

SymPy is a lightweight, easy-to-use Python library for symbolic mathematics that aims to provide a full-featured computer algebra system (CAS).

PyDot provides a full interface to create, handle, modify, and process graphs in Graphviz’s dot language.

h5py provides a Python interface to the HDF5 binary format. It allows you to use straightforward NumPy and Python metaphors like dictionaries and NumPy arrays to interact and process terabyte scale files on disk, sits on top of the HDF5 C API which you can tap into for deeper functionality, and creates files in a standard binary format where they can be leveraged by other programs like MATLAB and IDL.

PyCUDA Support and CUDA Kernels Compiled Directly from Jupyter

PyCUDA is rapidly becoming the leading way to interact with NVIDIA CUDA from Python due to its effective handling of memory management and overall convenience and comprehensiveness. By bundling this capability with the ability to compile CUDA Kernels directly from Jupyter notebooks, you can have the ability to interact with the CUDA parallel computation API at a very deep level while also simplicity and ease of use of a notebook user interface.

Don’t Forget to Try AWS P2 Instances

AWS recently announced their next generation GPU P2 instances, which provide up to 16 NVIDIA K80 GPUs, 64 vCPUs and 732 GiB of host memory. This is a welcome relief, given that the previous generation GPU G2 instances were around for a while and starting to show their age. In the Bitfusion MXNet AMI, we included updated NVIDIA drivers, the CUDA toolkit, and CUDNN support, allowing you to tap into these powerful new instances.

Try out these new additions and enhancements in the AWS marketplace, all our AMIs come with a 5 day free trial: Bitfusion Ubuntu 14 MXNet AMI.