资讯详情

逻辑回归的推导及实现

公式推导

线性回归

线性回归的表达式为: f ( x ) = w T x b f(x)=w^Tx b f(x)=wTx b 给定这类问题 X X X,模型可以输出预测(映射)值 y y y,为了统一参数,我们可以使用参数 b b b放到 w w w内部,即设 x ′ = [ 1 x ] T x^{'} = [1\quad x]^T x′=[1x]T,则 w ′ = [ b w ] T w^{'}=[b\quad w]^T w′=[bw]T,进而方程化简为 f ( x ′ ) = w ′ T x ′ f(x^{'})=w^{'T}x^{'} f(x′)=w′Tx′。在本文中默认使用这种简化的方式作为线性回归的公式。

逻辑回归

为了让模型能够处理分类问题,我们将线性回归的输出再做为输入送到sigmoid函数中 σ ( x ) = 1 1 + e − x \sigma(x)=\frac{1}{1+e^{-x}} σ(x)=1+e−x1​,他的函数图像如下: image.png 将线性回归的表达式带入即可得逻辑回归的表达式: y = σ ( f ( x ) ) = 1 1 + e − w T x y=\sigma(f(x))=\frac{1}{1+e^{-w^Tx}} y=σ(f(x))=1+e−wTx1​ 从上图可以看出,逻辑回归在定义域大于0时取值接近1,而在定义域小于0是取值接近0,我们可利用该特性来处理二分类问题(多分类的情况后文会介绍处理策略),对于某个二分类问题,也就是 y ∈ { 0 , 1 } y\in\{ {0,1}\} y∈{ 0,1},我们把采集到的任何一个样本看作一个事件,事件发生的概率记为 p p p,则有: p = P y = 1 = 1 1 + e − w T x p=P_{y=1}=\frac{1}{1+e^{-w^Tx}} p=Py=1​=1+e−wTx1​

逻辑回归的损失函数

有了概率表达式我们就可以来计算损失函数了。 由于 y y y可取值只有 { 0 ,    1 } \{ {0,\;1}\} { 0,1},因此: P ( y ∣ x ) = { p , y = 1 1 − p , y = 0 P(y|x)=\begin{cases}p, & y=1\\1-p, & y=0\end{cases} P(y∣x)={ p,1−p,​y=1y=0​ 上面的公式可以统一起来表示为: P ( y ∣ x ) = p y ( 1 − p ) ( 1 − y ) P(y|x)=p^y(1-p)^{(1-y)} P(y∣x)=py(1−p)(1−y) 对于某个数据集,假设我们一共采集到 N N N个样本 { ( x 1 , y 1 ) , ( x 2 , y 2 ) , . . . , ( x N , y N ) } \{(x_1,y_1),(x_2,y_2),...,(x_N,y_N)\} { (x1​,y1​),(x2​,y2​),...,(xN​,yN​)},那么对于所有这些样本发生的概率为: P 总 = P ( y 1 ∣ x 1 ) ∗ P ( y 2 ∣ x 2 ) ∗ . . . ∗ P ( y N ∣ x N )   = ∏ n = 1 N p y n ( 1 − p ) 1 − y n P_总=P(y_1|x_1)*P(y_2|x_2)*...*P(y_N|x_N)\\ ~=\prod_{n=1}^Np^{y_n}(1-p)^{1-y_n} P总​=P(y1​∣x1​)∗P(y2​∣x2​)∗...∗P(yN​∣xN​) =n=1∏N​pyn​(1−p)1−yn​

由于连乘比较复杂,我们对该表达式取对数,同时,这里的 P 总 P_总 P总​越接近1表示模型越准确,那么在前面加一个负号,就可以得到损失函数(损失越小越好): J ( w ) = − l n ( P 总 ) = − l n ( ∏ n = 1 N p y n ( 1 − p ) 1 − y n ) = − ∑ n = 1 N y n l n p + ( 1 − y n ) l n ( 1 − p ) J(w)=-ln(P_总)=-ln(\prod_{n=1}^Np^{y_n}(1-p)^{1-y_n})\\=-\sum_{n=1}^Ny_nlnp+(1-y_n)ln(1-p) J(w)=−ln(P总​)=−ln(∏n=1N​pyn​(1−p)1−yn​)=−∑n=1N​yn​lnp+(1−yn​)ln(1−p) 这便是我们的损失函数。

梯度求解

为了使用梯度下降优化模型,还需要求出损失函数的梯度,下面我们来求解上述 J ( w ) J(w) J(w)函数对 w w w的梯度。 ▽ J ( w ) = − ∑ n = 1 N ( y n l n ′ ( p ) + ( 1 − y n ) l n ′ ( 1 − p ) )   = − ∑ n = 1 N ( y n 1 p p ′ + ( 1 − y n ) 1 1 − p ( 1 − p ) ′ )   = − ∑ n = 1 N ( y n ( 1 − p ) x n + ( 1 − y n ) p x n )   = − ∑ n = 1 N ( y n − p ) x n \bigtriangledown J(w)=-\sum_{n=1}^N(y_nln^{'}(p)+(1-y_n)ln^{'}(1-p)) \\ ~=-\sum_{n=1}^{N}(y_n\frac{1}{p}p^{'}+(1-y_n)\frac{1}{1-p}(1-p)^{'})\\ ~=-\sum_{n=1}^{N}(y_n(1-p)x_n+(1-y_n)px_n)\\ ~=-\sum_{n=1}^{N}(y_n-p)x_n ▽J(w)=−n=1∑N​(yn​ln′(p)+(1−yn​)ln′(1−p)) =−n=1∑N​(yn​p1​

标签: y2p连接器8px连接器cn

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

锐单商城 - 一站式电子元器件采购平台