kr.ac.kaist.ir.deep.layer

Rank3TensorLayer

abstract class Rank3TensorLayer extends Layer

Layer: Basic, Fully-connected Rank 3 Tensor Layer.

Note

      v0 = a column vector concatenate v2 after v1 (v11, v12, ... v1in1, v21, ...)
      Q = Rank 3 Tensor with size out, in1 × in2 is its entry.
      L = Rank 3 Tensor with size out, 1 × (in1 + in2) is its entry.
      b = out × 1 matrix.

      output = f( v1'.Q.v2 + L.v0 + b )

Linear Supertypes
Layer, Serializable, Serializable, (ScalarMatrix) ⇒ ScalarMatrix, AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. Rank3TensorLayer
  2. Layer
  3. Serializable
  4. Serializable
  5. Function1
  6. AnyRef
  7. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Instance Constructors

  1. new Rank3TensorLayer(fanIns: (Int, Int, Int), fanOut: Int, act: Activation, quad: Seq[ScalarMatrix] = Seq(), lin: Seq[ScalarMatrix] = Seq(), const: ScalarMatrix = null)

    fanIns

    is the number of input. (vector1, vector2, entire).

    fanOut

    is the number of output

    act

    is an activation function to be applied

    quad

    is initial quadratic-level weight matrix Q for the case that it is restored from JSON (default: Seq())

    lin

    is initial linear-level weight matrix L for the case that it is restored from JSON (default: Seq())

    const

    is initial bias weight matrix b for the case that it is restored from JSON (default: null)

Abstract Value Members

  1. abstract def in1(x: ScalarMatrix): ScalarMatrix

    Retrieve first input

    Retrieve first input

    x

    input to be separated

    returns

    first input

    Attributes
    protected
  2. abstract def in2(x: ScalarMatrix): ScalarMatrix

    Retrive second input

    Retrive second input

    x

    input to be separated

    returns

    second input

    Attributes
    protected
  3. abstract def toJSON: JsObject

    Translate this layer into JSON object (in Play! framework)

    Translate this layer into JSON object (in Play! framework)

    returns

    JSON object describes this layer

    Definition Classes
    Layer

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. val W: IndexedSeq[ScalarMatrix]

    weights for update

    weights for update

    returns

    weights

    Definition Classes
    Rank3TensorLayerLayer
  5. val act: Activation

    is an activation function to be applied

    is an activation function to be applied

    Attributes
    protected
    Definition Classes
    Rank3TensorLayerLayer
  6. def andThen[A](g: (ScalarMatrix) ⇒ A): (ScalarMatrix) ⇒ A

    Definition Classes
    Function1
    Annotations
    @unspecialized()
  7. def apply(x: ScalarMatrix): ScalarMatrix

    Forward computation

    Forward computation

    x

    input matrix

    returns

    output matrix

    Definition Classes
    Rank3TensorLayerLayer → Function1
  8. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  9. final val bias: ScalarMatrix

    Attributes
    protected
  10. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  11. def compose[A](g: (A) ⇒ ScalarMatrix): (A) ⇒ ScalarMatrix

    Definition Classes
    Function1
    Annotations
    @unspecialized()
  12. final val dL: ArrayBuffer[ScalarMatrix]

    Attributes
    protected
  13. final val dQ: ArrayBuffer[ScalarMatrix]

    Attributes
    protected
  14. val dW: IndexedSeq[ScalarMatrix]

    accumulated delta values

    accumulated delta values

    returns

    delta-weight

    Definition Classes
    Rank3TensorLayerLayer
  15. final val db: ScalarMatrix

    Attributes
    protected
  16. final def eq(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  17. def equals(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  18. final val fanIn: Int

    Attributes
    protected
  19. final val fanInA: Int

    Attributes
    protected
  20. final val fanInB: Int

    Attributes
    protected
  21. val fanIns: (Int, Int, Int)

    is the number of input.

    is the number of input. (vector1, vector2, entire).

    Attributes
    protected
  22. val fanOut: Int

    is the number of output

    is the number of output

    Attributes
    protected
  23. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  24. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  25. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  26. def into_:(x: ScalarMatrix): ScalarMatrix

    Sugar: Forward computation.

    Sugar: Forward computation. Calls apply(x)

    x

    input matrix

    returns

    output matrix

    Attributes
    protected[kr.ac.kaist.ir.deep]
    Definition Classes
    Layer
  27. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  28. final val linear: ArrayBuffer[ScalarMatrix]

    Attributes
    protected
  29. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  30. final def notify(): Unit

    Definition Classes
    AnyRef
  31. final def notifyAll(): Unit

    Definition Classes
    AnyRef
  32. final val quadratic: ArrayBuffer[ScalarMatrix]

    Attributes
    protected
  33. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  34. def toString(): String

    Definition Classes
    Function1 → AnyRef → Any
  35. def updateBy(error: ScalarMatrix, input: ScalarMatrix, output: ScalarMatrix): ScalarMatrix

    Backward computation.

    Backward computation.

    error

    to be propagated ( dG / dF is propagated from higher layer )

    input

    of this layer (in this case, x = entry of dX / dw)

    output

    of this layer (in this case, y)

    returns

    propagated error (in this case, dG/dx )

    Attributes
    protected[kr.ac.kaist.ir.deep]
    Definition Classes
    Rank3TensorLayerLayer
    Note

    Let this layer have function F composed with function X(x) = x1'.Q.x2 + L.x + b and higher layer have function G. (Each output is treated as separately except propagation)

    Weight is updated with: dG/dW and propagate dG/dx

    For the computation, we only used denominator layout. (cf. Wikipedia Page of Matrix Computation) For the computation rules, see "Matrix Cookbook" from MIT.

  36. final def wait(): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  37. final def wait(arg0: Long, arg1: Int): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  38. final def wait(arg0: Long): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from Layer

Inherited from Serializable

Inherited from Serializable

Inherited from (ScalarMatrix) ⇒ ScalarMatrix

Inherited from AnyRef

Inherited from Any

Ungrouped