edu.stanford.nlp.trees
Class CollinsHeadFinder

java.lang.Object
  extended by edu.stanford.nlp.trees.AbstractCollinsHeadFinder
      extended by edu.stanford.nlp.trees.CollinsHeadFinder
All Implemented Interfaces:
HeadFinder, Serializable
Direct Known Subclasses:
ModCollinsHeadFinder

public class CollinsHeadFinder
extends AbstractCollinsHeadFinder

Implements the HeadFinder found in Michael Collins' 1999 thesis. Except: we've added a head rule for NX, which returns the leftmost item. No rule for the head of NX is found in any of the versions of Collins' head table that we have (did he perhaps use the NP rules for NX? -- no Bikel, CL, 2005 says it defaults to leftmost). These rules are suitable for the Penn Treebank.

May 2004: Added support for AUX and AUXG to the VP rules; these cause no interference in Penn Treebank parsing, but means that these rules also work for the BLLIP corpus (or Charniak parser output in general). Feb 2005: Fixes to coordination reheading so that punctuation cannot become head.

Author:
Christopher Manning
See Also:
Serialized Form

Field Summary
 
Fields inherited from class edu.stanford.nlp.trees.AbstractCollinsHeadFinder
defaultRule, nonTerminalInfo, tlp
 
Constructor Summary
CollinsHeadFinder()
           
CollinsHeadFinder(TreebankLanguagePack tlp)
           
 
Method Summary
static void main(String[] args)
          Go through trees and determine their heads and print them.
protected  int postOperationFix(int headIdx, Tree[] daughterTrees)
          A way for subclasses to fix any heads under special conditions The default does nothing.
 
Methods inherited from class edu.stanford.nlp.trees.AbstractCollinsHeadFinder
determineHead, determineNonTrivialHead, findMarkedHead, traverseLocate
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

CollinsHeadFinder

public CollinsHeadFinder()

CollinsHeadFinder

public CollinsHeadFinder(TreebankLanguagePack tlp)
Method Detail

postOperationFix

protected int postOperationFix(int headIdx,
                               Tree[] daughterTrees)
Description copied from class: AbstractCollinsHeadFinder
A way for subclasses to fix any heads under special conditions The default does nothing.

Overrides:
postOperationFix in class AbstractCollinsHeadFinder
Parameters:
headIdx - the index of the proposed head
daughterTrees - the array of daughter trees
Returns:
the new headIndex

main

public static void main(String[] args)
Go through trees and determine their heads and print them. Just for debuggin'.
Usage: java edu.stanford.nlp.trees.CollinsHeadFinder treebankFilePath

Parameters:
args - The treebankFilePath


Stanford NLP Group