线性逻辑回归是最基础,也是最基本的线性模型,也就是说理解该模型,对于后续其他线性模型的研究有重要意义。所以今天找了时间专门回忆了一下。
一、什么是回归,什么是逻辑回归?
用一条直线对数据点进行拟合,拟合过程称为回归。
Logistic回归:根据现有数据对分类边界线建立回归公式,以此进行分类。
二、如何建立回归公式?
我们使用Sigmoid函数建立回归公式,它的y值在(0,1)区间,符合分类需求。
回归公式:构建Z为特征*特征权重的总和,特征是人为设定的,特征权重便是我们模型的优化目标。
优化目标:找到最佳拟合参数,即最佳特征权重向量。
三、如何寻找最佳特征权重向量?
随机梯度上升法
思想:
循环迭代n次,直到分类误差小于某个阈值,或者迭代次数达到某个上限。
在迭代的过程中,每次使用随机样本通过误差进行参数更新。
代码如下:
def stocGradAscent1(dataMatrix,classLabels,numIter=150):
m,n = shape(dataMatrix)
weights = ones(n)
for j in range(numIter):