Logistic回归-分类模型和梯度下降算法

Logistic回归

1. Logistc回归模型

回归:用一条直线对给定数据进行拟合(最佳拟合直线)

Logistic 回归:根据现有数据对分类边界建立回归方程,以此直线进行分类

给定数据集 \( [(x_{1},y_{1}),(x_{2},y_{2}),…,(x_{m},y_{m})] \) ,每个样本 x 有 d 个属性 \( x=[x_{1},x_{2},…,x_{d}] \) 。

对于给定数据集,该数据集的线性拟合公式为:

f ( x ) = w 0 x 0 + w 1 x 1 + w 2 x 2 + . . . + w d x d f(x) = w_{0}x_{0}+w_{1}x_{1}+w_{2}x_{2}+...+w_{d}x_{d} f(x)=w0x0+w1x1+w2x2+...+wdxd

f ( x ) = w T x f(x) = w^{T}x f(x)=wTx

其中 \( w^{T}=[w_{0},w_{1},w_{2},…,w_{d}] \)

若要进行分类任务(以二分类为例),需要找到一个单调可微的函数将分类任务的真实标记 y 和线性回归模型的预测值关联起来。

分类输出标记 y = {0 , 1} , 回归模型的预测值 \( z = w^{T}x \) , 因此需要一个函数将 z 转化为 0 / 1 值。 最理想的函数是 “ 单位阶跃函数 ”,但是这个函数是不连续的函数,它的跳跃点从0到1的跳跃过程很难处理。需要一个近似单位阶跃的函数,更容易处理且单调可微,这就是 “ 对几率函数(logistic function) ” 函数 ,它是“Sigmoid函数”的一种 。

y w ( x ) = 1 1 + z − 1 = 1 1 + ( w T x ) − 1 y_{w}(x) = \frac{1}{1+z^{-1} }= \frac{1}{1+(w^{T}x)^{-1}} yw(x)=1+z11=1+(wTx)11

TIM图片20190130162544.png

y = { 1  if  z > 0 0.5  if  z = 0 0  if  z < 0 y = \begin{cases} 1 & \text{ if } z>0 \\ 0.5 & \text{ if } z=0 \\ 0 & \text{ if } z<0 \end{cases} y=10.50 if z>0 if z=0 if 

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
二分类问题是机器学习中的一种常见问题,可以使用回归算法来解决。Python中的logistic回归是一种二分类算法,可用于将数据分为两个类别。 随机梯度下降是一种常用的优化算法,用于最小化目标函数。在logistic回归中,我们使用的是交叉熵损失函数作为目标函数。随机梯度下降的思想是在每次迭代中仅使用一个样本来更新权重。这与批量梯度下降不同,后者需要用到所有训练样本。 使用Python进行logistic回归二分类随机梯度下降,我们需要以下步骤: 1. 导入所需的库,如numpy和matplotlib。 2. 加载训练数据集,将数据划分为特征X和标签y。 3. 初始化型的权重w和偏差b。 4. 定义sigmoid函数,用于将线性回归输出转换为概率值。 5. 定义损失函数,例如交叉熵损失函数。 6. 定义梯度计算函数,用于计算每个参数的梯度。 7. 选择学习率和迭代次数。 8. 使用随机梯度下降算法更新权重,直到达到最大迭代次数或损失函数收敛。 9. 对测试数据进行预测,计算准确率或其他评价指标。 随机梯度下降算法能够更快地收敛,但可能会牺牲一些精确度。因此,在实际应用中,需要权衡精确度和计算效率。通过调整学习率和迭代次数,可以在准确率和计算效率之间找到一个平衡点。 总结起来,Python中的logistic回归二分类随机梯度下降是一种用于解决二分类问题的机器学习算法。它通过使用随机梯度下降算法和交叉熵损失函数来更新权重,以逐步优化型。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值