edu.stanford.nlp.parser.dvparser
Class DVModel

java.lang.Object
  extended by edu.stanford.nlp.parser.dvparser.DVModel
All Implemented Interfaces:
java.io.Serializable

public class DVModel
extends java.lang.Object
implements java.io.Serializable

See Also:
Serialized Form

Field Summary
 TwoDimensionalMap<java.lang.String,java.lang.String,org.ejml.simple.SimpleMatrix> binaryScore
           
 TwoDimensionalMap<java.lang.String,java.lang.String,org.ejml.simple.SimpleMatrix> binaryTransform
           
 java.util.Map<java.lang.String,org.ejml.simple.SimpleMatrix> unaryScore
           
 java.util.Map<java.lang.String,org.ejml.simple.SimpleMatrix> unaryTransform
           
 java.util.Map<java.lang.String,org.ejml.simple.SimpleMatrix> wordVectors
           
 
Constructor Summary
DVModel(Options op, Index<java.lang.String> stateIndex, UnaryGrammar unaryGrammar, BinaryGrammar binaryGrammar)
           
DVModel(TwoDimensionalMap<java.lang.String,java.lang.String,org.ejml.simple.SimpleMatrix> binaryTransform, java.util.Map<java.lang.String,org.ejml.simple.SimpleMatrix> unaryTransform, TwoDimensionalMap<java.lang.String,java.lang.String,org.ejml.simple.SimpleMatrix> binaryScore, java.util.Map<java.lang.String,org.ejml.simple.SimpleMatrix> unaryScore, java.util.Map<java.lang.String,org.ejml.simple.SimpleMatrix> wordVectors, Options op)
           
 
Method Summary
 void addRandomBinaryMatrix(java.lang.String leftBasic, java.lang.String rightBasic)
           
 void addRandomUnaryMatrix(java.lang.String childBasic)
           
 java.lang.String basicCategory(java.lang.String category)
           
 int binaryScoreIndex(java.lang.String leftChild, java.lang.String rightChild)
           
 int binaryTransformIndex(java.lang.String leftChild, java.lang.String rightChild)
           
 void filterRulesForBatch(java.util.Collection<Tree> trees)
          Filters the transform and score rules so that we only have the ones which appear in the trees given
 void filterRulesForBatch(java.util.Map<Tree,byte[]> compressedTrees)
           
 void filterRulesForBatch(TwoDimensionalSet<java.lang.String,java.lang.String> binaryRules, java.util.Set<java.lang.String> unaryRules, java.util.Set<java.lang.String> words)
           
 org.ejml.simple.SimpleMatrix getEndWordVector()
           
 org.ejml.simple.SimpleMatrix getScoreWForNode(Tree node)
           
 org.ejml.simple.SimpleMatrix getStartWordVector()
           
 org.ejml.simple.SimpleMatrix getUnknownWordVector()
           
 java.lang.String getVocabWord(java.lang.String word)
           
 org.ejml.simple.SimpleMatrix getWForNode(Tree node)
           
 org.ejml.simple.SimpleMatrix getWordVector(java.lang.String word)
           
 Pair<java.lang.String,java.lang.String> indexToBinaryScore(int pos)
           
 Pair<java.lang.String,java.lang.String> indexToBinaryTransform(int pos)
           
 java.lang.String indexToUnaryScore(int pos)
           
 java.lang.String indexToUnaryTransform(int pos)
           
 double[] paramsToVector()
           
 double[] paramsToVector(double scale)
           
static double[] paramsToVector(double scale, int totalSize, java.util.Iterator<org.ejml.simple.SimpleMatrix>... matrices)
           
static double[] paramsToVector(int totalSize, java.util.Iterator<org.ejml.simple.SimpleMatrix>... matrices)
           
 void printAllMatrices(java.io.PrintStream out)
           
 void printMatrixNames(java.io.PrintStream out)
           
 void printMatrixStats(java.io.PrintStream out)
           
 void printParameterType(int pos, java.io.PrintStream out)
          Prints to stdout the type and key for the given location in the parameter stack
 void readWordVectors()
           
 void setRulesForTrainingSet(java.util.List<Tree> sentences, java.util.Map<Tree,byte[]> compressedTrees)
           
 int totalParamSize()
           
 int unaryScoreIndex(java.lang.String child)
           
 int unaryTransformIndex(java.lang.String child)
           
 void vectorToParams(double[] theta)
           
static void vectorToParams(double[] theta, java.util.Iterator<org.ejml.simple.SimpleMatrix>... matrices)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

binaryTransform

public transient TwoDimensionalMap<java.lang.String,java.lang.String,org.ejml.simple.SimpleMatrix> binaryTransform

unaryTransform

public transient java.util.Map<java.lang.String,org.ejml.simple.SimpleMatrix> unaryTransform

binaryScore

public transient TwoDimensionalMap<java.lang.String,java.lang.String,org.ejml.simple.SimpleMatrix> binaryScore

unaryScore

public transient java.util.Map<java.lang.String,org.ejml.simple.SimpleMatrix> unaryScore

wordVectors

public transient java.util.Map<java.lang.String,org.ejml.simple.SimpleMatrix> wordVectors
Constructor Detail

DVModel

public DVModel(Options op,
               Index<java.lang.String> stateIndex,
               UnaryGrammar unaryGrammar,
               BinaryGrammar binaryGrammar)
Parameters:
op - the parameters of the parser

DVModel

public DVModel(TwoDimensionalMap<java.lang.String,java.lang.String,org.ejml.simple.SimpleMatrix> binaryTransform,
               java.util.Map<java.lang.String,org.ejml.simple.SimpleMatrix> unaryTransform,
               TwoDimensionalMap<java.lang.String,java.lang.String,org.ejml.simple.SimpleMatrix> binaryScore,
               java.util.Map<java.lang.String,org.ejml.simple.SimpleMatrix> unaryScore,
               java.util.Map<java.lang.String,org.ejml.simple.SimpleMatrix> wordVectors,
               Options op)
Method Detail

addRandomUnaryMatrix

public void addRandomUnaryMatrix(java.lang.String childBasic)

addRandomBinaryMatrix

public void addRandomBinaryMatrix(java.lang.String leftBasic,
                                  java.lang.String rightBasic)

setRulesForTrainingSet

public void setRulesForTrainingSet(java.util.List<Tree> sentences,
                                   java.util.Map<Tree,byte[]> compressedTrees)

filterRulesForBatch

public void filterRulesForBatch(java.util.Collection<Tree> trees)
Filters the transform and score rules so that we only have the ones which appear in the trees given


filterRulesForBatch

public void filterRulesForBatch(java.util.Map<Tree,byte[]> compressedTrees)

filterRulesForBatch

public void filterRulesForBatch(TwoDimensionalSet<java.lang.String,java.lang.String> binaryRules,
                                java.util.Set<java.lang.String> unaryRules,
                                java.util.Set<java.lang.String> words)

basicCategory

public java.lang.String basicCategory(java.lang.String category)

readWordVectors

public void readWordVectors()

totalParamSize

public int totalParamSize()

paramsToVector

public static double[] paramsToVector(double scale,
                                      int totalSize,
                                      java.util.Iterator<org.ejml.simple.SimpleMatrix>... matrices)

paramsToVector

public static double[] paramsToVector(int totalSize,
                                      java.util.Iterator<org.ejml.simple.SimpleMatrix>... matrices)

paramsToVector

public double[] paramsToVector(double scale)

paramsToVector

public double[] paramsToVector()

vectorToParams

public static void vectorToParams(double[] theta,
                                  java.util.Iterator<org.ejml.simple.SimpleMatrix>... matrices)

vectorToParams

public void vectorToParams(double[] theta)

getWForNode

public org.ejml.simple.SimpleMatrix getWForNode(Tree node)

getScoreWForNode

public org.ejml.simple.SimpleMatrix getScoreWForNode(Tree node)

getStartWordVector

public org.ejml.simple.SimpleMatrix getStartWordVector()

getEndWordVector

public org.ejml.simple.SimpleMatrix getEndWordVector()

getWordVector

public org.ejml.simple.SimpleMatrix getWordVector(java.lang.String word)

getVocabWord

public java.lang.String getVocabWord(java.lang.String word)

getUnknownWordVector

public org.ejml.simple.SimpleMatrix getUnknownWordVector()

printMatrixNames

public void printMatrixNames(java.io.PrintStream out)

printMatrixStats

public void printMatrixStats(java.io.PrintStream out)

printAllMatrices

public void printAllMatrices(java.io.PrintStream out)

binaryTransformIndex

public int binaryTransformIndex(java.lang.String leftChild,
                                java.lang.String rightChild)

unaryTransformIndex

public int unaryTransformIndex(java.lang.String child)

binaryScoreIndex

public int binaryScoreIndex(java.lang.String leftChild,
                            java.lang.String rightChild)

unaryScoreIndex

public int unaryScoreIndex(java.lang.String child)

indexToBinaryTransform

public Pair<java.lang.String,java.lang.String> indexToBinaryTransform(int pos)

indexToUnaryTransform

public java.lang.String indexToUnaryTransform(int pos)

indexToBinaryScore

public Pair<java.lang.String,java.lang.String> indexToBinaryScore(int pos)

indexToUnaryScore

public java.lang.String indexToUnaryScore(int pos)

printParameterType

public void printParameterType(int pos,
                               java.io.PrintStream out)
Prints to stdout the type and key for the given location in the parameter stack



Stanford NLP Group