public void CanBatchByCount() { const int batchCount = 25; const int batchSize = 4; var samples = GetSamples(); var batcher = new SequenceBatcher <float, float[]>(samples[0].Length, (f, i) => f[i]); var result = batcher.BatchSamples(samples, new BatchDimension(BatchDimensionType.BatchCount, batchCount)); CheckBatches(result, batchCount, batchSize); }
public void PrepareTrainingSets(string path, IProgressWriter progressWriter = null) { Vocab = File.ReadAllText(path).Distinct().OrderBy(x => x).ToList(); var text = File.ReadAllText(path); var batcher = new SequenceBatcher <float, char>(Vocab.Count, (ch, i) => Vocab[i] == ch ? 1 : 0); var matrices = batcher.BatchSamples(text.ToList(), new BatchDimension(BatchDimensionType.BatchSize, _batchSize), progressWriter); TrainingSet = new SequentialDataSet <float>(matrices); TestSet = new SequentialDataSet <float>(new List <Matrix <float> >()); // No testing yet. }