Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 2.7 tensorflow中不理解数据类型_Python 2.7_Tensorflow_Neural Network_Deeplearning4j - Fatal编程技术网

Python 2.7 tensorflow中不理解数据类型

Python 2.7 tensorflow中不理解数据类型,python-2.7,tensorflow,neural-network,deeplearning4j,Python 2.7,Tensorflow,Neural Network,Deeplearning4j,我试图使用tf.nn.moments()获得均值和方差,如上所示。但是,我遇到了以下错误: mean , variance = tf.nn.moments(X_train, axes = 1, keep_dims = True) --------------------------------------------------------------------------- TypeError回溯(最近一次调用上次) 在() 33 Y_系列=Y_系列。重塑(1355) 34 X_平均值=t

我试图使用
tf.nn.moments()
获得均值和方差,如上所示。但是,我遇到了以下错误:

mean , variance = tf.nn.moments(X_train, axes = 1, keep_dims = True)
---------------------------------------------------------------------------
TypeError回溯(最近一次调用上次)
在()
33 Y_系列=Y_系列。重塑(1355)
34 X_平均值=tf.减少平均值(X_列,轴=1,保持为真)
--->35平均值,方差=tf.nn.矩(X列,轴=1,保持直径=True)
36 X_序列=tf.除(tf.减(X_序列,平均值),tf.平方比(方差))
37 35; Y#u列=Y#u列/(Y#u列.max(轴=1,keepdims=True))
/Users/abhinandanchiney/anaconda2/lib/python2.7/site-packages/tensorflow/python/ops/nn_impl.pyc瞬间
664#充分的统计数据。作为一种解决方法,我们只需执行这些操作
665#在32位浮点上,然后将均值和方差转换回fp16
-->666 y=math_ops.cast(x,dtypes.float32)如果x.dtype==dtypes.float16其他x
667#计算真实平均值,同时保持DIM以进行适当广播。
668平均值=数学运算减少平均值(y轴,keepdims=True,name=“平均值”)
TypeError:无法理解数据类型
请告诉我哪里出错。

需要的是张量,而不是numpy数组:

Args:

  • x
    :张量
试试这个:

x=tf.将_转换为_张量(x_列)
平均值,方差=tf.nn.矩(x,轴=1,保持直径=True)

发布
X_train
@Maxim X_train=np.array([[…],…]…]…[…])的定义,它是一个30x355 numpy数组。它确实有助于消除关于错误数据的错误,但现在抛出了一个新错误,这是因为我无法将“X”传递给函数<代码>-->96个参数=模型(X_列,Y_列,X_测试,Y_测试)中的模型(X_列,Y_列,X_测试,Y_测试,学习率,数字时代,打印成本)--->73,小批量成本=sess.run([optimizer,cost],feed_dict={X:X_列,Y:Y_列})类型错误:feed的值不能是tf.Tensor对象。可接受的提要值包括Python标量、字符串、列表、numpy ndarray或TensorHandles。@Abhinandan这似乎是另一个问题。查看或随意提出新问题。
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-43-fc383f99b15b> in <module>()
     33 Y_train = Y_train.reshape(1,355)
     34 X_mean = tf.reduce_mean(X_train, axis = 1, keepdims = True)
---> 35 mean , variance = tf.nn.moments(X_train, axes = 1, keep_dims = True)
     36 X_train = tf.divide(tf.subtract(X_train,mean),tf.sqrt(variance))
     37 #Y_train = Y_train/(Y_train.max(axis = 1, keepdims = True))

/Users/abhinandanchiney/anaconda2/lib/python2.7/site-      packages/tensorflow/python/ops/nn_impl.pyc in moments(x, axes, shift, name, keep_dims)
    664     # sufficient statistics. As a workaround we simply perform the operations
    665     # on 32-bit floats before converting the mean and variance back to fp16
--> 666     y = math_ops.cast(x, dtypes.float32) if x.dtype == dtypes.float16 else x
    667     # Compute true mean while keeping the dims for proper broadcasting.
    668     mean = math_ops.reduce_mean(y, axes, keepdims=True, name="mean")

 TypeError: data type not understood