监督式学习、二分类模型
线性回归预测结果是连续值,而逻辑回归预测结果在应用转换函数后是离散值。逻辑回归用了和回归类似的方法来解决了分类问题。
逻辑回归最适合二元分类(数据集中 y=0 或 1,其中 1 指默认类别。例如,在预测某个事件是否会发生时,事件发生归类为 1;预测某人是否生病时,生病的状况会以1表示)。它以应用在其中的转换函数而命名,称为逻辑函数 h(x)= 1/ (1 + e^x),是一个 S 型曲线。
在逻辑回归中,输出值的形式为默认类的概率(不像线性回归中,输出值为直接产生)。因为是概率,所以输出值会介乎 0 到 1 之间。通过使用逻辑函数 h(x)= 1/ (1 + e^ -x),对 X 值进行对数转换可得到输出值。然后用阙值将得到的概率,即输出值,应用到二元分类中。
特点:
模型源自于逻辑斯蒂分布优化算法有改进的迭代尺度法、梯度下降法、拟牛顿法
优点:
简单,计算量小,存储资源低
缺点:
欠拟合,精度不高
1.概念
Sigmoid 函数
当 x 为 0 时,Sigmoid 函数值为 0.5 。随着 x 的增大,对应的 Sigmoid 值将逼近于 1 ; 而随着 x 的减小, Sigmoid 值将逼近于 0 。如果横坐标刻度足够大, Sigmoid 函数看起来很像一个阶跃函数。
2. 基本思路
2.1 伪代码
1 | 每个回归系数初始化为 1 |
2.2 模型特点
特征条件下类别的条件概率分布,对数线形模型
学习策略
极大似然估计,正则化的极大似然估计
学习的损失函数
逻辑斯谛损失
学习方法
改进的迭代尺度算法,梯度下降,拟牛顿法
3. 使用
3.1 一般流程
收集数据: 采用任意方法收集数据
准备数据: 由于需要进行距离计算,因此要求数据类型为数值型。另外,结构化数据格式则最佳。
分析数据: 采用任意方法对数据进行分析。
训练算法: 大部分时间将用于训练,训练的目的是为了找到最佳的分类回归系数。
测试算法: 一旦训练步骤完成,分类将会很快。
使用算法: 首先,我们需要输入一些数据,并将其转换成对应的结构化数值;接着,基于训练好的回归系数就可以对这些数值进行简单的回归计算,判定它们属于哪个类别;在这之后,我们就可以在输出的类别上做一些其他分析工作。
3.2 调参
4. 代码实现
4.1 核心算法
1 | # sigmoid跳跃函数 |
4.2 sklearn实现
1 | import numpy as np |
4.3 《机器学习实战》(python3.x)
5. 补充
- 优化点
- 证明:
- 参考:
- 李航《统计学习方法》
- 周志华《机器学习》
- ApacheCN