private static void outputLatticeRows (PrintWriter out, MaxLattice lattice, int start, int end) { DecimalFormat f = new DecimalFormat ("0.##"); Transducer ducer = lattice.getTransducer (); int max = Math.min (numMaxViterbi, ducer.numStates()); List<Sequence<Transducer.State>> stateSequences = lattice.bestStateSequences(max); for (int k = 0; k < max; k++) { out.println (" <tr class=\"delta\">"); out.println (" <td class=\"label\">δ rank "+k+"</td>"); for (int ip = start; ip < end; ip++) { Transducer.State state = stateSequences.get(k).get(ip+1); if (state.getName().equals (lattice.bestOutputSequence().get(ip))) { out.print ("<td class=\"viterbi\">"); } else { out.print ("<td>"); } out.print (state.getName()+"<br />"+f.format (-lattice.getDelta (ip+1, state.getIndex ()))+"</td>"); } out.println ("</tr>"); } }
private static void outputLatticeRows (PrintWriter out, MaxLattice lattice, int start, int end) { DecimalFormat f = new DecimalFormat ("0.##"); Transducer ducer = lattice.getTransducer (); int max = Math.min (numMaxViterbi, ducer.numStates()); List<Sequence<Transducer.State>> stateSequences = lattice.bestStateSequences(max); for (int k = 0; k < max; k++) { out.println (" <tr class=\"delta\">"); out.println (" <td class=\"label\">δ rank "+k+"</td>"); for (int ip = start; ip < end; ip++) { Transducer.State state = stateSequences.get(k).get(ip+1); if (state.getName().equals (lattice.bestOutputSequence().get(ip))) { out.print ("<td class=\"viterbi\">"); } else { out.print ("<td>"); } out.print (state.getName()+"<br />"+f.format (-lattice.getDelta (ip+1, state.getIndex ()))+"</td>"); } out.println ("</tr>"); } }
private static void outputLatticeRows (PrintWriter out, MaxLattice lattice, int start, int end) { DecimalFormat f = new DecimalFormat ("0.##"); Transducer ducer = lattice.getTransducer (); int max = Math.min (numMaxViterbi, ducer.numStates()); List<Sequence<Transducer.State>> stateSequences = lattice.bestStateSequences(max); for (int k = 0; k < max; k++) { out.println (" <tr class=\"delta\">"); out.println (" <td class=\"label\">δ rank "+k+"</td>"); for (int ip = start; ip < end; ip++) { Transducer.State state = stateSequences.get(k).get(ip+1); if (state.getName().equals (lattice.bestOutputSequence().get(ip))) { out.print ("<td class=\"viterbi\">"); } else { out.print ("<td>"); } out.print (state.getName()+"<br />"+f.format (-lattice.getDelta (ip+1, state.getIndex ()))+"</td>"); } out.println ("</tr>"); } }