Deeplearning4j
Community ForumND4J JavadocDL4J Javadoc
EN 1.0.0-M1.1
EN 1.0.0-M1.1
  • Deeplearning4j Suite Overview
  • Release Notes
    • 1.0.0-M1.1
    • 1.0.0-M1
    • 1.0.0-beta7
    • 1.0.0-beta6
    • 1.0.0-beta5
    • 1.0.0-beta4
    • 1.0.0-beta3
    • 1.0.0-beta2
    • 1.0.0-beta
    • 1.0.0-alpha
    • 0.9.1
    • 0.9.0
    • 0.8.0
    • 0.7.2
    • 0.7.1
    • 0.7.0
    • 0.6.0
    • 0.5.0
    • 0.4.0
  • Multi-Project
    • Tutorials
      • Beginners
      • Quickstart
    • How To Guides
      • Import in to your favorite IDE
      • Contribute
        • Eclipse Contributors
      • Developer Docs
        • Github Actions/Build Infra
        • Javacpp
        • Release
        • Testing
      • Build From Source
      • Benchmark
      • Beginners
    • Reference
      • Examples Tour
    • Explanation
      • The core workflow
      • Configuration
        • Backends
          • Performance Issues
          • CPU
          • Cudnn
        • Memory
          • Workspaces
      • Build Tools
      • Snapshots
      • Maven
  • Deeplearning4j
    • Tutorials
      • Quick Start
      • Language Processing
        • Doc2Vec
        • Sentence Iterator
        • Tokenization
        • Vocabulary Cache
    • How To Guides
      • Custom Layers
      • Keras Import
        • Functional Models
        • Sequential Models
        • Custom Layers
        • Keras Import API Overview
          • Advanced Activations
          • Convolutional Layers
          • Core Layers
          • Embedding Layers
          • Local Layers
          • Noise Layers
          • Normalization Layers
          • Pooling Layers
          • Recurrent Layers
          • Wrapper Layers
        • Supported Features Overview
          • Activations
          • Constraints
          • Initializers
          • Losses
          • Optimizers
          • Regularizers
      • Tuning and Training
        • Visualization
        • Troubleshooting Training
        • Early Stopping
        • Evaluation
        • Transfer Learning
    • Reference
      • Model Zoo
        • Zoo Models
      • Activations
      • Auto Encoders
      • Computation Graph
      • Convolutional Layers
      • DataSet Iterators
      • Layers
      • Model Listeners
      • Saving and Loading Models
      • Multi Layer Network
      • Recurrent Layers
      • Updaters/Optimizers
      • Vertices
      • Word2vec/Glove/Doc2Vec
    • Explanation
  • datavec
    • Tutorials
      • Overview
    • How To Guides
    • Reference
      • Analysis
      • Conditions
      • Executors
      • Filters
      • Normalization
      • Operations
      • Transforms
      • Readers
      • Records
      • Reductions
      • Schemas
      • Serialization
      • Visualization
    • Explanation
  • Nd4j
    • Tutorials
      • Quickstart
    • How To Guides
      • Other Framework Interop
        • Tensorflow
        • TVM
        • Onnx
      • Matrix Manipulation
      • Element wise Operations
      • Basics
    • Reference
      • Op Descriptor Format
      • Tensor
      • Syntax
    • Explanation
  • Samediff
    • Tutorials
      • Quickstart
    • How To Guides
      • Importing Tensorflow
      • Adding Operations
        • codegen
    • Reference
      • Operation Namespaces
        • Base Operations
        • Bitwise
        • CNN
        • Image
        • LinAlg
        • Loss
        • Math
        • NN
        • Random
        • RNN
      • Variables
    • Explanation
      • Model Import Framework
  • Libnd4j
    • How To Guides
      • Building on Windows
      • Building for raspberry pi or Jetson Nano
      • Building on ios
      • How to Add Operations
      • How to Setup CLion
    • Reference
      • Understanding graph execution
      • Overview of working with libnd4j
      • Helpers Overview (CUDNN, OneDNN,Armcompute)
    • Explanation
  • Python4j
    • Tutorials
      • Quickstart
    • How To Guides
      • Write Python Script
    • Reference
      • Python Types
      • Python Path
      • Garbage Collection
      • Python Script Execution
    • Explanation
  • RL4j
    • Tutorials
    • How To Guides
    • Reference
    • Explanation
  • Spark
    • Tutorials
      • DL4J on Spark Quickstart
    • How To Guides
      • How To
      • Data How To
    • Reference
      • Parameter Server
      • Technical Reference
    • Explanation
      • Spark API Reference
  • codegen
Powered by GitBook
On this page
  • 0.8.0 -> 0.9.0 Transition Notes
  • Version 0.8.0
  • 0.7.2 -> 0.8.0 Transition Notes
  • 0.8.0 Known Issues (At Launch)

Was this helpful?

Edit on Git
Export as PDF
  1. Release Notes

0.8.0

Previous0.9.0Next0.7.2

Was this helpful?

0.8.0 -> 0.9.0 Transition Notes

Deeplearning4j

  • Updater configuration methods such as .momentum(double) and .epsilon(double) have been deprecated. Instead: use .updater(new Nesterovs(0.9)) and .updater(Adam.builder().beta1(0.9).beta2(0.999).build()) etc to configure

DataVec

  • CsvRecordReader constructors: now uses characters for delimiters, instead of Strings (i.e., ',' instead of ",")

Arbiter

  • Arbiter UI is now a separate module, with Scala version suffixes: arbiter-ui_2.10 and arbiter-ui_2.11

Version 0.8.0

  • Added transfer learning API

  • Spark 2.0 support (DL4J and DataVec; see transition notes below)

  • New layers

    • Global pooling (aka "pooling over time"; usable with both RNNs and CNNs)

    • Center loss output layer

    • 1D Convolution and subsampling layers

    • ZeroPaddingLayer

  • New ComputationGraph vertices

    • L2 distance vertex

    • L2 normalization vertex

  • Per-output masking is now supported for most loss functions (for per output masking, use a mask array equal in size/shape to the labels array; previous masking functionality was per-example for RNNs)

  • L1 and L2 regularization can now be configured for biases (via l1Bias and l2Bias configuration options)

  • Evaluation improvements:

    • DL4J now has an IEvaluation class (that Evaluation, RegressionEvaluation, etc all implement. Also allows custom evaluation on Spark)

    • Added multi-class (one vs. all) ROC: ROCMultiClass

    • For both MultiLayerNetwork and SparkDl4jMultiLayer: added evaluateRegression, evaluateROC, evaluateROCMultiClass convenience methods

    • HTML export functionality added for ROC charts

    • TSNE re-added to new UI

    • Training UI: now usable without an internet connection (no longer relies on externally hosted fonts)

    • UI: improvements to error handling for ‘no data’ condition

  • Epsilon configuration now used for Adam and RMSProp updaters

  • Fix for bidirectional LSTMs + variable-length time series (using masking)

  • Added CnnSentenceDataSetIterator (for use with ‘CNN for Sentence Classification’ architecture)

  • Spark + Kryo: now test serialization + throw exception if misconfigured (instead of logging an error that can be missed)

  • MultiLayerNetwork now adds default layer names if no name is specified

  • DataVec:

    • JSON/YAML support for DataAnalysis, custom Transforms etc

    • ImageRecordReader refactored to reduce garbage collection load (hence improve performance with large training sets)

    • Faster quality analysis.

  • Arbiter: added new layer types to match DL4J

    • Performance improvement for Word2Vec/ParagraphVectors tokenization & training.

  • Batched inference introduced for ParagraphVectors

  • Nd4j improvements

    • New native operations available for ND4j: firstIndex, lastIndex, remainder, fmod, or, and, xor.

    • OpProfiler NAN_PANIC & INF_PANIC now also checks result of BLAS calls.

    • Nd4.getMemoryManager() now provides methods to tweak GC behavior.

  • Alpha version of parameter server for Word2Vec/ParagraphVectors were introduced for Spark. Please note: It’s not recommended for production use yet.

  • Performance improvements for CNN inference

0.7.2 -> 0.8.0 Transition Notes

  • Spark versioning schemes: with the addition of Spark 2 support, the versions for Deeplearning4j and DataVec Spark modules has changed

    • For Spark 1: use <version>0.8.0_spark_1</version>

    • For Spark 2: use <version>0.8.0_spark_2</version>

    • Also note: Modules with Spark 2 support are released with Scala 2.11 support only. Spark 1 modules are released with both Scala 2.10 and 2.11 support

0.8.0 Known Issues (At Launch)

  • Keras 1D convolutional and pooling layers cannot be imported yet. Will be supported in forthcoming release.

  • Keras v2 model configurations cannot be imported yet. Will be supported in forthcoming release.

UI/CUDA/Linux issue:

Dirty shutdown on JVM exit is possible for CUDA backend sometimes:

Issues with RBM implementation

Link
Link
Link
Link
Link2
Link
Link
Link
Link
Link
Link2
Link
Link
Link