本文整理了Java中se.lth.cs.srl.corpus.Yield.<init>()
方法的一些代码示例,展示了Yield.<init>()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Yield.<init>()
方法的具体详情如下:
包路径:se.lth.cs.srl.corpus.Yield
类名称:Yield
方法名:<init>
暂无
代码示例来源:origin: com.googlecode.mate-tools/srl
/**
* Returns the yield of this word, ie the complete phrase that defines the argument,
* with respect to the predicate. It follows algorithm 5.3 in Richard Johansson (2008), page 88
* @param pred The predicate of the proposition, required to deduce the yield
* @return the Yield
*/
public Yield getYield(Predicate pred,String argLabel,Set<Word> argSet){
Yield ret=new Yield(pred,mySentence,argLabel);
ret.add(this);
if(pred==this) //If the predicate is the argument, we don't consider the yield
return ret;
for(Word child:children){
if(!argSet.contains(child)){ //We don't branch down this child if
Collection<Word> subtree=getDominated(Arrays.asList(child));
if(!subtree.contains(pred))
ret.addAll(subtree);
}
}
//ret.addAll(getDominated(children));
return ret;
}
代码示例来源:origin: microth/PathLSTM
public Yield getYield(Word pred, String argLabel, Set<Word> argSet) {
Yield ret = new Yield(pred, mySentence, argLabel);
ret.add(this);
if (pred.idx == this.idx) // If the predicate is the argument, we don't
// consider the yield
return ret;
Set<Integer> args = new TreeSet<>();
for (Word w : argSet)
args.add(w.getIdx());
for (Word child : children) {
if (!args.contains(child.idx)) { // We don't branch down this child
// if
Collection<Word> subtree = getDominated(Arrays.asList(child));
boolean containspred = false;
for (Word w : subtree)
if (w.idx == pred.idx)
containspred = true;
if (!containspred)
// if(!subtree.contains(mySentence.get(pred.idx)));
ret.addAll(subtree);
}
}
// ret.addAll(getDominated(children));
return ret;
}
代码示例来源:origin: microth/PathLSTM
Collection<Yield> ret = new TreeSet<>();
String curArgLabel = argLabel;
Yield subYield = new Yield(pred, sen, curArgLabel);
for (int i = this.first().idx; i <= this.last().idx; ++i) {
Word curWord = sen.get(i);
subYield = new Yield(pred, sen, curArgLabel);
代码示例来源:origin: com.googlecode.mate-tools/srl
/**
* Breaks this yield down to continuous yields if this yield is discontinuous, otherwise it returns itself in a list.
* Yields are labeled lab, C-lab, C-C-lab, etc in a sequential manner from left to right.
* It follows algorithm 5.3 in Richard Johansson (2008), page 88
* @return a collection of continuous yields
*/
public Collection<Yield> explode() {
if(isContinuous())
return Arrays.asList(this);
Collection<Yield> ret=new TreeSet<Yield>();
String curArgLabel=argLabel;
Yield subYield=new Yield(pred,sen,curArgLabel);
for(int i=sen.indexOf(this.first());i<=sen.indexOf(this.last());++i){
Word curWord=sen.get(i);
if(this.contains(curWord)){ //If this yield contain the word, add it, it's continuous.
subYield.add(curWord);
} else if(!subYield.isEmpty()) { //If this yield doesn't contain the word, and we have an unempty subyield, then the subyield is completed
ret.add(subYield);
curArgLabel="C-"+curArgLabel;
subYield=new Yield(pred,sen,curArgLabel);
}
}
if(!subYield.isEmpty()) //Add the last subyield
ret.add(subYield);
return ret;
}
}
内容来源于网络,如有侵权,请联系作者删除!