之前学习了线性回归,本篇文章将介绍逻辑回归,逻辑回归和线性回归同样都属于有监督机器学习,那么它们有什么区别呢:
线性回归:预测一个连续的值;逻辑回归:预测一个离散的值
下面看一个例子:
良性肿瘤 or 恶性肿瘤
有一家医院希望我们能开发出一款分类器,可以通过数据分析出一块肿瘤到底是良性的,还是恶性的。
0: 负例 “Negative Class” (良性肿瘤)
1: 正例 “Positive Class” (恶性肿瘤)
这样得到下图:
当我们要做二分类的时候,我们一般只希望得到两个值 y = 0 或 1。但是, 线性回归得到的值是在一个范围内的连续值,而且可能远 > 1 或远 < 0,这样会给分类带来困难
我们希望的值域:
那么我们将模型更新:
但是这样的模型是阶跃函数,是不连续的。
我们继续更新模型:
这样就引出了连续的模型:Sigmoid函数,sigmoid函数也叫logistic函数
如果想要模型的y值坐落在[0,1]的区间上那么就需要使用sigmoid函数
那么为什么要用Sigmoid函数呢?
数学上,是根据广义线性回归的模型推导所得的结果;
直观上,
(1)输出范围有限,数据在传递中不容易发散
(2)抑制两头,对中间细微变化敏感,对分类有利
(3)性质优秀,方便使用(Sigmoid函数是平滑的,而且任意阶可到,一阶二阶导数可以直接由函数得到不用求导,这在做梯度下降的时候很