tensorflow中的数据类型dtype用法说明

Tensorflow中,主要有以下几种数据类型(dtype),在旧版本中,不用加tf也能使用。

有符号整型

tf.int8:8位整数。

tf.int16:16位整数。

tf.int32:32位整数。

tf.int64:64位整数。

无符号整型

tf.uint8:8位无符号整数。

tf.uint16:16位无符号整数。

浮点型

tf.float16:16位浮点数。

tf.float32:32位浮点数。

tf.float64:64位浮点数。

tf.double:等同于tf.float64。

字符串型

tf.string:字符串。

布尔型

tf.bool:布尔型。

复数型

tf.complex64:64位复数。

tf.complex128:128位复数。

补充:tensorflow及numpy的数据类型对象Dtype总结

1.dtyte与astype

dtype:查看数据类型

astype:转换数据类型

2.tensorlow数据类型对象Dtype

名称 描述
tf.float16 16位半精度浮点
tf.float32 32位单精度浮点
tf.float64 64位双精度浮点
tf.bfloat16 16位截断浮点
tf.complex64 64位单精度复数
tf.complex128 128位双精度复数
tf.int8 8位有符号整数
tf.uint8 8位无符号整数
tf.uint16 16位无符号整数
tf.int16 16位有符号整数
tf.int32 32位有符号整数
tf.int64 64位有符号整数
tf.bool 布尔值
tf.string 字符串
tf.qint8 量化的8位带符号整数
tf.quint8 量化的8位无符号整数
tf.qint16 量化的16位有符号整数
tf.quint16 量化的16位无符号整数
tf.qint32 量化的32位有符号整数

tf.as_dtype()函数将numpy类型和字符串类型名称转换为DType对象。

3.numpy数据类型对象dtype

名称 描述
np.bool_ 布尔型数据类型
np.int_ 默认的整数类型
np.intc 与 C 的 int 类型一样,一般是 int32 或 int 64
np.intp 用于索引的整数类型,一般是 int32 或 int64
np.int8 8位整数即1字节(-128 to 127)
np.int16 16位整数(-32768 to 32767)
np.int32 32位整数(-2147483648 to 2147483647)
np.int64 64位整数(-9223372036854775808 to 9223372036854775807)
np.uint8 8位无符号整数(0 to 255)
np.uint16 16位无符号整数(0 to 65535)
np.uint32 32位无符号整数(0 to 4294967295)
np.uint64 64位无符号整数(0 to 18446744073709551615)
np.float_ float64 简写,即64位双精度浮点数
np.float16 16位半精度浮点数,包括:1 个符号位,5 个指数位,10 个尾数位
np.float32 32位 单精度浮点数,包括:1 个符号位,8 个指数位,23 个尾数位
np.float64 64位双精度浮点数,包括:1 个符号位,11 个指数位,52 个尾数位
np.complex_ complex128 简写,即 128 位复数
np.complex64 复数,表示双 32 位浮点数(实数部分和虚数部分)
np.complex128 复数,表示双 64 位浮点数(实数部分和虚数部分)

以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • tensorflow中的梯度求解及梯度裁剪操作

    1. tensorflow中梯度求解的几种方式 1.1 tf.gradients tf.gradients( ys, xs, grad_ys=None, name='gradients', colocate_gradients_with_ops=False, gate_gradients=False, aggregation_method=None, stop_gradients=None, unconnected_gradients=tf.UnconnectedGradients.NONE )

  • 解决tensorflow 与keras 混用之坑

    在使用tensorflow与keras混用是model.save 是正常的但是在load_model的时候报错了在这里mark 一下 其中错误为:TypeError: tuple indices must be integers, not list 再一一番百度后无结果,上谷歌后找到了类似的问题.但是是一对鸟文不知道什么东西(翻译后发现是俄文).后来谷歌翻译了一下找到了解决方法.故将原始问题文章贴上来警示一下 原训练代码 from tensorflow.python.keras.preproce

  • Python3安装tensorflow及配置过程

    简介 TensorFlow 是一个端到端开源机器学习平台.它拥有一个全面而灵活的生态系统,其中包含各种工具.库和社区资源,可助力研究人员推动先进机器学习技术的发展,并使开发者能够轻松地构建和部署由机器学习提供支持的应用.那它能干什么用呢? 轻松地构建模型:在即刻执行环境中使用 Keras 等直观的高阶 API 轻松地构建和训练机器学习模型,该环境使我们能够快速迭代模型并轻松地调试模型. 随时随地进行可靠的机器学习生产:无论您使用哪种语言,都可以在云端.本地.浏览器中或设备上轻松地训练和部署模型.

  • Tensorflow 如何从checkpoint文件中加载变量名和变量值

    假设你已经经过上千次的迭代,并且得到了以下模型: 则从这些checkpoint文件中加载变量名和变量值代码如下: model_dir = './ckpt-182802' import tensorflow as tf from tensorflow.python import pywrap_tensorflow reader = pywrap_tensorflow.NewCheckpointReader(model_dir) var_to_shape_map = reader.get_varia

  • 使用tensorflow 实现反向传播求导

    看代码吧~ X=tf.constant([-1,-2],dtype=tf.float32) w=tf.Variable([2.,3.]) truth=[3.,3.] Y=w*X # cost=tf.reduce_sum(tf.reduce_sum(Y*truth)/(tf.sqrt(tf.reduce_sum(tf.square(Y)))*tf.sqrt(tf.reduce_sum(tf.square(truth))))) cost=Y[1]*Y optimizer = tf.train.Gra

  • TensorFlow的自动求导原理分析

    原理: TensorFlow使用的求导方法称为自动微分(Automatic Differentiation),它既不是符号求导也不是数值求导,而类似于将两者结合的产物. 最基本的原理就是链式法则,关键思想是在基本操作(op)的水平上应用符号求导,并保持中间结果(grad). 基本操作的符号求导定义在\tensorflow\python\ops\math_grad.py文件中,这个文件中的所有函数都用RegisterGradient装饰器包装了起来,这些函数都接受两个参数op和grad,参数op是

  • tensorflow中的数据类型dtype用法说明

    Tensorflow中,主要有以下几种数据类型(dtype),在旧版本中,不用加tf也能使用. 有符号整型 tf.int8:8位整数. tf.int16:16位整数. tf.int32:32位整数. tf.int64:64位整数. 无符号整型 tf.uint8:8位无符号整数. tf.uint16:16位无符号整数. 浮点型 tf.float16:16位浮点数. tf.float32:32位浮点数. tf.float64:64位浮点数. tf.double:等同于tf.float64. 字符串型

  • Tensorflow中tf.ConfigProto()的用法详解

    参考Tensorflow Machine Leanrning Cookbook tf.ConfigProto()主要的作用是配置tf.Session的运算方式,比如gpu运算或者cpu运算 具体代码如下: import tensorflow as tf session_config = tf.ConfigProto( log_device_placement=True, inter_op_parallelism_threads=0, intra_op_parallelism_threads=0,

  • TensorFlow中tf.batch_matmul()的用法

    TensorFlow中tf.batch_matmul()用法 如果有两个三阶张量,size分别为 a.shape = [100, 3, 4] b.shape = [100, 4, 5] c = tf.batch_matmul(a, b) 则c.shape = [100, 3, 5] //将每一对 3x4 的矩阵与 4x5 的矩阵分别相乘.batch_size不变 100为张量的batch_size.剩下的两个维度为数据的维度. 不过新版的tensorflow已经移除了上面的函数,使用时换为tf.

  • 浅谈tensorflow中几个随机函数的用法

    如下所示: tf.constant(value, dtype=None, shape=None) 创建一个常量tensor,按照给出value来赋值,可以用shape来指定其形状.value可以是一个数,也可以是一个list. 如果是一个数,那么这个常亮中所有值的按该数来赋值. tf.random_normal(shape,mean=0.0,stddev=1.0,dtype=tf.float32) tf.truncated_normal(shape, mean=0.0, stddev=1.0,

  • Tensorflow中k.gradients()和tf.stop_gradient()用法说明

    上周在实验室开荒某个代码,看到中间这么一段,对Tensorflow中的stop_gradient()还不熟悉,特此周末进行重新并总结. y = xx + K.stop_gradient(rounded - xx) 这代码最终调用位置在tensoflow.python.ops.gen_array_ops.stop_gradient(input, name=None),关于这段代码为什么这样写的意义在文末给出. [stop_gradient()意义] 用stop_gradient生成损失函数w.r.

  • tensorflow中next_batch的具体使用

    本文介绍了tensorflow中next_batch的具体使用,分享给大家,具体如下: 此处给出了几种不同的next_batch方法,该文章只是做出代码片段的解释,以备以后查看: def next_batch(self, batch_size, fake_data=False): """Return the next `batch_size` examples from this data set.""" if fake_data: fake_i

  • 对Tensorflow中的变量初始化函数详解

    Tensorflow 提供了7种不同的初始化函数: tf.constant_initializer(value) #将变量初始化为给定的常量,初始化一切所提供的值. 假设在卷积层中,设置偏执项b为0,则写法为: 1. bias_initializer=tf.constant_initializer(0) 2. bias_initializer=tf.zeros_initializer(0) tf.random_normal_initializer(mean,stddev) #功能是将变量初始化为

  • Tensorflow中的图(tf.Graph)和会话(tf.Session)的实现

    Tensorflow编程系统 Tensorflow工具或者说深度学习本身就是一个连贯紧密的系统.一般的系统是一个自治独立的.能实现复杂功能的整体.系统的主要任务是对输入进行处理,以得到想要的输出结果.我们之前见过的很多系统都是线性的,就像汽车生产工厂的流水线一样,输入->系统处理->输出.系统内部由很多单一的基本部件构成,这些单一部件具有特定的功能,且需要稳定的特性:系统设计者通过特殊的连接方式,让这些简单部件进行连接,以使它们之间可以进行数据交流和信息互换,来达到相互配合而完成具体工作的目的

  • Tensorflow中批量读取数据的案列分析及TFRecord文件的打包与读取

    单一数据读取方式: 第一种:slice_input_producer() # 返回值可以直接通过 Session.run([images, labels])查看,且第一个参数必须放在列表中,如[...] [images, labels] = tf.train.slice_input_producer([images, labels], num_epochs=None, shuffle=True) 第二种:string_input_producer() # 需要定义文件读取器,然后通过读取器中的

  • 浅谈TensorFlow中读取图像数据的三种方式

    本文面对三种常常遇到的情况,总结三种读取数据的方式,分别用于处理单张图片.大量图片,和TFRecorder读取方式.并且还补充了功能相近的tf函数. 1.处理单张图片 我们训练完模型之后,常常要用图片测试,有的时候,我们并不需要对很多图像做测试,可能就是几张甚至一张.这种情况下没有必要用队列机制. import tensorflow as tf import matplotlib.pyplot as plt def read_image(file_name): img = tf.read_fil

随机推荐