逻辑回归分类算法

发布于:2024-06-01 ⋅ 阅读:(141) ⋅ 点赞:(0)

文章目录


线性回归解决连续值的回归预测;而逻辑回归解决离散值的分类预测;

算法推导

逻辑回归可以看作是两部分,以0、1分类问题说明;

  • 线性回归部分

    • 对于一个样本 x i x_i xi,有n个特征 x i ( 1 ) x_i^{(1)} xi(1) x i ( 2 ) x_i^{(2)} xi(2) x i ( n ) x_i^{(n)} xi(n),每个特征有对应的权重 θ ( j ) \theta_{(j)} θ(j),则该样本所有特征的线性加权求和为: h θ ( x i ) = ∑ j n θ j x i ( j ) + θ 0 x i ( 0 ) = > θ T x i ; 其中 x i ( 0 ) = 1 h_{\theta}(x_i) =\sum_j^n\theta_jx_i^{(j)} + \theta_0x_i^{(0)}=>\theta^Tx_i ; 其中x_i^{(0)}=1 hθ(xi)=jnθjxi(j)+θ0xi(0)=>θTxi;其中xi(0)=1
      θ 为权重列向量, x i 为第 i 个样本的列向量 \theta为权重列向量,x_i为第i个样本的列向量 θ为权重列向量,xi为第i个样本的列向量
  • 逻辑函数部分

    • 回归拟合的值 h θ ( x i ) h_{\theta}(x_i) hθ(xi) 是一个连续值,需要转为 [ 0 , 1 ] [0, 1] [0,1]之间的概率;
    • 逻辑函数 f ( x ) = 1 1 + e − x f(x) = \frac {1} {1+e^{-x}} f(x)=1+ex1 h θ ( x i ) h_{\theta}(x_i) hθ(xi) 连续值经过该逻辑函数映射到0-1之间
  • 由以上两部分,可以得到逻辑回归的预测函数: y p r e d ( x i ) = 1 1 + e − θ T x i y_{pred}(x_i) = \frac {1} {1+e^{-\theta^Tx_i}} ypred(xi)=1+eθTxi1 这里的预测值在 0 − 1 0-1 01之间,可以表示样本 x i x_i xi属于某类别的概率;

  • 概率的似然函数 f = ∏ i = 1 m y p r e d y t r u e ( 1 − y p r e d ) ( 1 − y t r u e ) f = \prod_{i=1}^my_{pred}^{y_{true}}(1-y_{pred})^{(1-y_{true})} f=i=1mypredytrue(1ypred)(1ytrue) 尽量让属于某类的概率最大,即极大似然估计求解;两边取对数,并乘以-1,得到损失函数: L = − ∑ i = 1 m ( y t r u e l o g ( y p r e d ) + ( 1 − y t r u e ) l o g ( 1 − y p r e d ) ) L = -\sum_{i=1}^m(y_{true}log(y_{pred}) + (1-y_{true})log(1-y_{pred})) L=i=1m(ytruelog(ypred)+(1ytrue)log(1ypred))求该损失函数的最小值。

  • 梯度下降法,优化损失函数,得到权重更新公式: θ j = θ j − α ∑ i = 1 m ( y p r e d ( x i ) − y t r u e ( x i ) ) x i j \theta_j = \theta_j - \alpha\sum_{i=1}^m(y_{pred}(x_i) - y_{true}(x_i))x_i^{j} θj=θjαi=1m(ypred(xi)ytrue(xi))xij


网站公告

今日签到

点亮在社区的每一天
去签到