重学线性代数 个人笔记(主要为了自己以后回顾)

线性代数是重要的:因为是数学基础,对机器学习、算法调优等必不可少。

向量:

线性代数的主体就是向量和向量规则,这与代数是相互对应的。

 与向量相关的概念

 矩阵:

矩阵可以极大地提高计算机的运算效率,因为GPU可以同时运算矩阵,无需并行计算。

矩阵运算:普通乘、哈达玛积(对应元素相乘)、克罗内克积(Matlab运用kron()函数计算Kronecker乘法_yyywww666的专栏-CSDN博客_matlab 克罗内克积

线性方程求解:

  1. 直接法。但理论上的高斯消元法不能处理大规模数据
  2. 间接法。实际应用中用数值迭代法,构造迭代公式和残差公式,使得随着迭代次数增加残差越小,逼近真实值。(常见的迭代法有两类,定常迭代法(Stationary iterative method)和 Krylov 子空间方法)

其余概念:线性无关、生成空间(span)、基、秩(图像中,信息量大的秩也会大)。

矩阵的仿射变换(平移、放缩、旋转)(平移矩阵_wo的博客-CSDN博客_平移矩阵),有趣的是这些变换矩阵需要增加成n+1的方阵。

解析几何:

重要概念:范数,内积,向量的长度、距离和角度,正交投影。

范数是“距离”的广义版,数学上用几个性质来描述它,其中欧几里得距离是常用的平面距离,被称作L2范数;

内积是“点积”的广义版,数学上同样用对应的几个性质描述它。

应用:

矩阵可以解决图论的问题,解答过程很有启发性,因为之前的思想被框定在了代数层面;

大规模线性代数方程组的求解,用到迭代法,可以通过控制迭代次数来控制解的精度和求解时间,我认为这个应用非常完美地体现了迭代思想,也非常能体现计算机思维的应用;

为了充分利用有限的计算资源,当从计算机角度来执行矩阵运算时,需要考虑很多方面:

  1. 精度,计算机是离散的,就是说能画出来光滑曲线是因为点与点之间离得很近;
  2. 内存,实际场景中有很多是稀疏矩阵,如果不做存储方式的优化是很浪费内存的;
  3. 速度,IPO中每一步都可能是速度的瓶颈;
  4. 扩展,当运算体量过大时,得用分布式。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值