服务器之家

服务器之家 > 正文

TensorFlow人工智能学习按索引取数据及维度变换详解

时间:2022-02-27 14:39     来源/作者:Swayzzu

一、按索引取数据

①tf.gather()

输入参数:数据、维度、索引

例:设数据是[4,35,8],4个班级,每个班级35个学生,每个学生8门课成绩。

则下面In [49]的意思是,全部四个班级,每个班级取编号为2,3,7,9,16的学生,每个学生取所有8门课的成绩。

TensorFlow人工智能学习按索引取数据及维度变换详解

TensorFlow人工智能学习按索引取数据及维度变换详解

②tf.gather_nd

前面输入数据,后面填取的联合维度。只把最内层的括号当做联合索引的坐标。​​​​​​​

TensorFlow人工智能学习按索引取数据及维度变换详解

下面的例子,也是一样,最内层的中括号,是一个联合索引。比如in56,第0个班级,第0号学生成绩,以及第1号班级,第1号学生的成绩。也就是每一个最内层中括号,都是一个样本,而里面的每一个数据,都相当于一个特征。

TensorFlow人工智能学习按索引取数据及维度变换详解

③tf.boolean_mask

按布尔值索引,不指定维度相当于是第一个维度,指定axis就会根据axis去索引。给索引矩阵也可以。

TensorFlow人工智能学习按索引取数据及维度变换详解

 

二、维度变换

①tf.reshape()

输入参数:数据,希望变成的维度

TensorFlow人工智能学习按索引取数据及维度变换详解

②tf.transpose()

转置,perm数字指的是数字所在位置上放哪一个原来的维度。

TensorFlow人工智能学习按索引取数据及维度变换详解

pytorch中图像存储维度是[b,c,h,w],tf中是[b,h,w,c]

③tf.expand_dims()

增加维度,第一个填的是数据,第二个填的是维度,是指你希望把添加的维度作为第几维。

TensorFlow人工智能学习按索引取数据及维度变换详解

④tf.squeeze()

可以去掉为1的维度。不指定维度的话就去掉所有的为1的维度。

TensorFlow人工智能学习按索引取数据及维度变换详解

以上就是TensorFlow人工智能学习按索引取数据及维度变换详解的详细内容,更多关于TensorFlow索引维度变换的资料请关注服务器之家其它相关文章!

原文链接:https://blog.csdn.net/Swayzzu/article/details/121212492

相关文章

热门资讯

2022年最旺的微信头像大全 微信头像2022年最新版图片
2022年最旺的微信头像大全 微信头像2022年最新版图片 2022-01-10
蜘蛛侠3英雄无归3正片免费播放 蜘蛛侠3在线观看免费高清完整
蜘蛛侠3英雄无归3正片免费播放 蜘蛛侠3在线观看免费高清完整 2021-08-24
背刺什么意思 网络词语背刺是什么梗
背刺什么意思 网络词语背刺是什么梗 2020-05-22
yue是什么意思 网络流行语yue了是什么梗
yue是什么意思 网络流行语yue了是什么梗 2020-10-11
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全 2019-12-26
返回顶部