public MyMultiDistanceInstance(StringWrapper a,StringWrapper b,boolean correct,double distance) { super(a,b,correct,distance); ma = asMultiStringWrapper(a); mb = asMultiStringWrapper(b); } public StringWrapper getA(int j) { return ma.get(j); }
public MyMultiDistanceInstance(StringWrapper a,StringWrapper b,boolean correct,double distance) { super(a,b,correct,distance); ma = asMultiStringWrapper(a); mb = asMultiStringWrapper(b); } public StringWrapper getA(int j) { return ma.get(j); }
public MyMultiDistanceInstance(StringWrapper a,StringWrapper b,boolean correct,double distance) { super(a,b,correct,distance); ma = asMultiStringWrapper(a); mb = asMultiStringWrapper(b); } public StringWrapper getA(int j) { return ma.get(j); }
protected List asMultiStringWrapperList(StringWrapperIterator i) { List buffer = new ArrayList(); while (i.hasNext()) { StringWrapper w = i.nextStringWrapper(); MultiStringWrapper mw = asMultiStringWrapper(w); buffer.add(mw); } return buffer; }
protected List asMultiStringWrapperList(StringWrapperIterator i) { List buffer = new ArrayList(); while (i.hasNext()) { StringWrapper w = i.nextStringWrapper(); MultiStringWrapper mw = asMultiStringWrapper(w); buffer.add(mw); } return buffer; }
protected List<MultiStringWrapper> asMultiStringWrapperList(StringWrapperIterator i) { List<MultiStringWrapper> buffer = new ArrayList<MultiStringWrapper>(); while (i.hasNext()) { StringWrapper w = i.nextStringWrapper(); MultiStringWrapper mw = asMultiStringWrapper(w); buffer.add(mw); } return buffer; }
final public StringWrapper prepare(String s) { MultiStringWrapper ms = asMultiStringWrapper(new BasicStringWrapper(s)); ms.prepare( innerDistances ); return ms; }
final public StringWrapper prepare(String s) { MultiStringWrapper ms = asMultiStringWrapper(new BasicStringWrapper(s)); ms.prepare( innerDistances ); return ms; }
final public StringWrapper prepare(String s) { MultiStringWrapper ms = asMultiStringWrapper(new BasicStringWrapper(s)); ms.prepare( innerDistances ); return ms; }
/** Pass the training data along to the inner learners. */ public void setDistanceInstancePool(DistanceInstanceIterator it) { // need to save out the i-th field, if it's been prepared. List buffer = asMultiDistanceInstanceList(it); if (buffer.size()==0) return; MyMultiDistanceInstance instance = (MyMultiDistanceInstance)buffer.get(0); MultiStringWrapper prototype = asMultiStringWrapper( instance.getA() ); for (int i=0; i<prototype.size(); i++) { int j = prototype.getDistanceLearnerIndex(i); innerLearners[j].setDistanceInstancePool( new JthDistanceInstanceIterator( j, buffer.iterator() ) ); } comboSetDistanceInstancePool( buffer.iterator() ); }
/** Pass the training data along to the inner learners. */ public void setDistanceInstancePool(DistanceInstanceIterator it) { // need to save out the i-th field, if it's been prepared. List buffer = asMultiDistanceInstanceList(it); if (buffer.size()==0) return; MyMultiDistanceInstance instance = (MyMultiDistanceInstance)buffer.get(0); MultiStringWrapper prototype = asMultiStringWrapper( instance.getA() ); for (int i=0; i<prototype.size(); i++) { int j = prototype.getDistanceLearnerIndex(i); innerLearners[j].setDistanceInstancePool( new JthDistanceInstanceIterator( j, buffer.iterator() ) ); } comboSetDistanceInstancePool( buffer.iterator() ); }
/** Pass the training data along to the inner learners. */ public void setDistanceInstancePool(DistanceInstanceIterator it) { // need to save out the i-th field, if it's been prepared. List buffer = asMultiDistanceInstanceList(it); if (buffer.size()==0) return; MyMultiDistanceInstance instance = (MyMultiDistanceInstance)buffer.get(0); MultiStringWrapper prototype = asMultiStringWrapper( instance.getA() ); for (int i=0; i<prototype.size(); i++) { int j = prototype.getDistanceLearnerIndex(i); innerLearners[j].setDistanceInstancePool( new JthDistanceInstanceIterator( j, buffer.iterator() ) ); } comboSetDistanceInstancePool( buffer.iterator() ); }
final public double score(StringWrapper s,StringWrapper t) { MultiStringWrapper ms = asMultiStringWrapper(s); MultiStringWrapper mt = asMultiStringWrapper(t); ms.prepare(innerDistances); mt.prepare(innerDistances); if (ms.size() != mt.size() || ms.size()!=prototype.size()) { throw new IllegalStateException("ms,mt="+ms+","+mt+" expected MultiStringWrapper's of size "+prototype.size()); } return doScore(ms,mt); }
final public double score(StringWrapper s,StringWrapper t) { MultiStringWrapper ms = asMultiStringWrapper(s); MultiStringWrapper mt = asMultiStringWrapper(t); ms.prepare(innerDistances); mt.prepare(innerDistances); if (ms.size() != mt.size() || ms.size()!=prototype.size()) { throw new IllegalStateException("ms,mt="+ms+","+mt+" expected MultiStringWrapper's of size "+prototype.size()); } return doScore(ms,mt); }
final public double score(StringWrapper s,StringWrapper t) { MultiStringWrapper ms = asMultiStringWrapper(s); MultiStringWrapper mt = asMultiStringWrapper(t); ms.prepare(innerDistances); mt.prepare(innerDistances); if (ms.size() != mt.size() || ms.size()!=prototype.size()) { throw new IllegalStateException("ms,mt="+ms+","+mt+" expected MultiStringWrapper's of size "+prototype.size()); } return doScore(ms,mt); }
final public String explainScore(StringWrapper s, StringWrapper t) { StringBuffer buf = new StringBuffer(); MultiStringWrapper ms = asMultiStringWrapper(s); MultiStringWrapper mt = asMultiStringWrapper(t); if (ms.size() != mt.size() || ms.size()!=prototype.size()) { throw new IllegalStateException("expected MultiStringWrapper's of size "+prototype.size()); } for (int i=0; i<ms.size(); i++) { StringDistance d = innerDistances[ ms.getDistanceLearnerIndex(i) ]; buf.append("score of "+d+" on '"+ms.get(i)+"' and '"+mt.get(i)+"' = "+d.score( ms.get(i), mt.get(i) )+"\n"); } buf.append( explainCombination(ms, mt) ); return buf.toString(); }
final public String explainScore(StringWrapper s, StringWrapper t) { StringBuffer buf = new StringBuffer(); MultiStringWrapper ms = asMultiStringWrapper(s); MultiStringWrapper mt = asMultiStringWrapper(t); if (ms.size() != mt.size() || ms.size()!=prototype.size()) { throw new IllegalStateException("expected MultiStringWrapper's of size "+prototype.size()); } for (int i=0; i<ms.size(); i++) { StringDistance d = innerDistances[ ms.getDistanceLearnerIndex(i) ]; buf.append("score of "+d+" on '"+ms.get(i)+"' and '"+mt.get(i)+"' = "+d.score( ms.get(i), mt.get(i) )+"\n"); } buf.append( explainCombination(ms, mt) ); return buf.toString(); }
final public String explainScore(StringWrapper s, StringWrapper t) { StringBuilder buf = new StringBuilder(); MultiStringWrapper ms = asMultiStringWrapper(s); MultiStringWrapper mt = asMultiStringWrapper(t); if (ms.size() != mt.size() || ms.size()!=prototype.size()) { throw new IllegalStateException("expected MultiStringWrapper's of size "+prototype.size()); } for (int i=0; i<ms.size(); i++) { StringDistance d = innerDistances[ ms.getDistanceLearnerIndex(i) ]; buf.append("score of "+d+" on '"+ms.get(i)+"' and '"+mt.get(i)+"' = "+d.score( ms.get(i), mt.get(i) )+"\n"); } buf.append( explainCombination(ms, mt) ); return buf.toString(); }