深度学习中的数据维度表示

1.标量(0D 张量)

    只含有一个数字的张量称为标量(或 0 维张量、0D 张量),标量有 0 个坐标轴,即 ndim == 0。张量轴的个数又称为它的秩。

>>>import numpy as np
>>>x = np.array(12)
>>>x
array(12)
>>>x.ndim
0

2.矢量(1D 张量)

    一个数组称作一个矢量,或 1D 张量。一个矢量只含有一个坐标轴:

>>>x = np.array([12, 3, 6, 14])
>>>x
array([12, 3, 6, 14])
>>>x.ndim
1

    这里我们的矢量含有 5 个元素,所以又被叫作一个 5 维矢量。千万不要将 5D 矢量和 5D 张量的概念弄混,一个 5D 的矢量只含有一个坐标轴,沿着坐标轴具有 5 个维度,而一个 5D 张量含有 5 个坐标轴,每个坐标轴均可含有任意维度。维度的概念既可以指某一具体坐标轴下元素的个数,又可以指张量中坐标轴的个数。

3.矩阵(2D 张量)

    一个阵列的矢量称作一个矩阵,或者 2D 张量。一个矩阵含有两条坐标轴(常称作‘行’和‘列’)。

>>>x = np.array([[5, 78, 2, 34, 0],
                 [6, 79, 3, 35, 1],
                 [7, 80, 4, 36, 2]]) 
>>>x.ndim
2

    第一个坐标轴下的元素称作‘行’,第二个坐标轴下的元素称作‘列’。如上例中,[5, 78, 2, 34, 0] 是 x 的第一行,而[5, 6, 7] 是第一列。

4.3D 及更高维度的张量

    如果你将多个矩阵组合在一起,你将得到一个 3D 张量,在视觉上呈现一个数字立方:

>>>x = np.array([[[5, 78, 2, 34, 0],
                  [6, 79, 3, 35, 1],
                  [7, 80, 4, 36, 2]],
                 [[5, 78, 2, 34, 0],
                  [6, 79, 3, 35, 1],
                  [7, 80, 4, 36, 2]],
                 [[5, 78, 2, 34, 0],
                  [6, 79, 3, 35, 1],
                  [7, 80, 4, 36, 2]]])
>>>x.ndim
3                 

    将 3D 张量组合在一起,可以得到 4D 张量。以此类推。在深度学习中常用到 0D 至 4D 张量,而当你处理视频数据时,你可能会用到 5D 张量。

  • 8
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值