美文网首页机器学习
逻辑回归(Logistic Regression)

逻辑回归(Logistic Regression)

作者: 东京的雨不会淋湿首尔 | 来源:发表于2019-03-05 16:25 被阅读0次

    一.简介

    如果我们要用线性回归算法来解决一个分类问题,对于分类, 取值为 0 或者1,但如果你使用的是线性回归,那么假设函数的输出值可能远大于 1,或者远小于0,即使所有训练样本的标签 都等于 0 或 1。尽管我们知道标签应该取值0 或者1,但是如果算法得到的值远大于1或者远小于0的话,就会感觉很奇怪。所以我们在接下来的要研究的算法就叫做逻辑回归算法,这个算法的性质是:

    它的输出值永远在0到 1 之间。
    逻辑回归模型的假设是: image.png
    其中:X 代表特征向量 g 代表逻辑函数(logistic function)是一个常用的逻辑函数为S形函数(Sigmoid function),公式为: image.png
    python代码实现:
    import numpy as np
        
    def sigmoid(z):
        
       return 1 / (1 + np.exp(-z))
    
    该函数的图像为: image.png

    二.如何拟合逻辑回归模型的参数θ

    线性回归的代价函数为: image.png
    我们重新定义逻辑回归的代价函数为: image.png 其中:
    image.png
    image.png

    在得到这样一个代价函数以后,我们便可以用梯度下降算法来求得能使代价函数最小的参数了。算法为:

    image.png
    求导后得到: image.png

    除了梯度下降算法以外,还有一些常被用来令代价函数最小的算法,这些算法更加复杂和优越,而且通常不需要人工选择学习率,通常比梯度下降算法要更加快速。这些算法有:共轭梯度(Conjugate Gradient),局部优化法(Broyden fletcher goldfarb shann,BFGS)和有限内存局部优化法(LBFGS)

    相关文章

      网友评论

        本文标题:逻辑回归(Logistic Regression)

        本文链接:https://www.haomeiwen.com/subject/fslouqtx.html