线性代数
直观理解
矩阵乘法相当于扭曲空间,向量通过一个矩阵相乘变成另外一个向量,相当于矩阵把一个空间进行了扭曲
矩阵也有长度,即范数
c和b是向量。F范数相当于把矩阵拉成一个向量求范数,由于F范数比较简单,所以一般会用F范数
在数学上,特别是在矩阵理论中,置换矩阵是一个方形二进制矩阵,它在每行和每列中只有一个1,而在其他地方则为0。
设P是一个m×n的 (0,1) 矩阵,如果 m≤n且 PP′=E,则称 P为一个 m×n的置换矩阵。其中P′是P的转置矩阵,E是m阶单位方阵。
线性代数实现
标量由只有一个元素的张量表示
你可以将向量视为标量值组成的列表
通过张量的索引来访问任一元素
访问张量的长度
只有一个轴的张量,形状只有一个元素
通过指定两个分量m和m来创建一个形状为m×n的矩阵
矩阵的转置
对称矩阵( symmetric matri)A等于其转置:A=A^T
就像向量是标量的推广,矩阵是向量的推广一样,我们可以构建具有更多轴的数据结构
给定具有相同形状的任何两个张量,任何按元素二元运算的结果都将是相同形状的张量
两个矩阵的按元素乘法称为哈达玛积( Hadamard product)
计算其元素的和
表示任意形状张量元素和
指定求和汇总张量的轴
对哪个轴求和,就会消除哪个轴
一个与求和相关的量是平均值(mean或 average)
计算总和或均值时保持轴数不变
通过广播将A除以sum_A广播机制要维度个数一样吗?
某个轴计算A元素的累计总和
点积是相同位置的按元素乘积的和
我们可以通过执行按元素乘法,然后进行求和来表示两个向量的点积
我们可以将矩阵矩阵乘法AB看作是简单地执行m次矩阵-向量积,并将结果拼接在一起,形成一个n×m矩阵
QA
- clone和copy的区别
copy分为深层copy和浅层copy,不一定复制地址,而clone一定会复制内存??
这地方应该有错,clone不复制内存,并不共享数据,https://blog.csdn.net/guofei_fly/article/details/104486708 - torch不区分行向量和列向量吗?
对于向量来说,从计算机角度,就是一个数组,要区分行列向量要用矩阵 - sum(axis[0,1])怎么求?
如果是rgb图像,可以想象成将rg两个通道的求和了 - 稀疏的时候可以把它当成单词做词向量解决吗?
一般是可以的,也是这样做的