引言
关于数学建模的基本方法
- 机理驱动
由于客观事物内部规律的复杂及人们认识程度的限制,无法得到内在因果关系,建立合乎机理规律的数学模型 - 数据驱动
直接从数据出发,找到隐含在数据背后的最佳模型,是数学模型建立的另一大思路
统计回归方法是基于统计理论建立的最基本的一类数据驱动建模方法
学习目的
- 用统计回归方法估计数据中隐含的模型
- 对模型参数和模型结果的可靠性做必要检验
- 分析建模过程中的一些细节问题:异常数据的辨识与处理,变量的筛选
- 用MATLAB软件实现
一元线性回归模型的概念
一元线性回归模型基本概念
一般地,称由
y=β0+β1x+ε y=\beta_{0}+\beta_{1}x+\varepsilon y=β0+β1x+ε
确定的模型为一元线性回归模型
- β0,β1\beta_{0},\beta_{1}β0,β1为回归系数
- xxx为自变量、回归变量或解释变量
- yyy为因变量或被解释变量
- ε\varepsilonε为随机误差
随机误差ε\varepsilonε的基本假设
- 高斯-马尔科夫条件
{ E(ε)=0cov(ε,ε)=σ2 \left\{\begin{matrix} E(\varepsilon)=0 \\ cov(\varepsilon,\varepsilon)=\sigma^{2} \end{matrix}\right. { E(ε)=0cov(ε,ε)=σ2
- 随机误差项必须是0均值的
- 方差等于σ2\sigma^{2}σ2,是恒定的,即与xxx的取值无关
- 正太分布假设
ε∼N(0,σ2) \varepsilon \sim N(0,\sigma^{2}) ε∼N(0,σ2)
随机误差项要服从0均值的正太分布,并且方差同样是恒定的,与xxx无关
一元线性回归分析的主要任务
- 基于样本数据,对参数β0,β1,σ\beta_{0},\beta_{1},\sigmaβ0,β1,σ做参数估计
- 对模型参数β0,β1\beta_{0},\beta_{1}β0,β1以及模型显著性作假设检验分析
- 对yyy的值作预测,即对yyy作点(区间)估计
Matlab实现
[b, bint, r, rint, stats]=regress(Y,X,alpha)
- bint,回归系数的区间估计
- r,残差
- rint,残差的置信区间
- stats,检验回归模型的统计量:决定系数r2r^{2}r2,F值,与F值对应的概率p
- alpha,显著性水平,缺省时为0.05
模型的参数估计与软件实现
回归系数的最小二乘估计
有nnn组独立样本:(x1,y1),(x2,y2),…,(xn,y(n))(x_{1},y_{1}),(x_{2},y_{2}),\dots,(x_{n},y(n))(x1,y1),(x2,y2),…,(xn,y(n)),带入回归方程可得
{
yi=β0+β1xi+εi, i=1,2,…,nE(εi)=0, var(εi)=σ2 \left\{\begin{matrix} y_{i}=\beta_{0}+\beta_{1}x_{i}+\varepsilon_{i},\ i=1,2,\dots,n \\ E(\varepsilon_{i})=0,\ var(\varepsilon_{i})=\sigma^{2} \end{matrix}\right. {
yi=β0+β1xi+εi, i=1,2,…,nE(εi)=0, var(εi)=σ2
其中,ε1,ε2,…,εn\varepsilon_{1},\varepsilon_{2},\dots,\varepsilon_{n}ε1,ε2,…,εn相互独立
![![[Pasted image 20240811090041.png]]](https://i-blog.csdnimg.cn/direct/36906c86fa1740638e5c6b164a29fe60.png)
- 拟合误差或残差:ri=yi−yi′r_{i}=y_{i}-y'_{i}ri=yi−yi′
- 最好直线:使残差平方和最小的直线
Q(β0,β1)=∑i=1n(yi−yi′)2=∑i=1n(yi−β0−βixi)2 Q(\beta_{0},\beta_{1})=\sum_{i=1}^{n}(y_{i}-y'_{i})^{2}=\sum_{i=1}^{n}(y_{i}-\beta_{0}-\beta_{i}x_{i})^{2} Q(β0,β1)=i=1∑n(yi−yi′)2=i=1∑n(yi−β0−βixi)2
最小化的参数值β0′,β1′\beta'_{0},\beta'_{1}β0′,β1′称为β0,β1\beta_{0},\beta_{1}β0,β1的最小二乘估计
该优化问题的求解,可以基于极值原理实现
通过残差平方和,分别对β0,β1\beta_{0},\beta_{1}β0,β1求偏导数,令偏导数等于0
{
∂Q∂β0=0∂Q∂β1=0 \left\{\begin{matrix} \frac{\partial Q}{\partial \beta_{0}}=0 \\ \frac{\partial Q}{\partial \beta_{1}}=0 \end{matrix}\right. {
∂β0∂Q=0∂β1∂Q=0
得到的是二元一次线性方程组
相应的最小二乘估计为
{
β^0=yˉ−β^1xˉβ^1=xˉyˉ−xˉyˉx2ˉ−xˉ2 \left\{\begin{matrix} \hat{\beta}_{0}=\bar{y}-\hat{\beta}_{1}\bar{x} \\ \hat{\beta}_{1}=\frac{\bar{x}\bar{y}-\bar{x}\bar{y}}{\bar{x^{2}}-\bar{x}^{2}} \end{matrix}\right. {
β^0=yˉ−β^1xˉβ^1=x2ˉ−xˉ2xˉyˉ−xˉyˉ
其中
xˉ=1n∑i=1nxi,yˉ=1n∑i=1nyi, \bar{x}=\frac{1}{n}\sum_{i=1}^{n}x_{i},\quad \bar{y}=\frac{1}{n}\sum_{i=1}^{n}y_{i}, xˉ=n1i=1∑nxi,yˉ=n1i=1∑nyi,
xˉ2=1n∑i=1nxi2,xˉyˉ=1n∑i=1nxiyi \bar{x}^{2}=\frac{1}{n}\sum_{i=1}^{n}x_{i}^{2},\quad \bar{x}\bar{y}=\frac{1}{n}\sum_{i=1}^{n}x_{i}y_{i} xˉ2=n1i=1∑nxi2,xˉyˉ=n1i=1∑nxiyi
Matlab实现
regress命令
b=regress(Y, X)
待求解的线性方程组
yi=β0+β1xi+εi, i=1,2,…,n y_{i}=\beta_{0}+\beta_{1}x_{i}+\varepsilon_{i},\ i=1,2,\dots,n yi=β0+β1xi+εi, i=1,2,…,n
[y1y2…yn]=[1x11x2……1xn][β0β1] \begin{bmatrix} y_{1} \\ y_{2} \\ \dots \\ y_{n} \end{bmatrix}=\begin{bmatrix} 1&&x_{1} \\ 1&&x_{2} \\ \dots&&\dots \\ 1&&x_{n} \end{bmatrix}\begin{bmatrix} \beta_{0} \\ \beta_{1} \end{bmatrix}
y

最低0.47元/天 解锁文章
2466

被折叠的 条评论
为什么被折叠?



