逻辑斯蒂回归 logistic regression

参考

https://www.cnblogs.com/wj-1314/p/10181876.html

逻辑斯蒂回归 logistic regression

确定要使用单位阶跃函数作为评价线性输出的评价标准,使得结果要么是1要么是0
LR的损失函数

似然函数

用h(x) = sigmoid(w*x) , 求解思想即求P(y|w,x)
由结果推过程,当y=1 时候,求解W在等于多少时候可以使得h(x)最接近1
当y=0时候,求解W在等于多少时候可以使得 1-h(x)最接近1
这样对于所有样本

\[{x_i} \]

总能算出一个值g(x),所有样本的g(x)相乘,乘积最大,即线性输出可以满足分类要求

有了似然函数作为评价标准,开始训练

因为是求最大值,需要使用梯度上升,
下面公式中j 表示某个样本中的特性j
i表示第i个样本

代码表示如下:

    maxCycles = 500
    weights = ones((n,1))
    for k in range(maxCycles):
        h = sigmoid(dataMatrix*weights)
        error = (labelMat-h)
        weights = weights + alpha*dataMatrix.transpose()*error
    return weights

tips

about sklearn.linear_model.LogisticRegression

posted @ 2021-04-20 11:17  boyang987  阅读(72)  评论(0编辑  收藏  举报