使用最大似然法来求解线性模型(1)
2017-03-26 17:38
232 查看
在Coursera机器学习课程中,第一篇练习就是如何使用最小均方差(Least Square)来求解线性模型中的参数。本文从概率论的角度---最大化似然函数,来求解模型参数,得到线性模型。本文内容来源于:《A First Course of Machine Learning》中的第一章和第二章。
先来看一个线性模型的例子,奥林匹克百米赛跑的男子组历年数据如下:
所谓求得一个线性模型就是:给定一组数据(上图中的很多点),如何找到一条合适的直线,让这条直线能够更好地“匹配”这些点。
一种方式就是使用最小二乘法,通过最小化下面的代价函数J(θ)求得一条直线方程--即线性模型。
其中,hθ(x)是待求解的线性模型(本例中就是一条直线),y(i)是样本x(i)对应的实际值,hθ(x(i))是线性模型在样本x(i)上的预测值。我们的目标就是让实际值与预测值二者尽可能地接近--二者之间的“差”尽可能地小,这样我们的预测结果就越准确,我们的线性模型也越好(不考虑overfitting)
最小二乘法就是最小化J(θ)这个函数,解出θ,代入hθ(x),得到一条直线(hθ(x)就是直线方程)。而这条直线,就是我们的线性模型了。
对于这种方式而言,我们的模型就是一条直线,在我们的模型中(直线)没有能够反映真实值与预测值之间的误差的因子。把模型稍微修改一下:
从原来的:(这里的w就相当于上面的θ,t 就是hθ(x),只是为了统一 一下《A First Course of Machine Learning》中用到的符号)
t=wT*x
改成:
t=wT*x+ξ
其中,ξ 用来表示“误差”---noise,x是训练样本数据,w是模型的参数。
这样,我们的新模型表达式:t=wT*x+ξ 就可以显示地表示 noise 了(不仅仅是一条直线表达式了)。那现在问题还是:怎样求得一个“最好的” w 和 ξ,得到“最好的”模型?
现在不是用上面的最小二乘法了求解w 和 ξ 了,而是用最大似然函数法---(见使用最大似然法来求解线性模型(2)-为什么是最大化似然函数?)
原文:http://www.cnblogs.com/hapjin/p/6623127.html
先来看一个线性模型的例子,奥林匹克百米赛跑的男子组历年数据如下:
所谓求得一个线性模型就是:给定一组数据(上图中的很多点),如何找到一条合适的直线,让这条直线能够更好地“匹配”这些点。
一种方式就是使用最小二乘法,通过最小化下面的代价函数J(θ)求得一条直线方程--即线性模型。
其中,hθ(x)是待求解的线性模型(本例中就是一条直线),y(i)是样本x(i)对应的实际值,hθ(x(i))是线性模型在样本x(i)上的预测值。我们的目标就是让实际值与预测值二者尽可能地接近--二者之间的“差”尽可能地小,这样我们的预测结果就越准确,我们的线性模型也越好(不考虑overfitting)
最小二乘法就是最小化J(θ)这个函数,解出θ,代入hθ(x),得到一条直线(hθ(x)就是直线方程)。而这条直线,就是我们的线性模型了。
对于这种方式而言,我们的模型就是一条直线,在我们的模型中(直线)没有能够反映真实值与预测值之间的误差的因子。把模型稍微修改一下:
从原来的:(这里的w就相当于上面的θ,t 就是hθ(x),只是为了统一 一下《A First Course of Machine Learning》中用到的符号)
t=wT*x
改成:
t=wT*x+ξ
其中,ξ 用来表示“误差”---noise,x是训练样本数据,w是模型的参数。
这样,我们的新模型表达式:t=wT*x+ξ 就可以显示地表示 noise 了(不仅仅是一条直线表达式了)。那现在问题还是:怎样求得一个“最好的” w 和 ξ,得到“最好的”模型?
现在不是用上面的最小二乘法了求解w 和 ξ 了,而是用最大似然函数法---(见使用最大似然法来求解线性模型(2)-为什么是最大化似然函数?)
原文:http://www.cnblogs.com/hapjin/p/6623127.html
相关文章推荐
- 使用最大似然法来求解线性模型(4)-最大化似然函数背后的数学原理
- 使用最大似然法来求解线性模型(3)-求解似然函数
- 使用最大似然法来求解线性模型(2)-为什么是最大化似然函数?
- 使用吉布斯采样求解LDA模型
- 决策树、逻辑回归、线性回归使用时注意事项以及模型过拟合策略
- 编程珠玑读书笔记之----->使用线性算法求解连续子序列的最大和
- 详解梯度下降法求解线性模型参数
- 使用感知机进行二类分类的线性分类模型测试(minst数据集)
- sklearn 线性模型使用入门
- MIT18.06线性代数课程笔记7:使用消元法求解Null space
- 03-《机器学习及实践》学习之使用线性分类模型
- linear_model:线性模型使用
- TensorBoard的使用(结合线性模型)
- 算法线性编程珠玑读书笔记之----->使用线性算法求解连续子序列的最大和
- Java应用梯度下降求解线性SVM模型参考代码
- 线性规划的简单应用及使用EXCEL求解
- 使用线性分类模型从事良/恶性肿瘤预测任务
- ASP.NET 2.0 中配合 Master Page 使用的优化 CSS 模型
- 如何查找和使用 Office 对象模型文档
- sas软件求解线性、非线性和整数问题