You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 12 Next »

New Features - Added Scala Inference APIs

 

New Features - Added module to import ONNX models into MXNet

 

New Features - Added support for Model Quantization with Calibration

  • Implemented model quantization by adopting the TensorFlow approach with calibration by borrowing the idea from Nvidia's TensorRT. The focus of this work is on keeping quantized models (ConvNets for now) inference accuracy loss under control when compared to their corresponding FP32 models. Please see the example on how to quantize a FP32 model with or without calibration. (#9552)

New Features - Added Exception Handling Support for Operators

  • Implemented Exception Handling Support for Operators in MXNet. Transports backend C++ exceptions to the different language front-ends and prevent crashes when exception is thrown during operator execution. (#9681)

New Features - Added FP16 support for distributed training

New Features - Added Profiling enhancements

 

  • Added Scala Inference APIs (#9678): MXNet Scala Inference API
  • Added module to import ONNX models into MXNet (#9963): Proposal: ImportExport module
  • Added support for Model Quantization with Calibration (#9552). 
  • Added Exception Handling support for operators and iterators (#9681): Improved Exception Handling in MXNet
  • Added MKLDNN support for MXNet (#9677): MKLDNN integration
  • Added FP16 support for distributed training (#10183).
  • Added Profiling enhancements - VTune objects, individual operator profiling, C API profiling, Memory usage profiling (#8972)

Bug-fixes

  • Fixed tests - Flakiness/Bugs - (#9598, #9951, #10259, #10197, #10136, #10422). Please see: https://github.com/apache/incubator-mxnet/projects/9
  • Fix cudnn_conv and cudnn_deconv deadlock (#10392).
  • Fixed uncaught exception for bucketing module when symbol name not specified (#10094).
  • Fixed regression output layers (#9848).
  • Fixed crash with mx.nd.ones (#10014).
  • Fixed sample_multinomial crash when get_prob=True (#10413).
  • Fixed buggy type inference in correlation (#10135).
  • Fixed race condition for CPUSharedStorageManager->Free and launched workers at iter init stage to avoid frequent relaunch (#10096).
  • Fixed DLTensor Conversion for int64 (#10083).
  • Fixes for profiler (#9932, #10306)
  • Fixed ndarray assignment issues (#10022, #9981).
  • Fixed incorrect indices generated by device row sparse pull (#9887).
  • Fixed print_summary bug in visualization module (#9492).
  • Fixed cast storage support for same stypes (#10400).
  • Fixed a race condition in `io.LibSVMIter` with batch size is large (#10124).

Performance Improvements

  • Replaced std::swap_ranges with memcpy (#10351)
  • Implemented DepthwiseConv2dBackwardFilterKernel which is over 5x faster (#10098)
  • Implemented CPU LSTM Inference (#9977)
  • Added Layer Normalization in C++ (#10029)
  • Optimized Performance for rtc (#10018)
  • Improved CPU performance of  ROIpooling operator by using OpenMP (#9958)
  • Accelerated the calculation of F1 (#9833)

API Changes

  • Added copy flag for astype (#10347).
  • Added context parameter to Scala Infer API - ImageClassifier and ObjectDetector (#10252).
  • Added axes support for dropout in gluon (#10032).
  • Added default `ctx` to cpu for `gluon.Block.load_params` (#10160).
  • Added support for variable sequence length in gluon.RecurrentCell (#9934).
  • Added convenience fluent method for squeeze op (#9734).
  • Made array.reshape compatible with numpy (#9790).
  • Added axis support and gradient for L2norm (#9740)

 

Sparse Support

  • Added support for multi-GPU training with "row_sparse" weights using "device" KVStore (#9987).
  • Added `Module.prepare` API for multi-GPU and multi-machine training with "row_sparse" weight (#10285)
  •  Added 'deterministic' option for `contrib.SparseEmbedding` operator
  • Added `sparse.broadcast_mul` and `sparse.broadcast_div` with CSRNDArray and 1-D dense NDArray
  • Added sparse support for Custom Operator (#10374)
  • Added Sparse feature for Perl. (#9988)
  • Added force_deterministic option for sparse embedding (#9882).
  • Improved sparse SGD, sparse AdaGrad and sparse Adam optimizer speed on GPU by 30x (#9561, #10312, #10293, #10062).
  • Improved 'sparse.retain' performance on CPU by 2.5x (#9722)
  • Add `sparse.where` with condition being csr ndarray (#9481)
  • Added guide for implementing sparse ops (#10081).

Deprecations

  • Deprecated profiler_set_state (#10156).

Other Features

  • Added constant parameter for gluon (#9893).
  • Added contrib.rand.zipfian (#9747).
  • Added Gluon PreLU, ELU, SELU, Swish activation layers for Gluon (#9662)
  • Added Squeeze Op (#9700).
  • Added multi-proposal operator (CPU version) and fixed bug in multi-proposal operator (GPU version) (#9939).
  • Added in Large-Batch SGD with a warmup, and a LARS startegy. (#8918)
  • Added Language Modelling datasets and Sampler (#9514).
  • Added instance norm and reflection padding to Gluon (#7938).
  • Added micro-averaging strategy for F1 metric (#9777).
  • Added Softsign Activation Function (#9851).
  • Added eye operator, for default storage type (#9770).
  • TVM bridge support to JIT NDArray Function by TVM (#9880).
  • Added float16 support for correlation operator and L2Normalization operator (#10125, #10078).
  • Added random shuffle implementation for NDArray (#10048).
  • Added load from buffer functions for CPP package (#10261).

Usability Improvements

  • Added embedding learning example for Gluon (#9165).
  •  Added tutorial on how to use data augmenters. (#10055)
  • Added tutorial for Data Augmentation with Masks (#10178)
  • Added LSTNet example (#9512).
  • Added MobileNetV2 example (#9614).
  • Added tutorial for Gluon Datasets and DataLoaders (#10251).
  • Added Language model with Google's billion words dataset (#10025).
  • Added example for custom operator using RTC (#9870).
  • Improved image classification examples (#9799, #9633).
  • Added reshape predictor function to c_predict_api (#9984)


How to build MXNet

Please follow the instructions at https://mxnet.incubator.apache.org/install/index.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@:: Jul 31, 2017 :: Jul 31, 2017
  2. dlpack@: Oct 30, 2017 :: Oct 30, 2017
  3. dmlc-core@: April 4, 2018 :: Jan 17, 2017
  4. mshadow@: December 19, 2017 :: Jan 10, 2017
  5. nnvm@: Dec 9, 2017 :: Jan 10, 2017
  6. ps-lite@: Nov 21, 2017 :: Jan 2, 2017
  • No labels