赞
踩
通过样本数据中的分类依据以及具体的分类类别,预测后续给出的对象属于哪一类,这就是分类模型。
本文将采用逻辑回归和Fisher线性判别分析这两种分类算法来进行对象分类。
类型 | 模型 | Y的特点 | 例子 |
---|---|---|---|
线性回归 | OLS、GLS(最小二乘) | 连续数值变量 | GDP、收入等 |
0 - 1回归 | logistic回归 | 二值变量(0 - 1) | 是否喜欢、是否到达等 |
定序回归 | prohibit定序回归 | 定序变量 | 等级评定,喜爱程度等 |
计数回归 | 泊松回归(泊松分布) | 计数变量 | 每分钟车流量,次数等 |
生存回归 | Cox等比例风险回归 | 生存变量 | 企业、产品的寿命等 |
逻辑回归的因变量即为二值变量类型,可以将 y y y 看作属于某一类的概率—— y ⩾ 0.05 y \geqslant 0.05 y⩾0.05,则属于这一类;反之, y ⩽ 0.05 y \leqslant 0.05 y⩽0.05,则不属于这一类。
事件 | 1 | 0 |
---|---|---|
概率 | p p p | 1 − p 1 - p 1−p |
在给定 x \mathbf{x} x 的情况下,考虑 y y y 的两点分布概率
{ P ( y = 1 ∣ x ) = F ( x , β ) P ( y = 0 ∣ x ) = 1 − F ( x , β ) \left\{ P(y=1|x)=F(x,β)P(y=0|x)=1−F(x,β) \right. {P(y=1∣x)=F(x,β)P(y=0∣x)=1−F(x,β) 注:一般 F ( x , β ) = F ( x i ′ β ) F(\mathbf{x}, \mathbf{\beta}) = F(\mathbf{x_i'\beta}) F(x,β)=F(xi′β)
F
(
x
,
β
)
F(\mathbf{x}, \beta)
F(x,β) 称为连接函数,它将解释变量
x
x
x 和被解释变量
y
y
y 连接起来。
我们只需要保证
F
(
x
,
β
)
F(\mathbf{x}, \beta)
F(x,β) 是值域在
[
0
,
1
]
[0, 1]
[0,1] 上的函数,就能保证
0
⩽
y
^
⩽
1
0 \leqslant \hat{y} \leqslant 1
0⩽y^⩽1。
根据两点分布求概率的公式: E ( y ∣ x ) = 1 × P ( y = 1 ∣ x ) + 0 × P ( y = 0 ∣ x ) = P ( y = 1 ∣ x ) E(y|\mathbf{x}) = 1 \times P(y = 1|\mathbf{x}) + 0 \times P(y = 0|\mathbf{x}) = P(y = 1|\mathbf{x}) E(y∣x)=1×P(y=1∣x)+0×P(y=0∣x)=P(y=1∣x),因此可以将 y ^ \hat{y} y^ 理解为 y = 1 y = 1 y=1 发生的概率。
在给定
x
\mathbf{x}
x 的情况下,考虑
y
y
y 的两点分布概率
{
P
(
y
=
1
∣
x
)
=
F
(
x
,
β
)
P
(
y
=
0
∣
x
)
=
1
−
F
(
x
,
β
)
\left\{ P(y=1|x)=F(x,β)P(y=0|x)=1−F(x,β) \right.
{P(y=1∣x)=F(x,β)P(y=0∣x)=1−F(x,β)因为
E
(
y
∣
x
)
=
1
×
P
(
y
=
1
∣
x
)
+
0
×
P
(
y
=
0
∣
x
)
=
P
(
y
=
1
∣
x
)
E(y|\mathbf{x}) = 1 \times P(y = 1|\mathbf{x}) + 0 \times P(y = 0|\mathbf{x}) = P(y = 1|\mathbf{x})
E(y∣x)=1×P(y=1∣x)+0×P(y=0∣x)=P(y=1∣x),因此可以将
y
^
\hat{y}
y^ 理解为
y
=
1
y = 1
y=1 发生的概率。
y
i
^
=
P
(
y
i
=
1
∣
x
)
=
S
(
x
i
′
β
)
=
e
x
p
(
x
i
′
β
)
1
+
e
x
p
(
x
i
′
β
)
=
e
β
0
^
+
β
1
^
x
1
i
+
β
2
^
x
2
i
+
⋯
+
β
k
^
x
k
i
1
+
e
β
0
^
+
β
1
^
x
1
i
+
β
2
^
x
2
i
+
⋯
+
β
k
^
x
k
i
\hat{y_i} = P(y_i = 1|\mathbf{x}) = S(\mathbf{x_i}'\beta) = \frac{exp(\mathbf{x_i}'\beta)}{1 + exp(\mathbf{x_i}'\beta)} \\= \frac{e^{\hat{\beta_0} + \hat{\beta_1}x_{1i} + \hat{\beta_2}x_{2i} + \cdots + \hat{\beta_k}x_{ki}}}{1 + e^{\hat{\beta_0} + \hat{\beta_1}x_{1i} + \hat{\beta_2}x_{2i} + \cdots + \hat{\beta_k}x_{ki}}}
yi^=P(yi=1∣x)=S(xi′β)=1+exp(xi′β)exp(xi′β)=1+eβ0^+β1^x1i+β2^x2i+⋯+βk^xkieβ0^+β1^x1i+β2^x2i+⋯+βk^xki 如果
y
i
^
⩾
0.5
\hat{y_i} \geqslant 0.5
yi^⩾0.5,则认为其预测的
y
=
1
y = 1
y=1;否则则认为其预测的
y
=
0
y = 0
y=0
回归结果:
回归结果表示19个苹果样本,预测为苹果的有14个,正确率为73.7%;同理,预测为橙子的结果有15个,预测的正确率为78.9%。
通过这样的回归我们便可以知道
β
0
,
β
1
,
⋯
,
β
k
\beta_0, \beta_1, \cdots, \beta_k
β0,β1,⋯,βk 的值(表格第三列)。
将后续数据带入方程后,若 y i ^ ⩾ 0.5 \hat{y_i} \geqslant 0.5 yi^⩾0.5,则说明其预测的结果是苹果,否则则为橙子。
同时,我们还可以在表格中看到这两列:
这里可以查看具体预测的值和具体的预测结果。
若对预测结果不满意,可以在logistic回归模型中加入平方项、交互项等
如果加入了平方项,那么预测的结果:
完全符合,这种现象叫做过拟合现象。其对于样本数据预测得非常好,但是对于样本外的数据得预测效果可能会差很多。
那么我们该如何确定合适得预测模型呢?
可以将数据分为训练组和测试组(一般是八二开),让训练组取估计模型,然后用测试组得数据来进行测试。可以多进行几次,求得每个模型的平均准确率,取准确率最高的那个模型。(交叉验证)
解决分类模型,主要步骤可以总结为一下几点:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。