public MnistData() { MnistDataLoader mnistDataLoader = new MnistDataLoader(); this.Train = createLabeledDataSet(mnistDataLoader.TrainData, mnistDataLoader.TrainLabel); this.Eval = createLabeledDataSet(mnistDataLoader.TeachData, mnistDataLoader.TeachLabel); }
public FashionMnistData() { FashionMnistDataLoader fashionMnistDataLoader = new FashionMnistDataLoader(); this.Train = createLabeledDataSet(fashionMnistDataLoader.TrainData, fashionMnistDataLoader.TrainLabel); this.Eval = createLabeledDataSet(fashionMnistDataLoader.TeachData, fashionMnistDataLoader.TeachLabel); }
public CifarData(bool isCifar100 = false, bool isFineLabel = false) { CIFARDataLoader cifarDataLoader = new CIFARDataLoader(isCifar100); //訓練用データ Real[][] x = new Real[cifarDataLoader.TrainData.Length][]; Real[] xLabel = new Real[cifarDataLoader.TrainData.Length]; //Cifar100のときは100クラス、簡素であれば20クラス、Cifar10のときは10クラス分類 ClassCount = isCifar100 ? isFineLabel ? 100 : 20 : 10; for (int i = 0; i < cifarDataLoader.TrainData.Length; i++) { x[i] = new Real[3 * 32 * 32]; for (int j = 0; j < cifarDataLoader.TrainData[i].Length; j++) { x[i][j] = cifarDataLoader.TrainData[i][j] / 255.0; } if (isCifar100 & isFineLabel) { xLabel[i] = cifarDataLoader.TrainFineLabel[i]; } else { xLabel[i] = cifarDataLoader.TrainLabel[i]; } } this.Train = new LabeledDataSet(x, xLabel, new[] { 3, 32, 32 }); //評価用データ Real[][] y = new Real[cifarDataLoader.TestData.Length][]; Real[] yLabel = new Real[cifarDataLoader.TestData.Length]; for (int i = 0; i < cifarDataLoader.TestData.Length; i++) { y[i] = new Real[3 * 32 * 32]; for (int j = 0; j < cifarDataLoader.TestData[i].Length; j++) { y[i][j] = cifarDataLoader.TestData[i][j] / 255.0; } if (isCifar100 & isFineLabel) { yLabel[i] = cifarDataLoader.TestFineLabel[i]; } else { yLabel[i] = cifarDataLoader.TestLabel[i]; } } this.Eval = new LabeledDataSet(y, yLabel, new[] { 3, 32, 32 }); }
public CifarData(bool isCifar100 = false, bool isFineLabel = false) { CIFARDataLoader cifarDataLoader = new CIFARDataLoader(isCifar100); //Cifar100のときは100クラス、簡素であれば20クラス、Cifar10のときは10クラス分類 ClassCount = isCifar100 ? isFineLabel ? 100 : 20 : 10; if (isCifar100 & isFineLabel) { this.Train = createLabeledDataSet(cifarDataLoader.TrainData, cifarDataLoader.TrainFineLabel); this.Eval = createLabeledDataSet(cifarDataLoader.TestData, cifarDataLoader.TestFineLabel); } else { this.Train = createLabeledDataSet(cifarDataLoader.TrainData, cifarDataLoader.TrainLabel); this.Eval = createLabeledDataSet(cifarDataLoader.TestData, cifarDataLoader.TestLabel); } }
public MnistData() { MnistDataLoader mnistDataLoader = new MnistDataLoader(); //訓練用データ Real[][] x = new Real[mnistDataLoader.TrainData.Length][]; Real[] xLabel = new Real[mnistDataLoader.TrainData.Length]; for (int i = 0; i < mnistDataLoader.TrainData.Length; i++) { x[i] = new Real[1 * 28 * 28]; for (int j = 0; j < mnistDataLoader.TrainData[i].Length; j++) { x[i][j] = mnistDataLoader.TrainData[i][j] / 255.0; } xLabel[i] = mnistDataLoader.TrainLabel[i]; } this.Train = new LabeledDataSet(x, xLabel, new[] { 1, 28, 28 }); //評価用データ Real[][] y = new Real[mnistDataLoader.TeachData.Length][]; Real[] yLabel = new Real[mnistDataLoader.TeachData.Length]; for (int i = 0; i < mnistDataLoader.TeachData.Length; i++) { y[i] = new Real[1 * 28 * 28]; for (int j = 0; j < mnistDataLoader.TeachData[i].Length; j++) { y[i][j] = mnistDataLoader.TeachData[i][j] / 255.0; } yLabel[i] = mnistDataLoader.TeachLabel[i]; } this.Eval = new LabeledDataSet(y, yLabel, new[] { 1, 28, 28 }); }