@Override public Sample getSample(Sample s, int index) { if (s == null) { s = new Sample(); } s.input = asTensor(data.charAt(index), s.input); s.target = asTensor(data.charAt(index + 1), s.target); return s; }
@Override protected void adaptSample(Sample original, Sample adapted) { adapted.input = original.input.copyInto(adapted.input); if (adapted.target == null) { adapted.target = new Tensor(labels.length); } adapted.target.fill(0.0f); for (int i = 0; i < labelIndices.length; i++) { adapted.target.set(original.target.get(labelIndices[i]), i); } if (other) { if (TensorOps.sum(adapted.target) == 0) { adapted.target.set(1.0f, labels.length - 1); } } }