从零开始机器学习-14 逻辑回归
2018-05-21 本文已影响108人
养薛定谔的猫
本文由 沈庆阳 所有,转载请与作者取得联系!
前言
在使用线性回归来预测垃圾邮件的时候,我们的预测结果不是1(是垃圾邮件)就是0(不是垃圾邮件)。而逻辑回归的预测会是介于0到1之间(不包含0和1)的一个概率值。如对于垃圾邮件的预测,逻辑回归模型输出的值为0.8,则该邮件是垃圾邮件的概率就是80%。
逻辑回归适用于那些需要将概率作为估算值输出的问题,同时逻辑回归也适用于二元分类。
计算概率
逻辑回归输出的是概率值,并且计算效率极高。
逻辑回归返回的是0到1之间的概率值,但通过映射也可以按照“原样”返回。
如果一只狗半夜狂吠的概率是0.1,那么一年之内邻居被吵醒的次数应该是≈37次。
同时,很多情况下需要将逻辑回归的输出映射到二元分类问题的解决方案。二元分类是预测是否是垃圾邮件(是或不是垃圾邮件)中的一个。
由于逻辑回归的概率应该是介于0到1之间的,但又是什么确保逻辑回归模型能够确保输出值始终落在0到1之间呢?
S函数(Sigmoid)函数,的定义如下:
S函数
其函数曲线图像如下:
image.png
从函数图像可以明显看出,函数的值域是(0,1)。即函数值落在0到1之间。
让我们将上面的S型函数换成适合于机器学习的表示方法。
S函数的另一种表示方法
在上式中,如果用z来表示逻辑回归训练的模型的线性层的输出,则S形函数S(x)函数会生成一个介于0到1之间的概率值。
其中:
y'是逻辑回归模型针对特定样本的输出
z是b+w1x1+w2x2+....wnxn(w是权重和偏差、x是特征值)
其中,z也叫作对数几率,S函数的反函数中,z可定义为标签"1"的概率除以标签"0"的概率得到的值得对数。(因为标签"1"的概率值和标签"0"的概率值相加为1)
对数几率
模型计算
逻辑回归的损失函数
线性回归的损失函数是平方损失。而逻辑回归的损失函数则是对数损失。逻辑回归的损失函数定义如下:
对数损失函数的定义
其中:
(x,y)∈D是包含标签样本(x,y)的数据集。
y是有标签样本中的标签,y的值必为0或1。
y'是对特征集x的预测值,落在0和1中间。
逻辑回归的正则化
多数的逻辑回归模型会采用L2正则化和早停法来避免过拟合的问题。
在下一节中,我们将会讲解如何使用逻辑回归来进行分类,并且如何评估分类模型的有效性。
觉得写的不错的朋友可以点一个 喜欢♥ ~
谢谢你的支持!