专栏首页派树AI机器学习笔记——Logistic回归算法
原创

机器学习笔记——Logistic回归算法

参考:

吴恩达 机器学习

关于分类问题的例子:

垃圾邮件分类问题

分类网上交易

对肿瘤的分析辨别预测

logistic回归又称logistic回归分析,是一种广义的线性回归分析模型,常用于数据挖掘,疾病自动诊断,经济预测等领域。

基本思想:

1.寻找合适的假设函数,即分类函数,用以预测输入数据的判断结果;构造代价函数,即损失函数,用以表2.示预测的输出结果与训练数据的实际类别之间的偏差;

3.最小化代价函数,从而获取最优的模型参数。

假设函数(分类函数)修改得到: h_θ (x)=g(θ^T x)

其中函数g为

g(z)=1/(1+e^z )

其中g函数是Sigmoid函数或者是逻辑函数

Sigmoid函数图像

从图像观察可以得到g(z)函数的值一直都在0~1之间,所以就可以推断得出h(x)的值也一定是在0~1之间。

所以假设函数和逻辑函数结合就得到:

h_θ (x)=g(θ^T x)=1/(1+e^(-θ^T X) )

关于肿瘤预测问题的例子:

课程截图

决策界限

假设我们有一个训练集如图:(假设我们都已经拟合了这些数据θ=-311)

线性边界:

课程截图:线性边界

非线性边界:

课程截图:非线性边界

决策边界不是训练集的属性,而是假设本身及其参数的属性。

只要给定了参数向量θ,对应的图像也会随之确定。

hθ(x)函数的值表示结果取1的概率,因此对于输入x分类结果为类别1和类别0的概率分别为【概率公式】:

P(y=1 |x;θ)=h_θ (x)
P(y=0 |x;θ)=1-h_θ (x)

代价函数:

代价函数

其中:

代价函数

当y=1的时候:

当y=1时

当y=0的时候:

当y=0时

等价于:

Cost(h_θ (x),y)=-y*log⁡(h_θ (x))-(1-y)*log⁡(1-h_θ (x))

代入代价函数,得:

课程截图

其中的Cost函数和J函数都是基于最大似然估计法推导得到的。【关于最大似然估计法后续笔记会详细提到】

为了能够拟合函数,我们要找出让J函数取得最小值的参数θ,最小化代价函数的方法,是使用梯度下降法。

如果说想要获得代价函数J的最小值,重复θ的更新过程:

θ_j=θ_j-α ∂/(∂θ_j ) T(θ),J=0,1,2……n 其中α是学习步长

求偏导得:

推导步骤

最后得过程可以改写为:

多元分类:一对多

原理:

假如我们由一个训练集(如图),包含着三个类别:三角形表示y=1,正方形表示y=2,叉表示y=3

通常得解决方式就是:将这个训练集转化为三个独立得二元分类问题。

课程截图

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Machine Learning笔记——单变量线性回归

    在机器学习中,样本一般分成独立的三部分训练集(train set),验证集(validation set)和测试集(test set)。其中,训练集用于建立模型...

    阳光罗诺
  • Machine Learning学习——定义、监督学习和无监督学习

    1.Arther Samuel(1959):Machine Learning:Field fo study that gives computers the a...

    阳光罗诺
  • Machine Learning笔记——多变量线性回归

    在之前的单变量线性回归问题中,我们是通过房屋的大小来作为预测房屋价格。但是我们知道了很多其他的变量,例如卧室的数量,楼层的数量,房子的年龄等。

    阳光罗诺
  • “法天象而应四时”--茶话软件开发之“抽象”(2)--过程的抽象:函数

    本想写这样的一个系列的,无奈一直没有时间,没想到网上已经有人写了类似的文章,说明了我原来的观点: 函数既是过程的抽象! 当然,函数的抽象意义远非如此简单,这里先...

    用户1177503
  • C语言概述归纳整理

    2.一个c程序总是从main函数开始执行的,而不论main函数在整个程序中的位置如何,最后在main函数中结束。

    诸葛青云
  • 线性回归回顾与logistic回归 | 机器学习笔记

    01 再看线性回归 之前我们选择线性回归的时候,只是认为那些数据看上去很符合线性的样子,选择最小平方损失函数的时候,也是直接提出来的,没有考虑过为什么会是这个样...

    用户1332428
  • python之函数式编程

    没有“边界效应”的函数:在任何情况下,使用相同参数调用函数产生的结果始终相同,即没有函数内部状态的变化会影响输出结果。在python中,如果函数里包含有全局变量...

    efonfighting
  • C语言之函数

      结构化程序设计主张按功能来分析需求,主要原则自顶向下,逐步求精,模块化等。 主张按功能把软件系统逐步细分,每个功能都负责对数据进行一次处理,每个功能接收一些...

    互联网金融打杂
  • Kotlin中的函数

    函数还可以用中缀表示法调用,当他们是成员函数或扩展函数,只有一个参数,用 infix关键字标注

    deep_sadness
  • Web前端学习 第3章 JavaScript基础教程6 函数基础

    函数是一个可执行的语句块,定义的时候不执行,调用的时候执行,使用"函数名()"的形式可以调用函数, 语法如下所示:

    学习猿地

扫码关注云+社区

领取腾讯云代金券