一、分类问题
在分类问题中,我们的任务是通过算法对数据判断是否属于某一类,如果只有两类的话,那么就是“是”与“否”。
分类的例子比如说:判断一封邮件是否属于垃圾邮件,判断一次金融交易是否属于欺诈,判断肿瘤是良性肿瘤还是恶性肿瘤等。
在二元分类问题中,最后输出的结果只有两种,其中“0”表示“否”,“1”表示是“是”。对于(0,1)区间的其他值,取大于等于“0.5”输出为1,小于“0.5”则输出为“0”,作一个概率上的判断
但如果我们使用“线性回归”的模型,会存在一个问题,即假设函数的输出值并不在(0,1)这个区间内,那么也就无从判断了。所以“逻辑回归”解决的就是这个问题:
它的输出值永远在0到1之间
二、逻辑回归
2.1逻辑回归模型
还记得线性模型的假设函数“y=wx+b”嘛,其实逻辑回归的本质,就是在线性模型之外嵌套一层非线性函数。
这就引入逻辑回归的模型:
Sigmoid函数图像函数模型为:
Sigmoid函数模型在函数图像可以看出,当“z>=0”时,输出“g(z)>=0.5”,当“z<0”的时候,输出“g(z)<0.5”,而整个模型的输出值区间,无论z取什么,都是在(0,1)之间。这完美符合我们对分类问题的处理方式。
这时我们就可以定义:
2.2嵌套分类模型
刚刚说到,逻辑回归的本质其实是线性模型嵌套上一层分类函数。我们知道线性模型的函数为“y=wx+b”,把逻辑回归中的自变量“z”替换线性模型的因变量“wx+b”,换句话说,也就是把线性模型的输出结果,当做逻辑回归模型的输入,本质上是再进行一次函数映射(具体选择什么函数,则看我们的需要咯)
那么嵌套后的逻辑回归模型就变为:
线性模型嵌套sigmoid最后,我们来梳理一下“逻辑回归”的逻辑:
wx+b>0,则z>0,则0.5<g(z)<01,则h=“1”,分类输出结果为“是”
wx+b<0,则z<0,则0<g(z)<0.5,则h=“0”,分类输出结果为“否”
当然,构建好逻辑回归的模型之后,训练模型的思路和线性回归是一致的。也是通过构建全局性误差函数Loss,通过梯度下降法来找到Loss的最小值点,找到合适的模型(关于线性回归和梯度下降,可以出门左转看我的文章哦)
网友评论