python中的张量运算(tensor)

时间:2022-12-19 10:00:26

1,首先比较二者的参数部分:这就是处理0阶张量和1阶张量的区别

    • np.max:(a, axis=None, out=None, keepdims=False)
      • 求序列的最值
      • 最少接收一个参数
      • axis:默认为列向(也即 axis=0),axis = 1 时为行方向的最值;
    • np.maximum:(X, Y, out=None) 
      • X 与 Y 逐位比较取其大者;
      • 最少接收两个参数

2、python标准库中的math和numpy中的数学计算问题:

比如都有math.exp()和numpy.exp()函数等,但是做数据分析时一般都用numpy自带的数学函数,更专业

3、张量元素的迭代器

it=np.nditer(a,flags=['multi_index'],op_flags=['readwrite']),这句话看起来不好理解,我们来仔细研究下。

flags=['multi_index']表示对a进行多重索引,具体解释看下面的代码。
op_flags=['readwrite']表示不仅可以对a进行read(读取),还可以write(写入),即相当于在创建这个迭代器的时候,我们就规定好了有哪些权限。

4、张量的卷积运算

从二维张量(矩阵)的角度看,张量的卷积运算是对dot product和cross运算的一种推广,对两个矩阵的形状没有那么严格的要求,可以试想两个平面运算,两个方块运算。

5.numpy.pad填充函数:

看这篇博客,写的很详细,有案例,

6.张量中的切片操作:

x1=np.random.rand(3,4,5)

x2 =x1[:,2,:]:确定了第二个轴的坐标,没有用冒号代替,意思就是全选,则x2,shape=(3,5),就相当于在面包上切片。

7,ndarray的方法和属性

Numpy中主要处理张量,当我们把处理好的数据集变成张量对象后,那它将拥有哪些方法和函数呢?比如最常见的shape和reshape(),transpose()。这些可以分为描述信息和统计信息两大类吧,比如mean(),std()