逻辑回归 (Logistic Regression)


目前最流行,使用最广泛的一种学习算法。

分类问题,要预测的变量 y 是离散的值。

逻辑回归算法的性质是:它的输出值永远在 0 到 1 之间。

逻辑回归模型的假设是:

其中:

X 代表特征向量

g 代表logistic function,是一个常用的Sigmoid function。

Sigmoid function:一个良好的阈值函数

导数:f'(x)=f(x)*[1-f(x)]

公式为:

图像为:

合起来,得到Logistic回归模型的假设:

对于给定的输入变量,根据选择的参数计算输出变量=1 的可能性(estimated probablity):

代价函数:

整理得:

带入到代价函数(凸函数):

得到代价函数后, 便可以用梯度下降算法来求得能使代价函数最小的参数了。

算法为:

注:

1、虽然得到的梯度下降算法表面上看上去与线性回归的梯度下降算法一样, 但是这里的 hθ(x)=g(θTX)与线性回归不同,

所以实际上是不一样的。

2、在运行梯度下降算法之前,进行特征缩放依旧是非常必要的。

逻辑回归,这是一种非常强大,甚至可能世界上使用最广泛的一种分类算法。

————————————————————————————————————————————————————————

高级优化(Advanced Optimization)

梯度下降并不是我们可以使用的唯一算法,还有其他一些算法,更高级、更复杂。

共轭梯度法 BFGS (变尺度法) 和 L-BFGS (限制变尺度法) 就是其中一些更高级的优化算法。

它们需要有一种方法来计算 J(θ),以及需要一种方法计算导数项, 然后使用比梯度下降更复杂的算法来最小化代价函数。

这些算法的具体细节超出了本门课程的范畴。

实际上你最后通常会花费很多天,或几周时间研究这些算法,你可以专门学一门课来提高数值计算能力。

这些算法有许多优点: 一个是使用这其中任何一个算法, 你通常不需要手动选择学习率 α。

实际上, 我过去使用这些算法已经很长一段时间了, 也许超过十年了, 使用得相当频繁。

而直到几年前我才真正搞清楚共轭梯度法 BFGS 和 L-BFGS 的细节。

我们实际上完全有可能成功使用这些算法, 并应用于许多不同的学习问题, 而不需要真正理解这些算法的内环间在做什么。

如果说这些算法有缺点的话, 那么我想说主要缺点是它们比梯度下降法复杂多了。

特别是你最好不要使用 L-BGFS、 BFGS 这些算法, 除非你是数值计算方面的专家。

实际上,我不会建议你们编写自己的代码来计算数据的平方根,或者计算逆矩阵。

因为对于这些算法,我还是会建议你直接使用一个软件库。

比如说,要求一个平方根, 我们所能做的就是调用一些别人已经写好用来计算数字平方根的函数。

幸运的是现在我们有 Octave 和与它密切相关的 MATLAB 语言可以使用。

所以当我有一个很大的机器学习问题时,我会选择这些高级算法,而不是梯度下降。

有了这些概念, 你就应该能将逻辑回归和线性回归应用于更大的问题中, 这就是高级优化的概念。

————————————————————————————————————————————————————————

多类别分类:一对多/一对余

(Multiclass Classification_ One-vs-all)

有几类,就训练几个分类器。

预测时,将所有的分类机都运行一遍,选择最高可能性。

机器学习03Logistic回归相关推荐

  1. ML之ME/LF:机器学习中回归预测模型评估指标(MSE/RMSE/MAE)简介、使用方法、代码实现、案例应用之详细攻略

    ML之ME/LF:机器学习中回归预测模型评估指标(MSE/RMSE/MAE)简介.使用方法.代码实现.案例应用之详细攻略 目录 回归预测问题中评价指标简介 RMSE 标准差SD MSE函数

  2. 机器学习 对回归的评估_在机器学习回归问题中应使用哪种评估指标?

    机器学习 对回归的评估 If you're like me, you might have used R-Squared (R²), Root Mean Squared Error (RMSE), a ...

  3. 机器学习 多变量回归算法_如何为机器学习监督算法识别正确的自变量?

    机器学习 多变量回归算法 There is a very famous acronym GIGO in the field of computer science which I have learn ...

  4. Python 数据科学入门教程:机器学习:回归

    Python 数据科学入门教程:机器学习:回归 原文:Regression - Intro and Data 译者:飞龙 协议:CC BY-NC-SA 4.0 引言和数据 欢迎阅读 Python 机器 ...

  5. [转载] 吴恩达机器学习逻辑回归练习题:逻辑回归及规则化(python实现)

    参考链接: 了解逻辑回归 Python实现 练习题背景:网易云课堂->吴恩达机器学习课程->逻辑回归练习题 对于练习题的详细内容,和课程中推荐的octave编程实现,请见:吴恩达机器学习逻 ...

  6. 【火炉炼AI】机器学习031-KNN回归器模型的构建

    [火炉炼AI]机器学习031-KNN回归器模型的构建 (本文所使用的Python库和版本号: Python 3.6, Numpy 1.14, scikit-learn 0.19, matplotlib ...

  7. [机器学习] - 岭回归与Lasso回归

    注:在学习机器学习中回归算法时,随时都会接触最小二乘法原理和求解过程,最小二乘法可能对于理工科的学生低头不见抬头见的知识点,特点是在我学习<数值分析>课程中,老师讲了些最小二乘法的历史[- ...

  8. 机器学习——逻辑回归

    机器学习--逻辑回归 一.逻辑回归 logistic回归又称logistic回归分析,常用于数据挖掘,疾病自动诊断,经济预测等领域.它是一种广义的线性回归分析模型,因此与多重线性回归分析有很多相同之处 ...

  9. 机器学习笔记——回归(Regression)

    机器学习笔记--回归(Regression) 一.何为回归 二.案例背景 三.研究过程 1.选择模型 2.衡量函数的好坏 3.选择最优的函数 4.梯度下降(Gradient Descent) 4.1单 ...

最新文章

  1. zabbix企业应用之监控oracle
  2. 5 个越早知道越好的 Python 特性
  3. Android: how to resolve Application’s parameter NullPointerException
  4. JavaScriptSerializer-枚举的JSON序列化为字符串
  5. 各种Oracle常见操作
  6. 蓝桥杯 - 试题 J: 砍竹子(双向链表+堆/思维)
  7. 网络交换机功能和原理详解
  8. Ovum 最新市场报告称数据中心持续改变光网络市场
  9. MongoDB副本集学习(三):性能和优化相关
  10. wget下载文件命令
  11. “Unexpected end of JSON input while parsing near···”错误解决方案
  12. 鸿蒙小型系统内核Liteos-a开发指南
  13. C/C++ 获取当前时间(最全方法)
  14. 区间类动态规划(dp)
  15. SAP结帐操作详细操作指南
  16. 快速了解位运算符——与()、非(~)、或(|)、异或(^)
  17. eWebEditor不能正常使用的解决办法
  18. LIS.LCS.LCIS相关问题
  19. Monaco Editor
  20. mysql脚本文件生成工具_SqlDataToScript(sql脚本生成工具)

热门文章

  1. 小议SqlMapConfig.xml配置文件
  2. 外部中断---STM32F1
  3. java date传输类型错误_转换日期格式:Java中的转换错误?
  4. selenium rc java_selenium笔记一--selenium RC+JAVA环境搭建
  5. UVA 10410——Tree Reconstruction
  6. appium 设置参数
  7. c语言中 %.2s,C2S是什么意思
  8. 【剑指offer】_14 不用加减乘除做加法
  9. leetcode(189) 旋转数组
  10. 数据库简单实用(一)