深度学习基础之多维数据和tensor

实验背景

在tensorflow中,模型输入和卷积核一般都是用4-D的tensor来表示,对于构建模型过程中,也都是在多维(超过3维)的tensor或者numpy 数组(权重值weights和偏差bias)进行相应的操作。

对于1维,2维,3维的数据,都可以通过可视化的方式进行直观的理解,有对应现实参照物。超过3维,数据表示和操作,就比较不好理解。诺兰的电影【星际穿越】的第五维空间,脑洞大开。『WedO实验君』就和大家一起看看多维数据的表示。

实验器材

● python

● tensorflow

● numpy

实验内容

表示

我们先来看看1维,2维,3维的数据表示

从中可以看出,多维数据的表示的规律为2维数据的每个单元为1维数据,3维数据的每个单元为2维数据。 从shape来看,最后一个为1维数据的单元个数, 倒数第二个为2维中的1维单元的个数,依此类推。

依照这个规律,4维数据为多个三维数据的集合,5维数据为多个4维数据的集合。

数据访问

tensorflow 的concat 连接理解

concat的含义就是合并,tf.concat([v1,v2] , axis=3)合并 axis表示在哪一个维度进行合并拼接。

tf.concat([v1,v2],axis=3) # 1维上合并,合并前shape为(2,2,2,3) 合并后为(2,2,2,6)

某一维度单元数据访问,还是参照【从shape来看,最后一个为1维数据的单元个数, 倒数第二个为2维中的1维单元的个数】这个来理解

tf.concat([v1,v2],axis=2) # 2维上合并,合并前shape为(2,2,2,3) 合并后为(2,2,4,3)

实验结语

本实验『WedO实验君』查看了tensorflow和numpy中的多维数据的构造和简要操作,希望对大家有帮助。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180729G05X3400?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券