edu.umass.cs.mallet.projects.seg_plus_coref.coreference
Class CorefClusterAdv
java.lang.Object
edu.umass.cs.mallet.projects.seg_plus_coref.coreference.CorefClusterAdv
- Direct Known Subclasses:
- MultipleCorefClusterer
- public class CorefClusterAdv
- extends java.lang.Object
Method Summary |
java.util.Collection |
absoluteCluster(InstanceList ilist,
java.util.List mentions)
|
void |
addVerticesToGraph(salvo.jesus.graph.WeightedGraph graph,
java.util.List mentions,
java.util.HashMap alreadyAddedVertices)
|
protected salvo.jesus.graph.WeightedGraph |
buildGraphFromPseudoEdges(java.util.List pedges,
java.util.List mentions)
|
salvo.jesus.graph.WeightedEdge |
chooseEdge2(java.util.List edges,
double minVal,
double total,
java.util.Random rand)
|
salvo.jesus.graph.WeightedEdge |
chooseEdge3(java.util.List edges,
double minVal,
double total,
java.util.Random rand)
|
java.util.Collection |
clusterMentions(InstanceList ilist,
java.util.List mentions)
|
java.util.Collection |
clusterMentions(InstanceList ilist,
java.util.List mentions,
int optimalNBest,
boolean stochastic)
|
protected double |
collectionAvg(java.util.Collection collection)
|
void |
completeGraphNBest(salvo.jesus.graph.WeightedGraph graph,
java.util.Collection keyPartitioning,
java.util.Map citMap)
|
double |
computeInitialTreeObjScore(java.util.Collection pvertices)
|
protected void |
constructEdgesFromPseudoEdges(salvo.jesus.graph.WeightedGraph graph,
CorefClusterAdv.PseudoEdge pedge,
java.util.HashMap alreadyAdded)
|
void |
constructEdgesUsingTrainedClusterer(salvo.jesus.graph.WeightedGraph graph,
Instance instPair,
java.util.HashMap alreadyAdded)
|
void |
constructEdgesUsingTrainedClusterer(salvo.jesus.graph.WeightedGraph graph,
Instance instPair,
java.util.HashMap alreadyAdded,
java.lang.Double edgeWeight)
|
void |
constructEdgesUsingTrainedClusterer(salvo.jesus.graph.WeightedGraph graph,
Instance instPair,
java.util.HashMap alreadyAdded,
java.lang.Double edgeWeight,
MaxEnt classifier)
|
salvo.jesus.graph.WeightedGraph |
constructOptimalEdgesUsingNBest(java.util.List mentions,
int N)
|
salvo.jesus.graph.WeightedGraph |
copyGraph(salvo.jesus.graph.WeightedGraph graph)
|
salvo.jesus.graph.WeightedGraph |
createGraph(InstanceList ilist,
java.util.List mentions)
|
salvo.jesus.graph.WeightedGraph |
createGraph(InstanceList ilist,
java.util.List mentions,
salvo.jesus.graph.WeightedGraph graph)
|
salvo.jesus.graph.WeightedGraph |
createGraph(InstanceList ilist,
java.util.List mentions,
salvo.jesus.graph.WeightedGraph graph,
MaxEnt classifier)
|
java.util.List |
createPseudoEdges(InstanceList instances,
java.util.Map map)
|
java.util.Collection |
createPseudoVertices(InstanceList instances,
java.util.List mentions,
java.util.HashMap map)
|
double |
evaluateAgainstKey(java.util.Collection col)
|
double |
evaluatePartitioning(java.util.Collection clustering,
salvo.jesus.graph.WeightedGraph graph)
|
double |
evaluatePartitioningExternal(InstanceList ilist,
java.util.List mentions,
java.util.Collection collection)
|
double |
evaluatePartitioningExternal(InstanceList ilist,
java.util.List mentions,
java.util.Collection collection,
int nBestList)
|
void |
exportGraph(java.lang.String file)
|
MaxEnt |
getClassifier()
|
protected java.util.Collection |
getClusteringFromPseudo(java.util.Collection pvertices)
|
java.util.Collection |
getCollectionOfOriginalObjects(java.util.Collection vertices)
Construct a Collection of Collections where the objects in the
collections are the original objects (i.e. |
protected java.util.Collection |
getPseudoClustering(java.util.Collection pvertices)
|
void |
getUnNormalizedScores(Matrix2 lambdas,
FeatureVector fv,
double[] scores)
|
protected boolean |
hasNextIndexList(int[] indexList,
int N)
|
boolean |
inSameCluster(java.util.Collection clustering,
java.lang.Object o1,
java.lang.Object o2)
|
void |
loadME(java.lang.String file)
|
void |
mergeVertices(salvo.jesus.graph.WeightedGraph g,
salvo.jesus.graph.VertexImpl v1,
salvo.jesus.graph.VertexImpl v2)
|
protected int[] |
nextIndexList(int[] indexList,
int N)
|
protected int[] |
nextIndexListStochastic(int[] indexList,
int N)
|
protected int |
numSingletons(java.util.Collection clustering)
|
java.util.Collection |
partitionGraph(salvo.jesus.graph.WeightedGraph origGraph)
|
void |
printGraph(salvo.jesus.graph.WeightedGraph g)
|
java.lang.String |
printParamDetails(FeatureVector vec,
Classification classification,
MaxEnt classifier)
|
void |
printParams(MaxEnt me)
|
void |
setConfWeightedScores(boolean b)
|
void |
setFullPartition(boolean f)
|
void |
setKeyPartitioning(java.util.Collection keyP)
|
void |
setNBestInference(boolean b)
|
void |
setOptimality(boolean b)
|
void |
setRBeamSize(int s)
|
void |
setSearchParams(int iters,
int reductions)
|
void |
setThreshold(double t)
|
void |
setTrueNumStop(boolean b)
|
void |
testClassifier(InstanceList tlist)
|
void |
testClassifier(InstanceList tlist,
MaxEnt classifier)
|
void |
train(InstanceList ilist)
|
MaxEnt |
trainClassifier(InstanceList ilist)
|
java.util.Collection |
typicalClusterAdv(InstanceList ilist,
java.util.List mentions)
|
java.util.Collection |
typicalClusterPartition(salvo.jesus.graph.WeightedGraph graph)
|
void |
updateGraphNBest(salvo.jesus.graph.WeightedGraph graph,
int[] indexList,
java.util.List instList,
java.util.HashMap alreadyAdded)
|
double |
updateScore(double curScore,
double[] treeScore,
CorefClusterAdv.PseudoVertex v1,
CorefClusterAdv.PseudoVertex v2,
java.util.Set s1,
java.util.Set s2,
boolean over_ride)
|
double |
weightOfConfig(int[] indexList,
java.util.List instList)
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
CorefClusterAdv
public CorefClusterAdv()
CorefClusterAdv
public CorefClusterAdv(TreeModel tm)
CorefClusterAdv
public CorefClusterAdv(Pipe p)
CorefClusterAdv
public CorefClusterAdv(Pipe p,
TreeModel tm)
CorefClusterAdv
public CorefClusterAdv(double threshold)
CorefClusterAdv
public CorefClusterAdv(double threshold,
MaxEnt classifier,
Pipe p)
CorefClusterAdv
public CorefClusterAdv(double threshold,
MaxEnt classifier,
TreeModel tm,
Pipe p)
CorefClusterAdv
public CorefClusterAdv(double threshold,
Matrix2 sgdParameters,
int numSGDFeatures)
setConfWeightedScores
public void setConfWeightedScores(boolean b)
setRBeamSize
public void setRBeamSize(int s)
setOptimality
public void setOptimality(boolean b)
setNBestInference
public void setNBestInference(boolean b)
setTrueNumStop
public void setTrueNumStop(boolean b)
setSearchParams
public void setSearchParams(int iters,
int reductions)
setThreshold
public void setThreshold(double t)
setKeyPartitioning
public void setKeyPartitioning(java.util.Collection keyP)
setFullPartition
public void setFullPartition(boolean f)
loadME
public void loadME(java.lang.String file)
train
public void train(InstanceList ilist)
trainClassifier
public MaxEnt trainClassifier(InstanceList ilist)
testClassifier
public void testClassifier(InstanceList tlist)
testClassifier
public void testClassifier(InstanceList tlist,
MaxEnt classifier)
printParamDetails
public java.lang.String printParamDetails(FeatureVector vec,
Classification classification,
MaxEnt classifier)
printParams
public void printParams(MaxEnt me)
getClassifier
public MaxEnt getClassifier()
clusterMentions
public java.util.Collection clusterMentions(InstanceList ilist,
java.util.List mentions)
clusterMentions
public java.util.Collection clusterMentions(InstanceList ilist,
java.util.List mentions,
int optimalNBest,
boolean stochastic)
createGraph
public salvo.jesus.graph.WeightedGraph createGraph(InstanceList ilist,
java.util.List mentions)
createGraph
public salvo.jesus.graph.WeightedGraph createGraph(InstanceList ilist,
java.util.List mentions,
salvo.jesus.graph.WeightedGraph graph)
createGraph
public salvo.jesus.graph.WeightedGraph createGraph(InstanceList ilist,
java.util.List mentions,
salvo.jesus.graph.WeightedGraph graph,
MaxEnt classifier)
exportGraph
public void exportGraph(java.lang.String file)
copyGraph
public salvo.jesus.graph.WeightedGraph copyGraph(salvo.jesus.graph.WeightedGraph graph)
addVerticesToGraph
public void addVerticesToGraph(salvo.jesus.graph.WeightedGraph graph,
java.util.List mentions,
java.util.HashMap alreadyAddedVertices)
chooseEdge3
public salvo.jesus.graph.WeightedEdge chooseEdge3(java.util.List edges,
double minVal,
double total,
java.util.Random rand)
chooseEdge2
public salvo.jesus.graph.WeightedEdge chooseEdge2(java.util.List edges,
double minVal,
double total,
java.util.Random rand)
evaluatePartitioningExternal
public double evaluatePartitioningExternal(InstanceList ilist,
java.util.List mentions,
java.util.Collection collection)
evaluatePartitioningExternal
public double evaluatePartitioningExternal(InstanceList ilist,
java.util.List mentions,
java.util.Collection collection,
int nBestList)
evaluatePartitioning
public double evaluatePartitioning(java.util.Collection clustering,
salvo.jesus.graph.WeightedGraph graph)
inSameCluster
public boolean inSameCluster(java.util.Collection clustering,
java.lang.Object o1,
java.lang.Object o2)
createPseudoEdges
public java.util.List createPseudoEdges(InstanceList instances,
java.util.Map map)
createPseudoVertices
public java.util.Collection createPseudoVertices(InstanceList instances,
java.util.List mentions,
java.util.HashMap map)
updateScore
public double updateScore(double curScore,
double[] treeScore,
CorefClusterAdv.PseudoVertex v1,
CorefClusterAdv.PseudoVertex v2,
java.util.Set s1,
java.util.Set s2,
boolean over_ride)
computeInitialTreeObjScore
public double computeInitialTreeObjScore(java.util.Collection pvertices)
absoluteCluster
public java.util.Collection absoluteCluster(InstanceList ilist,
java.util.List mentions)
getPseudoClustering
protected java.util.Collection getPseudoClustering(java.util.Collection pvertices)
typicalClusterAdv
public java.util.Collection typicalClusterAdv(InstanceList ilist,
java.util.List mentions)
numSingletons
protected int numSingletons(java.util.Collection clustering)
getClusteringFromPseudo
protected java.util.Collection getClusteringFromPseudo(java.util.Collection pvertices)
buildGraphFromPseudoEdges
protected salvo.jesus.graph.WeightedGraph buildGraphFromPseudoEdges(java.util.List pedges,
java.util.List mentions)
typicalClusterPartition
public java.util.Collection typicalClusterPartition(salvo.jesus.graph.WeightedGraph graph)
partitionGraph
public java.util.Collection partitionGraph(salvo.jesus.graph.WeightedGraph origGraph)
evaluateAgainstKey
public double evaluateAgainstKey(java.util.Collection col)
getCollectionOfOriginalObjects
public java.util.Collection getCollectionOfOriginalObjects(java.util.Collection vertices)
- Construct a Collection of Collections where the objects in the
collections are the original objects (i.e. the object of the vertices)
mergeVertices
public void mergeVertices(salvo.jesus.graph.WeightedGraph g,
salvo.jesus.graph.VertexImpl v1,
salvo.jesus.graph.VertexImpl v2)
printGraph
public void printGraph(salvo.jesus.graph.WeightedGraph g)
collectionAvg
protected double collectionAvg(java.util.Collection collection)
hasNextIndexList
protected boolean hasNextIndexList(int[] indexList,
int N)
nextIndexList
protected int[] nextIndexList(int[] indexList,
int N)
nextIndexListStochastic
protected int[] nextIndexListStochastic(int[] indexList,
int N)
weightOfConfig
public double weightOfConfig(int[] indexList,
java.util.List instList)
updateGraphNBest
public void updateGraphNBest(salvo.jesus.graph.WeightedGraph graph,
int[] indexList,
java.util.List instList,
java.util.HashMap alreadyAdded)
constructOptimalEdgesUsingNBest
public salvo.jesus.graph.WeightedGraph constructOptimalEdgesUsingNBest(java.util.List mentions,
int N)
completeGraphNBest
public void completeGraphNBest(salvo.jesus.graph.WeightedGraph graph,
java.util.Collection keyPartitioning,
java.util.Map citMap)
constructEdgesFromPseudoEdges
protected void constructEdgesFromPseudoEdges(salvo.jesus.graph.WeightedGraph graph,
CorefClusterAdv.PseudoEdge pedge,
java.util.HashMap alreadyAdded)
constructEdgesUsingTrainedClusterer
public void constructEdgesUsingTrainedClusterer(salvo.jesus.graph.WeightedGraph graph,
Instance instPair,
java.util.HashMap alreadyAdded)
constructEdgesUsingTrainedClusterer
public void constructEdgesUsingTrainedClusterer(salvo.jesus.graph.WeightedGraph graph,
Instance instPair,
java.util.HashMap alreadyAdded,
java.lang.Double edgeWeight)
constructEdgesUsingTrainedClusterer
public void constructEdgesUsingTrainedClusterer(salvo.jesus.graph.WeightedGraph graph,
Instance instPair,
java.util.HashMap alreadyAdded,
java.lang.Double edgeWeight,
MaxEnt classifier)
getUnNormalizedScores
public void getUnNormalizedScores(Matrix2 lambdas,
FeatureVector fv,
double[] scores)