public LabelsSequence (LabelSequence seq) { this.seq = new Labels[seq.size()]; for (int i = 0; i < seq.length; i++) { this.seq[i] = new Labels (new Label[] { seq.getLabelAtPosition (i) }); } }
void incrementCount (Labels lblsReturned, Labels lblsTarget) { boolean allSame = true; // and per-label accuracy for (int j = 0; j < lblsReturned.size (); j++) { Label lret = lblsReturned.get (j); Label ltarget = lblsTarget.get (j); // System.out.println(ltarget+" vs. "+lret); int idxTrue = alphabet.lookupIndex (ltarget.getEntry ()); int idxRet = alphabet.lookupIndex (lret.getEntry ()); if (idxTrue != idxRet) allSame = false; confusion[idxTrue][idxRet]++; } // Measure joint accuracy maxT++; if (allSame) correctT++; }
public Alphabet getAlphabet () { return seq[0].getAlphabet(); } public Alphabet[] getAlphabets () { return seq[0].getAlphabets(); }
public static LabelSequence sliceLabelsSequence (LabelsSequence lbls, int slice) { return sliceLabelsSequence (lbls, lbls.getLabels (0).get (0).getLabelAlphabet (), slice); }
public void testLabelsAtEnd () throws IOException, ClassNotFoundException { GenericAcrfData2TokenSequence p = new GenericAcrfData2TokenSequence (2); p.setLabelsAtEnd (true); InstanceList training = new InstanceList (p); training.addThruPipe (new LineGroupIterator (new StringReader (labelsAtEndData), Pattern.compile ("^$"), true)); assertEquals (1, training.size ()); Instance inst1 = training.get (0); StringTokenization toks = (StringTokenization) inst1.getData (); LabelsSequence ls1 = (LabelsSequence) inst1.getTarget (); assertEquals (4, ls1.size ()); assertEquals (3, toks.get(0).getFeatures ().size ()); assertEquals ("LBLB LBLD", ls1.getLabels (0).toString ()); LabelAlphabet globalDict = p.getLabelAlphabet (0); assertEquals (2, p.numLevels ()); assertEquals (globalDict, ls1.getLabels (0).get (0).getLabelAlphabet ()); }
public void testSerializable () throws IOException, ClassNotFoundException { LabelAlphabet dict = new LabelAlphabet (); Labels lbls1 = new Labels (new Label[] { dict.lookupLabel ("A"), dict.lookupLabel ("B"), }); Labels lbls2 = new Labels (new Label[] { dict.lookupLabel ("C"), dict.lookupLabel ("A"), }); LabelsSequence lblseq = new LabelsSequence (new Labels[] { lbls1, lbls2 }); LabelsSequence lblseq2 = (LabelsSequence) TestSerializable.cloneViaSerialization (lblseq); assertEquals (lblseq.size(), lblseq2.size()); assertEquals (lblseq.getLabels(0).toString(), lblseq2.getLabels(0).toString ()); assertEquals (lblseq.getLabels(1).toString(), lblseq2.getLabels(1).toString ()); }
public String toString () { String ret = "LabelsSequence:\n"; for (int i = 0; i < seq.length; i++) { ret += i+": "; ret += seq[i].toString(); ret += "\n"; } return ret; }
public Alphabet[] getAlphabets () { return seq[0].getAlphabets(); }
public static LabelSequence sliceLabelsSequence (LabelsSequence lbls, int slice) { return sliceLabelsSequence (lbls, lbls.getLabels (0).get (0).getLabelAlphabet (), slice); }
public void testLabelsAtEnd () throws IOException, ClassNotFoundException { GenericAcrfData2TokenSequence p = new GenericAcrfData2TokenSequence (2); p.setLabelsAtEnd (true); InstanceList training = new InstanceList (p); training.addThruPipe (new LineGroupIterator (new StringReader (labelsAtEndData), Pattern.compile ("^$"), true)); assertEquals (1, training.size ()); Instance inst1 = training.get (0); StringTokenization toks = (StringTokenization) inst1.getData (); LabelsSequence ls1 = (LabelsSequence) inst1.getTarget (); assertEquals (4, ls1.size ()); assertEquals (3, toks.get(0).getFeatures ().size ()); assertEquals ("LBLB LBLD", ls1.getLabels (0).toString ()); LabelAlphabet globalDict = p.getLabelAlphabet (0); assertEquals (2, p.numLevels ()); assertEquals (globalDict, ls1.getLabels (0).get (0).getLabelAlphabet ()); }
public void testSerializable () throws IOException, ClassNotFoundException { LabelAlphabet dict = new LabelAlphabet (); Labels lbls1 = new Labels (new Label[] { dict.lookupLabel ("A"), dict.lookupLabel ("B"), }); Labels lbls2 = new Labels (new Label[] { dict.lookupLabel ("C"), dict.lookupLabel ("A"), }); LabelsSequence lblseq = new LabelsSequence (new Labels[] { lbls1, lbls2 }); LabelsSequence lblseq2 = (LabelsSequence) TestSerializable.cloneViaSerialization (lblseq); assertEquals (lblseq.size(), lblseq2.size()); assertEquals (lblseq.getLabels(0).toString(), lblseq2.getLabels(0).toString ()); assertEquals (lblseq.getLabels(1).toString(), lblseq2.getLabels(1).toString ()); }
public String toString () { String ret = "LabelsSequence:\n"; for (int i = 0; i < seq.length; i++) { ret += i+": "; ret += seq[i].toString(); ret += "\n"; } return ret; }
public Alphabet[] getAlphabets () { return seq[0].getAlphabets(); }
void incrementCount (Labels lblsReturned, Labels lblsTarget) { boolean allSame = true; // and per-label accuracy for (int j = 0; j < lblsReturned.size (); j++) { Label lret = lblsReturned.get (j); Label ltarget = lblsTarget.get (j); // System.out.println(ltarget+" vs. "+lret); int idxTrue = alphabet.lookupIndex (ltarget.getEntry ()); int idxRet = alphabet.lookupIndex (lret.getEntry ()); if (idxTrue != idxRet) allSame = false; confusion[idxTrue][idxRet]++; } // Measure joint accuracy maxT++; if (allSame) correctT++; }
public LabelsSequence (LabelSequence seq) { this.seq = new Labels[seq.size()]; for (int i = 0; i < seq.length; i++) { this.seq[i] = new Labels (new Label[] { seq.getLabelAtPosition (i) }); } }
public static LabelSequence sliceLabelsSequence (LabelsSequence lbls, int slice) { return sliceLabelsSequence (lbls, lbls.getLabels (0).get (0).getLabelAlphabet (), slice); }
public String toString () { String ret = "LabelsSequence:\n"; for (int i = 0; i < seq.length; i++) { ret += i+": "; ret += seq[i].toString(); ret += "\n"; } return ret; }
public Alphabet getAlphabet () { return seq[0].getAlphabet(); } public Alphabet[] getAlphabets () { return seq[0].getAlphabets(); }
public Alphabet[] getAlphabets () { return seq[0].getAlphabets(); }
void incrementCount (Labels lblsReturned, Labels lblsTarget) { boolean allSame = true; // and per-label accuracy for (int j = 0; j < lblsReturned.size (); j++) { Label lret = lblsReturned.get (j); Label ltarget = lblsTarget.get (j); // System.out.println(ltarget+" vs. "+lret); int idxTrue = alphabet.lookupIndex (ltarget.getEntry ()); int idxRet = alphabet.lookupIndex (lret.getEntry ()); if (idxTrue != idxRet) allSame = false; confusion[idxTrue][idxRet]++; } // Measure joint accuracy maxT++; if (allSame) correctT++; }