美文网首页
用reshape函数对高维数组降纬

用reshape函数对高维数组降纬

作者: 胜负55开 | 来源:发表于2019-10-28 16:27 被阅读0次

需求:有时进行矢量化编程时,多个大型数组相乘后经常会出现"单位二维数组"变成了"列数组或行数组",即单位二维数组变成了:(1,n)或(n,1)的尺寸。此时这个1尺寸其实并没有用,我们可以用reshape直接把这一维度降掉,即将高维数组降掉一维。

例子:

import numpy as np 

# 把单位二维数组中的1降掉!
a1 = np.zeros( (2,2,1,3) ) + 1   
a2 = np.zeros( (2,2,3,1) ) + 1

b1 = a1.reshape(2,2,3)
b2 = a2.reshape(2,2,3)

print( b1 == b2 )

# 结果:即使a1和a2尺寸不同,降维为得到的b1和b2是完全相同的!
[[[ True  True  True]
  [ True  True  True]]

 [[ True  True  True]
  [ True  True  True]]]

numpy与cupy都有这个reshape函数,这个函数的功能非常强大!用了才发现它可以几乎非常自由的按需调整我的高维数组尺寸,以方便我进行必要的高维数组的矩阵相乘。因此:"矢量化编程"中会"经常用到"这个np.reshape或cp.reshape函数!

相关文章

  • 用reshape函数对高维数组降纬

    需求:有时进行矢量化编程时,多个大型数组相乘后经常会出现"单位二维数组"变成了"列数组或行数组",即单位二维数组变...

  • swift 高阶函数

    1. flatMap 降纬 组成一个新的一维数组 tip:可以将二维数组转化为一维数组,如果有空值则不会降纬 2....

  • numpy维度变换

    改变数组的形状 reshape() 多维数组降为一维 reval,flatten

  • C语言数组的升维与降维之说

    C语言数组的升维与降维之说 C语言数组的升维 C语言数组的降维

  • php 操作数组常用的一下函数

    1.二维数组转一维数组 示例 (1).可以用foreach循环处理数组 (2).用php函数处理

  • tensorflow - 学习笔记

    基础 预处理 均方误差函数 MSE 全连接层 Dense 升维 降维 数组合并 矩阵转置 范数 最大 最小 平均 ...

  • 3.4 数组操作

    3.4.1 变形 关于数组的变形除了3.2节介绍的reshape()函数,NumPy还有其他操作变形的函数和方法,...

  • Autoencoder降维可视化

    关于高维度数据降维,以前都是使用PCA线性降维或者直接使用pandas的corr函数来找到相关性,但是这种方式...

  • Day08

    二维数组 二维数组格式 二维数组初始化 二维数组的遍历 二维数组内存存储细节 二维数组与函数注意点: 主要是看函数...

  • matlab将矩阵转换为数组

    参见:matlab中怎么将一个矩阵变为一个行向量_360问答 用reshape函数实现 数组下标可以为1个数吗?-...

网友评论

      本文标题:用reshape函数对高维数组降纬

      本文链接:https://www.haomeiwen.com/subject/qmubvctx.html