人工智能数学基础
数学与人工智能概览
数学与人工智能
• 人工智能是一个交叉学科,应用的领域也非常广阔。不同的应用领域所要求的数学背景知识也不尽相同。但是线性代数、概率论、微积分和统计学是人工智能用于表述的“语言”。学习数学知识将有助于深入理解底层算法机制,便于开发新算法。
• 线性代数:描述深度学习算法的基础也是核心。它通过矩阵表示法来实现深度学习方法。待处理的非结构化数据转都换成离散的矩阵或向量形式。比如一张图像可以表示为按顺序排列的像素数组形式,声音数据可以表示为向量形式、神经网络就是无数的矩阵运算和非线性变换的结合。
• 概率论与统计学:研究数据分布与如何处理数据。深度学习算法所做的绝大多数事情就是预测,预测源于不确定性,而概率论与统计就是讨论不确定性的学科。
• 微积分:数学分析的基础。
线性代数
• 线性代数是代数学的一个分支,主要处理线性问题。线性问题是指数学对象之间的关系是以一次形式来表达的。线性代数诞生于求解线性方程组。行列式、矩阵和向量是处理线性问题的有力工具。
• 线性代数与人工智能:
o 神经网络中的所有参数都被存储在矩阵中;线性代数使矩阵运算变得更加快捷简便,尤其是在GPU上训练模型时,因为GPU可以并行地以向量和矩阵运算。
o 图像在计算中被表示为按序排列的像素数组。
o 视频游戏使用庞大的矩阵来产生令人炫目的游戏体验。
标量、向量与矩阵
向量与矩阵应用实例
在计算机视觉中,一张图片会以矩阵的形式进行存储。在处理图像时,常常会把图像矩阵转换为一个向量来处理。
张量
• 张量(Tensor)是深度学习中的一个重要概念,是TensorFlow、Pytorch等很多深度学习框架重要组成部分。深度学习中的很多运算与模型优化过程都是基于tensor完成。
• 张量定义:一个多维数组。
o 零阶张量:标量;一阶张量:向量;二阶张量:矩阵。
矩阵的运算
线性分类器
总共3类(猫、车和人),对一张图片(通过图像处理将图像处理为只由6像素点组成)进行分类,以最简单的线性分类器为例:
矩阵与运动
线性变换
矩阵的转置、单位矩阵
• 单位矩阵:所有沿主对角线的元素都是1,而其他位置的所有元素都是0的矩阵。任意矩阵与单位矩阵相乘,都不会改变。
逆矩阵、正交矩阵
•
o 逆矩阵在深度学习中的应用:牛顿法优化神经网络。
o 在深度学习中,经常需要求逆矩阵,但是由于求逆矩阵的计算开销巨大,因此通常会将矩阵转换成其他特殊矩阵的形式以避免或简化矩阵求逆。
•
o 正交矩阵的行向量之间与列向量之间都是两两正交(向量点积为0)的单位向量。
o n阶正交矩阵可以看作n维空间中任意相互垂直(正交)坐标基。
o 向量乘以一个正交矩阵:可以看作是对向量只进行旋转,而没有伸缩和空间映射作用。
• 正交矩阵的应用:
o RNN中防止梯度消失和维度爆炸的方法:正交初始化。
o 对于正交矩阵,可以将求逆矩阵的过程转化为求矩阵转置,大大减小了计算量。
o 矩阵分解……
• 扩展:满秩矩阵才有逆矩阵。秩:空间维度。不是满秩矩阵对应的线性变换等同于降维/升维的概念。因此,升维维后不能得到唯一的升维结果(解不唯一),所以满秩矩阵才有逆矩阵。如二维中是个圆,到三维空间后就升维结果就不唯一了。
正交矩阵与图像旋转
对角矩阵
对称矩阵
例如:距离矩阵和协方差矩阵都是对称矩阵。
行列式
• 行列式是一个将方阵映射到一个标量的函数,记作det(A)或|A|。行列式可以看作是矩阵有向面积或体积的推广。或者说是在n维欧几里得空间中,行列式描述了一个线性变换对“体积”所造成的影响。
• 行列式的意义
o 行列式等于矩阵特征值的乘积。
o 行列式的绝对值可以用来衡量矩阵参与矩阵乘法后空间扩大或缩小了多少。
• 如正交矩阵的行列式大小都为1或-1。即用正交矩阵进行线性变换后的矩阵在空间中的有向面积或体积保持不变。
o 行列式的正负表示空间的定向。
• 行列式的应用:求矩阵特征值,求解线性方程等。
• 扩展:行列式为零意味着方阵不是满秩的。因此次方阵的线性变换对应着空间维度的改变。
• 二阶行列式的计算: