逻辑回归

逻辑回归

二分类情况

对于二分类问题,在线性可分的情况下,试图构建一个判别式

W

X

+

b

{W'X'+b}

WX+b,为了便于操作将判别式增广为

W

X

{WX}

WX

W

x

i

=

{

 

>

0

,

x

i

w

1

,

Y

=

1

<

0

,

x

i

w

2

,

Y

=

0

{Wx_i}=begin{cases} >0, quad x_i in w_1,Y=1\ <0, quad x_i in w_2,Y=0 end{cases}

Wxi={ >0,xiw1,Y=1<0,xiw2,Y=0
为了将其表示为概率的方式我们对概率建模,将其缩放为

[

0

,

1

]

[0,1]

[0,1]的范围上,所以我们利用sigmoid函数

1

1

+

e

x

frac{1}{1+e^{-x}}

1+ex1

由此我们设分类为

w

1

w_1

w1的概率为

P

(

Y

=

1

x

)

=

1

1

+

e

W

x

P(Y=1|x)=frac{1}{1+e^{-Wx}}

P(Y=1∣x)=1+eWx1
设:

P

(

Y

=

1

x

i

)

=

P

(

x

i

)

P

(

Y

=

0

x

i

)

=

1

P

(

x

i

)

P(Y=1|x_i)=P(x_i)\ P(Y=0|x_i)=1-P(x_i)

P(Y=1∣xi)=P(xi)P(Y=0∣xi)=1P(xi)
由此构建似然函数:

L

(

W

)

=

[

P

(

x

i

)

]

y

i

[

1

P

(

x

i

)

]

(

1

y

i

)

L(W)=prod[P(x_i)]^{y_i}[1-P(x_i)]^{(1-y_i)}

L(W)=[P(xi)]yi[1P(xi)](1yi)

对似然函数取对数:

I

n

(

L

(

W

)

)

=

ln

(

[

P

(

x

i

)

]

y

i

[

1

P

(

x

i

)

]

(

1

y

i

)

)

=

(

ln

(

[

P

(

x

i

)

]

y

i

)

+

ln

(

[

1

P

(

x

i

)

]

(

1

y

i

)

)

)

=

(

y

i

ln

(

[

P

(

x

i

)

]

)

+

(

1

y

i

)

ln

(

[

1

P

(

x

i

)

]

)

)

=

[

y

i

W

x

i

ln

(

1

+

e

W

x

i

)

]

begin{aligned} In(L(W)) &=ln(prod[P(x_i)]^{y_i}[1-P(x_i)]^{(1-y_i)})\ &=sum (ln([P(x_i)]^{y_i})+ln([1-P(x_i)]^{(1-y_i)}))\ &=sum ({y_i}ln([P(x_i)])+{(1-y_i)}ln([1-P(x_i)]))\ &=sum[y_icdot Wx_i-ln(1+e^{Wx_i})] end{aligned}

In(L(W))=ln([P(xi)]yi[1P(xi)](1yi))=(ln([P(xi)]yi)+ln([1P(xi)](1yi)))=(yiln([P(xi)])+(1yi)ln([1P(xi)]))=[yiWxiln(1+eWxi)]
为了最大化似然,即最小化似然的负数

使似然除以样本总数n(减少梯度爆炸出现的概率),再乘以-1(将求最大值问题转化为求最小值问题

J

(

W

)

=

1

N

(

ln

(

[

P

(

x

i

)

]

y

i

)

+

ln

(

[

1

P

(

x

i

)

]

(

1

y

i

)

)

)

J(W)=-frac{1}{N}sum (ln([P(x_i)]^{y_i})+ln([1-P(x_i)]^{(1-y_i)}))

J(W)=N1(ln([P(xi)]yi)+ln([1P(xi)](1yi)))
采用梯度下降的方法:

J

(

W

)

W

=

1

N

(

y

i

P

(

x

i

)

)

x

i

frac{partial J(W)}{partial W}=-frac{1}{N}sum (y_i-P(x_i))x_i

WJ(W)=N1(yiP(xi))xi
更新

W

W

W:

W

k

+

1

=

W

k

α

J

(

W

)

W

,

k

为迭代次数

,

α

为学习率

W^{k+1}=W^{k}-alphafrac{partial J(W)}{partial W},quad k为迭代次数,alpha为学习率

Wk+1=WkαWJ(W),k为迭代次数,α为学习率

W

k

+

1

W

k

||W^{k+1}-W^{k}||

∣∣Wk+1Wk∣∣小于阈值时或者当

k

k

k达到最大迭代次数时停止迭代。

逻辑回归是在线性回归的基础上加了一个 Sigmoid 函数(非线形)映射,使得逻辑回归称为了一个优秀的分类算法。本质上来说,两者都属于广义线性模型,但他们两个要解决的问题不一样,逻辑回归解决的是分类问题,输出的是离散值,线性回归解决的是回归问题,输出的连续值。

多分类问题

为了实现多分类,我们引入一个softmax函数:

softmax

(

x

i

)

=

e

x

i

j

e

x

j

text{softmax}(x_i) = frac{e^{x_i}}{sum_j e^{x_j}}

softmax(xi)=jexjexi来代替Sigmoid函数,同构建模型:

Y

=

W

X

i

Y=WX_i

Y=WXi,其中

Y

Y

Y为一个列向量,第

i

i

i个数表示第

i

i

i个类别的概率。

其中修改损失函数:

J

(

W

)

=

1

n

[

i

=

1

n

j

=

1

k

1

{

j

(

i

)

=

j

}

log

(

e

W

x

i

l

=

1

k

e

W

x

i

)

]

J(W)=-frac{1}{n}left[sum_{i=1}^nsum_{j=1}^k 1_{{j^{(i)}=j}}cdotlog (frac{e^{Wx_i}}{sum_{l=1}^k e^{Wx_i}})right]

J(W)=n1[i=1nj=1k1{j(i)=j}log(l=1keWxieWxi)]
其中

1

{

j

(

i

)

=

j

}

1_{{j^{(i)}=j}}

1{j(i)=j}表示第

i

i

i类分类正确时为1,否则为0,

k

k

k为类别数。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
THE END
分享
二维码
< <上一篇
下一篇>>