精华内容
下载资源
问答
  • 如果np.dot(a, b)⾥,ab都是矩阵,那么进⾏就是矩阵乘法 np.matmul(a, b) 也可以进⾏矩阵相乘 all_user_predicted_ratings = np.dot(np.dot(U, sigma), Vt) test=np.matmul(np.matmul(U, sigma), Vt) np.array_...

    如果np.dot(a, b)⾥,a和b都是矩阵,那么进⾏的就是矩阵乘法

    np.matmul(a, b) 也可以进⾏矩阵相乘

    all_user_predicted_ratings = np.dot(np.dot(U, sigma), Vt)
    
    test=np.matmul(np.matmul(U, sigma), Vt)
    np.array_equal(test, all_user_predicted_ratings) # 判断两个array是否相同的⽅法
    

    在这里插入图片描述

    展开全文
  • 1.数组是相同数据类型元素集合。 2.数组中各元素存储是有先后顺序,它们在内存中按照这个先后顺序连续存放在一起。 3.数组元素用整个数组名字它自己在数组中顺序位置来表示。 张量 屏幕快照 ...
        

    可以针对需要加权的问题

    数组

    1.数组是相同数据类型的元素的集合。
    2.数组中的各元素的存储是有先后顺序的,它们在内存中按照这个先后顺序连续存放在一起。
    3.数组元素用整个数组的名字和它自己在数组中的顺序位置来表示。

    张量

    11701876-76fa6630650ec063.png
    屏幕快照 2019-07-27 下午12.00.17 下午.png

    向量

    向量(也称为欧几里得向量、几何向量、矢量),指具有大小(magnitude)和方向的量。它可以形象化地表示为带箭头的线段。箭头所指:代表向量的方向;线段长度:代表向量的大小。与向量对应的量叫做数量(物理学中称标量),数量(或标量)只有大小,没有方向。

    矩阵

    由 m × n 个数aij排成的m行n列的数表称为m行n列的矩阵,简称m × n矩阵。记作:

    11701876-d9ff586f30d4fa78.jpg
    image

    这m×n 个数称为矩阵A的元素,简称为元,数aij位于矩阵A的第i行第j列,称为矩阵A的(i,j)元,以数 aij为(i,j)元的矩阵可记为(aij)或(aij)m × n,m×n矩阵A也记作Amn

    展开全文
  • 目录 前言 向量 定义 与矩阵的关系 ...两个相同维数的向量x y 的点积(dot product)可看作是矩阵乘积x⊤y。 明明在讲矩阵相乘,怎么又扯到点积了?还有向量…… 之前学得懵懵懂懂,为了深度学...

    目录

    前言

    向量

    定义

    与矩阵的关系

    向量的乘法运算

    矩阵

    定义

    矩阵乘积运算

    Python代码

    区别与联系

    举例

    总结

    重点区别

    点积与矩阵相乘的联系


    前言

    看“花书”的过程中碰到这样一句话

    两个相同维数的向量x 和y 的点积(dot product)可看作是矩阵乘积x⊤y。

    明明在讲矩阵相乘,怎么又扯到点积了?还有向量……

    之前学得懵懵懂懂,为了深度学习,我仔细找资料写下这篇博客,送给与我一样情况的小伙伴。

    PS:“花书”为图书AI圣经《深度学习》,由全球知名的三位专家 Ian Goodfellow、Yoshua Bengio 和 Aaron Courville联合撰写,是深度学习领域奠基性的经典教材。

    向量

    定义

    向量是一列数。

    举例:向量x

    与矩阵的关系

    向量可以看作只有一列的矩阵

    向量的转置可以看作是只有一行的矩阵

    向量x的转置:

    向量的乘法运算

    向量有很多运算,本文只说向量的乘法运算。

    数量积(又叫内积、点积dot product; scalar product)

    设二维空间内有两个向量  和  ,定义它们的数量积(又叫内积、点积)为以下实数:

    更一般地,n维向量的内积定义如下:

    参考百度百科

     

    矩阵

    定义

    矩阵是一个二维数组

    矩阵乘积运算

    矩阵有很多运算,本文只说矩阵乘积运算。

    A为  的矩阵,B为  的矩阵,那么称  的矩阵C为矩阵AB的乘积,记作  ,

    其中矩阵C中的第 行第  列元素可以表示为:

    矩阵相乘的前提条件:

    矩阵A 的形状是m\times p,矩阵B 的形状是p\times n,C 的形状是m\times n

    有两个矩阵A, B如下:

    矩阵A的维数为3x2,矩阵B的维数为2x3,那么A、B相乘的结果矩阵C应该为3x3,其中m=3,p=2,n=3

    根据公式,其中i, j取值范围为[1, 3], p=2

    得出矩阵C各个元素为如下表格

    即矩阵C为3x3的矩阵

     

    简单地记:结果矩阵C的第(i, j)个元素为矩阵A的第 i 行与矩阵B的第 j 列分别相乘后求和的结果。

    Python代码

    写了一个简单的矩阵乘积方法,与np.dot(A, B, C)的结果是一样的。供参考。
    以下方法的缺点是没法进行大数字的矩阵计算,比如A的维数为1000*10000,B的维数为10000*10000的情况.还需要再改进。

    np.dot(A, B, C)也不能进行这么大数字的矩阵计算。

    各位如果有更好的方法欢迎留言。

    #! /usr/bin/env python
    # -*- coding: utf-8 -*-
    
    import numpy as np
    
    
    def dot(A, B):
        row = A.shape[0]
        column = B.shape[1]
        p = A.shape[1]
        if A.shape[1] != B.shape[0]:
            return
        # 创建一个矩阵C,维数为row*column, 其值全部为零
        C = np.zeros((row, column), dtype=A.dtype)
        print("A.shape, B.shape, C.shape:", A.shape, B.shape, C.shape)
        # 计算矩阵相乘结果
        for i in range(row):
            for j in range(column):
                for k in range(p):
                    C[i, j] += A[i, k] * B[k, j]
        return C
    
    
    if __name__ == '__main__':
        A = np.arange(3, 9).reshape(2, 3)
        B = np.arange(1, 7).reshape(3, 2)
        C = np.zeros((2, 2), dtype=int)
        print("matrix A:\n", A)
        print("matrix B:\n",B)
        np.dot(A, B, C)
        print("np.dot C:\n", C)
    
        c = dot(A, B)
        print("my dot C:\n", c)
        assert C.any() == c.any()
        assert C.all() == c.all()


    区别与联系

    两个相同维数的向量x 和y 的点积(dot product)可看作是矩阵乘积x⊤y。

    举例

    以二维向量举例说明,这个比较简单好理解。二维看明白了就可以扩展地理解更多维数。

    假设二维向量x和y分别为

    x和y的点积(dot product)为如下

    将它们写成矩阵形式就是如下

    矩阵x转置后为,维数为1x2;矩阵y的维数为2x1;两个矩阵相乘,根据公式得到1x1的矩阵,如下

    敲黑板了!

    总结

    重点区别

    两个向量点积结果是一个实数(即标量)

    两个矩阵相乘结果是一个矩阵

    重点:书上的原话中的“可看作” 不代表 "就是"

    点积与矩阵相乘的联系

    可以把矩阵乘积C = AB看作是矩阵A 的第i 行和矩阵B 的第j 列之间的点积。

    展开全文
  • 1 点积 ...矩阵的点积/内,为对应矩阵元素的。 A,B是定义为两个相同大小的矩阵。 值得注意的是,一些对于A,B大小不同,可以分别把它们组成的向量进行内。 比如在numpy中: im...

    1 点积

    点积(dot product),又称数量积、标量积.

    输入: 一种接受两个等长的数字序列(通常是坐标向量);
    输出:返回单个数字。

    在欧几里几何空间中,向量的点积运算又称为内积

    表示
    在这里插入图片描述
    代数定义
    在这里插入图片描述
    推广
    矩阵的点积/内积,为对应矩阵元素的积之和。

    A,B是定义为两个相同大小的矩阵。
    在这里插入图片描述
    值得注意的是,一些对于A,B大小不同,可以分别把它们组成的向量进行内积。
    比如在numpy中:

    import numpy
    x = numpy.mat([[1, 2], [3, 4]])
    y = numpy.mat([10, 20])
    print("Matrix inner:")
    print(numpy.inner(x, y))
    ''' Output:
    Matrix inner:
    [[ 50]
     [110]]
    '''
    

    2 叉积

    叉积(Cross product),又称向量积(Vector product)、叉乘

    输入: 对三维空间中的两个向量;

    输出: 返回一个向量;

    表示
    在这里插入图片描述
    代数定义

    叉积 a×b{\displaystyle \mathbf {a} \times \mathbf {b} } 是与 a{\displaystyle \mathbf {a} }b{\displaystyle \mathbf {b} }都垂直的向量 c{\displaystyle \mathbf {c} }

    其方向由右手定则决定,模长等于以两个向量为边的平行四边形的面积。

    在这里插入图片描述
    在这里插入图片描述
    n{\displaystyle \mathbf {n} } 是与 a, b都垂直的单位向量。

    推广
    在这里插入图片描述
    矩阵表示:
    在这里插入图片描述
    在这里插入图片描述

    3 外积

    外积(Outer product) ,又名张量积
    外积与向量的内积相对, 是矩阵的克罗内克积的一种特例。

    输入: 两个向量。

    输出: 矩阵。

    表示

    代数定义
    在这里插入图片描述
    在这里插入图片描述
    推广

    矩阵的外积:克罗内克积(Kronecker product)
    如果A是一个 m × n 的矩阵,而B是一个 p × q 的矩阵,克罗内克积 AB{\displaystyle A\otimes B}则是一个 mp×nqmp × nq 的分块矩阵.

    示例:
    在这里插入图片描述

    4 哈达玛乘积 (矩阵)

    哈达玛积(Hadamard product) ,又名舒尔积逐项积

    在机器学习中,哈达玛积还称为,元素积(element-wise product/point-wise product)。

    输入: 两个相同形状的矩阵。

    输出: 具有同样形状的、各个位置的元素等于两个输入矩阵相同位置元素的乘积的矩阵。

    表示
    ABA ∘ B

    代数定义
    在这里插入图片描述

    推广

    如果矩阵维度不一样,矩阵/向量的哈达玛积计算如下:
    在这里插入图片描述


    参考:

    1. 矩阵运算
    2. wiki 点积;
    3. wiki 叉积
    4. wiki 哈达玛乘积
    5. wiki 外积
    6. 克劳内克积
    展开全文
  • 一、矩阵的:两个矩阵A、B对应分量乘积之,结果为一个标量,记作<A,B>(与向量的内/点积/数量的定义相似)。 所以A、B的行数列数都应相同,且有结论<A,B>=tr(ATB)。 例如:,,则<A,B>=...
  • 矩阵乘法的要求是参与相乘的左矩阵的列数...矩阵乘法结果矩阵的每个元素都是向量的内,cij = , 即A的第i行向量和B的第j列向量的内。 矩阵点乘则要求参与运算的矩阵必须是相同维数的,是每个对应元素的逐个相乘。
  • 点积的计算非常简单,两个相同长度数组点积等于对应位置元素乘积之。在线性代数中,点积的计算是比较靠前内容,而且我们知道两个向量点积除以两个向量的乘积等于向量夹角余弦值,点积的先后顺序也并不...
  • 一、矩阵的加减乘除

    千次阅读 2019-03-31 17:51:39
    矩阵也存在加减乘除 矩阵就是填满数字的表格,一般用大写字母表示,关于矩阵很重要的一点是,它不是一个自然的概念,它是数值的一种表示方法,矩阵的...其实是行向量与列向量点积 矩阵除法 方阵:行相同...
  • chapter7 点积与对偶性

    2017-12-06 20:01:16
    如,相同维数的向量才能进行点积。 虽然引入点积的标准方法只需要向量的基础认识即可,但是要进行更进一步理解点积所发挥作用,只能从线性变换角度才能完成。 将向量w朝着过原点????? 究竟为什么点积这...
  • 首先采用窗长为伪码周期滑动窗函数将信号划分为不重叠数据段,以各分段数据为行向量依次排列构造数据矩阵,并根据不同起始条件下分段后所对应矩阵平均内积的最大值确定伪码同步起始;然后在实现伪码同步基础上,...
  • 1、点乘 Mat a,b,c; c = a*b; 必须是CV_32F,CV_64FC1等。 ...ab的点积公式为: ...要求向量a和向量b行列数相同。可以是CV_8UC1等 3、mul Mat a,b,c; a = b.mul(c); 对应位置相乘,可以是CV_8...
  • 标量c和矩阵B相加或标量c和矩阵B相乘时,需要将其与矩阵的每个元素相加或相乘,即或 (4)向量与矩阵 向量b和矩阵A相加,需要将向量b和矩阵A的每一行相加,即 (5)向量点积 相同维度,可看作是矩阵乘积,且满足...
  • MATLAB1.3 图片题作业

    2017-03-11 14:13:21
    输入一个行矩阵 a 分行输入一个行矩阵 Matrix_B 生成2*2全零阵 B 生成2*3全零阵 C 生成与矩阵Matrix_B相同大小的全零阵 B ...向量点积 向量的叉乘 向量的混合 左除右除 矩阵的乘方 矩
  • 点积:两个维度相同的向量相乘,可以看成AB行相乘,与矩阵相乘不同,点积满足交换律,点积结果是标量 元素对应乘积(element-wise product)是对应元素相乘。 单位矩阵:主对角线全是1,其他位置都是0。 ...
  • 向量 是空间中存在有方向有长度一样东西,向量不等于坐标,不同坐标系下向量的坐标表示也不尽相同。只有确定了一个坐标系,我们才能说这个向量的坐标是多少。   向量的运算    其中,代表反对称矩阵...
  • 线性代数及其应用

    千次阅读 2018-12-19 13:36:29
    181219 矩阵相加:只要形状一样,两个矩阵可以相加。 标量与矩阵相乘或相加:将标量与矩阵的每一个元素相乘或相加。...两个相同维数的向量xy的点积可以看做矩阵乘积x转至后与y的矩阵乘积。 矩阵满足分配律、结合律...
  • FML Lab1学习笔记

    2020-10-21 05:15:22
    FML Lab1学习笔记 由numpy中@np.dot()用法,想起关于矩阵乘法和向量乘法知识 numpy中用@表示矩阵乘法 np.dot()表示向量乘法(点积...矩阵一定要是方形矩阵(就是,行数目相同)才能计算行列式 完整版:h
  • 花书笔记

    2020-07-16 16:43:02
    花书第二章第三章第四章 第二章 张量:表示高维 矩阵相加:需要矩阵...矩阵元素对应乘积:C=A⊙B,也叫点乘,点积,内 范数:一般用二范式计算距离 特征值特征向量: 公式:Aν=λν λ是特征值,v是特征向量 一般
  • 3D数学基础:图形与游戏开发——关于矩阵(1) 维数相同的矩阵可以进行加减,就是各个元素加减。... 所乘向量是行矩为列,是列矩为行,结果形为所乘,分量为点积(自己口诀) 书面化语言: ...
  • 4·2 向量的相等、、差及向量与实数的积 4·3 向量的性质 4·4 拉米定理 4·5 向量的分量 4·6 向量的 4·7 空间向量 4·8 向量方程 5.复数与向量 5·1 复数与向量 5·2 向量的旋转 第七章 图形与方程 1.与...
  • 4·2 向量的相等、、差及向量与实数的积 4·3 向量的性质 4·4 拉米定理 4·5 向量的分量 4·6 向量的 4·7 空间向量 4·8 向量方程 5.复数与向量 5·1 复数与向量 5·2 向量的旋转 第七章 图形与方程 1.与...
  • 本书在相关章节中介绍了向量和矩阵的基本知识,同时,附录中总结了向量和矩阵的关键概念。  计算机图形学中使用了大量的数学符号来表达线、面和视点之间的基本几何关系。虽然每个数学符号都很容易理解,但所需的...
  • X_norm = np.array(X) #将X转化为numpy数组对象,才可以进行矩阵的运算 #定义所需变量 mu = np.zeros((1,X.shape[1])) sigma = np.zeros((1,X.shape[1])) mu = np.mean(X_norm,0) # 求每一列的平均值(0指定...

空空如也

空空如也

1 2
收藏数 33
精华内容 13
关键字:

向量积和矩阵的相同点