Package org.fnlp.nlp.parser

Examples of org.fnlp.nlp.parser.Target


   
    //preReader为了把ysize定下来
    la.lookupIndex("S");
    while(preReader.hasNext()){
      Sentence sent = (Sentence) preReader.next();
      Target targets = (Target)sent.getTarget();
      for(int i=0; i<sent.length(); i++){
        String label;
        if(targets.getHead(i) != -1){
          if(targets.getHead(i) < i){
            label = "L" + targets.getDepClass(i);
          }
          //else if(targets.getHead(i) > i){
          else{
            label = "R" + targets.getDepClass(i);
          }
          la.lookupIndex(label);
        }
      }
    }
    int ysize = la.size();
    la.setStopIncrement(true);
       
    while (reader.hasNext()) {
      Sentence sent = (Sentence) reader.next();
      //  int[] heads = (int[]) instance.getTarget();
      String depClass = null;
      Target targets = (Target)sent.getTarget();
      JointParsingState state = new JointParsingState(sent);
     
      while (!state.isFinalState()) {
        // 左右焦点词在句子中的位置
        int[] lr = state.getFocusIndices();

        ArrayList<String> features = state.getFeatures();
        JointParsingState.Action action = getAction(lr[0], lr[1],
            targets);
        switch (action) {
        case LEFT:
          depClass = targets.getDepClass(lr[1]);
          break;
        case RIGHT:
          depClass = targets.getDepClass(lr[0]);
          break;
        default:

        }
        state.next(action,depClass);
        if (action == JointParsingState.Action.LEFT)
          targets.setHeads(lr[1],-1);
        if (action == JointParsingState.Action.RIGHT)
          targets.setHeads(lr[0],-1);
        String label = "";
        switch (action) {
        case LEFT:
          label += "L"+sent.getDepClass(lr[1]);   
          break;
View Full Code Here


    int count = 0;
    while (reader.hasNext()) {
//      System.out.println(count++);
      Sentence instance = (Sentence) reader.next();
     
      Target targets = (Target) instance.getTarget();

      int[] heads = targets.getHeads();     
      String[] depClass = targets.getRelations();
      Target t = parser.parse2R(instance);     
      String[] dPreds = (String[]) t.getRelations();
      int[] preds = (int[]) t.getHeads();
      int depCurerr = diffDepClas(depClass,dPreds);
      int curerr = diff(heads, preds);
      if(depCurerr != 0 ){
        dError += depCurerr;
      }
View Full Code Here

    Sentence sent = (Sentence) inst;

    Predict<DependencyTree> res = _getBestParse(sent);
    DependencyTree dt = res.getLabel(0);

    Target target = new Target(sent.length());

    target=target.ValueOf(dt);

    return target;
  }
View Full Code Here

  public Target parse2R(String[] words, String[] pos)   {
    return parse2R(new Sentence(words, pos));
  }

  public String parse2String(String[] words, String[] pos,boolean b) {
    Target target = parse2R(words,pos);
    int[] heads = target.getHeads();
    String[] rel = target.getRelations();
    StringBuffer sb = new StringBuffer();
    if(b){
      for(int j = 0; j < words.length; j++){
        sb.append(words[j]);
        if(j<words.length-1)
View Full Code Here

      curDoc = null;
      curSentNo = 0;
      return hasNext();
    }
   
    Target target = new Target(sent.heads,sent.relations);
    next = new Sentence(sent.words, sent.tags, target);
   
    return true;
  }
View Full Code Here

        postags[i] = tokens[2];
        heads[i] =Integer.parseInt(tokens[3])-1;
        rels[i] = tokens[4];
      }

      next = new Sentence(forms, postags, new Target(heads,rels));
      next.setSource(source);
    }
  }
View Full Code Here

TOP

Related Classes of org.fnlp.nlp.parser.Target

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.