吴裕雄--天生自然TensorFlow2教程:Tensor数据类型
list: [1,1.2,'hello'] ,存储图片占用内存非常大
np.array,存成一个静态数组,但是numpy在深度学习之前就出现了,所以不适合深度学习
tf.Tensor,为了弥补numpy的缺点,更多的是为了深度学习而生
tensor数据存储类型
scalar:标量,1.1
vector:向量,[1.1],[1.1,2.2,...]
matrix: 矩阵,[[1.1,2.2],[3.3,4.4]]
tensor:rank>2
数据类型:
Int, float, double
bool
string
定义tensor
tf.constant(1) # 定义常量,普通的tensor
tf.constant(1.) # 定义常量,普通的tensor
tf.constant([True, False]) # 定义常量,普通的tensor
tf.constant('hello nick')
属性
with tf.device('cpu'):
a = tf.constant([1])
with tf.device('gpu'):
b = tf.constant([1])
a.device # 设备属性
a.gpu() # cpu转gpu
a.numpy() # 获取numpy数据类型
a.shape # 获取a的属性
a.ndim # 获取维度
tf.rank(a) # 获取维度
a.name # 1.+历史遗留问题
数据类型判断
instance(a,tf.Tensor) # 判断是否为tensor
tf.is_tensor(a) # 判断是否为tensor
a.dtype,b.dtype,c.dtype # 判断数据类型
数据类型转换
a = np.arange(5)
aa = tf.convert_to_tensor(a,dtype=tf.int32) # numpy转tensor tf.cast(aa,dtype=tf.float32) # tensor之间数据类型转换
# int --》 bool
b = tf.constant([0,1])
tf.cast(b,dtype=tf.bool) # int --》bool # tf.Variable
a = tf.range(5)
b = tf.Variable(a) # tensor转为Variable后具有求导的特性,即自动记录a的梯度相关信息
b.name # Variable:0 b = tf.Variable(a, name='input_data')
b.name # input_data:0
b.trainable # True isinstance(b,tf.Tensor) # False
isinstance(b,tf.Variable) # True
tf.is_tensor(b) # True # 推荐使用
tensor转numpy
a= tf.range(5)
a.numpy() # a必须是scalar
a = tf.ones([])
a.numpy()
int(a)
float(a)
吴裕雄--天生自然TensorFlow2教程:Tensor数据类型的更多相关文章
- 吴裕雄--天生自然TensorFlow2教程:创建Tensor
import numpy as np import tensorflow as tf tf.convert_to_tensor(np.ones([2, 3])) tf.convert_to_tenso ...
- 吴裕雄--天生自然TensorFlow2教程:测试(张量)- 实战
import tensorflow as tf from tensorflow import keras from tensorflow.keras import datasets import os ...
- 吴裕雄--天生自然TensorFlow2教程:合并与分割
import tensorflow as tf # 6个班级的学生分数情况 a = tf.ones([4, 35, 8]) b = tf.ones([2, 35, 8]) c = tf.concat( ...
- 吴裕雄--天生自然TensorFlow2教程:手写数字问题实战
import tensorflow as tf from tensorflow import keras from keras import Sequential,datasets, layers, ...
- 吴裕雄--天生自然TensorFlow2教程:函数优化实战
import numpy as np import matplotlib.pyplot as plt from mpl_toolkits.mplot3d import Axes3D def himme ...
- 吴裕雄--天生自然TensorFlow2教程:反向传播算法
- 吴裕雄--天生自然TensorFlow2教程:链式法则
import tensorflow as tf x = tf.constant(1.) w1 = tf.constant(2.) b1 = tf.constant(1.) w2 = tf.consta ...
- 吴裕雄--天生自然TensorFlow2教程:多输出感知机及其梯度
import tensorflow as tf x = tf.random.normal([2, 4]) w = tf.random.normal([4, 3]) b = tf.zeros([3]) ...
- 吴裕雄--天生自然TensorFlow2教程:单输出感知机及其梯度
import tensorflow as tf x = tf.random.normal([1, 3]) w = tf.ones([3, 1]) b = tf.ones([1]) y = tf.con ...
随机推荐
- 一百零五、SAP中ALV事件之十七,让ALV表格修改后保存到数据库
一.我们来到代码界面设置保存按钮的代码 二.i_grid_settings这个属性用来编辑单元格之后,返回给程序编辑后的值 三.我们双击点 'REUSE_ALV_GRID_DISPLAY',来到定义 ...
- 干货分享:反思Essay写作指南
在众多Essay写作类型中,有一种较为难写的一种类型——反思写作(Reflective Writing),提前熟悉这类写作风格的要求,并且养成反思性写作的习惯,非常有必要!本文小编就给大家说说什么是反 ...
- java排序,效率高的是哪种排序方法
和所有其他语言是一样的.应该还是快速排序效率最高. public static void bubbleSort(int a[]) {int len = a.length;for (int i = 0; ...
- Flink 历史服务与连接器
History Server(历史服务) Flink提供了记录历史任务运行情况的服务,可用于在关闭Flink群集后依然能够查询已完成作业的相关信息. 配置: # 任务执行信息存储在hdfs目录 job ...
- 九、React中的组件、父子组件、React props父组件给子组件传值、子组件给父组件传值、父组件中通过refs获取子组件属性和方法
一.概述 React中的组件: 解决html 标签构建应用的不足. 使用组件的好处:把公共的功能单独抽离成一个文件作为一个组件,哪里里使用哪里引入. [父子组件]:组件的相互调用中,我们把调用者称为父 ...
- phpstudy后门复现(9.29第十五天)
本人转自:https://www.cnblogs.com/yuanshu/p/11613796.html 一.漏洞位置 程序自带的PHP的php_xmlrpc.dll模块中有隐藏后门,受影响的版本有p ...
- Ubuntu18安装LAMP环境详细步骤
Ubuntu18安装Lamp环境 1.su root 切换root账号(root账户权限高不用总输入sudo) 更新源 阿里源网址:https://opsx.alibaba.com/mirror 更 ...
- UVA - 557 Burger(汉堡)(dp+概率)
题意:有n个牛肉堡和n个鸡肉堡给2n个孩子吃.每个孩子在吃之前都要抛硬币,正面吃牛肉堡,反面吃鸡肉堡.如果剩下的所有汉堡都一样,则不用抛硬币.求最后两个孩子吃到相同汉堡的概率. 分析: 1.先求最后两 ...
- 读书笔记 - js高级程序设计 - 第八章 BOM
BOM的核心对象是window 它表示浏览器的一个实例,在浏览器中,window对象有双重角色,它既是通过js访问浏览器窗口的一个接口,又是ECMAScript规定的Global对象,这意味着在网 ...
- NRF52811-QCAA 蓝牙5.1芯片资料解析
为了满足市场需求Nordic 宣布推出nRF52811系统级芯片(SoC),这个全功能无线连接解决方案支持蓝牙5.1 测向(Direction Finding)功能和一系列流行低功耗无线协议,用于智能 ...