DUE TO SPAM, SIGN-UP IS DISABLED. Goto Selfserve wiki signup and request an account.
Performance
- Added full support for NVIDIA Volta GPU Architecture and CUDA 9. Training is up to 3.5x faster than Pascal when using float16.
- Enabled JIT compilation. Autograd and Gluon hybridize now use less memory and has faster speed. Performance is almost the same with old symbolic style code.
New Features - Gluon
Added enhancements to the
Gluonpackage, a high-level interface designed to be easy to use while keeping most of the flexibility of low level API. Gluon supports both imperative and symbolic programming, making it easy to train complex models imperatively with minimal impact on performance. Neural networks (and other machine learning models) can be defined and trained withgluon.nnandgluon.rnnpackages.gluon.Trainernow allows reading and setting learning rate withtrainer.learning_rateproperty.Added
ConvLSTMtogluon.contrib
New Features - Autograd
Added enhancements to
autogradpackage, which enables automatic differentiation of NDArray operations. Enter code in aautograd.record()block to capture the exact path by which each variable was generated. Use*.backward()on any variable to backpropagate.Added
mx.autograd.gradand experimental second order gradient support (most operators don't support second order gradient yet).Autograd now supports cross-device graphs. Use
x.copyto(mx.gpu(i))andx.copyto(mx.cpu())to do computation on multiple devices.
Other New Features
Added limited support for fancy indexing, which allows you to very quickly access and modify complicated subsets of an array's values.
x[idx_arr0, idx_arr1, ..., idx_arrn]is now supported. Full support coming soon in next release. Checkout master to get a preview.Added new loss functions -
SigmoidBinaryCrossEntropyLoss,CTCLoss,HuberLoss,HingeLoss,SquaredHingeLoss,LogisticLoss,TripletLossRandom number generators in
mx.nd.random.*andmx.sym.random.*now support both CPU and GPUNDArrayandSymbolnow supports "fluent" methods. You can now usex.exp()etc instead ofmx.nd.exp(x)ormx.sym.exp(x)Added
mx.rtc.CudaModulefor writing and running CUDA kernels from pythonAdded
multi_precisionoption to optimizer for easier float16 training
New Features - Sparse Tensor Support
- Added support for sparse matrices. See help on
mx.sym.sparseandmx.nd.sparsefor more info - Added limited cpu support for two sparse formats in
SymbolandNDArray-CSRNDArrayandRowSparseNDArray - Added a sparse dot product operator and many element-wise sparse operators
- Added a data iterator for sparse data input -
LibSVMIter - Added three optimizers for sparse gradient updates:
Ftrl,SGDandAdam - Added
pushandrow_sparse_pullwithRowSparseNDArrayin distributed kvstore
API Changes
Operators like
mx.sym.linalg_*andmx.sym.random_*are now moved tomx.sym.linalg.*andmx.sym.random.*. The old names are still available but deprecated.sample_*andrandom_*are now merged asrandom.*, which supports both scalar andNDArraydistribution parameters.
Bug-fixes
Fixed a bug that causes
argsortoperator to fail on large tensorsFixed numerical stability issues when summing large tensors
How to build MXNet
Please follow the instructions at https://mxnet.incubator.apache.org/get_started/install.html
List of submodules used by Apache MXNet (Incubating) and when they were updated last
Submodule:: Last updated by MXNet:: Last update in submodule
1. cub@:: 31-Jul :: 28-Aug
2. dlpack@: 08-Sep :: 06-Oct
3. dmlc-core@: 08-Sep:: 06-Oct
4. mshadow@: 03-Oct:: 09-Oct
5. nnvm@: 10-Sep:: 10-Oct
6. ps-lite@: 28-Mar:: 27-Jul