作者jack10313 (彩色笔)
看板MATLAB
标题Re: [问题] 线性回归 强迫截距为零
时间Sun Nov 23 02:30:58 2014
刚刚无聊推导了一下
线性回归方程式
令理想的直线方程式为
y=ax+b
而我们手上有的资料点为
yi=ax+b+c
此时c为描述实际资料与模型的误差
我们目标是令误差越小越好,有很多种求法
最简单的就是最小平方法
所以我们的目标函数建立如下
Q = Σ(yi-axi-b)^2
做偏微分运算
∂/∂a (Q) = 2*Σ[(yi-axi-b)xi] = 0
∂/∂b (Q) = 2*Σ(yi-axi-b) = 0
整理方程式
Σ(xi^2) * a + Σ(xi) * b = Σ(xiyi)
Σ(xi) * a + n * b = Σ(yi)
解联立,克拉玛简单解一下
|Σ(xi^2) Σ(xi)| | a | | Σ(xiyi)|
| | | | = | |
| Σ(xi) n | | b | | Σ(yi) |
Δ = n*Σ(xi^2) - Σ(xi)Σ(xi)
Δa = n*Σ(xiyi) - Σ(xi)Σ(yi)
Δb = Σ(xi^2)*Σ(yi) - Σ(xiyi)*Σ(xi)
a = [n*Σ(xiyi) - Σ(xi)Σ(yi)] / [n*Σ(xi^2) - Σ(xi)Σ(xi)]
b = [Σ(xi^2)*Σ(yi) - Σ(xiyi)*Σ(xi)] / [n*Σ(xi^2) - Σ(xi)Σ(xi)]
有更简单的形式,不过原则点到此
---------------------------------------
好der,刚刚只是复习,接下来回到你的问题
Q = Σ(yi-axi)^2
∂/∂a (Q) = 2*Σ[(yi-axi)xi] = 0
Σ(xiyi) - aΣ(xi^2) = 0
a = Σ(xiyi)/Σ(xi^2)
故得证
※ 引述《fxxkjoe1231 (糟糕)》之铭言:
: 大家好,我手边有两笔资料。
: 按照理论的推导,这两笔资料应为y=ax的关系,
: 然而实际在进行回归的时候仍会有截距的存在,
: 请问该如何强迫截距为零呢?
: 谢谢大家
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 140.113.125.75
※ 文章网址: http://webptt.com/cn.aspx?n=bbs/MATLAB/M.1416681060.A.461.html
1F:推 fxxkjoe1231: 非常感谢! 11/23 10:16