机器学习100天-Day5逻辑回归模型
这是Day5中作者选取的一篇博客。
英文博客地址https://towardsdatascience.com/logistic-regression-detailed-overview-46c4da4303bc
逻辑回归模型
逻辑回归在上世纪被用于生物科学。继而在很多社会学应用中被使用。使用场景:当因变量(目标)是分类的。
- 垃圾邮件预测
- 恶性肿瘤判别
在判断垃圾邮件的场景中,如果使用线性回归,就需要设定判断阈值。当预测值为0.4,而阈值为0.5的时候,数据就会分类为非恶性(在实际情况下,可能会导致严重的后果)。可见线性回归不适合分类问题
简单逻辑回归
模型
- 输出:0或1
- 假设:z=wx+b
- hΘ(x) = sigmoid (Z)
- [图片上传失败...(image-5b55a1-1550298896258)]
如果"Z"趋近正无穷,Y(预测)为1,反之Y为0
对假设的分析
假设的输出为可能性评估。被用于推断在给定输入X时预测值对实际值的信心。举例如下:
X=[x0 x1]=[1 IP-Address]原文给出的这个公式很费解啊直接看下面的数学
基于x1的数值,获得评估可能性为0.8,说明邮件有80%的可能是垃圾邮件。
[图片上传失败...(image-d7ed3a-1550298896258)]
这证明了“逻辑回归”。将数据拟合到线性回归模型中,然后通过预测目标分类因变量的逻辑函数对其进行操作。
逻辑回归类别
- 二元逻辑回归
分类反馈只有两个结果。 - 多项式逻辑回归
三个以上无序分类。 - 序数逻辑回归
三个以上有序分类。如电影的排名。
决策边界
为了预测数据属于哪一类别,需要设定阈值。基于阈值,获得的评估概率就能够被划入对应分类中和线性分类一样。
例如:预测值>=0.5,邮件分类为非垃圾邮件。
决策边界可以是线性的也可以是非线性的。可以通过增加多项式阶数以获得复杂的决策边界。
代价函数
[图片上传失败...(image-ede026-1550298896258)]
为什么代价函数使用线性而非逻辑?
线性回归使用均方误差(mean squared error)作为它的代价函数。如果这个被逻辑回归使用,元素theta将会是非平滑,而梯度下降只有在平滑的函数中才能到达全局最小值。说到底还是为了梯度下降时获取最小值
代价函数解读这部分本来想自己跑图出来,但是没有达到效果,就先借用原博客的图了
[图片上传失败...(image-fc7175-1550298896258)]
[图片上传失败...(image-b15a0a-1550298896258)]
简化代价函数
[图片上传失败...(image-219318-1550298896258)]
为什么使用这个代价函数
[图片上传失败...(image-7a9bdf-1550298896258)]
[图片上传失败...(image-8f7847-1550298896258)]
负面作用是因为当我们训练时,需要通过最小化损失函数来最大化概率。假设样本来自相同的独立分布,降低成本将增加最大可能性。
推导梯度下降算法
[图片上传失败...(image-20a637-1550298896258)]
[图片上传失败...(image-135fa3-1550298896258)]