Package com.clearnlp.dependency

Examples of com.clearnlp.dependency.DEPNode


  {
    SRLReader reader = new SRLReader(0, 1, 2, 3, 4, 5, 6, 7);
    reader.open(UTInput.createBufferedFileReader(args[0]));
    PrintStream fout = UTOutput.createPrintBufferedFileStream(args[1]);
    Pattern p = UTRegex.getORPatternExact(DEPLibEn.DEP_COMPLM, DEPLibEn.DEP_MARK);
    DEPNode root, head;
    DEPTree tree;
   
    while ((tree = reader.next()) != null)
    {
      tree.setDependents();
      root = tree.getFirstRoot();
      head = root.getDependents().get(0).getNode();
     
      tree = new DEPTree();
      head.removeDependentsByLabels(p);
     
      for (DEPNode node : head.getSubNodeSortedList())
View Full Code Here


    Prob2DMap mVBD = new Prob2DMap();
    Prob2DMap mVBN = new Prob2DMap();
    String form, base, past, part;
    int i, size, cutoff = 1;
    DEPTree tree;
    DEPNode node;
   
    while ((tree = fin.next()) != null)
    {
      size = tree.size();
     
      for (i=1; i<size; i++)
      {
        node = tree.get(i);
        base = node.lemma;
        form = node.form.toLowerCase();
        past = LGVerbEn.getPastRegularForm(base);
       
        if (node.isPos(CTLibEn.POS_VBD))
        {
          if (!form.equals(past))
            mVBD.add(base, form);
        }
        else if (node.isPos(CTLibEn.POS_VBN))
        {
          if (!form.equals(past))
            mVBN.add(base, form);
        }
      }
View Full Code Here

  }
 
  void checkPosDeprel(DEPTree tree, Prob2DMap mc, Prob2DMap mh)
  {
    int i, size = tree.size();
    DEPNode node, head;
    String deprel;
   
    for (i=1; i<size; i++)
    {
      node = tree.get(i);
      head = node.getHead();
      deprel = node.getLabel();

      mc.add(deprel, MPLibEn.toCPOSTag(node.pos));
      mh.add(deprel, MPLibEn.toCPOSTag(head.pos));
    }
  }
View Full Code Here

  }
 
  void classifySentenceType(DEPTree tree, IntIntPair count)
  {
    int i, size = tree.size();
    DEPNode node;
    String  feat;
   
    tree.setDependents();
   
    for (i=1; i<size; i++)
    {
      node = tree.get(i);
      feat = node.getFeat(DEPLib.FEAT_SNT);
     
      if (node.pos.startsWith("VB"))
      {
        if (isImperative(node))
        {
          count.i1++;
         
          if (feat == null || !feat.equals("IMP"))
          {
            if (node.isLemma("be"))
              System.out.println(node.id+" "+tree.toStringDEP()+"\n");
            count.i2++;
          }
        }
      }
View Full Code Here

    if (verb.isLabel(DEPLibEn.DEP_AUX) || verb.isLabel(DEPLibEn.DEP_AUXPASS) || verb.isLabel(DEPLibEn.DEP_XCOMP) || verb.isLabel(DEPLibEn.DEP_PARTMOD) || verb.isLabel(DEPLibEn.DEP_RCMOD) || verb.isLabel(DEPLibEn.DEP_CONJ) || verb.isLabel(DEPLibEn.DEP_HMOD))
      return false;

    List<DEPArc> deps = verb.getDependents();
    int i, size = deps.size();
    DEPNode node;
    DEPArc  dep;
   
    for (i=0; i<size; i++)
    {
      dep  = deps.get(i);
      node = dep.getNode();
     
      if (node.id < verb.id)
      {
        if (dep.isLabel(DEPLibEn.DEP_COMPLM) || dep.isLabel(DEPLibEn.DEP_MARK))
          return false;
       
        if (dep.isLabel(P_AUX) && !node.isLemma("do"))
          return false;
       
        if (node.isPos(CTLibEn.POS_TO) || node.isPos(CTLibEn.POS_MD) || node.pos.startsWith("W"))
          return false
      }
     
      if (dep.isLabel(P_SBJ) || dep.isLabel(DEPLibEn.DEP_EXPL))
        return false;
View Full Code Here

  }
 
  /** Called by {@link #process(DEPTree)}. */
  private void processCollect(TagState state)
  {
    DEPNode input = state.getInput();
   
    if (s_lsfs.contains(input.lowerSimplifiedForm))
      p_ambi.add(input.simplifiedForm, input.pos);
  }
View Full Code Here

//  ====================================== FEATURE EXTRACTION ======================================

  @Override
  protected String getField(FtrToken token, TagState state)
  {
    DEPNode node = state.getNode(token);
    if (node == null) return null;
   
    switch (token.field)
    {
    case JointFtrXml.F_SIMPLIFIED_FORM:
      return containsLowerSimplifiedForm(node) ? node.simplifiedForm : null;
    case JointFtrXml.F_LOWER_SIMPLIFIED_FORM:
      return containsLowerSimplifiedForm(node) ? node.lowerSimplifiedForm : null;
    case JointFtrXml.F_POS:
      return node.pos;
    case JointFtrXml.F_POS2:
      return node.getFeat(DEPLib.FEAT_POS2);
    case JointFtrXml.F_AMBIGUITY_CLASS:
      return m_ambi.get(node.simplifiedForm);
    }
   
    Matcher m;
   
    if ((m = JointFtrXml.P_BOOLEAN.matcher(token.field)).find())
    {
      int field = Integer.parseInt(m.group(1));
      String value = token.field+token.offset;
     
      switch (field)
      {
      case  0: return UTString.isAllUpperCase(node.simplifiedForm) ? value : null;
      case  1: return UTString.isAllLowerCase(node.simplifiedForm) ? value : null;
      case  2: return UTString.beginsWithUpperCase(node.simplifiedForm) & !state.isInputFirstNode() ? value : null;
      case  3: return UTString.getNumOfCapitalsNotAtBeginning(node.simplifiedForm) == 1 ? value : null;
      case  4: return UTString.getNumOfCapitalsNotAtBeginning(node.simplifiedForm> 1 ? value : null;
      case  5: return node.simplifiedForm.contains(".") ? value : null;
      case  6: return UTString.containsDigit(node.simplifiedForm) ? value : null;
      case  7: return node.simplifiedForm.contains("-") ? value : null;
      case  8: return state.isInputLastNode() ? value : null;
      case  9: return state.isInputFirstNode() ? value : null;
      case 10: return PTPunct.containsOnlyPunctuation(node.lowerSimplifiedForm) ? value : null;
      default: throw new IllegalArgumentException("Unsupported feature: "+token.field);
      }
    }
    else if ((m = JointFtrXml.P_FEAT.matcher(token.field)).find())
      return node.getFeat(m.group(1));
    else if ((m = JointFtrXml.P_PREFIX.matcher(token.field)).find())
    {
      int n = Integer.parseInt(m.group(1)), len = node.lowerSimplifiedForm.length();
      return (n <= len) ? node.lowerSimplifiedForm.substring(0, n) : null;
    }
View Full Code Here

    List<DEPArc> deps = verb.getDependents();
    int i, size = deps.size();
    boolean hasAux = false;
    DEPArc  curr, prev;
    String  label;
    DEPNode node;
   
    for (i=size-1; i>=0; i--)
    {
      curr  = deps.get(i);
      node  = curr.getNode();
View Full Code Here

  //  DEPReader reader = new DEPReader(0, 1, 2, 3, 5, 6, 7);
    DEPReader reader = new DEPReader(0, 1, 2, 4, 6, 8, 10);
    reader.open(UTInput.createBufferedFileReader(inputFile));
    int i, size, left = 0, right = 0, l, r, prevId, depId;
    DEPTree tree;
    DEPNode node;
   
    while ((tree = reader.next()) != null)
    {
      tree.setDependents();
      size = tree.size();
     
      for (i=1; i<size; i++)
      {
        node = tree.get(i);
        prevId = -1;
        l = r = 0;
       
        for (DEPArc arc : node.getDependents())
        {
          depId = arc.getNode().id;
         
          if (depId - prevId == 1)
          {
View Full Code Here

  }
 
  @Override
  protected String[] getFields(FtrToken token, TagState state)
  {
    DEPNode node = state.getNode(token);
    if (node == null) return null;
    String[] fields = null;
    Matcher m;
   
    if ((m = JointFtrXml.P_PREFIX.matcher(token.field)).find())
View Full Code Here

TOP

Related Classes of com.clearnlp.dependency.DEPNode

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.