class ModelObjective[Datum] extends BatchDiffFunction[DenseVector[Double]] with SerializableLogging

The objective function for training a epic.framework.Model. Selects a batch, creates an epic.framework.Inference object using the model, computes expected counts using the inference, and then turns them into the objective value.

Linear Supertypes
SerializableLogging, Serializable, Serializable, BatchDiffFunction[DenseVector[Double]], (DenseVector[Double], IndexedSeq[Int]) ⇒ Double, DiffFunction[DenseVector[Double]], StochasticDiffFunction[DenseVector[Double]], NumericOps[DiffFunction[DenseVector[Double]]], ImmutableNumericOps[DiffFunction[DenseVector[Double]]], (DenseVector[Double]) ⇒ Double, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. ModelObjective
  2. SerializableLogging
  3. Serializable
  4. Serializable
  5. BatchDiffFunction
  6. Function2
  7. DiffFunction
  8. StochasticDiffFunction
  9. NumericOps
  10. ImmutableNumericOps
  11. Function1
  12. AnyRef
  13. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new ModelObjective(model: Model[Datum], data: IndexedSeq[Datum], numThreads: Int = 1)
  2. new ModelObjective(model: Model[Datum], batchSelector: (IndexedSeq[Int]) ⇒ GenTraversable[Datum], fullRange: IndexedSeq[Int])

Type Members

  1. type Builder = Model.Inference

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def %[TT >: DiffFunction[DenseVector[Double]], B, That](b: B)(implicit op: breeze.linalg.operators.OpMod.Impl2[TT, B, That]): That
    Definition Classes
    ImmutableNumericOps
  4. final def %:%[TT >: DiffFunction[DenseVector[Double]], B, That](b: B)(implicit op: breeze.linalg.operators.OpMod.Impl2[TT, B, That]): That
    Definition Classes
    ImmutableNumericOps
  5. final def %=[TT >: DiffFunction[DenseVector[Double]], B](b: B)(implicit op: breeze.linalg.operators.OpMod.InPlaceImpl2[TT, B]): DiffFunction[DenseVector[Double]]
    Definition Classes
    NumericOps
  6. final def &[TT >: DiffFunction[DenseVector[Double]], B, That](b: B)(implicit op: breeze.linalg.operators.OpAnd.Impl2[TT, B, That]): That
    Definition Classes
    ImmutableNumericOps
  7. final def &:&[TT >: DiffFunction[DenseVector[Double]], B, That](b: B)(implicit op: breeze.linalg.operators.OpAnd.Impl2[TT, B, That]): That
    Definition Classes
    ImmutableNumericOps
  8. final def &=[TT >: DiffFunction[DenseVector[Double]], B](b: B)(implicit op: breeze.linalg.operators.OpAnd.InPlaceImpl2[TT, B]): DiffFunction[DenseVector[Double]]
    Definition Classes
    NumericOps
  9. final def *[TT >: DiffFunction[DenseVector[Double]], B, That](b: B)(implicit op: breeze.linalg.operators.OpMulMatrix.Impl2[TT, B, That]): That
    Definition Classes
    ImmutableNumericOps
  10. final def *:*[TT >: DiffFunction[DenseVector[Double]], B, That](b: B)(implicit op: breeze.linalg.operators.OpMulScalar.Impl2[TT, B, That]): That
    Definition Classes
    ImmutableNumericOps
  11. final def *=[TT >: DiffFunction[DenseVector[Double]], B](b: B)(implicit op: breeze.linalg.operators.OpMulScalar.InPlaceImpl2[TT, B]): DiffFunction[DenseVector[Double]]
    Definition Classes
    NumericOps
  12. final def +[TT >: DiffFunction[DenseVector[Double]], B, C, That](b: B)(implicit op: breeze.linalg.operators.OpAdd.Impl2[TT, B, That]): That
    Definition Classes
    NumericOps
  13. final def +:+[TT >: DiffFunction[DenseVector[Double]], B, That](b: B)(implicit op: breeze.linalg.operators.OpAdd.Impl2[TT, B, That]): That
    Definition Classes
    ImmutableNumericOps
  14. final def +=[TT >: DiffFunction[DenseVector[Double]], B](b: B)(implicit op: breeze.linalg.operators.OpAdd.InPlaceImpl2[TT, B]): DiffFunction[DenseVector[Double]]
    Definition Classes
    NumericOps
  15. final def -[TT >: DiffFunction[DenseVector[Double]], B, That](b: B)(implicit op: breeze.linalg.operators.OpSub.Impl2[TT, B, That]): That
    Definition Classes
    ImmutableNumericOps
  16. final def -:-[TT >: DiffFunction[DenseVector[Double]], B, That](b: B)(implicit op: breeze.linalg.operators.OpSub.Impl2[TT, B, That]): That
    Definition Classes
    ImmutableNumericOps
  17. final def -=[TT >: DiffFunction[DenseVector[Double]], B](b: B)(implicit op: breeze.linalg.operators.OpSub.InPlaceImpl2[TT, B]): DiffFunction[DenseVector[Double]]
    Definition Classes
    NumericOps
  18. final def /[TT >: DiffFunction[DenseVector[Double]], B, That](b: B)(implicit op: breeze.linalg.operators.OpDiv.Impl2[TT, B, That]): That
    Definition Classes
    ImmutableNumericOps
  19. final def /:/[TT >: DiffFunction[DenseVector[Double]], B, That](b: B)(implicit op: breeze.linalg.operators.OpDiv.Impl2[TT, B, That]): That
    Definition Classes
    ImmutableNumericOps
  20. final def /=[TT >: DiffFunction[DenseVector[Double]], B](b: B)(implicit op: breeze.linalg.operators.OpDiv.InPlaceImpl2[TT, B]): DiffFunction[DenseVector[Double]]
    Definition Classes
    NumericOps
  21. final def :!=[TT >: DiffFunction[DenseVector[Double]], B, That](b: B)(implicit op: breeze.linalg.operators.OpNe.Impl2[TT, B, That]): That
    Definition Classes
    ImmutableNumericOps
  22. final def :%=[TT >: DiffFunction[DenseVector[Double]], B](b: B)(implicit op: breeze.linalg.operators.OpMod.InPlaceImpl2[TT, B]): DiffFunction[DenseVector[Double]]
    Definition Classes
    NumericOps
  23. final def :&=[TT >: DiffFunction[DenseVector[Double]], B](b: B)(implicit op: breeze.linalg.operators.OpAnd.InPlaceImpl2[TT, B]): DiffFunction[DenseVector[Double]]
    Definition Classes
    NumericOps
  24. final def :*=[TT >: DiffFunction[DenseVector[Double]], B](b: B)(implicit op: breeze.linalg.operators.OpMulScalar.InPlaceImpl2[TT, B]): DiffFunction[DenseVector[Double]]
    Definition Classes
    NumericOps
  25. final def :+=[TT >: DiffFunction[DenseVector[Double]], B](b: B)(implicit op: breeze.linalg.operators.OpAdd.InPlaceImpl2[TT, B]): DiffFunction[DenseVector[Double]]
    Definition Classes
    NumericOps
  26. final def :-=[TT >: DiffFunction[DenseVector[Double]], B](b: B)(implicit op: breeze.linalg.operators.OpSub.InPlaceImpl2[TT, B]): DiffFunction[DenseVector[Double]]
    Definition Classes
    NumericOps
  27. final def :/=[TT >: DiffFunction[DenseVector[Double]], B](b: B)(implicit op: breeze.linalg.operators.OpDiv.InPlaceImpl2[TT, B]): DiffFunction[DenseVector[Double]]
    Definition Classes
    NumericOps
  28. final def :=[TT >: DiffFunction[DenseVector[Double]], B](b: B)(implicit op: breeze.linalg.operators.OpSet.InPlaceImpl2[TT, B]): DiffFunction[DenseVector[Double]]
    Definition Classes
    NumericOps
  29. final def :==[TT >: DiffFunction[DenseVector[Double]], B, That](b: B)(implicit op: breeze.linalg.operators.OpEq.Impl2[TT, B, That]): That
    Definition Classes
    ImmutableNumericOps
  30. final def :^=[TT >: DiffFunction[DenseVector[Double]], B](b: B)(implicit op: breeze.linalg.operators.OpPow.InPlaceImpl2[TT, B]): DiffFunction[DenseVector[Double]]
    Definition Classes
    NumericOps
  31. final def :^^=[TT >: DiffFunction[DenseVector[Double]], B](b: B)(implicit op: breeze.linalg.operators.OpXor.InPlaceImpl2[TT, B]): DiffFunction[DenseVector[Double]]
    Definition Classes
    NumericOps
  32. final def :|=[TT >: DiffFunction[DenseVector[Double]], B](b: B)(implicit op: breeze.linalg.operators.OpOr.InPlaceImpl2[TT, B]): DiffFunction[DenseVector[Double]]
    Definition Classes
    NumericOps
  33. final def <:<[TT >: DiffFunction[DenseVector[Double]], B, That](b: B)(implicit op: breeze.linalg.operators.OpLT.Impl2[TT, B, That]): That
    Definition Classes
    NumericOps
  34. final def <:=[TT >: DiffFunction[DenseVector[Double]], B, That](b: B)(implicit op: breeze.linalg.operators.OpLTE.Impl2[TT, B, That]): That
    Definition Classes
    NumericOps
  35. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  36. final def >:=[TT >: DiffFunction[DenseVector[Double]], B, That](b: B)(implicit op: breeze.linalg.operators.OpGTE.Impl2[TT, B, That]): That
    Definition Classes
    NumericOps
  37. final def >:>[TT >: DiffFunction[DenseVector[Double]], B, That](b: B)(implicit op: breeze.linalg.operators.OpGT.Impl2[TT, B, That]): That
    Definition Classes
    NumericOps
  38. def \[TT >: DiffFunction[DenseVector[Double]], B, That](b: B)(implicit op: breeze.linalg.operators.OpSolveMatrixBy.Impl2[TT, B, That]): That
    Definition Classes
    ImmutableNumericOps
  39. final def ^:^[TT >: DiffFunction[DenseVector[Double]], B, That](b: B)(implicit op: breeze.linalg.operators.OpPow.Impl2[TT, B, That]): That
    Definition Classes
    ImmutableNumericOps
  40. final def ^^[TT >: DiffFunction[DenseVector[Double]], B, That](b: B)(implicit op: breeze.linalg.operators.OpXor.Impl2[TT, B, That]): That
    Definition Classes
    ImmutableNumericOps
  41. final def ^^:^^[TT >: DiffFunction[DenseVector[Double]], B, That](b: B)(implicit op: breeze.linalg.operators.OpXor.Impl2[TT, B, That]): That
    Definition Classes
    ImmutableNumericOps
  42. final def ^^=[TT >: DiffFunction[DenseVector[Double]], B](b: B)(implicit op: breeze.linalg.operators.OpXor.InPlaceImpl2[TT, B]): DiffFunction[DenseVector[Double]]
    Definition Classes
    NumericOps
  43. def andThen[A](g: (Double) ⇒ A): (DenseVector[Double]) ⇒ A
    Definition Classes
    Function1
    Annotations
    @unspecialized()
  44. def apply(x: DenseVector[Double], batch: IndexedSeq[Int]): Double
    Definition Classes
    BatchDiffFunction → Function2
  45. final def apply(x: DenseVector[Double]): Double
    Definition Classes
    StochasticDiffFunction → Function1
  46. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  47. def cached(implicit copy: CanCopy[DenseVector[Double]]): DiffFunction[DenseVector[Double]]
    Definition Classes
    BatchDiffFunction → DiffFunction
  48. def calculate(x: DenseVector[Double], batch: IndexedSeq[Int]): (Double, DenseVector[Double])
    Definition Classes
    ModelObjective → BatchDiffFunction
  49. def calculate(x: DenseVector[Double]): (Double, DenseVector[Double])
    Definition Classes
    BatchDiffFunction → StochasticDiffFunction
  50. def clone(): AnyRef
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  51. def compose[A](g: (A) ⇒ DenseVector[Double]): (A) ⇒ Double
    Definition Classes
    Function1
    Annotations
    @unspecialized()
  52. def curried: (DenseVector[Double]) ⇒ (IndexedSeq[Int]) ⇒ Double
    Definition Classes
    Function2
    Annotations
    @unspecialized()
  53. final def dot[TT >: DiffFunction[DenseVector[Double]], B, BB >: B, That](b: B)(implicit op: breeze.linalg.operators.OpMulInner.Impl2[TT, BB, That]): That
    Definition Classes
    ImmutableNumericOps
  54. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  55. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  56. def finalize(): Unit
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  57. val fullRange: IndexedSeq[Int]
    Definition Classes
    ModelObjective → BatchDiffFunction
  58. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
  59. def gradientAt(x: DenseVector[Double]): DenseVector[Double]
    Definition Classes
    BatchDiffFunction → StochasticDiffFunction
  60. def gradientAt(x: DenseVector[Double], batch: IndexedSeq[Int]): DenseVector[Double]
    Definition Classes
    BatchDiffFunction
  61. def groupItems(groupSize: Int): BatchDiffFunction[DenseVector[Double]]
    Definition Classes
    BatchDiffFunction
  62. def hashCode(): Int
    Definition Classes
    AnyRef → Any
  63. def initialWeightVector(randomize: Boolean, scale: Double): DenseVector[Double]
  64. def initialWeightVector(randomize: Boolean): DenseVector[Double]
  65. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  66. def logger: LazyLogger
    Attributes
    protected
    Definition Classes
    SerializableLogging
  67. val model: Model[Datum]
  68. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  69. var nextSave: Long
  70. final def notify(): Unit
    Definition Classes
    AnyRef
  71. final def notifyAll(): Unit
    Definition Classes
    AnyRef
  72. def repr: DiffFunction[DenseVector[Double]]
    Definition Classes
    DiffFunction → StochasticDiffFunction → ImmutableNumericOps
  73. def select(batch: IndexedSeq[Int]): GenTraversable[Datum]
    Attributes
    protected
  74. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  75. final def t[TT >: DiffFunction[DenseVector[Double]], That, Slice1, Result](a: Slice1)(implicit op: CanTranspose[TT, That], canSlice: CanSlice[That, Slice1, Result]): Result
    Definition Classes
    ImmutableNumericOps
  76. final def t[TT >: DiffFunction[DenseVector[Double]], That, Slice1, Slice2, Result](a: Slice1, b: Slice2)(implicit op: CanTranspose[TT, That], canSlice: CanSlice2[That, Slice1, Slice2, Result]): Result
    Definition Classes
    ImmutableNumericOps
  77. final def t[TT >: DiffFunction[DenseVector[Double]], That](implicit op: CanTranspose[TT, That]): That
    Definition Classes
    ImmutableNumericOps
  78. def throughLens[U](implicit l: Isomorphism[DenseVector[Double], U]): BatchDiffFunction[U]
    Definition Classes
    BatchDiffFunction → DiffFunction → StochasticDiffFunction
  79. var timeSinceLastWrite: Long
  80. def toString(): String
    Definition Classes
    Function2 → AnyRef → Any
  81. def tupled: ((DenseVector[Double], IndexedSeq[Int])) ⇒ Double
    Definition Classes
    Function2
    Annotations
    @unspecialized()
  82. final def unary_![TT >: DiffFunction[DenseVector[Double]], That](implicit op: breeze.linalg.operators.OpNot.Impl[TT, That]): That
    Definition Classes
    ImmutableNumericOps
  83. final def unary_-[TT >: DiffFunction[DenseVector[Double]], That](implicit op: breeze.linalg.operators.OpNeg.Impl[TT, That]): That
    Definition Classes
    ImmutableNumericOps
  84. def valueAt(x: DenseVector[Double]): Double
    Definition Classes
    BatchDiffFunction → StochasticDiffFunction
  85. def valueAt(x: DenseVector[Double], batch: IndexedSeq[Int]): Double
    Definition Classes
    BatchDiffFunction
  86. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  87. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  88. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  89. def withRandomBatches(size: Int): StochasticDiffFunction[DenseVector[Double]]
    Definition Classes
    BatchDiffFunction
  90. def withScanningBatches(size: Int): StochasticDiffFunction[DenseVector[Double]]
    Definition Classes
    BatchDiffFunction
  91. final def |[TT >: DiffFunction[DenseVector[Double]], B, That](b: B)(implicit op: breeze.linalg.operators.OpOr.Impl2[TT, B, That]): That
    Definition Classes
    ImmutableNumericOps
  92. final def |:|[TT >: DiffFunction[DenseVector[Double]], B, That](b: B)(implicit op: breeze.linalg.operators.OpOr.Impl2[TT, B, That]): That
    Definition Classes
    ImmutableNumericOps
  93. final def |=[TT >: DiffFunction[DenseVector[Double]], B](b: B)(implicit op: breeze.linalg.operators.OpOr.InPlaceImpl2[TT, B]): DiffFunction[DenseVector[Double]]
    Definition Classes
    NumericOps

Deprecated Value Members

  1. final def :%[TT >: DiffFunction[DenseVector[Double]], B, That](b: B)(implicit op: breeze.linalg.operators.OpMod.Impl2[TT, B, That]): That
    Definition Classes
    ImmutableNumericOps
    Annotations
    @deprecated
    Deprecated

    (Since version 0.13) This operator has confusing and often surprising precedence that leads to bugs. Use %:% instead.

  2. final def :&[TT >: DiffFunction[DenseVector[Double]], B, That](b: B)(implicit op: breeze.linalg.operators.OpAnd.Impl2[TT, B, That]): That
    Definition Classes
    ImmutableNumericOps
    Annotations
    @deprecated
    Deprecated

    (Since version 0.13) This operator has confusing and often surprising precedence that leads to bugs. Use &:& instead.

  3. final def :*[TT >: DiffFunction[DenseVector[Double]], B, That](b: B)(implicit op: breeze.linalg.operators.OpMulScalar.Impl2[TT, B, That]): That
    Definition Classes
    ImmutableNumericOps
    Annotations
    @deprecated
    Deprecated

    (Since version 0.13) This operator has confusing and often surprising precedence that leads to bugs. Use *:* instead.

  4. final def :+[TT >: DiffFunction[DenseVector[Double]], B, That](b: B)(implicit op: breeze.linalg.operators.OpAdd.Impl2[TT, B, That]): That
    Definition Classes
    ImmutableNumericOps
    Annotations
    @deprecated
    Deprecated

    (Since version 0.13) This operator has confusing and often surprising precedence that leads to bugs. Use +:+ instead.

  5. final def :-[TT >: DiffFunction[DenseVector[Double]], B, That](b: B)(implicit op: breeze.linalg.operators.OpSub.Impl2[TT, B, That]): That
    Definition Classes
    ImmutableNumericOps
    Annotations
    @deprecated
    Deprecated

    (Since version 0.13) This operator has confusing and often surprising precedence that leads to bugs. Use -:- instead.

  6. final def :/[TT >: DiffFunction[DenseVector[Double]], B, That](b: B)(implicit op: breeze.linalg.operators.OpDiv.Impl2[TT, B, That]): That
    Definition Classes
    ImmutableNumericOps
    Annotations
    @deprecated
    Deprecated

    (Since version 0.13) This operator has confusing and often surprising precedence that leads to bugs. Use /:/ instead.

  7. final def :<[TT >: DiffFunction[DenseVector[Double]], B, That](b: B)(implicit op: breeze.linalg.operators.OpLT.Impl2[TT, B, That]): That
    Definition Classes
    NumericOps
    Annotations
    @deprecated
    Deprecated

    (Since version 0.13) This operator has confusing and often surprising precedence that leads to bugs. Use <:< instead.

  8. final def :<=[TT >: DiffFunction[DenseVector[Double]], B, That](b: B)(implicit op: breeze.linalg.operators.OpLTE.Impl2[TT, B, That]): That
    Definition Classes
    NumericOps
    Annotations
    @deprecated
    Deprecated

    (Since version 0.13) This operator has confusing and often surprising precedence that leads to bugs. Use <:= instead.

  9. final def :>[TT >: DiffFunction[DenseVector[Double]], B, That](b: B)(implicit op: breeze.linalg.operators.OpGT.Impl2[TT, B, That]): That
    Definition Classes
    NumericOps
    Annotations
    @deprecated
    Deprecated

    (Since version 0.13) This operator has confusing and often surprising precedence that leads to bugs. Use >:> instead.

  10. final def :>=[TT >: DiffFunction[DenseVector[Double]], B, That](b: B)(implicit op: breeze.linalg.operators.OpGTE.Impl2[TT, B, That]): That
    Definition Classes
    NumericOps
    Annotations
    @deprecated
    Deprecated

    (Since version 0.13) This operator has confusing and often surprising precedence that leads to bugs. Use >:= instead.

  11. final def :^[TT >: DiffFunction[DenseVector[Double]], B, That](b: B)(implicit op: breeze.linalg.operators.OpPow.Impl2[TT, B, That]): That
    Definition Classes
    ImmutableNumericOps
    Annotations
    @deprecated
    Deprecated

    (Since version 0.13) This operator has confusing and often surprising precedence that leads to bugs. Use : instead.

  12. final def :^^[TT >: DiffFunction[DenseVector[Double]], B, That](b: B)(implicit op: breeze.linalg.operators.OpXor.Impl2[TT, B, That]): That
    Definition Classes
    ImmutableNumericOps
    Annotations
    @deprecated
    Deprecated

    (Since version 0.13) This operator has confusing and often surprising precedence that leads to bugs. Use : instead.

  13. final def :|[TT >: DiffFunction[DenseVector[Double]], B, That](b: B)(implicit op: breeze.linalg.operators.OpOr.Impl2[TT, B, That]): That
    Definition Classes
    ImmutableNumericOps
    Annotations
    @deprecated
    Deprecated

    (Since version 0.13) This operator has confusing and often surprising precedence that leads to bugs. Use |:| instead.

Inherited from SerializableLogging

Inherited from Serializable

Inherited from Serializable

Inherited from BatchDiffFunction[DenseVector[Double]]

Inherited from (DenseVector[Double], IndexedSeq[Int]) ⇒ Double

Inherited from DiffFunction[DenseVector[Double]]

Inherited from StochasticDiffFunction[DenseVector[Double]]

Inherited from NumericOps[DiffFunction[DenseVector[Double]]]

Inherited from ImmutableNumericOps[DiffFunction[DenseVector[Double]]]

Inherited from (DenseVector[Double]) ⇒ Double

Inherited from AnyRef

Inherited from Any

Ungrouped