Machine learning 矢量化梯度下降函数
我对线性代数相当陌生,目前正在学习Andrew Ng的机器学习课程。我很难理解下面两个函数是如何相同的。我正在研究线性/逻辑回归的向量化梯度下降Machine learning 矢量化梯度下降函数,machine-learning,vectorization,octave,linear-regression,gradient-descent,Machine Learning,Vectorization,Octave,Linear Regression,Gradient Descent,我对线性代数相当陌生,目前正在学习Andrew Ng的机器学习课程。我很难理解下面两个函数是如何相同的。我正在研究线性/逻辑回归的向量化梯度下降 theta = theta - (alpha/m)*(X')*(X*theta - y) theta = theta - (alpha/m)*sum((X*theta -y)*x(i)) 我的想法是席是向量,为了做向量乘法,我需要转置它,但是当试图模仿一个例子时,我看不出这是多么必要。任何帮助或解释都将不胜感激。假设您参考的是底部的方程式,第4课,
theta = theta - (alpha/m)*(X')*(X*theta - y)
theta = theta - (alpha/m)*sum((X*theta -y)*x(i))
我的想法是席是向量,为了做向量乘法,我需要转置它,但是当试图模仿一个例子时,我看不出这是多么必要。任何帮助或解释都将不胜感激。假设您参考的是底部的方程式,第4课,幻灯片8,那么您的总和就错了。席词是指在总和之内,而不是在外面。在“向量化”的情况下,输入X包含所有的个人观察席,假定是用你的代码来确定的列向量检查。因此,正确的等效下表达式应为:
theta = theta - (alpha/m)*sum((X*theta -y) .* X)
这实际上等价于顶部的另一个向量化表达式,因为一般来说,对于任何两列向量A和B,A`*B等价于SUMA.*B/P>是的,在席前面有一个操作符丢失。请回答您的问题,以确保所有代码都正确。什么是X',是X转置吗?Andrew Ng的机器学习课程没有提供您可能认为的那么多信息来回答这个问题,不,我们不会去学习这门课程只是为了弄清楚什么是alpha,m,theta,y,X,在这个特殊的例子中,X是。重申你的问题,说明变量是什么,更重要的是,变量的维度,答案很可能会自动弹出。@CrisLuengo你说得对,Cris,我应该更具体一些,我会编辑这部分。