1 逻辑回归的定位

首先,逻辑回归是一种分类(Classification)算法。比如说:

  • 给定一封邮件,判断是不是垃圾邮件
  • 给出一个交易明细数据,判断这个交易是否是欺诈交易
  • 给出一个肿瘤检查的结果数据,判断这个肿瘤是否为恶性肿瘤

逻辑回归是互联网上最流行也是最有影响力的分类算法,也是深度学习(Deep Learning)的基本组成单元。

2 先给出一个逻辑回归的例子

比如有下面一组数据:
一门考试之前学生的复习时间与这个学生最后是否Pass这门考试的数据

数据:学生复习时间与考试通过

通过这些数据,利用逻辑回归算法进行模型训练,可以得到最终的模型结果是这个样子:

logistic equation

这样,给出任何复习时间,就可以预测出是否通过的概率

模型应用

3 逻辑回归拟合函数:Sigmod函数(逻辑函数)

可以看到,逻辑回归最后的分类结果是0/1,因此,我们选择Sigmod函数(貌似是一个专业术语)来拟合训练数据。Sigmod函数的形式如下,它的x可以无限取值,但是y就在(0,1)之间

Sigmod函数

对于最简单的,只有一个自变量(x)的二元分类(y=0/1)逻辑回归中,构造出来的拟合函数为

最简单的逻辑回归拟合函数

所以,要得到最终的模型,就是根据样本点,计算a和b的值.

在上一节的复习时间和考试的例子中,最终计算出参数a=1.5046,b=-4.0777,因此可以得到下面的拟合函数的图像:

模型的图像

4 模型参数的计算方法

Coursera上Stanford大学的机器学习课程是很好的入门课程(虽说入门,但是我学习起来还是特别的吃力),主讲人Andrew Ng(吴恩达)原来是Google大脑的负责人,现在在百度负责百度大脑和深度学习,是业界最牛的人之一了。他的课程中详细讲解了在逻辑回归中如何来计算模型的参数,我把结论的一页截图放在下面:

Coursera上Stanford的机器学习课程截图

其中,J就是进行拟合的成本函数:

Cost Function

看起来比较复杂,用我们上一节的例子来解释:

  • m:代表给出的训练样本数,也就是20
  • h函数:其实代表的是我们的Sigmoid函数,把样本的X值带进去,就得到的是参数a,b的函数
  • y:就是样本中实际的y,只有0,1两个选择

把样本的数据都带入,最后得到的就是参数a,b的一个方程,逻辑回归就是求出一个最好的a,b的值,使得这个成本函数J的值最小。
那么,最终求解a和b就是一个纯数学问题了,比如可以用最小二乘法和梯度下降法来求解,纯数学的问题就不在这里展开了

5 多分类逻辑回归

生活中不仅仅只有分成两类的问题,还有分成多个类的问题,比如把邮件分成工作邮件、朋友邮件和垃圾邮件。
多分类的一般思想是:利用多次分成两类,计算划分到每一类的概率,取概率最大的。用邮件分类的例子来说就是:

  • 将邮件分成“工作/非工作邮件”,可以根据上文的算法得出工作邮件的概率
  • 将邮件分成“朋友/非朋友邮件”,计算出朋友邮件的概率
  • 将邮件分成“垃圾/非垃圾邮件”,计算出垃圾邮件的概率

比较三个概率,取最大的那个概率,作为这个邮件的分类结果。

逻辑回归的通俗解释 逻辑回归的定位相关推荐

  1. 万字干货|逻辑回归最详尽解释

    2019-11-21 17:31:48 模型介绍 Logistic Regression 是一个非常经典的算法,其中也包含了非常多的细节,曾看到一句话:如果面试官问你熟悉哪个机器学习模型,可以说 SV ...

  2. 回归、线性回归和逻辑回归【逻辑回归部分待完成】

    一.回归 "回归"这个词很有误导性,在陈希孺的<概率论与数理统计>中对这个词的来源有过解释.是个外国人,在做数据分析的时候,发现将数据画出来后,不管大的小的数据都会有一 ...

  3. python决策树逻辑回归_决策树,逻辑回归,PCA-算法面试题

    决策树 简述决策树原理? 决策树是一种自上而下,对样本数据进行树形分类的过程,由节点和有向边组成.节点分为内部节点和叶节点,其中每个内部节点表示一个特征或属性,叶节点表示类别.从顶部节点开始,所有样本 ...

  4. 个人总结:从 线性回归 到 逻辑回归 为什么逻辑回归又叫对数几率回归?

    逻辑回归不是回归算法,是分类算法,可以处理二元分类以及多元分类. 线性回归 线性回归的模型是求出特征向量Y和输入样本矩阵X之间的线性关系系数θ,满足Y = Xθ.此时Y是连续的,所以是回归模型. 对应 ...

  5. R语言使用broom包将回归模型(线性回归、逻辑回归、比例风险回归)的结果整理成dataframe并导出到excel等文件中:基于mtcars和colon数据集

    R语言使用broom包将回归模型(线性回归.逻辑回归.比例风险回归)的结果整理成dataframe并导出到excel等文件中:基于mtcars和colon数据集 目录

  6. 逻辑回归模型 python_机器学习-逻辑回归分析(Python)

    编辑推荐: 本文首先介绍这两种方法的区别和联系,然后对分类方法中的逻辑回归进行较详细的说明(包括其基本原理及评估指标),最后结合案例介绍如何利用Python进行逻辑回归分析. 本文来自于csdn,由火 ...

  7. Spark MLlib回归算法------线性回归、逻辑回归、SVM和ALS

    Spark MLlib回归算法------线性回归.逻辑回归.SVM和ALS 1.线性回归: (1)模型的建立: 回归正则化方法(Lasso,Ridge和ElasticNet)在高维和数据集变量之间多 ...

  8. 【机器学习之逻辑回归】sklearn+python逻辑回归详解

    文章目录 一.逻辑回归 二.算法原理介绍 三.代码实现 3.1 sklearn-API介绍 3.2 sklearn-代码实现 3.3 python手写代码实现 四.总结 五.算法系列 一.逻辑回归 逻 ...

  9. 《人工智能》机器学习 - 第5章 逻辑回归(二 二元逻辑回归实战)

    5.2二元逻辑回归实战 5.2.1二元逻辑回归简单实例 首先看看数据吧. 随机的一些数据,这是一个二分问题的数据.先导入数据.Python代码如下. """ 函数说明:读 ...

最新文章

  1. java 静态方法覆盖_Java中方法的覆盖和静态方法的隐藏
  2. python装饰器有几种_python几种装饰器的用法
  3. 5 Android数据存储 任务二 应用程序数据文件夹里的文件读写 ,
  4. The Preliminary Contest for ICPC Asia Nanjing 2019ICPC南京网络赛
  5. 通过PageSpeed优化网站性能
  6. lvm 扩展根目录_转://如何增加linux根目录的磁盘空间(基于LVM)?
  7. sigal mq_notify
  8. 浏览器展示CSS伪类的动画和过渡效果应用
  9. 0-1总体分布下的参数假设检验示例一(SPSS实现)
  10. Docker容器kali镜像导出/导入
  11. STM32程序中使用printf打印中文字符乱码
  12. 从零开始的C++(操作符函数重载)
  13. javascript-原生javascript实现类似节奏大师小游戏
  14. 最新的iOS14操作系统全面消息重装上阵
  15. 方向向量转欧拉角_【姿态表示】旋转向量、旋转矩阵、欧拉角、四元数
  16. js获取元素的属性值和获取元素内容
  17. 计算机编程 英语词汇
  18. 二进制实用程序(objdump, readelf,ar, nm等)
  19. 乐盒开源盲盒uniapp源码系统
  20. NYOJ99 单词拼接

热门文章

  1. 2014编程之美资格赛
  2. c++ socket学习(1.6)
  3. 【C++基础】自定义异常类与多重捕获
  4. ulp通信_Java Math类ulp()方法及示例
  5. ffplay源码(版本:ffmpeg-4.2.1)
  6. 数据挖掘肿瘤预测_Nature Medicine封面文章:利用单核细胞数量预测及评估肿瘤免疫治疗效果...
  7. es6 数组合并_13个不low的JS数组操作,你需要知道一下
  8. ubuntu修改ls显示目录的颜色
  9. Ubuntu使用jupyter notebook +导出PDF
  10. make文件基础用法