Packages

o

provingground.learning

FiniteDistributionLearner

object FiniteDistributionLearner

A combinator for learning systems with state finite distributions on vertices. Systems are built from components labeled by elements of a set M. The state also has weights for these components. The components are built from: moves (partial functions), partial combinations and islands.

Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. FiniteDistributionLearner
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Type Members

  1. case class Atom[V](x: V) extends AdjDiffbleFunction[Double, FiniteDistribution[V]] with Product with Serializable

    An atom for a finite distribution

  2. case class CombinationFn[V](f: (V, V) => Option[V], firstFilter: (V) => Boolean = (a: V) => true) extends AdjDiffbleFunction[FiniteDistribution[V], FiniteDistribution[V]] with Product with Serializable
  3. case class Evaluate[V](x: V) extends AdjDiffbleFunction[FiniteDistribution[V], Double] with Product with Serializable

    Evaluation at a point for a finite distribution

  4. case class ExtendM[M, X](fn: AdjDiffbleFunction[(FiniteDistribution[M], X), X]) extends AdjDiffbleFunction[(FiniteDistribution[M], X), (FiniteDistribution[M], X)] with Product with Serializable
  5. case class MoveFn[V, W](f: (V) => Option[W]) extends AdjDiffbleFunction[FiniteDistribution[V], FiniteDistribution[W]] with Product with Serializable

    smooth function applying move wherever applicable

  6. case class NewVertex[V](v: V) extends AdjDiffbleFunction[(Double, FiniteDistribution[V]), FiniteDistribution[V]] with Product with Serializable

    Add a new vertex, mainly for lambdas

  7. case class NormalizeFD[V]() extends AdjDiffbleFunction[FiniteDistribution[V], FiniteDistribution[V]] with Product with Serializable

    Normalizing a finite distribution.

  8. case class ProjectV[M, X]() extends AdjDiffbleFunction[(FiniteDistribution[M], X), X] with Product with Serializable
  9. case class PtwiseProd[V](sc: (V) => Double) extends AdjDiffbleFunction[FiniteDistribution[V], FiniteDistribution[V]] with Product with Serializable
  10. case class Sample[X](N: Double) extends FormalExtension[FiniteDistribution[X]] with Product with Serializable

Value Members

  1. def extendM[M, X](fn: AdjDiffbleFunction[(FiniteDistribution[M], X), X]): AdjDiffbleFunction[(FiniteDistribution[M], X), (FiniteDistribution[M], X)]

    Extend differentiable function by identity on M.

  2. def projectV[M, X]: AdjDiffbleFunction[(FiniteDistribution[M], X), X]
  3. def purgeFD[V](size: Int)(fd: FiniteDistribution[V]): FiniteDistribution[V]

    purging (randomly) a finite distribution.

    purging (randomly) a finite distribution.

    size

    upper bound on the expected size of the support.

  4. def sample[X](N: Double): AdjDiffbleFunction[FiniteDistribution[X], FiniteDistribution[X]]
  5. def sampleV[M, V](N: Double): AdjDiffbleFunction[(FiniteDistribution[M], FiniteDistribution[V]), (FiniteDistribution[M], FiniteDistribution[V])]
  6. def weightedDyn[M, X](implicit arg0: LinearStructure[X], arg1: InnerProduct[X]): (M, AdjDiffbleFunction[X, X]) => AdjDiffbleFunction[(FiniteDistribution[M], X), X]

    Returns a smooth function (FD[M], X) => X, given a parameter index m : M and a dynamical system f: X => X; the system f should correspond to m.

    Returns a smooth function (FD[M], X) => X, given a parameter index m : M and a dynamical system f: X => X; the system f should correspond to m. For a distribution p in FD[M], if p(m) denotes the value at m, the smooth function being defined is p(m)f.