【动手学深度学习】05 线性代数(个人向笔记)

1. 线性代数

向量的一些公式

  • ∣ ∣ a ∣ ∣ ||a|| ∣∣a∣∣ 表示向量 a 的范数,课上没有讲范数的概念

  • 其中第一条为求向量的二范数

  • 第四条表示如果a为标量,那么向量 ∣ ∣ a ⋅ b ∣ ∣ ||a·b|| ∣∣a⋅b∣∣ 的长度等于 ∣ a ∣ ⋅ ∣ ∣ b ∣ ∣ |a|·||b|| ∣a∣⋅∣∣b∣∣ 的长度

矩阵

矩阵的一个比较重要的范数:

对称矩阵的转置等于其本身

特征向量

对于一个矩阵来说,如果它乘以一个向量后该向量的方向未改变,那么这个向量被称为特征向量。代替这个矩阵的值被称为特征值:

碎碎念

这部分个人感觉就是讲一些比较生硬的概念,这部分我只把我觉得可能会重要一些的内容记下来了。如果后续再遇到了这些内的话再去查阅资料就行了


2. 线性代数的实现

  • 标量由只有一个元素的张量表示
  • 向量就是由标量值组成的列表,可以通过索引访问元素
  • 可以通过 len 来返回张量的长度,shape 来返回张量的形状
  • 可以用 T 来转置一个矩阵
  • 可以通过 clone 来分配新内存来复制
  • 矩阵和标量相加相当于给标量每个元素加上该标量,相乘同理
  • 可以通过 sum() 来获取总和,可以指定维度,还可以通过 mean() 来求平均值,同样可以指定维度
  • 可以在计算总和时保持维度不变

  • 假如参数为False会怎么样呢
  • cumsum 可以进行累加求和

  • 可以用 torch.dot 来计算元素的点积,也可以先按位乘然后求和来计算点积
  • 视频中有 torch.mv 但是没有解释,还好我有gpt


  • 可以用 torch.norn() 求二范数
  • 求L1范数需要先取绝对值后求和

按特定轴求和

  • 假设有一个五行四列的矩阵,shape 为 [5, 4] ,那么其中的 axis 对应就分别为 0, 1,意思是按列的 axis 为 0 ,按行的 axis 为 1
  • 如果按 axis = 0 求和,那么就会把 5 这一维消掉,如果按 axis = 1 求和,那么就会把 4 这一维消掉。但是如果 keepdims=True 还是可以保留维度的,只不过把它变成1,比如 [1, 4] 或者 [5, 1]。总结就是按哪一维求和就消掉哪个维度。
  • 可以对多个维度求和,结果和上面的描述相同
相关推荐
ysa0510302 分钟前
竞赛常用加速技巧#模板
c++·笔记·算法
特种加菲猫1 小时前
硬件与软件的桥梁:冯诺依曼体系、操作系统和初始进程的深度解析
linux·笔记
橡晟7 小时前
深度学习入门:让神经网络变得“深不可测“⚡(二)
人工智能·python·深度学习·机器学习·计算机视觉
墨尘游子7 小时前
神经网络的层与块
人工智能·python·深度学习·机器学习
Leah01057 小时前
什么是神经网络,常用的神经网络,如何训练一个神经网络
人工智能·深度学习·神经网络·ai
深圳卢先生8 小时前
CentOS 安装jenkins笔记
笔记·centos·jenkins
Leah01058 小时前
机器学习、深度学习、神经网络之间的关系
深度学习·神经网络·机器学习·ai
u_topian8 小时前
【个人笔记】Qt使用的一些易错问题
开发语言·笔记·qt
九章云极AladdinEdu11 小时前
摩尔线程MUSA架构深度调优指南:从CUDA到MUSA的显存访问模式重构原则
人工智能·pytorch·深度学习·机器学习·语言模型·tensorflow·gpu算力
WarPigs13 小时前
游戏框架笔记
笔记·游戏·架构