Packages

  • package root
    Definition Classes
    root
  • package com
    Definition Classes
    root
  • package thoughtworks
    Definition Classes
    com
  • package deeplearning

    Author:

    杨博 (Yang Bo)

    Definition Classes
    thoughtworks
  • package plugins

    Author:

    杨博 (Yang Bo)

    Definition Classes
    deeplearning
  • trait CumulativeFloatLayers extends FloatLayers

    A plugin that provides differentiable operators on neural networks whose Data and Delta is scala.Float.

    A plugin that provides differentiable operators on neural networks whose Data and Delta is scala.Float.

    Author:

    杨博 (Yang Bo)

    Definition Classes
    plugins
    Examples:
    1. Given a FloatWeight,

      import com.thoughtworks.deeplearning.plugins._
      import com.thoughtworks.feature.Factory
      val hyperparameters = Factory[FloatTraining with ImplicitsSingleton with Operators with CumulativeFloatLayers with FloatWeights].newInstance()
      import hyperparameters.implicits._
      val weight1 = hyperparameters.FloatWeight(10)

      then the training result should be applied on it

      weight1.train.map { result =>
        result should be(10.0f)
      
        weight1.data should be < 10.0f
      }
    2. ,
    3. Given two FloatWeights,

      import com.thoughtworks.deeplearning.plugins._
      import com.thoughtworks.feature.Factory
      val hyperparameters = Factory[FloatTraining with ImplicitsSingleton with Operators with CumulativeFloatLayers with FloatWeights].newInstance()
      import hyperparameters.implicits._
      val weight1 = hyperparameters.FloatWeight(10)
      val weight2 = hyperparameters.FloatWeight(300)

      when adding them together,

      val weight1PlusWeight2 = weight1 + weight2

      then the training result should be applied on both weight

      weight1PlusWeight2.train.map { result =>
        result should be(310.0f)
      
        weight2.data should be < 300.0f
        weight1.data should be < 10.0f
      }
    Note

    Unlike FloatLayers, FloatLayer in this CumulativeFloatLayers will share Tapes created in forward pass pass for all dependencies, avoiding re-evaluation in the case of diamond dependencies in a neural network.

  • FloatLayer
  • FloatLayer
  • FloatLayerApi
  • Implicits
  • ImplicitsApi
  • Layer
  • LayerApi

abstract type FloatLayer <: FloatLayerApi with Layer

Definition Classes
CumulativeFloatLayersFloatLayers
Source
CumulativeFloatLayers.scala
Linear Supertypes
FloatLayerApi, CumulativeFloatLayers.FloatLayerApi, CumulativeFloatLayers.LayerApi, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. FloatLayer
  2. FloatLayerApi
  3. FloatLayerApi
  4. LayerApi
  5. AnyRef
  6. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. type Data = Float
    Definition Classes
    FloatLayerApiLayerApi
  2. type Delta = Float
    Definition Classes
    FloatLayerApiLayerApi

Abstract Value Members

  1. abstract val rawForward: Do[Tape[Float, Float]]

    The original forward operation passed in FloatLayer.apply.

    The original forward operation passed in FloatLayer.apply.

    Attributes
    protected
    Definition Classes
    FloatLayerApi
    Note

    This rawForward may be different from forward, in the case of forward was overriden by other plugins, e.g. CumulativeFloatLayers.

Concrete Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  5. def clone(): AnyRef
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  6. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  7. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  8. def finalize(): Unit
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  9. def forward: Do[Tape[Float, Float]]
    Definition Classes
    FloatLayerApiFloatLayerApiLayerApi
  10. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
  11. def handleException(thrown: Throwable): Unit
    Attributes
    protected
    Definition Classes
    LayerApi
  12. def hashCode(): Int
    Definition Classes
    AnyRef → Any
  13. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  14. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  15. final def notify(): Unit
    Definition Classes
    AnyRef
  16. final def notifyAll(): Unit
    Definition Classes
    AnyRef
  17. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  18. def toString(): String
    Definition Classes
    AnyRef → Any
  19. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  20. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  21. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from FloatLayerApi

Inherited from CumulativeFloatLayers.FloatLayerApi

Inherited from AnyRef

Inherited from Any

Ungrouped