美文网首页
机器学习-线性回归

机器学习-线性回归

作者: 爱拼的小伙子 | 来源:发表于2018-10-06 15:38 被阅读0次

一、回归简介

  探索两个或两个以上变量之间的关系,希望找到一个自变量的公式预测因变量。
  ​最小二乘法(又称最小平方法)是一种数学优化技术。它通过最小化误差的平方和寻找数据的最佳函数匹配。利用最小二乘法可以简便地求得未知的数据,并使得这些求得的数据与实际数据之间误差的平方和为最小。还可用于曲线拟合。其他一些优化问题也可通过最小化能量或最大化熵用最小二乘法来表达。
  最大似然估计是利用已知样本的结果,在使用某个模型的基础上,反推最有可能导致这样结果的模型参数值。若从母体抽取一组随机样本,而母体的参数$\theta$是我们要研究的对象,若能找到一个估计值$\hat \theta$,可使这组样本发生的可能性为最大时,则此估计值$\hat \theta$称为$\theta$的最大似然估计值(Maximum Likelihood Estimator)简称(MLE)

二、参数求解

2.1最小二乘法

  如果x与y有较强的相关的模型,则有y=ax+b
  寻找合适的参数a,b,使得误差即损失最小。

20180310140741212.png
1、损失函数:

J(a,b)=\sum\limits_{i=1}^{m}(y_i-\hat y_i)^2=\sum\limits_{i=1}^{m}[y_i-(ax_i+b)]^2
求最小值,即求偏导,使其为0,则可以求得a,b。
对b求偏导

\frac{\partial J(a,b)}{\partial b}=\sum\limits_{i=1}^{m}2[y_i-(ax_i+b)](-1)=0
\sum\limits_{i=1}^{m}(y_i-ax_i-b)=0
\sum\limits_{i=1}^{m}y_i-a\sum\limits_{i=1}^{m}x_i-\sum\limits_{i=1}^{m}b=0
\sum\limits_{i=1}^{m}y_i-a\sum\limits_{i=1}^{m}x_i-mb=0
\frac{1}{m}\sum\limits_{i=1}^{m}y_i-a\sum\limits_{i=1}^{m}\frac{1}{m}x_i-b=0

b=\overline y-a\overline x
对a求偏导

\frac{\partial J(a,b)}{\partial a}=\sum\limits_{i=1}^{m}2[y_i-(ax_i+b)](-x_i)=0
\frac{\partial J(a,b)}{\partial a}=\sum\limits_{i=1}^{m}2[y_i-(ax_i+\overline y-a\overline x)](-x_i)=0
\sum\limits_{i=1}^{m}(y_ix_i-ax_i^2-x_i\overline y+a\overline xx_i)=0
\sum\limits_{i=1}^{m}(y_ix_i-x_i\overline y)-a\sum\limits_{i=1}^{m}(x_i^2-\overline xx_i)=0
a=\frac{\sum\limits _{i=1}^{m}(y_ix_i-x_i\overline y)}{\sum\limits_{i=1}^{m}(x_i^2-\overline xx_i)}
化简后为

b=\frac{\sum\limits_{i=1}^{n}(x_i-\overline x)(y_i-\overline y)}{\sum\limits_{i=1}^{n}(x_i-\overline x)^2}
a=\overline y-b\overline x
2、符号记忆公式
\overline x=\frac{\sum x_i}{n}
\overline y =\frac{\sum y_i}{n}
S_{xx}=\sum(x_i-\overline x)^2=\sum x_i^2-\frac{(\sum x_i)^2}{n} \\ 表示x_i变异数
S_{yy}=\sum(y_i-\overline y)^2=\sum y_i^2-\frac{(\sum y_i)^2}{n}\\表示y_i之变异数
S_{xy}=\sum(x_i-\overline x)(y_i-\overline y)=\sum x_i y_i-\frac{(\sum x_i)(\sum y_i)}{n}\\表示x_i与y_i之共变异数
b=\frac{S_{xy}}{S_{xx}}
a=\overline y-b\overline x
3、判定系数
用数据拟合一个模型,模型肯定是存在误差的,回归方程对观测值拟合的怎么样,就叫做拟合优度,这里的R^2就是度量拟合优度的一个统计量,即常说的R方,计算方法为:
R^2=1-\frac{\sum(y-\hat y)^2}{\sum(y-\overline y)^2}
用1减去y对回归方程的方差(未解释离差)与y的总方差的比值,y减去y尖也就是残差,是拟合方程中不能解释的部分,用1减去不能解释的部分,那么剩下的就是解释的部分,也就是说自变量解释了因变量变动的百分比的多少,那么r方的值肯定是越大越好,意味着该模型把y的变动解释得好,R方的范围显然是0到1,在预测实践中,人们往往采纳R方最高的模型。除此之外,拟合优度还有另一个测定指标是相关系数,相关系数的公式:
r=\frac{\sum(x_i-\overline x)(y_i-\overline y)}{\sqrt{\sum(x_i-\overline x )^2 *\sum(y_i-\overline y)^2}}

2.1最大似然估计

例1:抽球
假设一个袋子装有白球和红球,比例未知,现在抽取10次(每次抽完都放回,保证时间的独立性),假设抽到了7次白球和3次红球,在此数据样本的条件下,可以采用最大似然估计法求得袋子中白球的比例(最大似然估计是一种模型一定,参数未知的方法)。当然,这种数据情况下很明显,白球的比例是70%,但是如何通过理论的方法得到这个答案呢?在一些复杂的条件下,很难通过直观的方式获得答案的,这时候理论分析就尤为重要了,这也是学者们为何提出最大似然估计的原因。我们可以定义从袋子中抽到白球和红球的概率如下:
f(x_1,x_2|\theta)=f(x_1|\theta)*f(x_2|\theta)
其中x1、x2为第一、二次采样,f为模型,theta为模型参数
其中theta是未知的,因此我们定义似然L为:
L(\theta|x_1,x_2)=f(x_1,x_2|\theta)=\prod\limits_{i=1}^2f(x_i|\theta)
其中L为似然的符号。
\ln L (\theta|x_1,x_2)=\ln \sum\limits_{i=1}^2(f(x_i|\theta))=\sum\limits_{i=1}^{2}f(x_i|\theta)
两边同时去ln,左边称为对数似然。
\hat e=\frac{1}{2}\ln L(\theta|x_1,x_2)
这是平均对数似然。
最大似然估计的过程,就是找一个合适的theta,是的平均对数似然的值最大。因此,可以得到以下公式:
\hat \theta_{mle} =arg max\hat e (\theta|x1,x_2)
以上讨论的是2次采样的情况,当然也可以为多次:
\hat \theta_{mle} =arg max\hat e (\theta|x1,x_2,.....x_n)
我们定义M为模型(也就是之前公式中的f),表示抽到的白球概率为theta,而抽到的红球概率为1-theta,因此10次抽到白球7次的概率可以表示为:
P(x_1,x_2...x_{10}|M)=P(x_1|M)*P(x_2|M)....*P(x_{10})=\theta^7(1-\theta)^3
平均似然为:
\hat e=\frac{1}{10}P(x_1,x_2,...x_{10}|M)=\frac{1}{10}[\theta^7(1-\theta^3)]
那么最大似然就是找到一个合适的theta,求获得最大的平均似然。因此平均似然求到,并使得导数为0。
\hat e = 7\theta^6(1-\theta)^3-3\theta^7(1-\theta)^2=0
\theta= 0.7
由此可得,当抽取的白球概率为0.7时,最可能产生10次抽取抽到白球7次的事件。
例2:
假设有一组采样值(x1,……xn),我们知道其服从正态分布,且标准差已知。当这个正态分布的期望为多少是,产生这个采样数据的概率为最大?
这个例子中正态分布就是模型M,而期望就是前面提到的theta
L(\theta|x_1,x_2.....x_n)=f(x_1……x_n|\theta)=\prod\limits_{i=1}^nf(x_i|\theta)
M=f(x)=\frac{1}{\sqrt{z\pi}\sigma}exp(-\frac{(x-u)^2}{2\sigma^2}),N(u,\sigma^2)
正态分布中,当期望为0 ,方差为1时,分布为标准正态分布。
P(x_i,....x_n|M)=(\frac{1}{\sqrt {2\pi}\sigma})^nexp(-\frac{1}{2\sigma^2}\sum\limits_{i=1}^{n}(x-u)^2)
\hat e = \sum\limits_{i=1}^{n}x_i-nu=0
u=\frac{1}{n}\sum\limits_{i=1}^{n}x_i
综上所述,可得求解最大似然估计的一般过程为:
1、写出似然函数;
2、如果无法直接求导的话,添加对数;
3、求偏导;
4、解出模型中参数的最优值。

三、评估方式

3.1判定系数

用数据拟合一个模型,模型肯定是存在误差的,回归方程对观测值拟合的怎么样,就叫做拟合优度,这里的R^2就是度量拟合优度的一个统计量,即常说的R方,计算方法为:
R^2=1-\frac{\sum(y-\hat y)^2}{\sum(y-\overline y)^2}
用1减去y对回归方程的方差(未解释离差)与y的总方差的比值,y减去y尖也就是残差,是拟合方程中不能解释的部分,用1减去不能解释的部分,那么剩下的就是解释的部分,也就是说自变量解释了因变量变动的百分比的多少,那么r方的值肯定是越大越好,意味着该模型把y的变动解释得好,R方的范围显然是0到1,在预测实践中,人们往往采纳R方最高的模型。

3.2相关系数

除此之外,拟合优度还有另一个测定指标是相关系数,相关系数的公式:
r=\frac{\sum(x_i-\overline x)(y_i-\overline y)}{\sqrt{\sum(x_i-\overline x )^2 *\sum(y_i-\overline y)^2}}

相关文章

  • 2019-10-29

    Day2 简单线性回归模型 机器学习入门--简单线性回归机器学习算法之线性回归算法 导入库matplotlib 绘...

  • Python编写线性回归算法

    Python编写线性回归算法 前言 线性回归(Linear Regression)是机器学习的基础,作为机器学习算...

  • 《机器学习》线性模型公式推导与算法实现

    线性回归 参考西瓜书《机器学习》线性回归 给定训练集,其中,.线性回归(linear regression)试图学...

  • 线性回归--原理

    线性回归--原理 线性回归--python实现(不使用框架) 线性回归--sklearn框架实现 通常我们学习机器...

  • 线性回归模型

    参考:1.使用Python进行线性回归2.python机器学习:多元线性回归3.线性回归概念 线性回归模型是线性模...

  • Python 机器学习算法一之线性回归的推导及实战

    线性回归是机器学习中最基本的算法了,一般要学习机器学习都要从线性回归开始讲起,本节就对线性回归做一个详细的解释。 ...

  • Python 机器学习算法一之线性回归的推导及实战!

    线性回归是机器学习中最基本的算法了,一般要学习机器学习都要从线性回归开始讲起,本节就对线性回归做一个详细的解释。 ...

  • 【机器学习快速入门教程4】线性回归

    章节4:线性回归 本章节,我们将介绍线性回归问题,机器学习中最基础的问题。 线性回归 线性回归是指在一组数据中拟合...

  • 多元线性回归

    链接:多元线性回归 NG机器学习公开课笔记:机器学习笔记

  • Task4模型调参

    学习目标 了解常用的机器学习模型,并掌握机器学习模型的建模与调参流程 内容介绍 线性回归模型:线性回归对于特征的要...

网友评论

      本文标题:机器学习-线性回归

      本文链接:https://www.haomeiwen.com/subject/gazqaftx.html