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

Tensorflow:张量基础操作(2)

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

Tensorflow:张量基础操作(2)

Tensorflow版本:V2.8.0

1. 逻辑运算

  Tensorflow中的逻辑运算主要有以下几种:

方法比较逻辑
tf.math.equal a = b a= b a=b
tf.math.greaterl a > b a>b a>b
tf.math.less a < b a
tf.math.greater_equal a ≥ b age b a≥b
tf.math.less_equal a ≤ b ale b a≤b
tf.math.not_equal a ≠ b ane b a​=b
tf.math.is_nan a = n a n a= nan a=nan

具体使用方法举例如下:

2. 数据统计

  Tensorflow中常用的数据统计主要包括:最值、最值位置、均值、范数等。具体使用方法如下:

  • 范数:
  • 最大值、最小值、均值、和:和范数一样,不仅可以求张量全局的的最大、最小、均值等信息,也可以求制定维度上的最大、最小、均值等信息。

    虽然示例中主要是用tf.int32这种类型的张量,但是很多方法只能对tf.float或tf.doule类型的张量进行运算。比如L2范数的求解及tf.math.reduce_std()。
3. 填充

  前述介绍tf.stack()方法时讲到,只有shape完全相同的张量;而tf.concat()方法则要求只能有一个维度上的长度不同。若不符合这两个条件,则不能进行张量的合并。这个时候可以先对长度较短的张量进行扩张,这就需要用到tf.pad()方法。

上例中,张量a具有两个维度:对于axis=0该维度,其对应的扩充方案为tf.pad()中的参数paddings中的第0个([1,2]),即在该维度的左侧填充1个0,右侧填充2个0;对于axis=1该维度,其对应的扩充方案为paddings中的第1个([2,3])。即在该维度的左侧填充2个0,右侧填充3个0;默认填充0,可以通过参数constant_values修改;paddings的长度必须等于张量a的维度数,若在某个维度上不进行扩充,可将其对应的扩充方案设为[0,0]。若paddins的长度不等于对应张量的维度,则报错InvalidArgumentError: The first dimension of paddings must be the rank of inputs 。具体如下:

除了CONSTANT模式,tf.pad()还提供了其他模式:REFLECT、SYMMETRIC。

4. 数据限幅

  数据限幅就是对张量中元素的范围进行最大最小限制。具体如下:

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

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

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