2 创建张量--神经网络与深度学习——TensorFlow2.0实战

作者:Irain
QQ:2573396010
微信:18802080892

1 知识点内容

1.1 张量(tensor)

多维数组(列表) 阶:张量的维数
可以高速运行于GPU和TPU之上;支持CPU.嵌入式、单机多卡和多机多卡等多种计算环境;高速的实现神经网络和深度学习中的复杂算法。

1.2 Python中的列表list

元素可以使用不同的数据类型,可以嵌套在内存中不连续存放,是一个动态的指针数组读写效低,占用内存空间大不适合做数值计算。

1.3 NumPy中的数组对象ndarray

元素数据类型相同;每个元素在内存中占用的空间相同,存储在一个连续的内存区域中;存储空间小,读取和写入速度快;在CPU中运算,不能够主动检测、利用GPU进行运算。
TensorFlow的基本运算、参数命名、运算规则、API的设计等与NumPy非常相近。

2 创建Tensor对象

张量由Tensor类实现,每个张量都是一个Tensor对象。

2.1 创建张量

tf. constant(value, dtype, shape)
value:数字/Python列表/NumPy数组
dtype:元素的数据类型
shape:张量的形状.

在这里插入图片描述

2.1.1 Tensor的numpy方法

在这里插入图片描述

2.1.2 参数为NumPy数组

在这里插入图片描述
numpy创建浮点数数组时,默认的浮点型是64位浮点数。当使用NumPy数组创建张量时,TensorFlow会接受数组元素的数据类型,使用64位浮点数保存数据。

2.2 改变张量中元素的数据类型

在这里插入图片描述

2.2.1 参数为布尔型

在这里插入图片描述

2.2.2 参数为字符串

在这里插入图片描述

2.3 tf.convert_ to_ tensor()函数

tf.convert_ to_ tensor( 数组/列表/数字/布尔型/字符串)
在这里插入图片描述

2.4 is_ tensor()函数

是否为张量
在这里插入图片描述

2.5 isinstance()函数

判断类型
在这里插入图片描述

3 特殊张量

类似于NumPy, TensorFlow中,也可以直接生成-些特殊的张量:全0张量、全1张量、所有元素值都相同的张量、元素取值符合某种随机分布的张量。

3.1 创建全0张量和全1张量

tf.zeros( shape, dtype = tf.float32 )(默认类型)
tf.ones( shape, dtype= tf.float32 )(默认类型)
在这里插入图片描述

3.2 创建元素值都相同的张量-tf.fill(dims, value)

tf.fill(dims, value)
dims:形状
value:值
在这里插入图片描述

3.3 创建元素值都相同的张量-tf.constant()函数

在这里插入图片描述

3.4 创建随机数张量一正态分布

tf.random.normal( shape, mean, stddev, dtype )
meam:均值
stddev:标准差
例:创建- -个2x 2的张量,其元素服从标准正态分布的张量
在这里插入图片描述
例:创建一个三维张量,其元素服从正态分布
在这里插入图片描述

3.5 创建随机数张量一截断 正态分布

tf.random.truncated_normal( shape, mean, stddev, dtype )
■返回一个截断的正态分布
■截断的标准是2倍的标准差
例如,当均值为0,标准差为1时,
使用tf.truncated_ normal, 不可能出现区间[-2,2]以外的点
使f用f.random_ normal(), 可能出现[-2,2]以外的点
在这里插入图片描述

3.6 设置随机种子

tf.random.set_ seed()函数:设置随机种子。与tf.random.normal()函数结合使用。
在这里插入图片描述

3.7 创建均匀分布张量

tf.random.uniform(shape,minval, maxval, dtype)
minval:最小值
maxval:最大值
前闭后开:不包括maxval最大值。
在这里插入图片描述

3.8 随机打乱

tf.random.shuffle()函数:随机打乱Tensor序号。输入(list、ndarray),输出Tensor。
在这里插入图片描述

3.9 创建序列

tf.range(start, limit, delta= 1,dtype)
start:起始值
limit:结束值(不包括)
delta:步长(默认为1)
可以省略start、delta。
在这里插入图片描述

4 小结

在这里插入图片描述

4.1 Tensor对象的属性

ndim:维度
shape:形状
dtype:类型
在这里插入图片描述

4.2 Tensor对象的shape()、size()、 rank()方 法

tf.shape(): 形状
tf.size():元素总数
tf.rank() :张量维度

4.3 张量和NumPy数组

●在TensorFlow中,所有的运算都是在张量之间进行的
●NumPy数组仅仅是作为输入和输出来使用
●张量可以运行于CPU,也可以运行于GPU和TPU
●NumPy数组只能够在CPU中运行

发布:2020年6月15日

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值