栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

tensorflow2.0 张量的操作

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

tensorflow2.0 张量的操作

4.1创建张量

正态分布(Normal Distribution)和均匀分布(Uniform Distribution).

创建正态分布张量语句

tf.random.normal(shape,mean=0.0,stddev=1.0)

创建均匀分布张量语句,可以创建来自[minval,maxval]取件的均匀分布的张量。

tf.random.normal(shape,minval=0,maxval=None,dtype=tf.float32)

创建矩阵

x=tf.random.normal([2,4])
tf.truncated.normal()和tf.random.normal()的区别

tf.truncated.normal()的选值在(μ-2σ,μ+2σ)之外。保证生成值都在均值附近。

tf.random.normal()的选值在(μ-2σ,μ+2σ)之内,服从正态分布

改变张量维度

tensorflow中可以通过ndim, (N dimension),和shape成员的属性来获取张量的维度数和形状:

x.ndim,x.shape

通过tf.reshape(x,new_shape)改变张量的试图任意的改变。

4.2数值精度

tf.constant(123,dtype=tf.int16)

tf.constant(123,dtype=tf.int32)

4.2.2类型转换

tf.cast()函数转换

4.3待优化张量

tf.Variable(a)函数可以将普通张量转化成待优化张量,

4.4创建张量 4.4.1从数组,列表对象创建

tf.convert_to_tensor()可以创建新Tensor.

实际上,tf.constant()和tf.convert_to_tensor()都能够自动把Numpy数组或者Python列表类型数据类型转换成Tensor类型。

4.4.3创建自定义数值张量

tf.fill([],-1) 创建全是-1的都标量

tf.fill([2,2],99)创建2行2列,元素全为99的矩阵

4.7.1改变视图

4.7.2增加删除张量的维度

(1)增加维度

tf.expand_dims(x,axis)可在指定的axis轴前出入一个新的维度

x=tf.expand_dims(x,axis=2)

(2)删除维度

tf.squeeze(x,axis=0)

4.7.3交换维度

利用perm=[0,3,1,2]的索引交换维度。

tf.transpose(x,perm=[0,3,1,2])

4.7.4复制数据

tf.tile(x,multiples),multiples指定每个维度上面的复制倍数

tf.tile(n=b,multiples=[2,1])可以在axis=0的维度复制1次,axis=1的维度不复制。

4.8BoradCasting 4.9数学运算 4.9.1加减乘除运算

整除:a//b

取余:a%b

4.9.2乘方运算

平方:tf.square(x)

平方根:tf.sqrt(x)

4.9.3指数和对数的运算

a的x平方:tf.pow(a,x)

: tf.exp(x)

: tf.math.log(x)

: tf.math.log(x)/tf.math.log(a)

4.9.4矩阵相乘运算

a=tf.random.normal([4,3,28,32])

b=tf.random.normal([4,3,32,2])

批量形式的矩阵相乘:a@b

先自动扩展,再矩阵相乘

a=tf.random.normal([4,28,32])

b=tf.random.normal([32,16])

tf.matmul(a,b)

4.10前向传播实战

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/293564.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号