逻辑回归算法
2019-01-22 本文已影响51人
python机器学习学习笔记
逻辑回归原理推导
目的:分类还是回归?
(经典的二分类算法)
什么是回归:比如说我们有两类数据,各有50个点组成,当我门把这些点画出来,会有一条线区分这两组数据,我们拟合出这个曲线(因为很有可能是非线性),就是回归。我们通过大量的数据找出这条线,并拟合出这条线的表达式,再有新数据,我们就以这条线为区分来实现分类。
机器学习算法选择:先逻辑回归再用复杂的,能简单还是用简单的
逻辑回归的决策边界:可以是非线性的
学习过程:
下图是一个数据集的两组数据,中间有一条区分两组数据的线。
显然,只有这种线性可分的数据分布才适合用线性回归
逻辑回归的模型 是一个非线性模型,sigmoid函数,又称逻辑回归函数。但是它本质上又是一个线性回归模型,因为除去sigmoid映射函数关系,其他的步骤,算法都是线性回归的。可以说,逻辑回归,都是以线性回归为理论支持的。
只不过,线性模型,无法做到sigmoid的非线性形式,sigmoid可以轻松处理0/1分类问题。
Sigmoid函数(逻辑回归函数)
公式:
自变量取值为任意实数,值域为[0,1]
解释:将任意的输入映射到了[0,1]区间,我们在线性回归中可以得到一个预测值,再将该值映射到Sigmoid函数中,这样就完成了由值到概率的转换,也就是分类任务。
预测函数:
其中:
分类任务:
整合:
解释:
逻辑回归求解:
似然函数:
对数似然:
此时应用梯度上升求最大值,
求导过程:
参数更新:
多分类的softmax:
总结:逻辑回归算是很好用的一种算法