02-逻辑回归
引入
- 问题:根据余额判断小明是否回去看电影。
- 训练数据:
余额 | -5 | -4 | -3 | -2 | -1 | 1 | 2 | 3 | 4 | 5 |
---|---|---|---|---|---|---|---|---|---|---|
是否看电影(0/1) | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 1 | 1 |
![](https://i-blog.csdnimg.cn/blog_migrate/400e163faf0feb52b87f1e40ce16f056.png)
Y
=
0.1364
x
+
0.5
→
y
=
{
1
,
Y
≥
0.5
0
,
Y
>
0.5
Y=0.1364x+0.5\rightarrow y=\begin{cases}1,Y\geq0.5 \\ 0,Y>0.5\end{cases}
Y=0.1364x+0.5→y={1,Y≥0.50,Y>0.5
但是,当加入一个数据
(
50
,
1
)
(50,1)
(50,1)时,数据不对称,其实当
x
=
1
x=1
x=1时,被预测为
Y
=
0.4888
,
y
=
0
Y=0.4888,y=0
Y=0.4888,y=0,准确率降低!
不能再使用线性回归!
分类任务
基本框架:
{
y
=
f
(
x
1
,
x
2
,
⋯
,
x
n
)
,
y
=
0
,
1
,
⋯
,
n
−
1
判断为类别
I
,
如果
y
=
i
,
i
=
0
,
1
,
⋯
,
n
−
1
\left\{ \begin{aligned} y=f(x_1,x_2,\cdots,x_n),y=0,1,\cdots,n-1 \\ \text{判断为类别}I,\text{如果}y=i,i=0,1,\cdots,n-1 \end{aligned} \right.
{y=f(x1,x2,⋯,xn),y=0,1,⋯,n−1判断为类别I,如果y=i,i=0,1,⋯,n−1
逻辑回归
简单逻辑回归
-
定义:用于解决分类问题的一种模型。根据数据特征或属性,计算其归属于某一类别的概率 P ( x ) P(x) P(x),根据概率数值判断其所属类别。
-
主要应用场景:二分类问题
例如引入中的问题,可表示为sigmoid方程:
P
(
x
)
=
1
1
+
e
−
x
,
y
=
{
1
,
P
(
x
)
≥
0.5
0
,
P
(
x
)
<
0.5
P(x)=\frac{1}{1+e^{-x}},y=\begin{cases}1,P(x)\geq0.5\\0,P(x)<0.5\end{cases}
P(x)=1+e−x1,y={1,P(x)≥0.50,P(x)<0.5
其中, y y y为类别结果, P P P为概率分布函数, x x x为特征值。
复杂逻辑回归
如图,此时为二维问题,
x
1
,
x
2
x_1,x_2
x1,x2均作为输入,两个自变量判断
y
1
y_1
y1的概率,此时的概率函数为:
P
(
x
)
=
1
1
+
e
−
g
(
x
)
,
g
(
x
)
=
θ
0
+
θ
1
x
1
+
θ
2
x
2
P(x)=\frac{1}{1+e^{-g(x)}},g(x)=\theta_0+\theta_1x_1+\theta_2x_2
P(x)=1+e−g(x)1,g(x)=θ0+θ1x1+θ2x2
此时,
g
(
x
)
g(x)
g(x)即为图中蓝色线的表达式,该线称为决策边界(Decision Boundary)。许多决策问题即为找出决策边界。
再举一个栗子,如图决策边界为圆形,
x
1
,
x
2
x_1,x_2
x1,x2均作为输入,两个自变量判断概率
y
1
y_1
y1,此时的概率函数为:
P
(
x
)
=
1
1
+
e
−
g
(
x
)
,
g
(
x
)
=
θ
0
+
θ
1
x
1
+
θ
2
x
2
+
θ
3
x
1
2
+
θ
4
x
2
2
P(x)=\frac{1}{1+e^{-g(x)}},g(x)=\theta_0+\theta_1x_1+\theta_2x_2+\theta_3x_1^2+\theta_4x_2^2
P(x)=1+e−g(x)1,g(x)=θ0+θ1x1+θ2x2+θ3x12+θ4x22
⋆
\star
⋆逻辑回归结合多项式边界函数可解决复杂的分类问题!
损失函数
J i = { − log ( P ( x i ) ) , y i = 1 − log ( 1 − P ( x i ) ) , y i = 0 J_i=\begin{cases}-\log\left(P\left(x_i\right)\right),y_i=1\\-\log\left(1-P\left(x_i\right)\right),y_i=0 \end{cases} Ji={−log(P(xi)),yi=1−log(1−P(xi)),yi=0
P ( x i ) P(x_i) P(xi)即 x i x_i xi为正样本的概率函数, x i x_i xi的损失函数 J i J_i Ji理解:
- 当 y i = 1 y_i=1 yi=1即为正样本,若 P ( x i ) = 0 P(x_i)=0 P(xi)=0时,此时损失极大,随着其接近1,损失减小
- 当 y i = 0 y_i=0 yi=0即为负样本,若 P ( x i ) = 1 P(x_i)=1 P(xi)=1时,此时损失极大,随着其接近0,损失减小
接下来最小化损失函数:
J
=
1
m
∑
i
=
1
m
J
i
=
−
1
m
[
∑
i
=
1
m
(
y
i
log
(
P
(
x
i
)
)
)
+
(
1
−
y
i
)
log
(
1
−
P
(
x
i
)
)
]
J=\frac{1}{m}\sum^m_{i=1}J_i=-\frac{1}{m}\left[\sum^m_{i=1}\left(y_i\log{\left(P\left(x_i\right)\right)}\right)+(1-y_i)\log{\left(1-P\left(x_i\right)\right)}\right]
J=m1i=1∑mJi=−m1[i=1∑m(yilog(P(xi)))+(1−yi)log(1−P(xi))]
此时,
P
(
x
)
=
1
1
+
e
−
g
(
x
)
,
g
(
x
)
=
θ
0
+
θ
1
x
1
+
⋯
P(x)=\frac{1}{1+e^{-g(x)}},g(x)=\theta_0+\theta_1x_1+\cdots
P(x)=1+e−g(x)1,g(x)=θ0+θ1x1+⋯
使用梯度下降法,重复计算直到收敛:
{
t
e
m
p
θ
j
=
θ
j
−
α
∂
∂
θ
j
J
(
θ
)
θ
j
=
t
e
m
p
θ
j
}
\begin{Bmatrix} temp_{\theta_j}=\theta_j-\alpha\frac{\partial}{\partial\theta_j}J(\theta)\\ \theta_j=temp_{\theta_j} \end{Bmatrix}
{tempθj=θj−α∂θj∂J(θ)θj=tempθj}
以上为B站BV1884y1k7cv的课程笔记,如有不足之处请指出,谢谢!