【小白学机器学习9】用EXCEL做一元线性回归的各种指标,笨办法:各种结果的指标解析和手动验算 您所在的位置:网站首页 回归分析适合的数据 【小白学机器学习9】用EXCEL做一元线性回归的各种指标,笨办法:各种结果的指标解析和手动验算

【小白学机器学习9】用EXCEL做一元线性回归的各种指标,笨办法:各种结果的指标解析和手动验算

2024-06-27 04:00| 来源: 网络整理| 查看: 265

目录

0 目标

1 构造模型 

1.1 构造模型的思路

1.2 具体模型构造的EXCEL公式和过程

2 直接用EXCEL画图,然后生成趋势线的方式进行回归分析

2.1 先选择“观测值Y”的数据,用散点图或者折线图作图

2.2  然后添加趋势线和设置趋势线格式

2.3  生成趋势线

3 使用EXCEL的 数据/数据分析/回归功能

3.1 在EXCEL的菜单里,调出加载项里的分析工具库

3.2 功能入口:数据/数据分析/回归功能

3.3 进行回归时,需要注意2个点

3.4 回归分析的结果

4 逐个手动重算 第1部分:“回归统计”里的几个指标

4.1 相关系数 R / multiple R/coefficient of correlation

4.1.1 公式

4.1.2  以下是详细计算过程

4.2  先求 SSE SSR SST 以及OLS,再求R2

 4.3 决定系数R**2 / R-square

4.3.1 公式

4.3.2  R2具体计算

4.4 调整后的R2

4.5 标准误差  SEE

4.6 观测值

5  逐个手动重算“方差分析”里的几个指标

5.1 自由度 DF

5.2 关于SS离差的3个类型 SSR, SSE ,SST

5.3  均方MS

5.3.1 定义

5.3.2  公式 (这里算出来的是均方误差,但不是方差,因为是两类数据的比较)

6 RESIDUAL OUTPUT

6.1 残差= y=y^= 观测值-预测值

7 多个模拟直线比较

8 F检验的F值和 显著度F 和 T检验的t-stat

8.1 F检验相关

8.1.2 软件判断方法:各种软件自动计算:显著度F significance F

8.1.3 手动判断方法:查表,单可以查表比较F值

8.1.4 总结

8.2  t检验相关

8.2.1 t Stat

8.2.2 软件判断方法:T检验的P-value

8.2.3 手动方法看是否在 参数预测值是否在:lower 95%~ upper95%范围内

8.2.4 手动方法 查表比较

8.2.5 上面方法总结比较

9 未解决的问题

9.1 回归模型的各种指标清楚了,但是参数的误差,标准误差,还有t值是怎么求出来的?

10 缺! python 模拟实操

0 目标 目标:用EXCEL做一元线性回归的各种参数,手动计算验证EXCEL计算的各个参数的值,自己重新算一遍,了解具体的公式计算过程。为什么要这么做 看了这么多讲指标运算公式的,大多数都是推导。但很少见到有自己手动,完全验证一遍这些指标计算公式实操的,我自己试试。目的2个: 还能验证自己整理的公式的对错。可以加深对公式的理解

1 构造模型  1.1 构造模型的思路 正常思路:(先有我们大脑里的理想值,也就是假设)→先有观测值 →再回归模型→预测值我的构造思路: 先作假一个理想数据(公式生成)→生造观测值(加rand扰动)→再回归模型→预测值为什么要这么搞?这样我自己相当于,先掌握了理想数据=“正确答案”,然后可以比较到底什么样的模拟更接近我这个预设的正确答案。

1.2 具体模型构造的EXCEL公式和过程 理想数据 X:1,2 ...15Y: Y=2x+3观测值 y=y~real+RANDBETWEEN(-3,3)

2 直接用EXCEL画图,然后生成趋势线的方式进行回归分析

见下图

2.1 先选择“观测值Y”的数据,用散点图或者折线图作图

作图格式

可以选择连线的散点图,或者折线图

2.2  然后添加趋势线和设置趋势线格式 因为做的是一元线性回归,这里记得选择直线

 

2.3  生成趋势线

生成一个一元函数的趋势线: 直线

其中 y=ax+b,具体为y=2.33306xa=2.33306b=0R**2=0.9749

3 使用EXCEL的 数据/数据分析/回归功能 基本内容如下

3.1 在EXCEL的菜单里,调出加载项里的分析工具库

文件/选项

3.2 功能入口:数据/数据分析/回归功能

3.3 进行回归时,需要注意2个点 1 注意回归面板上,Y值在上面,X值在下面。容易选错2 下面哪些勾选项,做简单回归分析可以不勾3 详细的回归可以都勾选如果是双侧检验,置信度 95%一般可以选上

 

3.4 回归分析的结果 第1部分:“回归统计”第2部分:“方差分析”第3部分:“回归系数相关”

4 逐个手动重算 第1部分:“回归统计”里的几个指标

4.1 相关系数 R / multiple R/coefficient of correlation 4.1.1 公式 其中 x,y是两个变量如果不是特别强调因变量,x,y也可以写成x1,x2相关系数的取值范围[-1,1] 越接近1,表示正相关越接近-1,表示负相关接近0,表示不相关

4.1.2  以下是详细计算过程 手动计算的和回归分析的R相等求和不要犯低级错误 Σ(x-ave(x))*(y-ave(y)) !=Σ(x-ave(x))*Σ(y-ave(y))R=Σ((x-ave(x))*(y-ave(y))) /SQRT(Σ(x-ave(x))^2*Σ(y-ave(y))^2)

4.2  先求 SSE SSR SST 以及OLS,再求R2

这个需要提前看第2部分的内容

SSE: 残差平方和= Σ(y-y^'')^2  SSR:回归平方和=Σ(y^''-ave(y))^2  SST:离差平方和/总体平方和=Σ(y-ave(y))^2OLS最小二乘法的=SS=SSE=残差平方和

 4.3 决定系数R**2 / R-square

4.3.1 公式

R**2的具体计算=相关系数R**2R**2 公式说明R**2 取值范围在[0,1] 之间但是如果是线性回归,必须包含截距项!!!SSR越大越好,SSE越小越好 因为SSR代表被模型解释的部分越多,SSE是残差无法被解释SSR代表被模型解释的部分越多,表示拟合线越接近于真实Y的观察值,误差SSE很小

4.3.2  R2具体计算

R**2的具体计算=相关系数R**2

4.4 调整后的R2

修正的R2确实不适合一元线性回归K=变量个数只有1个变量是,修正的R2会变小修正的R2看起来确实只适合多元线性回归

4.5 标准误差  SEE

计算公式

等于表2中残差SS / 残差df 的平方根越小越好

标准误差SEESEE = sqrt(Σ(y - y^'')^² / (n - k - 1))    SEE = sqrt(SSE / (n - k - 1))并不是 /n

4.6 观测值

观测值=样本数量=15,没什么好说的。

5  逐个手动重算“方差分析”里的几个指标

df:degree of freedom  自由度ss:离均差平方和ms :均方

5.1 自由度 DF

详细内容看上次的关于自由度的文章

【小白学机器学习8】统计里的自由度DF=degree of freedom, 以及关于df=n-k, df=n-k-1, df=n-1 等自由度公式-CSDN博客文章浏览阅读698次,点赞13次,收藏12次。自由度通常用于抽样分布中。统计学中:在统计模型中,自由度指样本中可以自由变动的独立不相关的变量的个数,当有约束条件时,自由度减少。样本中独立或能自由变化的数据的个数,称为该统计量的自由度。自由度(degree of freedom, df)指的是计算某一统计量时,取值不受限制的变量个数。https://blog.csdn.net/xuemanqianshan/article/details/136643151?spm=1001.2014.3001.5502

回归分析的df,y=a+bx,因为只有1个自变量,所以df=1残差SSE的df 这里面需要确定a 和b两个参数,其中a是截距,而b 是x的参数。 因为自由度=n-k, 而SSE=Σ(y-y^'')^2 = Σ(y-(a+bx))^2  ,所以df=n-k=n-2=15-2=13或者用多元线性回归的公式 df=n-k-1=15-1-1=13总计的df=方程的df+样本的df=1+13=14

5.2 关于SS离差的3个类型 SSR, SSE ,SST

见上面的分析

5.3  均方MS 5.3.1 定义

MS是均方 方差分析中的MS是均方(离差平方和除以自由度) 在这里具体是 均方误差

MS=SS/DF表上,回归分析和残差的MS分别可以这么计算

5.3.2  公式 (这里算出来的是均方误差,但不是方差,因为是两类数据的比较) Σ(y - ŷ)²这个是离均差的平方但是不是同一个值的离均差,而是两类数的离均差

Mean Square Error 均方误差MSE = Σ(y - ŷ)²/n    这里n是自由度MSE =  Σ(y - ŷ)²/df

6 RESIDUAL OUTPUT 6.1 残差= y=y^= 观测值-预测值

7 多个模拟直线比较 暂时看略有差别,差别不大

8 一元线性回归模型的F检验 和 t检验 首先明确目标这里的假设检验,主体是对一元线性回归模型对模型的假设检验和针对某个参数的假设检验,不是一回事。对一元线性回归模型 y=a+bx 的检验,核心是检验参数b的显著性,理论上b越大越好,至少b不能=0,否则一元线性回归模型就不存在,没意义。

8.1 F检验相关

8.1.1 F值

F=(SSR/df1) / (SSE/df2)(注意不是SS/SS, 必须是除过自由度的MS) 而回归均方MS=SSR/df1 ,df=1,因为只有1个自变量x,而y是因变量而残差均方MS= SSE/df2,df=n-k-1=n-1-1=n-2,其中n是样本数量,而k是自变量的参数数量,一元回归只有1个,而最后那个-1是截距项参数。总体df=df1+df2,暂时这里没啥用F=回归均方MS/残差均方MSF=(SSA/df1) / (SSE/df2)= 组间波动MS/组内波动MS,对于只有一组样本的情况下,SSA就=SSR。而多组样本情况下,SSA是组间均值和二次均值之间的误差平方和。F=1003/8=125.25

8.1.2 软件判断方法:软件EXCEL/spss等自动计算:显著度F significance F F值Significance F:其实就是概率,就是F值对应的概率p

p=Significance F:越小说明拟合越好。为什么呢? 其实是说:p=Significance F:p越小说明一元线性回归模型拟合越好,也就是拒绝原假设h0而一般情况下,如果想要接受h0假设,比如2个样本相似,则希望F小,P值大,这样就很可能可以接受原假设h0而一般情况下,如果想要拒绝h0假设,比如希望某个参数和0不同,则希望F大,P值小,这样就是小概率事件,这样就很可能可以接受原假设h0因为p越小,越是小概率事件证明原假设h0不对,也就是y=a+bx的x的参数b,b显著的和0不同,也就是y=a+bx一元线性回归模型是显著的。

因为一元线性回归的假设检验里

预设原假设h0,一般都是0假设,或者相等假设,也就是假设y=a+bx其中x的参数b=0,也就是假设y和x不存在一元线性关系。所以如果significance F=p 也就是概率,很小,证明这个假设是个小概率事件,那么应该拒绝此h0假设,也就是一元线性回归模型是显著的!y和x之间确实存在线性相关关系。Significance F =4.8*10^-8 < 0.05 而且是远小于,说明检验情况较好手动怎么计算这个值,我还不知道,手动只能查表得到一个区间,用于判断,无法得到精确的p值吧?

8.1.3 是否可以手动计算P值?

手动怎么计算这个值,我还不知道,手动只能查表得到一个区间,用于判断,无法得到精确的p值吧?

8.1.4 手动判断方法:查表 取得  F临界值(α,df1,df2) 手动方法无法获得具体的significance F=p,也就是无法,但是手动查表根据2个自由度和显著度来查表df1=1df2=13F临界值(α,df1,df2)查表得F临界值=4.67而计算F=125>4.67 ,因此对应的概率一定很小,至少小于显著度5%,所以是小概率事件,要拒绝原假设h0,因此这个线性回归模型是显著的。

8.1.4 总结 因为一元线性回归的原假设预设原假设h0,一般都是0假设,或者相等假设,也就是假设y=a+bx其中x的参数b=0,也就是假设y和x不存在一元线性关系。如果是是软件自动计算significance F,F值本身大小不用管 只判断 概率P=significance F>α即可接受h0, 证明此模型拟合不好,失败!只判断概率P=significance F


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有