cc.factorie.app.nlp.hcoref

ExclusiveConstraintFactor

class ExclusiveConstraintFactor[Vars <: NodeVariables[Vars]] extends TupleTemplateWithStatistics3[ArrowVariable[Node[Vars], Node[Vars]], Vars, Vars] with DebuggableTemplate

This feature serves to ensure that certain merges are forbidden. Specifically no two nodes that share the same value in the cc.factorie.variable.BagOfWordsVariable should be permitted to merge. Together with IdentityFactor it can create uniquely identifying features.

Linear Supertypes
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. ExclusiveConstraintFactor
  2. DebuggableTemplate
  3. TupleTemplateWithStatistics3
  4. TupleFamilyWithStatistics3
  5. TupleFamily3
  6. Template3
  7. Template
  8. Model
  9. FamilyWithNeighborClasses
  10. Family3
  11. FamilyWithNeighborDomains
  12. Family
  13. AnyRef
  14. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Instance Constructors

  1. new ExclusiveConstraintFactor(getBag: (Vars) ⇒ BagOfWordsVariable, bagName: String = "")(implicit ct: ClassTag[Vars])

Type Members

  1. final case class Factor(_1: N1, _2: N2, _3: N3) extends Factor3[N1, N2, N3] with Family3.Factor with Product with Serializable

    Definition Classes
    Family3
  2. type FactorType = Factor

    Definition Classes
    Family3
  3. abstract type FamilyType <: Family

    Definition Classes
    Family
  4. type NeighborType1 = ArrowVariable[Node[Vars], Node[Vars]]

    Definition Classes
    Family3Family
  5. type NeighborType2 = Vars

    Definition Classes
    Family3
  6. type NeighborType3 = Vars

    Definition Classes
    Family3
  7. type StatisticsType = (Value, Vars.Value, Vars.Value)

    Definition Classes
    TupleFamily3Family

Value Members

  1. final def !=(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Definition Classes
    AnyRef → Any
  3. final def %(n: String): ExclusiveConstraintFactor.this.type

    Assign this Template a name which will be used later when its factors are printed.

    Assign this Template a name which will be used later when its factors are printed.

    Definition Classes
    Family
  4. final def ==(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  5. var _debug: Boolean

    Attributes
    protected
    Definition Classes
    DebuggableTemplate
  6. final def addFactors(v: variable.Var, result: Set[model.Factor]): Unit

    Not intended to be called by users.

    Not intended to be called by users. This method calls unroll and efficiently deduplicates the resulting Factors by adding them to the result Set.

    Definition Classes
    Template3TemplateModel
  7. def addFactors(dl: variable.DiffList, result: Set[model.Factor]): Unit

    Append to "result" all Factors in this Model that are affected by the given DiffList.

    Append to "result" all Factors in this Model that are affected by the given DiffList. This method must not append duplicates.

    Definition Classes
    Model
  8. def addFactors(d: variable.Diff, result: Set[model.Factor]): Unit

    Append to "result" all Factors in this Model that are affected by the given Diff.

    Append to "result" all Factors in this Model that are affected by the given Diff. This method must not append duplicates.

    Definition Classes
    Model
  9. def addFactors(variables: Iterable[variable.Var], result: Set[model.Factor]): Unit

    Append to "result" all Factors in this Model that touch any of the given "variables".

    Append to "result" all Factors in this Model that touch any of the given "variables". This method must not append duplicates.

    Definition Classes
    Model
  10. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  11. def assignmentScore(dl: variable.DiffList, assignment: variable.Assignment): Double

    Definition Classes
    Model
  12. def assignmentScore(d: variable.Diff, assignment: variable.Assignment): Double

    Definition Classes
    Model
  13. def assignmentScore(vars: Iterable[variable.Var], assignment: variable.Assignment): Double

    Definition Classes
    Model
  14. def assignmentScore(variable: variable.Var, assignment: variable.Assignment): Double

    Definition Classes
    Model
  15. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  16. def currentScore(dl: variable.DiffList): Double

    Definition Classes
    Model
  17. def currentScore(d: variable.Diff): Double

    Definition Classes
    Model
  18. def currentScore(vars: Iterable[variable.Var]): Double

    Definition Classes
    Model
  19. def currentScore(variable: variable.Var): Double

    Definition Classes
    Model
  20. def debugOff(): Unit

    Definition Classes
    DebuggableTemplate
  21. def debugOn(): Unit

    Definition Classes
    DebuggableTemplate
  22. def defaultFactorName: String

    Definition Classes
    Family
  23. final def eq(arg0: AnyRef): Boolean

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

    Definition Classes
    AnyRef → Any
  25. var factorName: String

    Definition Classes
    Family
  26. final def factors(variables: Iterable[variable.Var]): Iterable[FactorType]

    Return all Factors in this Model that touch any of the given "variables".

    Return all Factors in this Model that touch any of the given "variables". The result will not have any duplicate Factors.

    Definition Classes
    TemplateModel
  27. final def factors(v: variable.Var): Iterable[FactorType]

    Users should call this method to create and return all Factors of this Template touching the given Var.

    Users should call this method to create and return all Factors of this Template touching the given Var.

    Definition Classes
    TemplateModel
  28. def factors(dl: variable.DiffList): Iterable[model.Factor]

    Return all Factors in this Model that are affected by the given DiffList.

    Return all Factors in this Model that are affected by the given DiffList. The result will not have any duplicate Factors. By default returns just the factors that neighbor the DiffList.variables, but this method may be overridden for special handling of the DiffList

    Definition Classes
    Model
  29. def factors(d: variable.Diff): Iterable[model.Factor]

    Return all Factors in this Model that are affected by the given Diff.

    Return all Factors in this Model that are affected by the given Diff. The result will not have any duplicate Factors. By default returns just the factors that neighbor Diff.variable, but this method may be overridden for special handling of the Diff

    Definition Classes
    Model
  30. def factorsOfClass[F <: model.Factor](d: variable.DiffList)(implicit fm: ClassTag[F]): Iterable[F]

    Definition Classes
    Model
  31. def factorsOfClass[F <: model.Factor](d: variable.DiffList, fclass: Class[F]): Iterable[F]

    Definition Classes
    Model
  32. def factorsOfClass[F <: model.Factor](variables: Iterable[variable.Var])(implicit fm: ClassTag[F]): Iterable[F]

    Definition Classes
    Model
  33. def factorsOfClass[F <: model.Factor](variable: variable.Var)(implicit fm: ClassTag[F]): Iterable[F]

    Definition Classes
    Model
  34. def factorsOfClass[F <: model.Factor](variables: Iterable[variable.Var], fclass: Class[F]): Iterable[F]

    Definition Classes
    Model
  35. def factorsOfClass[F <: model.Factor](variable: variable.Var, fclass: Class[F]): Iterable[F]

    Definition Classes
    Model
  36. def factorsOfFamilies[F <: Family](d: variable.DiffList, families: Seq[F]): Iterable[model.Model.factorsOfFamilies.F.Factor]

    Definition Classes
    Model
  37. def factorsOfFamilies[F <: Family](variables: Iterable[variable.Var], families: Seq[F]): Iterable[model.Model.factorsOfFamilies.F.Factor]

    Definition Classes
    Model
  38. def factorsOfFamilies[F <: Family](variable: variable.Var, families: Seq[F]): Iterable[model.Model.factorsOfFamilies.F.Factor]

    Definition Classes
    Model
  39. def factorsOfFamily[F <: Family](d: variable.DiffList, family: F): Iterable[model.Model.factorsOfFamily.F.Factor]

    Definition Classes
    Model
  40. def factorsOfFamily[F <: Family](variables: Iterable[variable.Var], family: F): Iterable[model.Model.factorsOfFamily.F.Factor]

    Definition Classes
    Model
  41. def factorsOfFamily[F <: Family](variable: variable.Var, family: F): Iterable[model.Model.factorsOfFamily.F.Factor]

    Definition Classes
    Model
  42. def factorsOfFamilyClass[F <: Family](d: variable.DiffList)(implicit fm: ClassTag[F]): Iterable[model.Model.factorsOfFamilyClass.F.Factor]

    Definition Classes
    Model
  43. def factorsOfFamilyClass[F <: Family](d: variable.DiffList, fclass: Class[F]): Iterable[model.Model.factorsOfFamilyClass.F.Factor]

    Definition Classes
    Model
  44. def factorsOfFamilyClass[F <: Family](variables: Iterable[variable.Var])(implicit fm: ClassTag[F]): Iterable[model.Model.factorsOfFamilyClass.F.Factor]

    Definition Classes
    Model
  45. def factorsOfFamilyClass[F <: Family](variable: variable.Var)(implicit fm: ClassTag[F]): Iterable[model.Model.factorsOfFamilyClass.F.Factor]

    Definition Classes
    Model
  46. def factorsOfFamilyClass[F <: Family](variables: Iterable[variable.Var], fclass: Class[F]): Iterable[model.Model.factorsOfFamilyClass.F.Factor]

    Definition Classes
    Model
  47. def factorsOfFamilyClass[F <: Family](variable: variable.Var, fclass: Class[F]): Iterable[model.Model.factorsOfFamilyClass.F.Factor]

    Definition Classes
    Model
  48. def families: Seq[Family]

    A Factor Template has just one Factor Family: itself.

    A Factor Template has just one Factor Family: itself.

    Definition Classes
    Template
  49. def filterByFactorClass[F <: model.Factor](factors: Iterable[model.Factor], fclass: Class[F]): Iterable[F]

    Definition Classes
    Model
  50. def filterByFamilies[F <: Family](factors: Iterable[model.Factor], families: Seq[F]): Iterable[model.Model.filterByFamilies.F.Factor]

    Definition Classes
    Model
  51. def filterByFamily[F <: Family](factors: Iterable[model.Factor], family: F): Iterable[model.Model.filterByFamily.F.Factor]

    Definition Classes
    Model
  52. def filterByFamilyClass[F <: Family](factors: Iterable[model.Factor], fclass: Class[F]): Iterable[model.Model.filterByFamilyClass.F.Factor]

    Definition Classes
    Model
  53. def filterByNotFamilyClass[F <: Family](factors: Iterable[model.Factor], fclass: Class[F]): Iterable[model.Factor]

    Definition Classes
    Model
  54. def finalize(): Unit

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

    Definition Classes
    AnyRef → Any
  56. def getLimitedDiscreteValues1(factor: Factor3[VectorVar, _, _]): SparseBinaryTensor1

    Attributes
    protected
    Definition Classes
    Family3
  57. def getLimitedDiscreteValues12(factor: Factor3[VectorVar, VectorVar, _]): SparseBinaryTensor2

    Attributes
    protected
    Definition Classes
    Family3
  58. def getLimitedDiscreteValues123(factor: Factor3[VectorVar, VectorVar, VectorVar]): SparseBinaryTensor3

    Attributes
    protected
    Definition Classes
    Family3
  59. def hasLimitedDiscreteValues1: Boolean

    Definition Classes
    Family3
  60. def hasLimitedDiscreteValues12: Boolean

    Definition Classes
    Family3
  61. def hasLimitedDiscreteValues123: Boolean

    Definition Classes
    Family3
  62. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  63. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  64. def itemizedModel(dl: variable.DiffList): ItemizedModel

    Definition Classes
    Model
  65. def itemizedModel(d: variable.Diff): ItemizedModel

    Definition Classes
    Model
  66. def itemizedModel(variables: Iterable[variable.Var]): ItemizedModel

    Definition Classes
    Model
  67. def itemizedModel(variable: variable.Var): ItemizedModel

    Definition Classes
    Model
  68. def limitDiscreteValuesAsIn(vars: Iterable[DiscreteVar]): Unit

    Causes future calls to factor.valuesIterator to limit the returned values to those value combinations seen in the current values of the variables in factors touching "vars".

    Causes future calls to factor.valuesIterator to limit the returned values to those value combinations seen in the current values of the variables in factors touching "vars". Note that this will limit the values of all DiscreteVar neighbors of the resulting factors, not just the "vars" argument.

    Definition Classes
    Template3Template
  69. var limitedDiscreteValues1: SparseBinaryTensor1

    Definition Classes
    Family3
  70. var limitedDiscreteValues12: SparseBinaryTensor2

    Definition Classes
    Family3
  71. var limitedDiscreteValues123: SparseBinaryTensor3

    Definition Classes
    Family3
  72. val name: String

  73. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  74. val neighborClass1: Class[_]

    Definition Classes
    Template3
  75. val neighborClass2: Class[_]

    Definition Classes
    Template3
  76. val neighborClass3: Class[_]

    Definition Classes
    Template3
  77. def neighborClasses: Seq[Class[_]]

    Definition Classes
    Template3FamilyWithNeighborClasses
  78. def neighborDomain1: Domain { type Value = cc.factorie.variable.ArrowVariable[cc.factorie.app.nlp.hcoref.Node[Vars],cc.factorie.app.nlp.hcoref.Node[Vars]]#Value }

    Override this if you need to use them.

    Override this if you need to use them.

    Definition Classes
    Family3
  79. def neighborDomain2: Domain { type Value = Vars#Value }

    Definition Classes
    Family3
  80. def neighborDomain3: Domain { type Value = Vars#Value }

    Definition Classes
    Family3
  81. def neighborDomains: Seq[Domain]

    Definition Classes
    Family3FamilyWithNeighborDomains
  82. def newFactorsCollection: Set[model.Factor]

    The "factors" methods need a new collection to return; this method is used by them to construct this collection.

    The "factors" methods need a new collection to return; this method is used by them to construct this collection.

    Definition Classes
    Model
  83. final def notify(): Unit

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

    Definition Classes
    AnyRef
  85. def report(score: Double, weight: Double): Unit

    methods implementing this trait need to call report manually during the scoring process to print out debug results

    methods implementing this trait need to call report manually during the scoring process to print out debug results

    Definition Classes
    DebuggableTemplate
  86. def score(v1: (Node[Vars], Node[Vars]), child: Vars, parent: Vars): Double

    Definition Classes
    ExclusiveConstraintFactorFamily3
  87. def scoreAndStatistics(v1: Value, v2: Vars.Value, v3: Vars.Value): (Double, StatisticsType)

    Definition Classes
    Family3
  88. def setFactorName(n: String): ExclusiveConstraintFactor.this.type

    Assign this Template a name which will be used later when its factors are printed.

    Assign this Template a name which will be used later when its factors are printed.

    Definition Classes
    Family
  89. final def statistics(v1: Value, v2: Vars.Value, v3: Vars.Value): (Value, Vars.Value, Vars.Value)

  90. def statisticsAreValues: Boolean

    Definition Classes
    Family3
  91. def statisticsScore(tensor: Tensor): Double

    Definition Classes
    Family
  92. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  93. final def thisFamily: ExclusiveConstraintFactor.this.type

    Definition Classes
    Family
    Annotations
    @inline()
  94. def toString(): String

    Definition Classes
    AnyRef → Any
  95. def unroll(v: variable.Var): Iterable[Factor]

    Implement this method to create and return all Factors of this Template touching the given Var.

    Implement this method to create and return all Factors of this Template touching the given Var. Users of the Template should not call this method directly, however, because this method's implementation is permitted to return duplicate Factors. Instead call factors(Var), which will deduplicate the Factors (using the helper function addFactors).

    Definition Classes
    Template3Template
  96. def unroll1(v: ArrowVariable[Node[Vars], Node[Vars]]): Iterable[FactorType]

    Definition Classes
    ExclusiveConstraintFactorTemplate3
  97. def unroll2(v: Vars): Nil.type

    Definition Classes
    ExclusiveConstraintFactorTemplate3
  98. def unroll3(v: Vars): Nil.type

    Definition Classes
    ExclusiveConstraintFactorTemplate3
  99. def valuesScore(tensor: Tensor): Double

    Definition Classes
    Family3Family
  100. def valuesStatistics(tensor: Tensor): Tensor

    Definition Classes
    Family3
  101. final def wait(): Unit

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

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

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from DebuggableTemplate

Inherited from TupleTemplateWithStatistics3[ArrowVariable[Node[Vars], Node[Vars]], Vars, Vars]

Inherited from TupleFamilyWithStatistics3[ArrowVariable[Node[Vars], Node[Vars]], Vars, Vars]

Inherited from TupleFamily3[ArrowVariable[Node[Vars], Node[Vars]], Vars, Vars]

Inherited from Template3[ArrowVariable[Node[Vars], Node[Vars]], Vars, Vars]

Inherited from Template

Inherited from model.Model

Inherited from FamilyWithNeighborClasses

Inherited from Family3[ArrowVariable[Node[Vars], Node[Vars]], Vars, Vars]

Inherited from FamilyWithNeighborDomains

Inherited from Family

Inherited from AnyRef

Inherited from Any

Ungrouped