本文重点
从本文开始,我们将开启线性代数的学习,在线性代数中有向量、矩阵,以及各种性质,那么这些数学知识究竟和人工智能有什么关系呢?
重要性
机器学习和深度学习的本质就是训练模型,要想训练模型需要使用数据,要想让计算机能够处理数据,那么需要对样本进行向量化,比如文本中的每一个词就是一个向量。或者在计算机视觉中,常常将一张图片以矩阵的形式进行处理,如果是彩色图片那么就是三通道的矩阵,也就是机器学习和深度学习的输入都是向量或者矩阵。
其实不光输入,中间的计算过程,也是矩阵的计算,神经网络的前向传播,线性回归算法的计算、逻辑回归的计算都是batch样本的计算。
梯度下降算法,往往也不是每次优化一个模型参数,而是采用批量的方式,那么这里就涉及到了向量或者矩阵的求导,如果你不懂这个,代码你都写不出来。
比如分类问题,我们往往得到一个向量,比如10个分类问题,那么我们可以得到一个维度为10的向量,每个维度表示一个类别的评分,如果是batch的,我们可以得到一个m,n的矩阵,m表示样本数量,n表示分类数量。
在机器学习中也有很多矩阵的影子,比如隐马尔可夫模型中的转移矩阵和发射矩阵等等,总的来说,如果你不懂线性代数,那么众多机器学习或者深度学习模型的计算你是看不懂的。