建设网站企业排行,人力资源公司注册需要什么条件,网站为什么要挂服务器上,珠海网站建设公司讨论这个方法之前#xff0c;先说些题外话。首先#xff0c;我感觉机器学习是一门值得我们去了解和学习的一门技术#xff0c;它不仅仅应用于我们的生活#xff0c;而且不断地在改变着我们的方方面面。虽然很早就已经接触它#xff0c;并开始学习#xff0c;但是总体感觉…讨论这个方法之前先说些题外话。首先我感觉机器学习是一门值得我们去了解和学习的一门技术它不仅仅应用于我们的生活而且不断地在改变着我们的方方面面。虽然很早就已经接触它并开始学习但是总体感觉是学习的比较混乱仅以从今天开始的一系列文章作为重新总结和学习机器学习的一个新的历程。其次学习机器学习要有耐心要执着要不断总结和实现。最后也是最重要的要明白你的初衷是什么也就是为什么要学习它。如果没有搞清楚为什么那还是先弄清楚吧。好了废话不多说了开始进入正题。
一、引言 机器学习中的一个大类的问题就是分类问题。分类在我们的生活中也是很常见的比如说你刚进入大学要分清哪些同学喜欢玩游戏哪些喜欢学习这样你想玩游戏的时候可以找爱玩游戏的同学一起你学习遇到难题可以找喜欢学习的同学请教。当然你的好友可以同时做到以上两点那是最好不过的了。 还要提一下分类和回归的区别当我们要解决的问题是预测的离散值的时候也就是上面提到的例子分清哪些人喜欢玩游戏哪些人喜欢学习这就是一个分类问题。当要预测的值是一个连续值的话那这就是一个回归问题。比如我们可能在刚上大学的时候不了解同学们平时喜欢打游戏或者喜欢学习但是我们知道他们一系列的其他信息A同学周一到周五喜欢去图书馆、自修室但是周末就和寝室的同学打游戏甚至玩通宵当然还有其他信息。那么我们的问题是A同学喜欢学习的可能性有多大这个问题的答案是[0,1]上的任意一个实数这取决于你的预测模型你可能根据你的系统推测出A喜欢学习的概率是0.51。
二、问题的提出 我们考虑简单的单一变量的线性回归。我这里为了简便就举《机器学习基础教程》上的例子。男子100m比赛赢得金牌不同举办年份所需的时间。如图1 所示 通过上图我们至少可以看到年份和获胜时间存在一个关系。我们要预测2016年男子100米金牌所需的时间。
三、模型假设 yy表示所需时间, xx表示年份则有如下假设。
yaxb(1)y = ax+b \quad(1) 我们现在知道2016年之前每届奥运会的男子100米金牌所需的时间通过图一我们看到数据点的分布呈现一种趋势关系假设它们分布在公式1所示的直线周围我们的目标是找到一条直线来拟合我们的观测数据进而用我们找到的这条最佳的线预测2016年的男子100m金牌所需时间。那么什么样的直线最好呢我们如何求公式1中的aa, bb 这两个参数呢假定我们的模型已经选择好了那么衡量这个模型的一个常用方式就是用平方损失函数
L(t,f(x;a,b))(t−f(x;a,b))2(2)
L(t,f(x;a,b)) = (t-f(x;a,b))^2 \quad(2) 上述公式2最小我们就说模型对我们现有的观测数据来说是最好的我们暂且抛开数据过拟合的问题。那么问题转化为求L(t,f(x;a,b))L(t,f(x;a,b))取得最小值时候的a,ba,b.令nn代表历史数据的数目,则我们的损失函数可以写为: L=∑in(yi−(axi+b))2(3)L=\sum_{i}^n(y_i-(ax_i+b))^2\quad(3)四、推导过程 用公式3分别对a,ba,b求偏导数然后令其分别等于0 这就可以求得a,ba, b. 这里用到了函数极值可以参考高等数学。
∂L∂a∑in2(yi−(axib))(−xi)−2∑in(yixi−ax2i−bxi)0(4)∂L∂b∑in2(yi−(axib))(−1)−2∑in(yi−axi−b)0(5)
\begin{array}{ll}\frac {\partial L}{\partial a} = \sum_{i}^n
2(y_i-(ax_i+b))(-x_i)\\
\quad=-2\sum_i^n(y_ix_i-ax_i^2-bx_i) =0 \quad (4)\\
\frac{\partial L}{\partial b}=\sum_i^n2(y_i-(ax_i+b))(-1)\\=-2\sum_i^n(y_i-ax_i-b)=0\quad(5)
\end{array}利用公式4,5求解得 a∑nixi∑niyi−n∑niyixi(∑nixi)2−n∑nix2ia=\frac{\sum_i^nx_i\sum_i^ny_i-n\sum_i^ny_ix_i}
{(\sum_i^nx_i)^2-n\sum_i^nx_i^2}b∑nixi∑niyixi−∑nix2i∑niyi(∑nixi)2−n∑nix2ib=\frac{\sum_i^nx_i\sum_i^ny_ix_i-\sum_i^nx_i^2\sum_i^ny_i}{(\sum_i^nx_i)^2-n\sum_i^nx_i^2}把a,ba,b带入公式1然后令x2016x=2016就可以求出所需时间拟合直线的效果如图2所示这样我们就可以进行预测了。当然这里只是一个简单的事例我们并没有考虑其他因素。最小二乘法是介绍完了。
五、总结 本文介绍了最小二乘法拟合数据的过程最小二乘法是最优化方法中的一个要了解更多优化方法可以看看《最优化导论》。本文的事例只考虑了一个变量年份如果有多个自变量它们在空间中也满足线性分布能不能用最小二乘法去拟合数据呢这个问题我将在下一篇文章中进行介绍。