QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 840|回复: 0
打印 上一主题 下一主题

实现Logistic回归模型学习的梯度下降法

[复制链接]
字体大小: 正常 放大

1189

主题

4

听众

2934

积分

该用户从未签到

跳转到指定楼层
1#
发表于 2025-1-23 19:06 |只看该作者 |倒序浏览
|招呼Ta 关注Ta
在实现Logistic回归模型的学习过程中,梯度下降法是一种常用的优化算法。Logistic回归用于二分类问题,通过使用sigmoid函数来预测样本属于某一类的概率。以下是如何用Python实现Logistic回归,并使用梯度下降法来学习模型参数
, O! h; M( l# s& d9 F
9 a, J8 F, }: b0 t### Logistic 回归原理
- |! C1 n1 G4 P; k8 T- w0 p) O( Y! h6 e8 t6 W+ ~) |+ G! |
1. **Sigmoid 函数**:6 V7 n* u8 C, u: R
   \[
6 J7 z) A# r5 e) j' m3 q$ h   \sigma(z) = \frac{1}{1 + e^{-z}}
5 [6 Z" d/ k: \/ b0 q4 }9 M   \]$ |  ?# a) }/ Q# ?; m0 Z" x7 Q0 S& Y
   这个函数将任何实数映射到(0, 1)区间,用于计算预测概率。
" u  x3 \: G- X. d* h
8 _9 w1 ?0 X: {: a( w: L1 Q2. **损失函数**:% {0 @5 o/ i/ t3 }5 `) m
   Logistic回归的损失函数是对数损失函数(Log Loss):7 u6 u" x8 J3 V3 k' n# g3 N
   \[
& s1 X  Z$ ^! C) U+ n   J(\theta) = -\frac{1}{m} \sum_{i=1}^{m} [y^{(i)} \log(h_\theta(x^{(i)})) + (1 - y^{(i)}) \log(1 - h_\theta(x^{(i)}))]
: K* Q6 F9 ]5 ~1 Q) o$ V+ f' G   \]2 Q" h3 _. Q* z; o! ~: Z( N4 `
   其中 \( h_\theta(x) = \sigma(\theta^T x) \)。
- @9 {4 e% w0 u4 R9 c' S1 y
% Z) A6 c5 |' L9 k* E3. **梯度下降法**:
- t' z* H/ {' E: c' o/ f   梯度下降更新参数的公式为:7 [& A- P  \( n2 y
   \[
  ~/ Q/ j- _8 E- M: g# F8 R   \theta := \theta - \alpha \nabla J(\theta)
9 d4 h' X* ~5 i9 d  p   \]7 Y! s- f; f# [2 G: e3 [2 @
   其中,\(\alpha\)是学习率,\(\nabla J(\theta)\)是损失函数的梯度。! c% R; V, R' K. n9 w5 W7 S

& a% d+ y2 Y* i- P3 a1 {8 U' W' f% j
0 F# N* A9 M# I& ~0 @
. H" q9 Y: |: x' b+ ?1 F

my_logistic_regression.py

4.64 KB, 下载次数: 0, 下载积分: 体力 -2 点

售价: 2 点体力  [记录]  [购买]

zan
转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信
您需要登录后才可以回帖 登录 | 注册地址

qq
收缩
  • 电话咨询

  • 04714969085
fastpost

关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

手机版|Archiver| |繁體中文 手机客户端  

蒙公网安备 15010502000194号

Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

GMT+8, 2026-6-11 21:16 , Processed in 0.441086 second(s), 55 queries .

回顶部