乘法/积运算和符号(点乘/内积/数量积,叉乘/向量积,矩阵乘法,Hadamard, Kronecker积,卷积)一网打尽
之前一直混淆于各种乘法和积运算中,不得其解,所以花了点功夫整理一下。
名称 | 符号 | Latex | 运算 | 应用 | 意义 |
---|---|---|---|---|---|
点乘/内积/数量积 | ⋅\cdot⋅或∙\bullet∙ | \cdot或\bullet | a⃗∙b⃗=x1x2+y1y2\vec{a} \bullet \vec{b}=x_{1} x_{2}+y_{1} y_{2}a∙b=x1x2+y1y2 | 三角形余弦角度 | 一个向量在另一个向量方向上投影的长度 |
叉乘/向量积 | ×\times× | \times | a×b=(a2b3−a3b2,−a1b3+a3b1,a1b2−a2b1)a \times b=(a_{2} b_{3}-a_{3} b_{2}, -a_{1} b_{3}+ a_{3} b_{1}, a_{1} b_{2}-a_{2} b_{1})a×b=(a2b3−a3b2,−a1b3+a3b1,a1b2−a2b1) | 向量方向是垂直于向量A,B组成的平面 | 叉乘结果是一个向量,向量模长是向量A,B组成平行四边形的面积; |
矩阵乘法 | NAN | NAN | (AB)ij=∑k=1paikbkj=ai1b1j+ai2b2j+⋯+aipbpj(A B)_{i j}=\sum_{k=1}^{p} a_{i k} b_{k j}=a_{i 1} b_{1 j}+a_{i 2} b_{2 j}+\cdots+a_{i p} b_{p j}(AB)ij=∑k=1paikbkj=ai1b1j+ai2b2j+⋯+aipbpj | 方程组 | 各类需要求解方程组的问题 |
克罗内克积(Kronecker Product)/直积/张量积 | ⊗\otimes⊗ | \otimes | A⊗B=[a11B⋯a1nB⋮⋱⋮am1B⋯amnB]A \otimes B=\left[\begin{array}{ccc}a_{11} B & \cdots & a_{1 n} B \\\vdots & \ddots & \vdots \\a_{m 1} B & \cdots & a_{m n} B\end{array}\right]A⊗B=⎣⎢⎡a11B⋮am1B⋯⋱⋯a1nB⋮amnB⎦⎥⎤ | 任意两个矩阵相乘 | 矩阵分块相乘 |
哈达马积(Hadamard product) | ∘\circ∘或⊙\odot⊙ | \circ 或 \odot | (A∘B)ij=(A⊙B)ij=(A)ij(B)ij(A \circ B)_{i j}=(A \odot B)_{i j}=(A)_{i j}(B)_{i j}(A∘B)ij=(A⊙B)ij=(A)ij(B)ij | 对应位置相乘 | Kronecker Product两矩阵维度相同时的简化形式 |
卷积 | * | * | (f∗g)(t)≜∫−∞∞f(τ)g(t−τ)dτ(f * g)(t) \triangleq \int_{-\infty}^{\infty} f(\tau) g(t-\tau) d \tau(f∗g)(t)≜∫−∞∞f(τ)g(t−τ)dτ | 深度学习中张量的卷积操作卷积核在特征层移动并对应位相乘 | 表征函数 f 与经过翻转和平移的 g 的乘积函数所围成的曲边梯形的面积 |
补充几点:
- 点乘,叉乘是
线性代数
中强调的概念,所以主要针对一维矢量或者二维矩阵的运算,能够在二维或者三位空间进行可视化;而矩阵乘法、克罗内克积、哈达马积则是矩阵论
中的概念,强调的是更为一般性的n维向量的运算规则,矩阵内积操作向量在内积空间中的矩阵乘法。 - 矩阵乘法是使用最多的运算,比如在matlab和python的numpy中
*
。点乘可以视作矩阵乘法对两个一维矢量的运算规则。 - 卷积的运算规则与哈达马积相同,而哈达马积又是克罗内克积一种特殊情况,所以在CS的一些论文中表达卷积操作,⊗\otimes⊗、 ∘\circ∘、⊙\odot⊙、*似乎都没问题,但是最多还是星乘。
参考文献
点乘和叉乘
Hadamard_product refer from wiki
克罗内克积 refer from wiki
水平有限,有错误和不足支持还望大家及时提出讨论
乘法/积运算和符号(点乘/内积/数量积,叉乘/向量积,矩阵乘法,Hadamard, Kronecker积,卷积)一网打尽相关推荐
- python实现矩阵叉乘_矩阵乘法的纯Python实现 | 离开Python库!!
点击关注我哦 一篇文章带你了解矩阵乘法的纯Python实现 在<这篇文章>中,我们有简单提到"矩阵乘法"的相关知识,如果你不记得了,可以复习一下这张图片. 想起来了没? ...
- 点乘/内积/数量积;叉乘/向量积;矩阵乘法;哈达马积;克罗内克积;卷积
# 1. 符号解释 | 名称 | 符号 | Latex | 运算 | 应用 | 意义 | |--|--|--|--|--|--| | 点乘/内积/数量积 | $⋅$ 或 $\bullet$ ...
- numpy矩阵乘法_NumPy矩阵乘法
numpy矩阵乘法 NumPy matrix multiplication can be done by the following three methods. NumPy矩阵乘法可以通过以下三种方 ...
- 矩阵乘法python的实现
两个矩阵相乘得到第三个矩阵,我们需要 A 的形状为 m × n,B 的形状为 n × p,得到的矩阵为 C 的形状为 m × p:C = AB 注意矩阵乘法不是元素对应相乘,元素对应相乘又叫 Hada ...
- [学习笔记]矩阵乘法及其优化dp
1.定义: $c[i][j]=\sum a[i][k]\times b[k][j]$ 所以矩阵乘法有条件,(n*m)*(m*p)=n*p 即第一个矩阵的列数等于第二个矩阵的行数,否则没有意义. 2.结 ...
- 【自定义Matlab函数】利用Kronecker积求解矩阵方程AXB=D
基本知识 Kronecker积定义 如果A是一个m×n的矩阵,B是一个p×q的矩阵,A与B的Kronecker积为一个mp×nq的分块矩阵: 具体为: Kronecker积与矩阵方程 首先需要知道矩阵 ...
- 1.4 Kronecker积
文章目录 定义 举例 Python程序 定义 矩阵的乘法必须要求左边矩阵的列和右边矩阵的行相等.Kronecker积则没有这个限制,简单地说Kronecker积是把左边矩阵的每一项都乘以右边的矩阵 ...
- CUDA: 矩阵乘法优化
矩阵乘法是有实用价值的程序,我们会使用浮点数. 虽然矩阵乘法有点老套,不过因为它相当简单,而且也可以用来介绍一些有关 CUDA 的有趣性质. 矩阵乘法 为了单纯起见,我们这里以方形的矩阵为例子.基本上 ...
- DeepMind攻克50年数学难题!AlphaZero史上最快矩阵乘法算法登Nature封面
新智元报道 编辑:David Joey [新智元导读]DeepMind碾压人类高手的AI围棋大师AlphaZero,下一个目标是数学算法!现已发现50年以来最快的矩阵乘法算法. 下围棋碾压人类 ...
最新文章
- SQL Server误区30日谈-Day21-数据损坏可以通过重启SQL Server来修复
- [转载]IT知识体系结构图
- 安装php时,configure: error: xml2-config not found. Please check your libxml2 installation
- 致敬!再见了!LayUI !
- 虚拟主机linux系统404,虚拟主机404页面的设置方法!
- eclipse 初步新建jsp页面笔记
- 程序员是不是当代最好的职业?
- LeetCode刷题(13)
- Python入门--按一定格式输出的字符串%d,%f,宽度精度的设置
- V5-SP6:iocomp-32/iocomp-64-crack-免安装
- Android 多媒体框架stagefright
- Unity UGUI 流光特效
- magic API构建和基础实现
- PS和AI矢量电子签名制作(详细)
- [已解决]VitrualBox 启动linux虚拟机后,无法访问网络解决方法
- Gustafson 定律
- 大学计算机组装作业台式,组装一部单机作业基本型计算机的50步骤
- 四舍六入五成双的意思
- 如何用Python从海量文本抽取主题?
- html 可脱机浏览,如何脱机浏览Web页面
热门文章
- SpringCloud 微服务工具集 SpringCloud 版本: Hoxton SR6
- 浅尝webSocket
- 【ERP知识】一个VMI(供应商管理库存)实现方案
- bailian.openjudge 2692:假币问题
- CF-Educational Codeforces Round 44 (Rated for Div. 2)-A-Chess Placing
- (附源码)springboot社区疫苗接种管理系统 毕业设计 281442
- 多变量微积分笔记(3)——二重积分
- 逆向工程实验Lab7
- LINUX中DNS服务器反向解析
- 通过扫描二维码进入下载APP的流程