您的位置:首页 > 其它

机器学习--吴恩达(线性回归,梯度下降,正规方程法)

2018-01-16 16:56 441 查看
本节课是对监督学习的讲解,ng以自动驾驶为例,告诉我们汽车对方向的预测是连续值,故而是回归问题。

什么是回归问题?(regression)

确定两种或两种以上变量相互依赖的定量关系的一种统计分析方法

回归与分类问题的不同

回归与分类都属于预测问题,而回归预测的结果是连续的值,而分类的结果是离散的值。回归问题的要求就是:给定一个模式,根据训练集推断它所对应的输出的y值是多少。也就是使用y=g(x)来推断任一输入x所对应的输出值,分类问题是:给定一个新的模式,根据训练集推断它所对应的类别(如:+1,-1)。也就是使用y=sign(g(x))来推断任一输入x所对应的类别。综上,回归问题和分类问题的本质一样,不同仅在于他们的输出的取值范围不同。分类问题中,输出只允许取两个值;而在回归问题中,输出可取任意实数。

线性回归(Linear Regression)

统计学中,线性回归(Linear Regression)是利用称为线性回归方程的最小平方函数对一个或多个自变量和因变量之间关系进行建模的一种回归分析。

逻辑回归(Logistic regression)

逻辑回归的模型 是一个非线性模型,sigmoid函数,又称逻辑回归函数。但是它本质上又是一个线性回归模型,因为除去sigmoid映射函数关系,其他的步骤,算法都是线性回归的。逻辑回归在线性回归的基础上,用了这个逻辑函数。





线性回归问题举例

m:训练数据的大小。x表示输入变量,是向量,y表示输出变量,是实数,(x,y)是一个训练实例,(x(i),y(i))表示第i个训练实例。

如果用线性问题解决,假设函数如下:



m是样例的数目,我们找出使这个函数最小的参数值,就得到了拟合训练集的最佳参数。

优化参数

梯度下降(gradient descent)

Gradient descent 又叫 steepest descent,是利用一阶的梯度信息找到函数局部最优解的一种方法,也是机器学习里面最简单最常用的一种优化方法.

 更新规则:



运用这个规则直到收敛,就是批梯度下降算法(batch gradient descent)。其

中,收敛的判断有两种规则,一是判断两次迭代后参数的变化,二是判断两次迭

代后目标函数的变化;规则中的α是学习速率,这个需要在实践中进行调整,其
值过小会导致迭代多次才能收敛,其值过大会导致越过最优点发生震荡现象

数据量较大时,每迭代一次就要遍历全部数据一次,

这样会使得运行变成龟速。为了解决这个问题,一般采用如下的方法:
Repeat Until Converge{
For i=1 to m{
? ? ≔ ? ? − α(ℎ ? (? (?) ) − ? (?) )? ?
(?)(for every j)
}
}
意为更新参数时,不必遍历整个数据集,只需要一个实例便足够了。该算法

可以达到很高的效果,但是会导致遍历次数增多,不能精确收敛到最优值等问题。

该方法被称为增量梯度下降(incremental gradient descent)或随机梯度下降

(stochastic gradient descent)。

正规方程法

最小二乘法可以将误差方程转化为有确定解的代数方程组(其方程式数目正好等于未知数的个数),从而可求解出这些未知参数。这个有确定解的代数方程组称为最小二乘法估计的正规方程(或称为法方程)。

梯度下降算法是求目标函数最优值的一种解法,对于上类问题,我们可以直接求出参数值而不用迭代的方法,这就是正规方程法。



如果定义函数f(A)为:


则有

 



定义一个矩阵,作为设计矩阵,表示样本输入,xθ



得到结果后,我们令导数为0,得到:



参考资料

回归问题:http://blog.csdn.net/omenglishuixiang1234/article/details/50247143

正规方程法:http://blog.csdn.net/hahajinbu/article/details/49904665
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐