11
私は使用しようとしています:train = optimizer.minimize(loss)
標準オプティマイザはtf.float64
で動作しません。したがって、loss
をtf.float64
からtf.float32
に切り捨てたいと思います。TensorFlow:float32テンソルをfloat32にキャスト
Traceback (most recent call last):
File "q4.py", line 85, in <module>
train = optimizer.minimize(loss)
File "/Library/Python/2.7/site-packages/tensorflow/python/training/optimizer.py", line 190, in minimize
colocate_gradients_with_ops=colocate_gradients_with_ops)
File "/Library/Python/2.7/site-packages/tensorflow/python/training/optimizer.py", line 229, in compute_gradients
self._assert_valid_dtypes([loss])
File "/Library/Python/2.7/site-packages/tensorflow/python/training/optimizer.py", line 354, in _assert_valid_dtypes
dtype, t.name, [v for v in valid_dtypes]))
ValueError: Invalid type tf.float64 for Add_1:0, expected: [tf.float32].
float32からfloat32に変換しますか? –
ええ。一時的な修正として、私はfloat64からfloat32へnumpyの配列を渡しました。これは私のfloat64テンソルが最初に来ていて、それが私の問題を解決しましたが、tf自体で変換する方法がなければなりません –