一、模型假设

传统多元线性回归模型

最重要的假设的原理为:

1. 自变量和因变量之间存在多元线性关系,因变量y能够被x1,x2….x{k}完全地线性解释;2.不能被解释的部分则为纯粹的无法观测到的误差

其它假设主要为:

1.模型线性,设定正确; 2.无多重共线性; 3.无内生性; 4.随机误差项具有条件零均值、同方差、以及无自相关; 5.随机误差项正态分布

具体见另一篇文章:回归模型的基本假设

二、估计方法

目标:估计出多元回归模型的参数

注:下文皆为矩阵表述,X为自变量矩阵(n*k维),y为因变量向量(n*1维)

OLS(普通最小二乘估计)

思想:多元回归模型的参数应当能够使得, 因变量y的样本向量 在 由自变量X的样本所构成的线性空间G(x)的投影(即y’= xb)为向量y在 线性空间G(x)上的正交投影。直白一点说,就是要使得(y-y’)’(y-y’)最小化,从而能够使y的预测值与y的真实值之间的差距最小。

使用凸优化方法,可以求得参数的估计值为:b = (x’x)^(-1)x’y

最大似然估计

既然已经在假设中假设了随机误差项的分布为正态分布,

那么自变量y的分布也可以由线性模型推算出来(其分布的具体函数包括参数b在内)。

进一步的既然已经抽取到了y的样本,那么使得y的样本出现概率(联合概率密度)最大的参数即为所求

最终结果与OLS估计的结果是一致的

矩估计

思想:通过寻找总体矩条件(模型设定时已经有的假设,即无内生性),在总体矩条件中有参数的存在,然后用样本矩形条件来进行推导未知参数的解。

在多元回归中有外生性假设:

对应的样本矩为:

最终估计结果与OLS方法也是一样的。

 

三、模型检验

1.拟合优度检验

(1)因变量y是随机变量,而估计出来的y’却不是随机变量;

(2)拟合优度表示的是模型的估计值y’能够在多大程度上解释因变量样本y的变动。

(3)y’的变动解释y的变动能力越强,则说明模型拟合的越好y-y’就越接近与假设的随机误差

(4)而因变量的变动是由其方差来描述的。

所以定义3个变动:y’的变动,y的变动,以及随机误差u的变动。y的变动是由y’的变动和u的变动所构成的。

                                                   

TSS:总回归平方和,代表y的变动

RSS:残差平方和,代表y’没有观测到的变动,这部分越大,说明拟合效果越差

ESS:回归平方和,代表y’观测到的变动,这部分越大,说明拟合效果越好。

进一步地,得出了拟合系数

该系数越大,表明模型的拟合程度越好。

需要注意的是,拟合系数并非越大越好,过度拟合的模型是难以进行外推的。

2.总体线性的检验

假设:

思想:若是所有参数的系数都为0,那么y的变动纯粹是由随机项的变动决定的,ESS模型解释的变动范围即为随机项的变动范围,由于随机项服从正态分布,那么ESS则服从卡方分布,又RSS为随机项的变动,本身就服从卡方分布。因此可以构造F统计量

若F值过大,则原假设成立的可能性就很小了。

3.变量显著性的检验

变量显著性的检验思想非常简单:由于b = (x’x)^(-1)x’y,再加上随机项正态分布的假设,便可以得出b的正态分布结论,同时由于随机项的方差是未知的,所以我们便用余差平方和对方差进行估计,从而能够构造T统计量。

四、回归模型的预测

多元线性回归 ——模型、估计、检验与预测的更多相关文章

  1. R语言解读多元线性回归模型

    转载:http://blog.fens.me/r-multi-linear-regression/ 前言 本文接上一篇R语言解读一元线性回归模型.在许多生活和工作的实际问题中,影响因变量的因素可能不止 ...

  2. SPSS--回归-多元线性回归模型案例解析

    多元线性回归,主要是研究一个因变量与多个自变量之间的相关关系,跟一元回归原理差不多,区别在于影响因素(自变量)更多些而已,例如:一元线性回归方程 为: 毫无疑问,多元线性回归方程应该为: 上图中的 x ...

  3. 多元线性回归模型的特征压缩:岭回归和Lasso回归

    多元线性回归模型中,如果所有特征一起上,容易造成过拟合使测试数据误差方差过大:因此减少不必要的特征,简化模型是减小方差的一个重要步骤.除了直接对特征筛选,来也可以进行特征压缩,减少某些不重要的特征系数 ...

  4. 时间序列预测——深度好文,ARIMA是最难用的(数据预处理过程不适合工业应用),线性回归模型简单适用,预测趋势很不错,xgboost的话,不太适合趋势预测,如果数据平稳也可以使用。

    补充:https://bmcbioinformatics.biomedcentral.com/articles/10.1186/1471-2105-15-276 如果用arima的话,还不如使用随机森 ...

  5. ML之多元线性回归

    转自:http://www.cnblogs.com/zgw21cn/archive/2009/01/07/1361287.html 1.多元线性回归模型 假定被解释变量与多个解释变量之间具有线性关系, ...

  6. 【R】多元线性回归

    R中的线性回归函数比较简单,就是lm(),比较复杂的是对线性模型的诊断和调整.这里结合Statistical Learning和杜克大学的Data Analysis and Statistical I ...

  7. day-12 python实现简单线性回归和多元线性回归算法

    1.问题引入  在统计学中,线性回归是利用称为线性回归方程的最小二乘函数对一个或多个自变量和因变量之间关系进行建模的一种回归分析.这种函数是一个或多个称为回归系数的模型参数的线性组合.一个带有一个自变 ...

  8. 线性回归模型(Linear Regression)及Python实现

    线性回归模型(Linear Regression)及Python实现 http://www.cnblogs.com/sumai 1.模型 对于一份数据,它有两个变量,分别是Petal.Width和Se ...

  9. 100天搞定机器学习|Day3多元线性回归

    前情回顾 [第二天100天搞定机器学习|Day2简单线性回归分析][1],我们学习了简单线性回归分析,这个模型非常简单,很容易理解.实现方式是sklearn中的LinearRegression,我们也 ...

随机推荐

  1. Java并发编程:线程间协作的两种方式:wait、notify、notifyAll和Condition

    Java并发编程:线程间协作的两种方式:wait.notify.notifyAll和Condition 在前面我们将了很多关于同步的问题,然而在现实中,需要线程之间的协作.比如说最经典的生产者-消费者 ...

  2. Scalaz(2)- 基础篇:随意多态-typeclass, ad-hoc polymorphism

    scalaz功能基本上由以下三部分组成: 1.新的数据类型,如:Validation, NonEmptyList ... 2.标准scala类型的延伸类型,如:OptionOps, ListOps . ...

  3. Linux下安装mongodb详细过程

    本次安装mongodb使用yum.repo方式.详细过程请参考,也列出一些安装过程中的错误,欢迎指正. mongodb版本:3.0 先在linux下cd 到 /etc/yum.repos.d/ 新建脚 ...

  4. IO流(二)__BufferedReader和BufferedWriter

    BufferedReader和BufferedWriter 字符流的缓冲区:缓冲区的而出现提高了对数据的读写效率对应类:BufferedWriter  BufferedReader缓冲区要结合流才可以 ...

  5. servlet的开发流程介绍

    servlet的开发部署流程 1.在%TOMCAT_HOME%/webapps下WEB-INF的文件夹,写一个文件web.xml(该网站的配置信息),建立一个classes的子文件夹,也可以从别的目录 ...

  6. UrlRewrite(URL重写)--ASP.NET中的实现

    概述 今天看了下URL重写的实现,主要看的是MS 的URL Rewrite. URL重写的优点有:更友好的URL,支持老版本的URL URL重写的缺点有:最主要的缺点是性能低下,因为如果要支持无后缀的 ...

  7. go语言 类型:布尔类型

    Go语言中的布尔类型与其他语言基本一致,关键字也为bool,可赋值为预定义的true和false示例代码如下: var v1 bool v1 = true v2 := (1 == 2) // v2也会 ...

  8. 错误 1 “System.Data.DataRow.DataRow(System.Data.DataRowBuilder)”不可访问,因为它受保护级别限制

    new DataRow 的方式: DataTable pDataTable = new DataTable(); DataRow pRow = new DataRow(); 正确的方式: DataRo ...

  9. ae_datagridview显示属性

    public partial class FrmAttributeTable : Form { private AxMapControl m_MapCtl; public FrmAttributeTa ...

  10. ArcGIS JS 学习笔记2 实现仿百度的拖拽画圆

    一.前言 吐槽一下,百度在国内除了百度地图是良心产品外,其他的真的不敢恭维.在上一篇笔记里,我已经实现了自定义的地图测量模块.在百度地图里面(其他地图)都有一个周边搜索的功能,拖拽画一个圆,然后以圆半 ...