【机器学习算法篇】一、线性回归

预测函数:h{_{\theta }}(x)=\theta _{0}+\theta _{1}x_{1}+\theta _{2}x_{2}+...+\theta _{n}x_{n}

                  h_{\theta }(x)={\sum_{i=0}^{n}}\theta _{i}x_{i}=\theta ^{T}x

损失函数:J(\theta )=1/2{\sum_{i=1}^{m}}(h_{\theta }(x^{(i)})-y^{(i)})^{2}

参数:      \theta =(X^{T}X)^{-1}X^{T}y(正规方程)

以上即为参数\theta最优解的闭式解,但我们可以发现\theta*的计算涉及矩阵的求逆,这样的话就有一些限制了,只有在X^T*X为满秩矩阵或者正定矩阵时,才可以使用以上式子计算。但在现实任务中,X^T*X往往不是满秩矩阵,这样的话就会导致有多个解,并且这多个解都能使均方误差最小化,但并不是所有的解都适合于做预测任务,因为某些解可能会产生过拟合的问题。

什么时候选择正规方程

梯度下降特点:

选择合适的学习速率α
通过不断的迭代,找到θ0 ... θn, 使得J(θ)值最小
正规方程特点:

不需要选择学习速率α,不需要n轮迭代
只需要一个公式计算即可
但是并不是所有的线性回归都适合用正规方程,我们知道求解一个矩阵的逆复杂度为O(n^3),因此当特征维度n非常大的时候(X^T * X)^-1需要O(n^3)时间,此时选择正规方程效率将会特别低

当n < 1000时候选择正规方程比较合适,但是当n > 1000的时候使用梯度下降算法会是更佳的方案

                 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值