矩阵的运算 如果两个矩阵大小相同,则可以使用运算符(+-*/)对矩阵进行相加或相乘。NumPy对每一矩阵进行相同的操作: ?...点积 有关运算,在矩阵乘法情况下使用点积是矩阵关键区别。NumPy给每一个矩阵都提供了一个dot() 方法,因此可以用这个方法对其他矩阵执行点积操作: ?...在该图下方,笔者添加了矩阵维度,以强调两个矩阵在其与对方匹配的一侧必须具有相同维度。将操作可视化,就会如下所示: ? 矩阵索引 在处理矩阵时,索引分片操作会更有用: ?...矩阵聚合 聚合矩阵的方式跟聚合向量相同: ? 不仅可以在矩阵中聚合所有值,还可以通过使用axis参数跨行跨列进行聚合: ? 转置与重塑 旋转矩阵是处理矩阵的常见需求之一。...情况常常是这样的——需要取两个矩阵的点积,并且需要对齐共用维度。NumPy数组有一个名为T的便捷属性,能够对矩阵进行转置: ? 在更高级的实操案例中,有可能需要切换特定矩阵的维度。
矩阵运算 如果两个矩阵的行列数相同,我们可以使用运算符(+ - * /)对矩阵进行运算。NumPy 也是基于位置来进行操作: ?...点积(Dot Product) 和前面的算术运算的一个关键区别是在对矩阵进行这类乘法(传统意义的矩阵相乘(译者注))时使用点积操作时,NumPy 为矩阵提供了一个 dot() 方法,可以计算出矩阵的点积...我已经在图片的底部加入了矩阵的维度信息,强调了不同维度的矩阵,在点乘时相邻的维度必须相同(就是 1×3 的矩阵和 3×2的矩阵相乘,前者的列维度和后者的行维度相同(译者注))。...你可以想象是进行了如下的操作: ? 矩阵索引 当我们使用矩阵的时候索引和切片功能将更加有用: ? 矩阵聚合 与向量(数组)相同,可以对矩阵进行类似的聚合操作: ?...比如当需要计算两个矩阵的点积的时候可能需要对齐矩阵相邻的维度(使矩阵能够进行点积运算)。NumPy 的数组有一个很方便的属性 T 可以获取矩阵的转置: ?
只有一个值的数组 我们可以使用np.full创建在每个位置具有相同值的数组。 ? 我们需要指定要填充的大小和数字。此外,可以使用dtype参数更改数据类型。默认数据类型为整数。...A的形状是(3,4)大小是12。 ? 可以指定每个维度上的大小,只要保证与原大小相同即可 ? 我们不需要指定每个维度的大小。我们可以让NumPy通过-1来求维数。 ? 10....转置 矩阵的转置就是变换行和列。 ? 11. Vsplit 将数组垂直分割为多个子数组。 ? 我们将一个4x3的数组分成两个形状为2x3的子数组。 我们可以在分割后访问特定的子数组。 ?...对于高维数组,最后两个维度必须是正方形。 17. Inv 计算矩阵的逆。 ? 矩阵的逆矩阵是与原矩阵相乘得到单位矩阵的矩阵。不是每个矩阵都有逆矩阵。如果矩阵A有一个逆矩阵,则称为可逆或非奇异。...Eig 计算一个方阵的特征值和右特征向量。 ? 19. 点积 计算两个向量的点积,这是关于它们的位置的元素的乘积的和。第一个向量的第一个元素乘以第二个向量的第一个元素,以此类推。 ? 20.
一旦我们创建了数组,我们就可以用其做点有趣的应用了,文摘菌将在下文展开说明。 数组的算术运算 让我们创建两个NumPy数组,分别称作data和ones: ?...矩阵的算术运算 对于大小相同的两个矩阵,我们可以使用算术运算符(+-*/)将其相加或者相乘。NumPy对这类运算采用对应位置(position-wise)操作处理: ?...对于不同大小的矩阵,只有两个矩阵的维度同为1时(例如矩阵只有一列或一行),我们才能进行这些算术运算,在这种情况下,NumPy使用广播规则(broadcast)进行操作处理: ?...与算术运算有很大区别是使用点积的矩阵乘法。NumPy提供了dot()方法,可用于矩阵之间进行点积运算: ? 上图的底部添加了矩阵尺寸,以强调运算的两个矩阵在列和行必须相等。...不仅可以聚合矩阵中的所有值,还可以使用axis参数指定行和列的聚合: ? 矩阵的转置和重构 处理矩阵时经常需要对矩阵进行转置操作,常见的情况如计算两个矩阵的点积。
向量:一个同时具有大小和方向的几何对象。 向量的模:表示向量的长度。 ? 向量的范数:向量长度的不同表达 ? 1范数:向量各个维度的绝对值求和。...2范数:向量的模 无穷范数:各个维度绝对值的最大值 向量加法: ? 向量数乘: ? 向量的乘积–点积: ? 机器学习中常用的公式 ?...2.4.2矩阵基础 矩阵乘法–点积:要求a的n列等于b的n行,也就是a的行乘以b的列。 ? 矩阵乘法–元素积:python代码为multiply(a,b) ?...梯度和黑塞矩阵: ? 稳定点:满足一阶导数=0的点为稳定点。稳定点包含两类:一类是极值点,另一类不是极值点。 鞍点:满足一阶导数=0的但又不是极值点的点叫做鞍点。...假设连续随机变量x,真是的概率分布为p(x),模型得到的近似分布为q(x)。 互性信息:用来衡量两个相同的一维分布变量之间的独立性。
可以在创建数组的时候np.array(ndmin=)设置最小维度 ndarray.shape 数组的维度,对于矩阵,n行m列,不改变原序列 ndarray.size 数组元素总个数...数组中的所有数据消耗掉的字节数 ndarray.flags 数组对象的内存信息 2.5、矩阵的维度 0维矩阵 A=3.6 A.shape=() 1维矩阵...v2)) horizontal 水平的 △ np.c_[] 按列左右连接两个矩阵 △ np.r_[] 按行上下连接两个矩阵 6、NumPy 数组操作 △ n.reshape(arr,newshape,...7、NumPy 线性代数 △ n.dot() 数组元素的点积,即元素对应相乘 △ n.matmul() 两个数组的矩阵积4 △ n.linalg.det() 求行列式的值 △ n.linalg.inv...() 计算矩阵的逆 n.vdot() 两个向量的点积 n.inner() 两个数组的内积 n.determinant() 数组的行列式 n.solve() 求解线性矩阵方程
当矩阵具有相同数量的行和列时,其形状将变为正方形;因此,它被称为方阵(square matrix)。 ...例如,从按元素操作的定义中可以注意到,任何按元素的一元运算都不会改变其操作数的形状。同样,给定具有相同形状的任意两个张量,任何按元素二元运算的结果都将是相同形状的张量。...例如,将两个相同形状的矩阵相加,会在这两个矩阵上执行元素加法。...将两个向量规范化得到单位长度后,点积表示它们夹角的余弦。本节后面的内容将正式介绍长度(length)的概念。...向量泛化自标量,矩阵泛化自向量。 标量、向量、矩阵和张量分别具有零、一、二和任意数量的轴。 一个张量可以通过sum和mean沿指定的轴降低维度。 两个矩阵的按元素乘法被称为他们的哈达玛积。
对于大小相同的两个矩阵,我们可以使用算术运算符(+-*/)将其相加或者相乘。...NumPy对这类运算采用对应位置(position-wise)操作处理: 对于不同大小的矩阵,只有两个矩阵的维度同为1时(例如矩阵只有一列或一行),我们才能进行这些算术运算,在这种情况下,NumPy使用广播规则...(broadcast)进行操作处理: 与算术运算有很大区别是使用点积的矩阵乘法。...NumPy提供了dot()方法,可用于矩阵之间进行点积运算: 上图的底部添加了矩阵尺寸,以强调运算的两个矩阵在列和行必须相等。...我们可以像聚合向量一样聚合矩阵: 不仅可以聚合矩阵中的所有值,还可以使用axis参数指定行和列的聚合: 矩阵的转置和重构 处理矩阵时经常需要对矩阵进行转置操作,常见的情况如计算两个矩阵的点积。
在几何中,向量将大小和方向的潜在变化存储到一个点。 例如,向量 [3, -2] 表示向右移 3 个单位距离和向下移 2 个单位距离。而具有多个维度的向量称为矩阵。...向量 A 中的第一个值与向量 B 中的第一个值配对。第二个值与第二个值配对,依此类推。也就是说,这两个向量必须有着相同的尺寸,才能完成元素操作*。...向量乘法 向量乘法有两种类型:点积和 Hadamard乘积 。 点积 两个向量的点积是一个标量。 向量和矩阵的点积(矩阵乘法)是深度学习中最重要的操作之一。...简单地将标量应用于矩阵中的每个元素进行 加,减,乘,除等操作。 Matrix scalar addition 矩阵单元操作 为了对两个矩阵进行加,减或除法,它们必须具有相等的维度。...    两个矩阵维度相等,或 2.
向量 A中的第一个值与向量 B 中的第一个值相加,然后第二个值与第二个值配对,如此循环。这意味着,两个向量必须要有相同的维度才能进行元素操作。...向量乘法 向量乘法有两种:点积(Dot product) 和 Hadamard乘积(Hadamard product)。 点积 两个向量的点积是一个标量。...向量的点积和矩阵的乘法是深度学习中最重要的操作之一。...elementwise operations 为了实现两个矩阵的加、减、除操作,他们必须有着相同的维度。...步骤 矩阵的乘法依赖于点积与各个行列元素的组合。 以下图为例(取自 Khan学院的线性代数课程),矩阵 C中的每个元素都是矩阵 A 中的行与矩阵B中的列的点积。
在三维中,重点是按矩阵相乘,然后对这些矩阵中的每个向量执行点积。 上图应该有助于解释这一点。将两个 3D 张量视为矩阵向量可能会有所帮助。...由于点积是通过按元素相乘然后求和来执行的,因此首先发生的事情是每个矩阵与其相应的矩阵相乘。当这种情况发生时,矩阵乘法会导致矩阵中的每个向量与其他向量执行点积。从某种意义上说,它就像一个嵌套的点积。...在四维中,张量乘法将具有与三维和二维中相同的要求。...它还需要第一轴和第二轴与两个张量匹配: (c、z、m、n) x (c、z、n、r) = (c、z、m、r) 在三维空间中,进行矩阵乘法,然后进行向量之间的点积。...相同的步骤将在四个维度中发生,但首先将每个 3D 张量与其相应的 3D 张量相乘。然后,它们的每个矩阵将相互相乘。最后,它们的向量将相互执行点积。这可以在上图中看到。
设想有两个矩阵,一个30x30,另一个3x3。也就是说,过滤器覆盖了图像通道表面积的十分之一。 我们使用这块图像通道得到过滤器的点积。...如果两个矩阵在相同位置均具有较高的值,则点积输出会很高。反之,则输出会很低。如此,通过一个单值(即点积输出)便可以确定底层图像的像素图案是否符合过滤器所表示的像素图案。...可每次以一列为单位向右移动过滤器,也可选择更大的步幅。 在每一步获取一个点积,并将点积结果置于被称为激活映射图的第三个矩阵中。激活映射图上的宽度(或列数)与过滤器在底层图像上移动的步数一致。...若步幅为三,那么生成的点积矩阵为10x10。代表水平线的相同过滤器也可用于底层图像的所有三个通道,亦即R、G和B。...也可将两个矩阵生成点积想象为两个函数。图像就是底层函数,而过滤器就是在其上“卷过”的函数。 ? 图像的主要问题在于其高维度,原因是对高维度的处理时间和运算能力成本很高。
一 概述 Python生态系统的一些核心基础数据分析库: NumPy:支持大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库,包含: 一个强大的N维数组对象 ndarray 广播功能函数...Pandas: Pandas 可以从各种文件格式比如 CSV、JSON、SQL、Microsoft Excel 导入数据。...Pandas 可以对各种数据进行运算操作,比如归并、再成形、选择,还有数据清洗和数据加工特征。 Pandas 广泛应用在学术、金融、统计学等各个数据分析领域。...函数描述dot两个数组的点积,即元素对应相乘。...vdot两个向量的点积inner两个数组的内积matmul两个数组的矩阵积determinant数组的行列式solve求解线性矩阵方程inv计算矩阵的乘法逆矩阵 numpy.vdot() 函数是两个向量的点积
1.4 tf.multiply 此函数是:两个矩阵中对应元素各自相乘,即逐元素操作。逐元素操作是指把x中的每一个元素与y中的每一个元素逐个地进行运算。就是哈达玛积。...两个相乘的数必须有相同的数据类型,不然就会报错。...a和b除了最后两个维度可以不一致,其他维度要相同; a和b最后两维的维度要符合矩阵乘法的要求(比如a的(3,4)能和b的(4,6)进行矩阵乘法); 比如 a的维度是(2,2,3); b的维度是(2,3,...其中所谓的单独维度就是一个维度为1,或者那个维度缺失) 4.2 机制 广播的机制是: 先对小的张量添加轴(使其ndim与较大的张量相同); 再把较小的张量沿着新轴重复(使其shape与较大的相同); 广播的的限制条件为...: 两个张量的 trailing dimension(从后往前算起的维度)的轴长相等; 或 其中一个的长度为1; 即,如果两个数组的后缘维度(从末尾开始算起的维度) 的 轴长度相符或其中一方的长度为1,
领取专属 10元无门槛券
手把手带您无忧上云