⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 buildcontextgenerator.java

📁 自然语言处理领域的一个开发包
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
              if (u1)  features.add(consbop0 + "," + punct1+","+consp1   + "," + punct2);              if (u0)  features.add(consp0   + "," + punct1+","+consbop1 + "," + punct2);              features.add(consbop0 + "," + punct1+","+consbop1 + "," + punct2);            }          }        }      }      else {        //cons(0),cons(1),punct(2),cons(2)        for (Iterator pi2=punct2s.iterator();pi2.hasNext();) {          String punct2 = punct((Parse) pi2.next(),2);          if (t012) features.add(consp0   + "," + consp1   + "," + punct2+","+consp2);                    if (b12) features.add(consbop0 + "," + consp1   +","  + punct2+ "," + consp2);          if (u0 && u2) features.add(consp0   + "," + consbop1 + "," + punct2+","+consp2);          if (b01) features.add(consp0   + "," + consp1   + "," + punct2+","+consbop2);                    if (u2) features.add(consbop0 + "," + consbop1 + "," + punct2+","+consp2);          if (u1) features.add(consbop0 + "," + consp1   + "," + punct2+","+consbop2);          if (u0) features.add(consp0   + "," + consbop1 + "," + punct2+","+consbop2);                    features.add(consbop0 + "," + consbop1 + "," + punct2+","+consbop2);                    if (zeroBackOff) {            if (b01) features.add(consp0   + "," + consp1   + "," + punct2);            if (u1)  features.add(consbop0 + "," + consp1   + "," + punct2);            if (u0)  features.add(consp0   + "," + consbop1 + "," + punct2);            features.add(consbop0 + "," + consbop1 + "," + punct2);          }        }      }    }    else {      if (punct1s != null) {        //cons(0),punct(1),cons(1),cons(2)        for (Iterator pi1=punct1s.iterator();pi1.hasNext();) {          String punct1 = punct((Parse) pi1.next(),1);          if (t012) features.add(consp0     + "," + punct1   +","+ consp1   +","+consp2);                    if (b12) features.add(consbop0    + "," + punct1   +","+ consp1   +","+consp2);          if (u0 && u2) features.add(consp0 + "," + punct1   +","+ consbop1 +","+consp2);          if (b01) features.add(consp0      + "," + punct1   +","+ consp1   +","+consbop2);                    if (u2) features.add(consbop0     + "," + punct1   +","+ consbop1 +","+consp2);          if (u1) features.add(consbop0     + "," + punct1   +","+ consp1 +","+consbop2);          if (u0) features.add(consp0       + "," + punct1   +","+ consbop1 +","+consbop2);                       features.add(consbop0 + "," + punct1   +","+ consbop1 +","+consbop2);                    //zero backoff case covered by cons(0)cons(1)        }      }      else {        //cons(0),cons(1),cons(2)        if (t012) features.add(consp0   + "," + consp1   + "," + consp2);                if (b12) features.add(consbop0 + "," + consp1   + "," + consp2);        if (u0 && u2) features.add(consp0   + "," + consbop1 + "," + consp2);        if (b01) features.add(consp0   + "," + consp1   + "," + consbop2);                if (u2) features.add(consbop0 + "," + consbop1 + "," + consp2);        if (u1) features.add(consbop0 + "," + consp1   + "," + consbop2);        if (u0) features.add(consp0   + "," + consbop1 + "," + consbop2);                features.add(consbop0 + "," + consbop1 + "," + consbop2);      }    }    //features.add("stage=cons(-2),cons(-1),cons(0)");    if (punct_2s != null) {      for (Iterator pi=punct_2s.iterator();pi.hasNext();) {        String punct = punct((Parse) pi.next(),-2);        //punct(-2)        features.add(punct);      }      if (punct_1s != null) {        //cons(-2),punct(-2),cons(-1),punct(-1),cons(0)        for (Iterator pi_2=punct_2s.iterator();pi_2.hasNext();) {          String punct_2 = punct((Parse) pi_2.next(),-2);          for (Iterator pi_1=punct_1s.iterator();pi_1.hasNext();) {            String punct_1 = punct((Parse) pi_1.next(),-1);            if (t_2_10) features.add(consp_2   + "," + punct_2+","+consp_1   + "," + punct_1+","+consp0);                        if (b_10) features.add(consbop_2 + "," + punct_2+","+consp_1   + "," + punct_1+","+consp0);            if (u_2 && u0) features.add(consp_2   + "," + punct_2+","+consbop_1 + "," + punct_1+","+consp0);            if (b_2_1) features.add(consp_2   + "," + punct_2+","+consp_1   + "," + punct_1+","+consbop0);                        if (u0)  features.add(consbop_2 + "," + punct_2+","+consbop_1 + "," + punct_1+","+consp0);            if (u_1) features.add(consbop_2 + "," + punct_2+","+consp_1   + "," + punct_1+","+consbop0);            if (u_2) features.add(consp_2   + "," + punct_2+","+consbop_1 + "," + punct_1+","+consbop0);            features.add(consbop_2 + "," + punct_2+","+consbop_1 + "," + punct_1+","+consbop0);            if (zeroBackOff) {              if (b_10) features.add(punct_2+","+consp_1   + "," + punct_1+","+consp0);              if (u0)   features.add(punct_2+","+consbop_1 + "," + punct_1+","+consp0);              if (u_1)  features.add(punct_2+","+consp_1   + "," + punct_1+","+consbop0);              features.add(punct_2+","+consbop_1 + "," + punct_1+","+consbop0);            }          }        }      }      else {        //cons(-2),punct(-2),cons(-1),cons(0)        for (Iterator pi_2=punct_2s.iterator();pi_2.hasNext();) {          String punct_2 = punct((Parse) pi_2.next(),-2);          if (t_2_10) features.add(consp_2   + "," + punct_2+","+consp_1   + ","+consp0);                    if (b_10) features.add(consbop_2 + "," + punct_2+","+consp_1   + ","+consp0);          if (u_2 && u0) features.add(consp_2   + "," + punct_2+","+consbop_1 + ","+consp0);          if (b_2_1) features.add(consp_2   + "," + punct_2+","+consp_1   + ","+consbop0);                    if (u0)  features.add(consbop_2 + "," + punct_2+","+consbop_1 + ","+consp0);          if (u_1) features.add(consbop_2 + "," + punct_2+","+consp_1   + ","+consbop0);          if (u_2) features.add(consp_2   + "," + punct_2+","+consbop_1 + ","+consbop0);                    features.add(consbop_2 + "," + punct_2+","+consbop_1 + ","+consbop0);                    if (zeroBackOff) {            if (b_10) features.add(punct_2+","+consp_1   + ","+consp0);            if (u0)   features.add(punct_2+","+consbop_1 + ","+consp0);            if (u_1)  features.add(punct_2+","+consp_1   + ","+consbop0);            features.add(punct_2+","+consbop_1 + ","+consbop0);          }        }      }    }    else {      if (punct_1s != null) {        //cons(-2),cons(-1),punct(-1),cons(0)        for (Iterator pi_1=punct_1s.iterator();pi_1.hasNext();) {          String punct_1 = punct((Parse) pi_1.next(),-1);          if (t_2_10) features.add(consp_2   + "," + consp_1   + "," + punct_1+","+consp0);                    if (b_10) features.add(consbop_2 + "," + consp_1   + "," + punct_1+","+consp0);          if (u_2 && u0) features.add(consp_2   + "," + consbop_1 + "," + punct_1+","+consp0);          if (b_2_1) features.add(consp_2   + "," + consp_1   + "," + punct_1+","+consbop0);                    if (u0)  features.add(consbop_2 + "," + consbop_1 + "," + punct_1+","+consp0);          if (u_1) features.add(consbop_2 + "," + consp_1 + "," + punct_1+","+consbop0);          if (u_2) features.add(consp_2   + "," + consbop_1 + "," + punct_1+","+consbop0);                    features.add(consbop_2 + "," + consbop_1 + "," + punct_1+","+consbop0);                    //zero backoff case covered by cons(-1)cons(0)        }              }      else {        //cons(-2),cons(-1),cons(0)        if (t_2_10) features.add(consp_2   + "," + consp_1   + "," +consp0);                if (b_10) features.add(consbop_2 + "," + consp_1   + "," +consp0);        if (u_2 && u0) features.add(consp_2   + "," + consbop_1 + "," +consp0);        if (b_2_1)features.add(consp_2   + "," + consp_1   + "," +consbop0);                if (u0)  features.add(consbop_2 + "," + consbop_1 + "," +consp0);        if (u_1) features.add(consbop_2 + "," + consp_1   + "," +consbop0);        if (u_2) features.add(consp_2   + "," + consbop_1 + "," +consbop0);                features.add(consbop_2 + "," + consbop_1 + "," +consbop0);      }    }    //features.add("stage=cons(-1),cons(0),cons(1)");    if (punct_1s !=null) {      if (punct1s != null) {        //cons(-1),punct(-1),cons(0),punct(1),cons(1)        for (Iterator pi_1=punct_1s.iterator();pi_1.hasNext();) {          String punct_1 = punct((Parse) pi_1.next(),-1);          for (Iterator pi1=punct1s.iterator();pi1.hasNext();) {            String punct1 = punct((Parse) pi1.next(),1);            if (t_101) features.add(consp_1   + "," + punct_1+","+consp0   + "," + punct1+","+consp1);                        if (b01) features.add(consbop_1 + "," + punct_1+","+consp0   + "," + punct1+","+consp1);            if (u_1 && u1) features.add(consp_1   + "," + punct_1+","+consbop0 + "," + punct1+","+consp1);            if (b_10) features.add(consp_1   + "," + punct_1+","+consp0   + "," + punct1+","+consbop1);                        if (u1)  features.add(consbop_1 + "," + punct_1+","+consbop0 + "," + punct1+","+consp1);            if (u0)  features.add(consbop_1 + "," + punct_1+","+consp0   + "," + punct1+","+consbop1);            if (u_1) features.add(consp_1   + "," + punct_1+","+consbop0 + "," + punct1+","+consbop1);                        features.add(consbop_1 + "," + punct_1+","+consbop0 + "," + punct1+","+consbop1);                        if (zeroBackOff) {              if (b_10) features.add(consp_1   + "," + punct_1+","+consp0   + "," + punct1);              if (u0)   features.add(consbop_1 + "," + punct_1+","+consp0   + "," + punct1);              if (u_1)  features.add(consp_1   + "," + punct_1+","+consbop0 + "," + punct1);              features.add(consbop_1 + "," + punct_1+","+consbop0 + "," + punct1);                          if (b01) features.add(punct_1+","+consp0   + "," + punct1+","+consp1);              if (u1)  features.add(punct_1+","+consbop0 + "," + punct1+","+consp1);              if (u0)  features.add(punct_1+","+consp0   + "," + punct1+","+consbop1);              features.add(punct_1+","+consbop0 + "," + punct1+","+consbop1);            }          }        }      }      else {        //cons(-1),punct(-1),cons(0),cons(1)        for (Iterator pi_1=punct_1s.iterator();pi_1.hasNext();) {          String punct_1 = punct((Parse) pi_1.next(),-1);          if (t_101) features.add(consp_1   + "," + punct_1+","+consp0   + "," + consp1);                    if (b01)features.add(consbop_1 + "," + punct_1+","+consp0   + "," + consp1);          if (u_1 && u1) features.add(consp_1   + "," + punct_1+","+consbop0 + "," + consp1);          if (u0) features.add(consp_1   + "," + punct_1+","+consp0   + "," + consbop1);                    if (u1)  features.add(consbop_1 + "," + punct_1+","+consbop0 + "," + consp1);          if (u0)  features.add(consbop_1 + "," + punct_1+","+consp0   + "," + consbop1);          if (u_1) features.add(consp_1   + "," + punct_1+","+consbop0 + "," + consbop1);                    features.add(consbop_1 + "," + punct_1+","+consbop0 + "," + consbop1);                    if(zeroBackOff) {            if (b01) features.add(punct_1+","+consp0   + "," + consp1);            if (u1)  features.add(punct_1+","+consbop0   + "," + consp1);            if (u0)  features.add(punct_1+","+consp0   + "," + consbop1);            features.add(punct_1+","+consbop0   + "," + consbop1);          }        }      }    }    else {      if (punct1s != null) {        //cons(-1),cons(0),punct(1),cons(1)        for (Iterator pi1=punct1s.iterator();pi1.hasNext();) {          String punct1 = punct((Parse) pi1.next(),1);          if (t_101) features.add(consp_1   + "," + consp0   + "," + punct1+","+consp1);                    if (b01) features.add(consbop_1 + "," + consp0   + "," + punct1+","+consp1);          if (u_1 && u1) features.add(consp_1   + "," + consbop0 + "," + punct1+","+consp1);          if (b_10) features.add(consp_1   + "," + consp0   + "," + punct1+","+consbop1);                    if (u1)  features.add(consbop_1 + "," + consbop0 + "," + punct1+","+consp1);          if (u0)  features.add(consbop_1 + "," + consp0   + "," + punct1+","+consbop1);          if (u_1) features.add(consp_1   + "," + consbop0 + "," + punct1+","+consbop1);                    features.add(consbop_1 + "," + consbop0 + "," + punct1+","+consbop1);                    if (zeroBackOff) {            if (b_10) features.add(consp_1   + "," + consp0   + "," + punct1);            if (u0)   features.add(consbop_1 + "," + consp0   + "," + punct1);            if (u_1)  features.add(consp_1   + "," + consbop0 + "," + punct1);            features.add(consbop_1 + "," + consbop0 + "," + punct1);          }        }      }      else {        //cons(-1),cons(0),cons(1)        if (t_101) features.add(consp_1   + "," + consp0   + "," +consp1);                if (b01)       features.add(consbop_1 + "," + consp0   + "," +consp1);        if (u_1 && u1) features.add(consp_1   + "," + consbop0 + "," +consp1);        if (b_10)      features.add(consp_1   + "," + consp0   + "," +consbop1);                if (u1)  features.add(consbop_1 + "," + consbop0 + "," +consp1);        if (u0)  features.add(consbop_1   + "," + consp0 + "," +consbop1);        if (u_1) features.add(consp_1   + "," + consbop0 + "," +consbop1);                features.add(consbop_1 + "," + consbop0 + "," +consbop1);      }    }    //features.add("stage=other");    String p0Word = p0.toString();    if (p0Word.equals("-RRB-")) {      for (int pi = index - 1; pi >= 0; pi--) {        Parse p = constituents[pi];        if (p.toString().equals("-LRB-")) {          features.add("bracketsmatch");          break;        }        if (p.getLabel().startsWith(ParserME.START)) {          break;        }      }    }    if (p0Word.equals("-RCB-")) {      for (int pi = index - 1; pi >= 0; pi--) {        Parse p = constituents[pi];        if (p.toString().equals("-LCB-")) {          features.add("bracketsmatch");          break;        }        if (p.getLabel().startsWith(ParserME.START)) {          break;        }      }    }    if (p0Word.equals("''")) {      for (int pi = index - 1; pi >= 0; pi--) {        Parse p = constituents[pi];        if (p.toString().equals("``")) {          features.add("quotesmatch");          break;        }        if (p.getLabel().startsWith(ParserME.START)) {          break;        }      }    }    if (p0Word.equals("'")) {      for (int pi = index - 1; pi >= 0; pi--) {        Parse p = constituents[pi];        if (p.toString().equals("`")) {          features.add("quotesmatch");          break;        }        if (p.getLabel().startsWith(ParserME.START)) {          break;        }      }    }    if (p0Word.equals(",")) {      for (int pi = index - 1; pi >= 0; pi--) {        Parse p = constituents[pi];        if (p.toString().equals(",")) {          features.add("iscomma");          break;        }        if (p.getLabel().startsWith(ParserME.START)) {          break;        }      }    }    if (p0Word.equals(".") && index == ps - 1) {      for (int pi = index - 1; pi >= 0; pi--) {        Parse p = constituents[pi];        if (p.getLabel().startsWith(ParserME.START)) {          if (pi == 0) {            features.add("endofsentence");          }          break;        }      }    }    return ((String[]) features.toArray(new String[features.size()]));  }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -