学习内容
(逻辑回归:损失函数、梯度、决策边界)
(代码实现和sklearn逻辑回归 待深入学习)
这周份,二条无痛,食用已饱 @ 饼干大佬
一、逻辑回归概念
逻辑回归(Logistic Regression,LR):对问题划分层次,并利用非线性变换和线性模型的组合,将未知的复杂问题分解为已知的简单问题
有些算法,表面上叫“XX回归”,背地里却是解决分类问题的。
其原理是将样本的特征和样本发生的概率联系起来,即,预测的是样本发生的概率是多少。由于概率是一个数,因此被叫做“逻辑回归”。
在回归问题上再多做一步,就可以作为分类算法来使用了。逻辑回归只能解决二分类问题,如果是多分类问题,LR本身是不支持的。
线性回归得到值是没有限制的,值域从负无穷到正无穷的值。而对于概率来说,其值域为[0,1],是有限制的。如果直接使用线性回归得到的结果,使得最终拟合的结果可信程度较差。
二、阐释到位的博弈隐含变量
三、sigmoid函数
神奇的数学家们发现:正态分布在线性变换下保持稳定,而逻辑分布可以很好地近似正态分布。因此可以使用标准逻辑分布的累积分布函数来替换正态分布的累积分布函数。
首先,逻辑回归是解决分类问题的,本质是求概率再分类。在分类结果的背后是隐藏变量的博弈,我们认为隐藏变量与特征是线性相关的,因此就可以对隐藏变量之差求概率(得到随机变量的累积分布函数),得到probit回归模型。为了使数学公式更为简单,使用sigmoid函数去近似,最终得到逻辑回归模型:
那么对于给定的样本数据集X,y,我们如何找到一组参数,使得用这样的方式,可以最大程度获得样本数据集X对应的分类输出y?
四、逻辑回归的本质
逻辑回归假设数据服从伯努利分布,通过极大似然函数的方法,运用梯度下降来求解参数,来达到将数据二分类的目的。
为什么要使用sigmoid函数作为假设?
现在就可以回答了:
因为线性回归模型的预测值为实数,而样本的类标记为(0,1),我们需要将分类任务的真实标记y与线性回归模型的预测值联系起来,也就是找到广义线性模型中的联系函数。如果选择单位阶跃函数的话,它是不连续的不可微。而如果选择sigmoid函数,它是连续的,而且能够将z转化为一个接近0或1的值。
五、损失函数的推导
逻辑回归的损失函数当然不是凭空出现的,而是根据逻辑回归本身式子中系数的最大似然估计推导而来的。
最大似然估计就是通过已知结果去反推最大概率导致该结果的参数。极大似然估计是概率论在统计学中的应用,它提供了一种给定观察数据来评估模型参数的方法,即 “模型已定,参数未知”,通过若干次试验,观察其结果,利用实验结果得到某个参数值能够使样本出现的概率为最大,则称为极大似然估计。
逻辑回归是一种监督式学习,是有训练标签的,就是有已知结果的,从这个已知结果入手,去推导能获得最大概率的结果参数,只要我们得出了这个参数,那我们的模型就自然可以很准确的预测未知的数据了。
##############################################################################################################
@ 2019.12.15 木居居士的机器学习小组 第六周 打卡
安利公益监督学习组织 - 【公众号】数据科学家联盟
https://mp.weixin.qq.com/s/1WWmbLZucz9vIp-4tKKQ5Q
感谢木东大佬、饼干大佬、南头大佬、星空妹砸、Desitiny、DD的无私付出,抱拳ing~