Python 我在使用tensorflow时收到一条TypeError消息
当我使用tensorflow RNN时,我遇到了这个问题。 以下是我的软件包的版本:Python 我在使用tensorflow时收到一条TypeError消息,python,numpy,tensorflow,Python,Numpy,Tensorflow,当我使用tensorflow RNN时,我遇到了这个问题。 以下是我的软件包的版本: Python version: 2.7.12 (default, Nov 19 2016, 06:48:10) [GCC 5.4.0 20160609] Packages versions: numpy 1.12.1 tensorflow 1.1.0 代码是: import tensorflow as tf import numpy as np from tensorflow.contrib impor
Python version: 2.7.12 (default, Nov 19 2016, 06:48:10)
[GCC 5.4.0 20160609]
Packages versions:
numpy 1.12.1
tensorflow 1.1.0
代码是:
import tensorflow as tf
import numpy as np
from tensorflow.contrib import rnn
batches = 28
permutations = np.random.permutation(batches)
cell_class = rnn.BasicLSTMCell
cell = cell_class(200)
zero_state = cell.zero_state(batches, tf.float32)
with tf.Session() as sess:
state = sess.run(zero_state)
state[np.arange(batches)] = state[permutations]
我得到的信息是:
Traceback (most recent call last):
File "test.py", line 15, in <module>
state[np.arange(batches)] = state[permutations]
TypeError: only integer scalar arrays can be converted to a scalar index
回溯(最近一次呼叫最后一次):
文件“test.py”,第15行,在
状态[np.arange(批次)]=状态[排列]
TypeError:只能将整数标量数组转换为标量索引
您能否尝试将零状态
值替换为以下行:
zero_state = cell.zero_state(batches, tf.float32)[0]
这似乎是最新版本Numpy的一个问题。最近的一项更改使将单个元素数组作为标量进行索引成为一个错误。非常感谢!这真的是由最新的Numpy引起的。我通过在
状态
之后添加[0]
来解决此问题:)