Tensorlow 中文API: 常量(constants) - 5. tf.fill

Tensors常量值函数
  • tf.zeros(shape, dtype=tf.float32, name=None)
  • tf.zeros_like(tensor, dtype=None, name=None)
  • tf.ones(shape, dtype=tf.float32, name=None)
  • tf.ones_like(tensor, dtype=None, name=None)
  • tf.fill(dims, value, name=None)
  • tf.constant(value, dtype=None, shape=None, name='Const')

tf.fill(dims, value, name=None)

创建一个维度为dims,值为value的tensor对象.该操作会创建一个维度为dims的tensor对象,并将其值设置为value,该tensor对象中的值类型和value一致

    • 当value为0时,该方法等同于tf.zeros()
    • 当value为1时,该方法等同于tf.ones()

参数:
  • dims: 类型为int32的tensor对象,用于表示输出的维度(1-D, n-D),通常为一个int32数组,如:[1], [2,3]等
  • value: 常量值(字符串,数字等),该参数用于设置到最终返回的tensor对象值中
  • name: 当前操作别名(可选)
返回:

tensor对象,类型和value一致


测试用例如下:

#coding=utf8
import tensorflow as tf
import basic.util.prints as p

sess = tf.InteractiveSession()

dim = [2,3]
data = tf.fill(dim, 5)
p.printValue("tf.fill(dim, value)", data)
data = tf.fill(dim, 5.0)
p.printValue("tf.fill(dim, value)", data)
data = tf.fill(dim, "5.0")
p.printValue("tf.fill(dim, value)", data)

sess.close()

运行返回如下:

# tf.fill(dim, value) : Tensor("Fill:0", shape=(2, 3), dtype=int32) - 
[[5 5 5]
 [5 5 5]]
# tf.fill(dim, value) : Tensor("Fill_1:0", shape=(2, 3), dtype=float32) - 
[[ 5.  5.  5.]
 [ 5.  5.  5.]]
# tf.fill(dim, value) : Tensor("Fill_2:0", shape=(2, 3), dtype=string) - 
[['5.0' '5.0' '5.0']
 ['5.0' '5.0' '5.0']]
编辑于 2017-07-04

文章被以下专栏收录