質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
87.20%
Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

解決済

tensorflowの出力を1次元にする方法がわかりません

chain
chain

総合スコア0

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

1回答

0評価

1クリップ

13閲覧

投稿2018/02/11 14:55

編集2022/01/12 10:58

前提・実現したいこと

tensorflowで出力のベクトルを1次元にするとエラーになります。たとえばplaceholderで[100,1]を指定したところに[100,]のものは代入できないよっていう感じで言われます。

でも実際は[100,]も[100,1]も100x1の行列なのですが・・・
どうすればよいでしょうか。

発生している問題・エラーメッセージ

ValueError: Cannot feed value of shape (100,) for Tensor 'Placeholder_11:0', which has shape '(?, 1)'

該当のソースコード

python

from tensorflow.examples.tutorials.mnist import input_data mnist=input_data.read_data_sets("MNIST_data/",one_hot=True) import tensorflow as tf x=tf.placeholder(tf.float32,[None,784]) W=tf.Variable(tf.zeros([784,1])) b=tf.Variable(tf.zeros([1])) y=tf.nn.softmax(tf.matmul(x,W)+b) y_=tf.placeholder(tf.float32,[None,1]) cross_entropy=tf.reduce_mean(-tf.reduce_sum(y_*tf.log(y),reduction_indices=[1])) train_step=tf.train.GradientDescentOptimizer(0.5).minimize(cross_entropy) init=tf.global_variables_initializer() sess=tf.Session() sess.run(init) for i in range(1000): batch_xs,batch_ys=mnist.train.next_batch(100) batch_ys=batch_ys[:,0] sess.run(train_step,feed_dict={x:batch_xs,y_:batch_ys})

試したこと

ここに問題に対して試したことを記載してください。

補足情報(FW/ツールのバージョンなど)

ここにより詳細な情報を記載してください。

良い質問の評価を上げる

以下のような質問は評価を上げましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

気になる質問をクリップする

クリップした質問は、後からいつでもマイページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

  • プログラミングに関係のない質問
  • やってほしいことだけを記載した丸投げの質問
  • 問題・課題が含まれていない質問
  • 意図的に内容が抹消された質問
  • 過去に投稿した質問と同じ内容の質問
  • 広告と受け取られるような投稿

評価を下げると、トップページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

wakame
wakame

2018/02/11 15:28

tensorflowのmnist_tutorialそのまま試してみてはどうでしょうか。https://qiita\.com/uramonk/items/c207c948ccb6cd0a1346
chain
chain

2018/02/11 15:31

そのまま試すのは動いたのですが、今後作ろうと思っているプログラムの出力が1次元なので1次元出力を試したところエラーが出たんです。MNISTのチュートリアルを行うのが目的ではないので・・・
wakame
wakame

2018/02/11 15:38

その情報を質問文に追記しないと回答者が私と似たような回答か質問をするかなと思いました。あとfor文以下のソースコードのインデントがおかしいので修正してもらえますか。
chain
chain

2018/02/11 15:53

指摘ありがとうございます。修正しました。

まだ回答がついていません

会員登録して回答してみよう

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
87.20%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問

同じタグがついた質問を見る

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。