博客
关于我
机器学习实战 - 读书笔记(05) - Logistic回归
阅读量:449 次
发布时间:2019-03-06

本文共 1144 字,大约阅读时间需要 3 分钟。

机器学习实战 - 读书笔记(05) - Logistic回归

解释

Logistic回归是一种常用的分类算法,主要用于解决最优化问题。最优化问题可以理解为在有限的资源下寻求最大效益的过程,比如如何在最短时间内到达目的地、如何用最少的投入获得最大的效益等等。这些问题通常需要寻找最小值或最大值,而解决这类问题的方法包括梯度下降法和梯度上升法。

Logistic回归的核心思想是通过寻找一个阶跃函数来实现分类。由于阶跃函数只能返回0或1的值,因此可以将其作为分类器。为了实现这一点,Logistic函数(Sigmoid函数)被广泛使用。Sigmoid函数的数学表达式为:

[\sigma(z) = \frac{1}{1 + e^{-z}}]

该函数的输出值通常在0到1之间,当输入值z接近0时,输出值约为0.5。因此,当Sigmoid函数的输出值大于0.5时,分类器将返回1,否则返回0。

为了使Sigmoid函数返回值大于0.5,我们需要计算z的值:

[z = w_0x_0 + w_1x_1 + ... + w_nx_n]

其中,向量w是待求的参数,向量x是输入数据。为了避免线性函数的线性限制,通常会在x的向量中添加一个不变量(如1),从而将问题转化为多元一次方程的问题。

在求解最优化问题时,梯度上升法和梯度下降法是两种常用的迭代优化算法。梯度上升法用于最大化目标函数,而梯度下降法用于最小化目标函数。对于Logistic回归,通常使用梯度上升法,因为其目标函数是一个对数似然函数。

梯度上升算法的迭代公式为:

[w := w + \alpha (c - f(x)) x]

其中,α是步长,c是预期分类结果,f(x)是Sigmoid函数的输出值,x是输入向量。这样的更新规则可以帮助模型沿着提高目标函数的梯度方向调整参数w,逐步逼近最优解。

在实际应用中,步长α的选择非常重要。步长太大可能导致模型收敛过快或震荡,影响模型的稳定性;步长太小则会降低训练效率。因此,通常会在训练过程中动态调整步长。

Logistic回归的另一个关键点是其对应的损失函数。损失函数的最小化与分类器的性能直接相关。通过不断优化参数w,使得损失函数的值最小化,从而提高分类的准确性。

此外,Sigmoid函数的导数也值得注意。其导数为:

[f'(x) = f(x) [1 - f(x)]]

这表明函数在输出值接近0或1时,变化率较低,而在中间区域变化较快。

总的来说,Logistic回归通过将线性函数与Sigmoid函数结合,成功地将分类问题转化为对数似然的最大化问题,从而为机器学习提供了一个强大的工具。

参考

  • Machine Learning in Action by Peter Harrington

转载地址:http://grxfz.baihongyu.com/

你可能感兴趣的文章
nodejs 读取xlsx文件内容
查看>>
nodejs 运行CMD命令
查看>>
Nodejs+Express+Mysql实现简单用户管理增删改查
查看>>
nodejs+nginx获取真实ip
查看>>
nodejs-mime类型
查看>>
NodeJs——(11)控制权转移next
查看>>
NodeJS、NPM安装配置步骤(windows版本)
查看>>
NodeJS、NPM安装配置步骤(windows版本)
查看>>
nodejs下的express安装
查看>>
nodejs与javascript中的aes加密
查看>>
nodejs中Express 路由统一设置缓存的小技巧
查看>>
nodejs中express的使用
查看>>
Nodejs中搭建一个静态Web服务器,通过读取文件获取响应类型
查看>>
Nodejs中的fs模块的使用
查看>>
NodeJS使用淘宝npm镜像站的各种姿势
查看>>
NodeJs入门知识
查看>>
nodejs包管理工具对比:npm、Yarn、cnpm、npx
查看>>
NodeJs单元测试之 API性能测试
查看>>
nodejs图片转换字节保存
查看>>
nodejs在Liunx上的部署生产方式-PM2
查看>>