質問: Y_test.reshape(len(Y_test), 10) とすると、 cannot reshape array of size 2100 into shape (2100,10) と表示されました。 機械学習ができるかたちをたもったまま、Y_train,Y_valid,Y_testをそのまま使って、出力層を1次元の10分類にする方法はありますか。
回答: 恐らく認識がズレています。 Xの値は画像そのものが入ります。[32x32の画像,32x32の画像,...]という具合です。 Yの値はラベル情報が入ります。[0,1,2,3...]という具合です。 > > cannot reshape array of size 2100 into shape (2100,10) > > 上記の通りYは[0,1,2...]というようなものが2100個並んでいるので2100x10にはできません。 > > これをしたいのであればone hot vectorを使う必要があります。 > > > 機械学習ができるかたちをたもったまま、Y_train,Y_valid,Y_testをそのまま使って、出力層を1次元の10分類にする方法はありますか。 > > > もしこれを愚直にやるのであれば「正解**ラベル**(Y)→NN→正解ラベル(Y)」という深層学習を使う価値のない(入り口と出口で素通りするだけの)ネットワークが出来上がります。 ちゃんとやるべきは、「正解**画像**(X)→NN→正解ラベル(Y)」です。