- 在线时间
- 480 小时
- 最后登录
- 2026-6-1
- 注册时间
- 2023-7-11
- 听众数
- 4
- 收听数
- 0
- 能力
- 0 分
- 体力
- 7823 点
- 威望
- 0 点
- 阅读权限
- 255
- 积分
- 2934
- 相册
- 0
- 日志
- 0
- 记录
- 0
- 帖子
- 1174
- 主题
- 1189
- 精华
- 0
- 分享
- 0
- 好友
- 1
该用户从未签到
 |
在实现Logistic回归模型的学习过程中,梯度下降法是一种常用的优化算法。Logistic回归用于二分类问题,通过使用sigmoid函数来预测样本属于某一类的概率。以下是如何用Python实现Logistic回归,并使用梯度下降法来学习模型参数( |, S; v# [% j* @) s% M# `
~8 ^( D3 X: R. Z, B### Logistic 回归原理
! Q! R/ ?! x4 l0 C: W7 H# z1 N, i; f. D! n" R
1. **Sigmoid 函数**:2 C1 N& \ j% G1 s
\[
: s0 ]2 h4 x5 N, d9 G( ]3 E \sigma(z) = \frac{1}{1 + e^{-z}}5 q- w% [/ C* m
\]5 \$ Y. A7 b+ f- J6 P% O
这个函数将任何实数映射到(0, 1)区间,用于计算预测概率。
3 S$ G. O% X/ A5 R4 C( n
, E H; @ y2 A+ c( }2. **损失函数**:
+ ^# {6 Q* X6 w. h) M% Q* C Logistic回归的损失函数是对数损失函数(Log Loss):1 y% ]! u/ d6 o
\[
# d2 |- ?& _, f 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)}))]" Q1 c \0 P9 X
\]
, n: J$ t* i$ V( l 其中 \( h_\theta(x) = \sigma(\theta^T x) \)。
i. T1 R. P" J7 y: |" P" j
^8 h# O; E8 \! `3. **梯度下降法**:4 ?( D8 h; q% r' x ^. O- K, D
梯度下降更新参数的公式为:
0 |0 t+ W- ]0 o' a9 U) Z \[" _& L! o. K! D k4 H5 ^
\theta := \theta - \alpha \nabla J(\theta)9 l# N( _1 f) ]* E2 h
\]
; p& a; l7 _" K5 V$ F 其中,\(\alpha\)是学习率,\(\nabla J(\theta)\)是损失函数的梯度。/ L0 e& S& O8 g$ h* S
% g$ E, c# r4 k! G U0 @. ^' E0 Z
2 p* q" |& I5 Z/ j8 Y
1 e5 F7 v y: J# D" l+ w8 I& G7 S1 y# x4 o. F' w
|
zan
|