逻辑回归算法(Logistics Regression),虽然叫回归算法,可是主要用于处理因变量为分类变量的回归问题。算法
常见的是二分类或二项分布问题,也能够处理多分类问题,它其实是属于一种分类算法。函数
因为逻辑回归主要用于处理两分类问题。咱们须要先找到一个预测函数(h),显然,该函数的输出必须是两个值(分别表明两个类别)。因此利用了Logistic函数(或称为Sigmoid函数),函数形式为:3d
二分类问题的几率与自变量之间的关系图形每每是一个S型曲线,如图所示,采用的Sigmoid函数实现:code
该函数能够将任意的输入映射至[0,1]区间。咱们在线性回归中,能够获得一个预测值,再将该值映射到Sigmoid函数中,就完成了由值到几率的转变。也就是分类问题。blog
下面咱们以二元逻辑回归为例子,假设咱们的样本输出是0或者1两类。则:io
合并上式:变量
其中y=0或者1。这样就获得了y的几率分布函数表达式。接下来咱们用似然函数最大化来求解咱们须要的模型参数 。原理
为了方便求解,咱们用对数似然函数最大化,对数似然函数取反即为咱们的损失函数 。im
对数似然函数表达式为:数据
对数似然函数表达式,即损失函数的表达式为:
对上式求导:
i表明样本,j表明样本的特征。
转换为梯度降低任务:
参数更新:
- 优势:
1. 直接对分类可能性进行建模,无需实现假设数据分布,这样就避免了假设分布不许确所带来的问题。 2. 形式简单,模型的可解释性很是好,特征的权重能够看到不一样的特征对最后结果的影响。 3. 除了类别,还能获得近似几率预测,这对许多需利用几率辅助决策的任务颇有用。
- 缺点:
1. 准确率不是很高,由于形式很是的简单,很难去拟合数据的真实分布。 2. 自己没法筛选特征。