标题: 实现Logistic回归模型学习的梯度下降法 [打印本页] 作者: 2744557306 时间: 2025-1-23 19:06 标题: 实现Logistic回归模型学习的梯度下降法 在实现Logistic回归模型的学习过程中,梯度下降法是一种常用的优化算法。Logistic回归用于二分类问题,通过使用sigmoid函数来预测样本属于某一类的概率。以下是如何用Python实现Logistic回归,并使用梯度下降法来学习模型参数 # R. G# b# r/ v5 I$ g. Z( }$ k. }+ e O! i2 g* [$ ~; V1 P6 \ r, T
### Logistic 回归原理: ]+ Z {2 M% @5 B R8 U
; D( ^* \' j: j! @& M4 l
1. **Sigmoid 函数**: 9 U2 Q1 _% `# L# x9 O \[" u* q# O! N. }3 W. e8 O
\sigma(z) = \frac{1}{1 + e^{-z}}4 ?3 U, ~0 L' o, x: r
\]1 l3 S$ Q4 g% p3 W
这个函数将任何实数映射到(0, 1)区间,用于计算预测概率。. e4 M X) t. V* U( z. M1 L
* q4 H) Z/ A1 ^( A3 k/ Z; b2 S* K2. **损失函数**:1 M; y- S' `9 b/ ?
Logistic回归的损失函数是对数损失函数(Log Loss): . G5 ?2 z. o/ B* q \[* p4 ]" S% I& ^: U
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)}))]* p! ] \/ w( O% t' a
\]& o+ R4 O$ N# K. W9 r; Y
其中 \( h_\theta(x) = \sigma(\theta^T x) \)。; V0 T' k( f- F# K& F
& a* s6 O0 W2 s( a/ p( z, L: W
3. **梯度下降法**: 3 x' \2 K# v% d, j; Y( u8 B; H! M 梯度下降更新参数的公式为: 8 d" A C7 K- k4 q \[+ L2 O, B9 m. R- H
\theta := \theta - \alpha \nabla J(\theta) 3 m2 n# R' }) w' N+ G" ` \] 4 m; o; D+ Z" ~ 其中,\(\alpha\)是学习率,\(\nabla J(\theta)\)是损失函数的梯度。* G& i h2 {3 t4 S+ G