前言

很多同学一看到机器学习的数学内容就头皮发麻,甚至因此产生了弃坑的想法,在这里我要告诉大家,每一个学过高数的人,都有足够的数学基础去研究机器学习,有些知识点可能忘了,但看到了就能很快想起来,想入门机器学习真的不难!

这个系列的目的,是帮大家把机器学习所需要的数学基础(线性代数部分)回忆 起来。为了合理控制篇幅,我打算分成 2~3 次来写。

一、线性代数知识结构

为了直观地展示机器学习所需的线性代数的知识结构,我画了一张思维导图:

相信其中的很多内容你都觉得眼熟,可以直接跳过觉得没有问题的部分。

二、线性代数中的基本概念

1 向量、矩阵、张量

P.S.这三个概念,不同的学科有不同的理解方式,在这里的概念是依据计算机科学的思维给出的。

向量 (vector): 一列有序排列的数。

矩阵 (matrix): 二维的数组。

张量 (tensor): 多维的数组。

2 线性相关与子空间

把向量分别乘以标量系数并相加的操作称为 线性组合

一组向量,如果任意一个向量都不能表示为其它向量的线性组合,就可以被称为是 线性无关 的,反之,则称为 线性相关

如果把向量看成是多维空间中的一个点,一组向量通过线性组合所能构成的点的集合,称为这组向量的 生成子空间

矩阵可以看作是向量的组合。通常我们会研究线性相关对

Ax=bAx=bAx=b

这个方程的解的影响,其中 AAA 是一个矩阵,xxx 和 bbb 是向量。

3 范数 (norm)

在知乎上看了一些关于 “如何理解范数” 的回答,感觉并没有 get 到我想要的东西。还是花书讲的好,总结一下就是一句话:

范数是用来衡量向量或矩阵的大小的!

范数是用来衡量向量或矩阵的大小的!

范数是用来衡量向量或矩阵的大小的!

因为向量的大小可以有不同的定义方式,所以存在不同的范数。

或者说,范数是将向量映射到非负值的满足下列性质的任意函数

  • f(x)=0∣x=0f(x) = 0|x=0f(x)=0∣x=0
  • f(x+y)≤f(x)+f(y)f(x+y) \leq f(x)+f(y)f(x+y)≤f(x)+f(y)
  • ∀α∈R,f(αx)=∣α∣f(x)\forall \alpha \in R , f(\alpha x) = |\alpha|f(x)∀α∈R,f(αx)=∣α∣f(x)

我们经常使用的范数有 LpL^pLp 范数 、最大范数 、Frobenius 范数等。

LpL^pLp 范数

向量 xxx 的 LpL^pLp 范数定义为

∣∣x∣∣p=(∑i∣xi∣p)1p||x||_p=(\sum_i|x_i|^p)^\frac{1}{p}∣∣x∣∣p​=(i∑​∣xi​∣p)p1​

其中 p∈Rp\in Rp∈R 且 p≥1p\geq 1p≥1 。

当 p=2p=2p=2 时,上式的形式跟我们定义 向量的模 的公式一毛一样,这个 L2L^2L2 范数,也被称为是 欧几里得范数

L2L^2L2 范数在机器学习中的应用非常广泛。很多时候,我们也会用直接用其平方来衡量向量的大小,因为计算会更加方便。

L1L^1L1 范数常用于需要严格区分向量中零和非零但是很小的元素的情景,因为平方 L2L^2L2 范数在零附近增长很慢。

最大范数

最大范数即向量中最大的元素的绝对值,记作 ∣∣x∣∣∞||x||_\infty∣∣x∣∣∞​。

Frobenius 范数

Frobenius 范数通常用来衡量矩阵的大小,类似于向量的 L2L^2L2 范数,其形式为

∣∣A∣∣F=∑i,jAi,j2||A||_F=\sqrt{\sum_{i,j}A_{i,j}^2} ∣∣A∣∣F​=i,j∑​Ai,j2​​

P.S. 大家在实际中可能会遇见各种各样的范数,或者自己也可以根据需要去定义一个。

4 特殊矩阵

主要有对角、单位、对称、奇异、正交、正定这几种。

对角矩阵

只在主对角线上有非零元素的矩阵。

要注意并不是所有对角矩阵都是方阵,长方形的矩阵也可以是对角矩阵。

单位矩阵

主对角线上全是 1 的对角矩阵,且为方阵。

对称矩阵

元素以主对角线为对称轴对应相等的矩阵。也就是转置等于自身的矩阵。

奇异矩阵

列向量线性相关的方阵。

需要注意的是,非方阵谈不上奇异非奇异,这里说列向量线性相关,其实等价于行向量线性相关。

同时,奇异矩阵不可逆,可逆矩阵一定是非奇异矩阵。

正交矩阵

如果 xTy=0x^Ty=0xTy=0,则称向量 xxx 和向量 yyy 正交。如果这些向量不但相互正交,而且其 L2L^2L2 范数都为 1,则称它们为 标准正交

正交矩阵,是指行向量和列向量分别 标准正交方阵

分别标准正交,即所有行向量之间相互标准正交,所有列向量之间也相互正交。由于 n 维空间中至多有 n 个向量两两正交,所以正交矩阵必定是方阵。

对正交矩阵,有 ATA=AAT=IA^TA=AA^T=IATA=AAT=I,于是 A−1=ATA^{-1}=A^TA−1=AT,即

正交矩阵的等于它的转置

正定矩阵

如果方阵 AAA 与一个向量 vvv 相乘,结果是一个与 vvv 共线的向量,相当于对 vvv 进行了缩放,即

Av=λvAv=\lambda vAv=λv

则称 vvv 为 AAA 的 特征向量,标量 λ\lambdaλ 为 vvv 这个特征向量对应的 特征值

特征值 均为正数的方阵称为 正定矩阵

特征值均为 非负数 的矩阵成为 半正定,均为 负数 的称为 负定,均为 非正数 的称为 半负定


在下篇文章中,我们将一起复习线性代数的常见运算。感谢阅读!

机器学习的数学基础——线性代数篇(一)相关推荐

  1. AI第二阶段 高等数学基础——线性代数篇学习总结

    AI第二阶段:高等数学基础-线性代数篇 学习总结                            田超凡_20190307复习课 ==================目录============ ...

  2. 干货来袭!!!3天0基础Python实战项目快速学会人工智能必学数学基础全套(含源码)(第1天)线性代数篇:矩阵、向量及python实战

    第1天:线性代数篇:矩阵.向量.实战编程 第2天:微积分篇:极限与导数.梯度下降.积分.实战编程 第3天:概率分析篇:条件概率与全概率.贝叶斯公式.实战项目 目录 前言 一.矩阵在AI中的应用 二.矩 ...

  3. 两个卡方分布之和_机器学习算法数学基础之 —— 统计与概率论篇(3)

    核心问题 发现数字的隐藏规律,完成分类. 核心技能 最大似然估计 给定一个概率分布 ,已知其概率密度函数(连续分布)或概率质量函数(离散分布)为 ,以及一个分布参数 ,我们可以从这个分布中抽出一个具有 ...

  4. 【机器学习|数学基础】Mathematics for Machine Learning系列之线性代数(20):用配方法化二次型为标准形

    目录 前言 往期文章 5.6 用配方法化二次型为标准形 题目一 题目二 结语 前言 Hello!小伙伴! 非常感谢您阅读海轰的文章,倘若文中有错误的地方,欢迎您指出-   自我介绍 ଘ(੭ˊᵕˋ)੭ ...

  5. 【机器学习|数学基础】Mathematics for Machine Learning系列之线性代数(10):向量组及其线性组合

    文章目录 前言 往期文章 4.1 向量组及其线性组合 定义1 定义2 定理1 定义3 定理2 推论 举例 例 1 例2 定理3 小结 结语 前言 Hello!小伙伴! 非常感谢您阅读海轰的文章,倘若文 ...

  6. 机器学习和深度学习之数学基础-线性代数 第一节 向量及线性映射

    转自:https://blog.csdn.net/yong_bai/article/details/80033516 yong_bai 发布于2018-04-18 21:40:15 阅读数 1440  ...

  7. 【机器学习|数学基础】Mathematics for Machine Learning系列之线性代数(21):正定二次型

    目录 前言 往期文章 5.7 正定二次型 定理9:惯性定理 定义10 定理10 推论 定理11:赫尔维茨定理 举例 例17 结语 前言 Hello!小伙伴! 非常感谢您阅读海轰的文章,倘若文中有错误的 ...

  8. 【机器学习|数学基础】Mathematics for Machine Learning系列之线性代数(26):线性变换的矩阵表达式

    目录 前言 往期文章 6.5 线性变换的矩阵表达式 定义6 定理2 定义7 举例 例11 结语 前言 Hello!小伙伴! 非常感谢您阅读海轰的文章,倘若文中有错误的地方,欢迎您指出-   自我介绍 ...

  9. 【机器学习的数学基础】(二)线性代数(Linear Algebra)(中)

    文章目录 2 线性代数(Linear Algebra)(中) 2.4 向量空间 2.4.1 群 2.4.2 向量空间 2.4.3 向量子空间 2.5 线性独立 2.6 基和秩 2.6.1 生成集和基 ...

  10. 【机器学习|数学基础】Mathematics for Machine Learning系列之线性代数(19):二次型及其标准形

    目录 前言 往期文章 5.5 二次型及其标准形 定义8:二次型 定义9:合同 定理8 推论 举例 例14 结语 前言 Hello!小伙伴! 非常感谢您阅读海轰的文章,倘若文中有错误的地方,欢迎您指出- ...

最新文章

  1. Go中的Socket编程
  2. 061_html字符实体
  3. 我对ThreadLocal的理解
  4. Android kernel Crash后,定位出错点的方法
  5. 数字的空洞 水 南邮NOJ 1071
  6. 三调数据库及DLTB各个字段含义
  7. flow hive 新型蜂箱_全新Flow Hive 2使得养蜂人获取蜂蜜更轻松
  8. Atitit webdav的使用与配置总结attilax总结 目录 1. 支持的协议 2 1.1. http File unc 2 2. 应用场景 2 2.1. 远程文件管理实现功能 文件建立
  9. 新手指南: 手把手教你安装 Ubuntu 和 Fedora
  10. html5中webSql的应用
  11. 信息技术c语言试题,全国信息技术水平考试C语言考试试卷.doc
  12. 权威高清24色图(2种颜色叫不上名,青专业人士指点)-制作不易,对你有帮助麻烦点个赞
  13. 无法出现 Bandizip 的右键菜单
  14. android仿网易云音乐引导页、仿书旗小说Flutter版、ViewPager切换、风扇叶片效果等源码...
  15. C#实现自己的远程桌面控制工具
  16. 35、矩阵(稀疏矩阵)的压缩存储(一)
  17. window10鼠标加速怎么关_鼠标加速怎么关闭_电脑鼠标加速如何关闭
  18. Embedding Cardinality Constraints in Neural Link Predictors (SAC 2019)
  19. 分享两个音乐播放地址
  20. 很多人认为创业公司很难成功,这是一个事实

热门文章

  1. c语言funcode空格消失的函数,funcode海底世界练习c语言
  2. 软考初级程序员背题记录
  3. 新路嘉机器人_嘉懿学子在2019年上海市中小学机器人竞赛中喜获佳绩
  4. CSDN免登录复制方式
  5. 前端面试题及答案(持续更新)
  6. PS 钢笔工具如何拖拽滑杆
  7. 【数学建模】历年数学建模国赛评价类题目汇总
  8. JDK、J2EE、J2SE、J2ME的区别(转-2021-04-30)
  9. 字节跳动面试分享:java从入门到精通第五版答案位置
  10. 第一至第七次人口普查县级人口普查GIS数据集(1953-2010)