makeXY

MNIST.makeXY(data_cnt, data_image, data_label)

ソース

makeXY(data_cnt, data_image, data_label) {
    // [0,255] -> [0,1) に変換
    var X = new ArrayView(data_cnt, this.imgH, this.imgW, new Float32Array(data_image).map(a =>(a == 0 ? 1/512.0 : a / 256.0)));

    var Y = new ArrayView(data_cnt, 10);

    // すべてのトレーニングデータに対し
    for (var i = 0; i < data_cnt; i++) {
        // 正解のラベル
        var n = data_label[i];

        // one-hotベクトルの値をセットする。
        Y.dt[i * 10 + n] = 1;
    }

    return { "X": X, "Y": Y };
}