目录
1、逻辑回归的定义
-
主要解决问题:分类问题—二分类问题
-
如果需要解决多分类问题— softmax 回归
简单来说, 逻辑回归(Logistic Regression)是一种用于解决二分类(0 or 1)问题的机器学习方法,用于估计某种事物的可能性。比如某用户购买某商品的可能性,某病人患有某种疾病的可能性,以及某广告被用户点击的可能性等。 注意,这里用的是“可能性”,而非数学上的“概率”,logisitc回归的结果并非数学定义中的概率值,不可以直接当做概率值来用。该结果往往用于和其他特征值加权求和,而非直接相乘。
那么逻辑回归与线性回归是什么关系呢?
逻辑回归(Logistic Regression)与线性回归(Linear Regression)都是一种广义线性模型(generalized linear model)。逻辑回归假设因变量 y 服从伯努利分布,而线性回归假设因变量 y 服从高斯分布。 因此与线性回归有很多相同之处,去除Sigmoid映射函数的话,逻辑回归算法就是一个线性回归。可以说,逻辑回归是以线性回归为理论支持的,但是逻辑回归通过Sigmoid函数引入了非线性因素,因此可以轻松处理0/1分类问题。
2、假设函数(Hypothesis function)
与线性回归的区别:线性回归预测输出的是 ( − ∞ , + ∞ ) (-∞,+∞) (−∞,+∞)
而逻辑回归输出的是{0,1},这里面0我们称之为负例,1称之为正例。
如果分类器用的是回归模型,并且已经训练好了一个模型,可以设置一个阈值:
如果 h θ ( x ) ≥ 0.5 , h_{\theta}(x)≥0.5, hθ(x)≥0.5,则预测 y = 1 y=1 y=1,既 y y y属于正例
如果 h θ ( x ) < 0.5 , h_{\theta}(x)<0.5, hθ(x)<0.5,则预测 y = 0 y=0 y=0,既 y y y属于负例
对于二分类问题来说,线性回归模型的输出值可以大于1也可以小于0,所以我们需要一个函数,将输出转换到0和1之间。这里我们引入一个函数,Sigmoid函数。
首先我们要先介绍一下Sigmoid函数,也称为逻辑函数(Logistic function):
’
其函数曲线如下:
从上图可以看到sigmoid函数是一个s形的曲线,它的取值在[0, 1]之间,在远离0的地方函数的值会很快接近0或者1。它的这个特性对于解决二分类问题十分重要
逻辑回归的假设函数形式如下:
h θ ( x ) = g ( θ T x ) , g ( z ) = 1 1 + e − z h_{\theta}(x) = g(\theta^Tx),g(z)=\cfrac{1}{1+e^{-z}} hθ(x)=g(θTx),g(z)=1+e−z1
所以:
h θ ( x ) = 1 1 + e − ( θ T x ) h_{\theta}(x) = \cfrac{1}{1+e^{-(\theta^Tx)}} hθ(x)=1+e−(θTx)1