做中文网站公司,双井网站建设,如何自己创办一个网站,做网站详细教程写在前面#xff1a;在之前的文章当中提到过#xff0c;学习梯度下降算法#xff0c;可能需要一点点线性代数的知识。在本篇文章当中#xff0c;我们的讨论就涉及到了向量。笔者也曾提到#xff0c;不妨把向量看成对数据进行批量操作的一种工具#xff0c;这样可能对我们…写在前面在之前的文章当中提到过学习梯度下降算法可能需要一点点线性代数的知识。在本篇文章当中我们的讨论就涉及到了向量。笔者也曾提到不妨把向量看成对数据进行批量操作的一种工具这样可能对我们理解接下来的知识有一些帮助。推荐阅读吴恩达机器学习第五章正规方程第六章矢量Outline:矢量正规方程一.矢量在我们将向量应用到我们的梯度算法之前我们进行一个简单的回顾。这是我们的多元函数梯度下降算法。我们来看一下预测函数的计算在MATLAB/C中的代码实现吴恩达老师的课程中对Octave/MATLAB的简单应用进行了讲解笔者认为大家可以系统的学习Python和MATLAB这有助于我们接下来的算法实现C实现左侧是未向量化右侧是向量化MATLAB:未向量化实现MATLAB:向量化实现通过上述代码的实现我们可以看出相对于未向量化的循环结构我们向量化之后对数据进行批量操作两个矩阵的一次乘法运算就可以得到我们的预测值提高了我们的算法效率。下面我们展示对梯度下降算法进行矢量化后的结果这也是一个难点算法的表达上述表达式中θ是一个列向量δ也是一个列向量我们来看看他们具体是什么。θ是一个n1维向量分量是θ_0到θ_nδ读者可以耐下性子自己动笔计算验证向量化后的算法跟未向量化的算法是完全等价的在这里我们对数据进行了批量计算提高了我们的算法效率。也许对于刚刚接触线性代数的朋友来数这是难以理解的但是不要心急上述计算所具备的知识就是基本的向量加减运算向量的乘法运算耐心计算搞明白上述算法的内涵。总结一下我们得到了向量化的梯度下降算法二.正规方程组我们来回顾一下我们求解多元函数代价函数极小值点的数学原理是什么各个一阶偏导数为零。除了这样做我们还有什么办法我们来看看正规方程组法求解极小值点。图片源自黄海广|机器学习实际上当特征变量的数目并不大小于一万的时候我们通常采用正规方程组的方法而不是梯度下降算法。熟悉线性代数的朋友可能知道有时候可能会存在矩阵不可逆的情况我们将这样的矩阵称之为奇异矩阵但是我们的pinv函数是一个求伪逆函数这意味着即使我们的矩阵不可逆我们的算法仍然可以正常运行。我们给出正规方程组算法的证明看懂它需要了解矩阵求导法则图片源自黄海广|机器学习个人笔记图片源自黄海广|机器学习个人笔记到这篇文章结束为止我们要对线性回归预测说一声暂时的告别希望大家可以结合视频学习自己敲敲代码实现自己的算法。多练习多实践。第一次截稿日期2019/5/4