阅读(15.4k) 书签 (0)

TensorFlow将给定值转换为张量

2020-07-23 16:55 更新

tf.convert_to_tensor

convert_to_tensor ( 
    value , 
    dtype = None , 
    name = None , 
    preferred_dtype = None
 )

定义在:tensorflow/python/framework/ops.py.

见指南:构建图>实用功能,生成常量,序列和随机值,控制流,高阶函数,图像,输入和读取器,数学,神经网络,稀疏张量,字符串操作,张量处理操作,张量转换,变量,包装python函数

将给定值转换为张量.

此函数将各种类型的 Python 对象转换为 Tensor 对象.它接受 Tensor 对象,numpy 数组,Python 列表和 Python 标量.例如:

import numpy as np

def my_func(arg):
  arg = tf.convert_to_tensor(arg, dtype=tf.float32)
  return tf.matmul(arg, arg) + arg

# The following calls are equivalent.
value_1 = my_func(tf.constant([[1.0, 2.0], [3.0, 4.0]]))
value_2 = my_func([[1.0, 2.0], [3.0, 4.0]])
value_3 = my_func(np.array([[1.0, 2.0], [3.0, 4.0]], dtype=np.float32))

当在 Python 中编写新的操作 (如上面示例中的 my_func) 时,此函数很有用.所有标准的 Python op 构造函数都将此函数应用于它们的每个张量值输入,这使得 ops 能够接受 numpy 数组、Python 列表和标量对象.

ARGS:

  • value:其类型具有已注册的张量转换函数的对象.
  • dtype:返回的张量的可选元素类型.如果缺少该类型, 则将从值的类型中推断出.
  • name:创建新的张量时要使用的可选名称.
  • preferred_dtype:返回张量的可选元素类型, 当 dtype 为 None 时使用.在某些情况下,调用方在转换为张量时可能没有 dtype,因此 preferred_dtype 可以作为软首选项使用.如果转换为 preferred_dtype 是不可行的,则此参数无效.

返回:

返回基于值的输出.

注意:

  • TypeError:如果没有为值注册转换函数.
  • RuntimeError:如果注册的转换函数返回无效值.