# TensorFactorWithStatistics3

#### abstract class TensorFactorWithStatistics3[N1 <: TensorVar, N2 <: TensorVar, N3 <: TensorVar] extends TensorFactor3[N1, N2, N3] with TensorFactorStatistics3[N1, N2, N3]

A 3-neighbor Factor whose neighbors have Tensor values, and whose statistics are the outer product of those values. Only "statisticsScore" method is abstract.

Linear Supertypes
TensorFactorStatistics3[N1, N2, N3], TensorFactor3[N1, N2, N3], Factor3[N1, N2, N3], Factor, Ordered[Factor], Comparable[Factor], AnyRef, Any
Ordering
1. Alphabetic
2. By inheritance
Inherited
1. TensorFactorWithStatistics3
2. TensorFactorStatistics3
3. TensorFactor3
4. Factor3
5. Factor
6. Ordered
7. Comparable
8. AnyRef
9. Any
1. Hide All
2. Show all
Visibility
1. Public
2. All

### Type Members

1. #### type NeighborType1 = N1

Definition Classes
Factor3
2. #### type NeighborType2 = N2

Definition Classes
Factor3
3. #### type NeighborType3 = N3

Definition Classes
Factor3
4. #### type StatisticsType = Tensor

Definition Classes
TensorFactor3Factor

### Abstract Value Members

1. #### abstract def statisticsScore(t: Tensor): Double

Definition Classes
TensorFactor3

### Concrete Value Members

1. #### final def !=(arg0: AnyRef): Boolean

Definition Classes
AnyRef
2. #### final def !=(arg0: Any): Boolean

Definition Classes
Any
3. #### final def ##(): Int

Definition Classes
AnyRef → Any
4. #### def <(that: Factor): Boolean

Definition Classes
Ordered
5. #### def <=(that: Factor): Boolean

Definition Classes
Ordered
6. #### final def ==(arg0: AnyRef): Boolean

Definition Classes
AnyRef
7. #### final def ==(arg0: Any): Boolean

Definition Classes
Any
8. #### def >(that: Factor): Boolean

Definition Classes
Ordered
9. #### def >=(that: Factor): Boolean

Definition Classes
Ordered

13. #### var _hashCode: Int

Definition Classes
Factor
14. #### final def asInstanceOf[T0]: T0

Definition Classes
Any
15. #### def assignmentScore(a: variable.Assignment): Double

The ability to score a Values object is now removed, and this is its closest alternative.

The ability to score a Values object is now removed, and this is its closest alternative.

Definition Classes
Factor3Factor
16. #### def assignmentScoreAndStatistics(a: variable.Assignment): (Double, StatisticsType)

Definition Classes
Factor
17. #### final def assignmentStatistics(a: variable.Assignment): StatisticsType

Return this Factor's sufficient statistics for the values in the Assignment.

Return this Factor's sufficient statistics for the values in the Assignment.

Definition Classes
Factor3Factor
18. #### def clone(): AnyRef

Attributes
protected[java.lang]
Definition Classes
AnyRef
Annotations
@throws( ... )
19. #### def compare(that: Factor): Int

Return an object that can iterate over all value assignments to the neighbors of this Factor

Return an object that can iterate over all value assignments to the neighbors of this Factor

Definition Classes
Factor → Ordered
20. #### def compareTo(that: Factor): Int

Definition Classes
Ordered → Comparable
21. #### def currentAssignment: Assignment3[N1, N2, N3]

Return a record of the current values of this Factor's neighbors.

Return a record of the current values of this Factor's neighbors.

Definition Classes
Factor3Factor
22. #### def currentScore: Double

This factor's contribution to the unnormalized log-probability of the current possible world.

This factor's contribution to the unnormalized log-probability of the current possible world.

Definition Classes
Factor3Factor
23. #### def currentScoreAndStatistics: (Double, StatisticsType)

Return the score and statistics of the current neighbor values; this method enables special cases in which it is more efficient to calculate them together.

Return the score and statistics of the current neighbor values; this method enables special cases in which it is more efficient to calculate them together.

Definition Classes
Factor3Factor
24. #### def currentStatistics: StatisticsType

Return this Factor's sufficient statistics of the current values of the Factor's neighbors.

Return this Factor's sufficient statistics of the current values of the Factor's neighbors.

Definition Classes
Factor3Factor
25. #### final def eq(arg0: AnyRef): Boolean

Definition Classes
AnyRef
26. #### def equalityPrerequisite: AnyRef

In order to two Factors to satisfy "equals", the value returned by this method for each Factor must by "eq".

In order to two Factors to satisfy "equals", the value returned by this method for each Factor must by "eq". This method is overridden in Family to deal with Factors that are inner classes.

Definition Classes
Factor
27. #### def equals(other: Any): Boolean

Definition Classes
Factor → AnyRef → Any
28. #### def factorName: String

Definition Classes
Factor
29. #### def finalize(): Unit

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

Definition Classes
AnyRef → Any
31. #### def hasLimitedDiscreteValues1: Boolean

Definition Classes
Factor3
32. #### def hasLimitedDiscreteValues12: Boolean

Definition Classes
Factor3
33. #### def hasLimitedDiscreteValues123: Boolean

Definition Classes
Factor3
34. #### def hashCode(): Int

Definition Classes
Factor → AnyRef → Any
35. #### final def isInstanceOf[T0]: Boolean

Definition Classes
Any
36. #### def limitedDiscreteValues1: SparseBinaryTensor1

Definition Classes
Factor3
37. #### def limitedDiscreteValues12: SparseBinaryTensor2

Definition Classes
Factor3
38. #### def limitedDiscreteValues123: SparseBinaryTensor3

Definition Classes
Factor3
39. #### final def ne(arg0: AnyRef): Boolean

Definition Classes
AnyRef
40. #### final def notify(): Unit

Definition Classes
AnyRef
41. #### final def notifyAll(): Unit

Definition Classes
AnyRef
42. #### def numVariables: Int

The number of variables neighboring this factor.

The number of variables neighboring this factor.

Definition Classes
Factor3Factor
43. #### final def score(v1: N1.Value, v2: N2.Value, v3: N3.Value): Double

Definition Classes
TensorFactor3Factor3
44. #### def scoreAndStatistics(v1: N1.Value, v2: N2.Value, v3: N3.Value): (Double, Tensor)

Definition Classes
TensorFactor3Factor3
45. #### final def statistics(v1: N1.Value, v2: N2.Value, v3: N3.Value): Tensor

Definition Classes
TensorFactorStatistics3TensorFactor3Factor3
46. #### final def statisticsAreValues: Boolean

True iff the statistics are the values (without transformation), e.

True iff the statistics are the values (without transformation), e.g. valuesStatistics simply returns its argument.

Definition Classes
TensorFactorStatistics3Factor
47. #### final def synchronized[T0](arg0: ⇒ T0): T0

Definition Classes
AnyRef
48. #### def toString(): String

Definition Classes
Factor → AnyRef → Any
49. #### def touches(variable: variable.Var): Boolean

Does this Factor have the given variable among its neighbors?

Does this Factor have the given variable among its neighbors?

Definition Classes
Factor
50. #### def touchesAny(variables: Iterable[variable.Var]): Boolean

Does this Factor have any of the given variables among its neighbors?

Does this Factor have any of the given variables among its neighbors?

Definition Classes
Factor
51. #### def valuesScore(tensor: Tensor): Double

Return the score for Factors whose values can be represented as a Tensor, otherwise throw an Error.

Return the score for Factors whose values can be represented as a Tensor, otherwise throw an Error. For Factors/Family in which the Statistics are the values, this method simply calls statisticsScore(Tensor).

Definition Classes
Factor
52. #### def valuesScore1(tensor1: Tensor, tensor2: Tensor, tensor3: Tensor): la.Tensor1

Given the Tensor value of neighbors _2 and _3, return a Tensor1 containing the scores for each possible value neighbor _1, which must be a DiscreteVar.

Given the Tensor value of neighbors _2 and _3, return a Tensor1 containing the scores for each possible value neighbor _1, which must be a DiscreteVar. Note that the returned Tensor may be sparse if this factor is set up for limited values iteration. If _1 is not a DiscreteVar then throws an Error.

Definition Classes
Factor3
53. #### def valuesScore2(tensor1: Tensor, tensor2: Tensor, tensor3: Tensor): la.Tensor1

Definition Classes
Factor3
54. #### def valuesScore3(tensor1: Tensor, tensor2: Tensor, tensor3: Tensor): la.Tensor1

Definition Classes
Factor3
55. #### def valuesScoreAndStatistics(t: Tensor): (Double, Tensor)

Definition Classes
Factor
56. #### final def valuesStatistics(tensor: Tensor): Tensor

Given a Tensor representation of the values, return a Tensor representation of the statistics.

Given a Tensor representation of the values, return a Tensor representation of the statistics. We assume that if the values have Tensor representation that the StatisticsType does also. Note that (e.g. in BP) the Tensor may represent not just a single value for each neighbor, but a distribution over values

Definition Classes
TensorFactorStatistics3Factor
57. #### def variable(i: Int): variable.Var

The Nth neighboring variable of this factor.

The Nth neighboring variable of this factor.

Definition Classes
Factor3Factor
58. #### def variables: IndexedSeq[variable.Var]

Returns the collection of variables neighboring this factor.

Returns the collection of variables neighboring this factor.

Definition Classes
Factor3Factor
59. #### final def wait(): Unit

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

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

Definition Classes
AnyRef
Annotations
@throws( ... )