質問: [data.spectral,data.labels], batch_size=1000=mnist.train.next_batch(100) ... sess.run(train_step, feed_dict={x: batch_xs, y_: batch_ys}) ``` チュートリアルのMNISTのデータセットは mnist.train.images (画像データ) mnist.train.labels (ラベルデータ) となっているので上記のコマンドが可能ですが,他のデータセットに応用したい場合は どのようにすればよいでしょうか? (以下説明が下手ですが具体的に困っている事例です.) "mnist.train"までは画像データもラベルデータも同じで最後の'images'と’labels’で違う データセットとなっているため,上記コードでは,mnist.train.next_batch(100)のコードで 実行可能なのだと思います. 自分の生成したデータは, datax(画像データ) datay(ラベルデータ) なのですが, data.train.x data.train.y のように変換する手法がわかりません.
回答: mnistのデータセットは下記のようなnumpy形式になっていますので、お持ちのデータも 同じように[データ数, 画像幅x画像高さ]と[データ数, one hot vector]として まとめれば実行できると思います。 mnistではデータ数が55000 画像幅x画像高さが784(28x28なので)、 one hot vectorが10(0から9までの10クラス分類なので)となってます。 ``` In [1]: from tensorflow.examples.tutorials.mnist import input_data In [2]: mnist = input_data.read_data_sets('MNIST_data', one_hot=True) Extracting MNIST_data/train-images-idx3-ubyte.gz Extracting MNIST_data/train-labels-idx1-ubyte.gz Extracting MNIST_data/t10k-images-idx3-ubyte.gz Extracting MNIST_data/t10k-labels-idx1-ubyte.gz In [3]: mnist.train.images.shape Out[3]: (55000, 784) In [4]: mnist.train.labels.shape Out[4]: (55000, 10) ```