机器学习03Logistic回归

逻辑回归 (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)

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

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




本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/387271.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

CNN理解比较好的文章

什么是卷积神经网络?为什么它们很重要? 卷积神经网络(ConvNets 或者 CNNs)属于神经网络的范畴,已经在诸如图像识别和分类的领域证明了其高效的能力。卷积神经网络可以成功识别人脸、物体和交通信号,从而为机…

Windows 安装Angular CLI

1、安装nvm npm cnpm nrm(onenote笔记上有记录) 参考:https://blog.csdn.net/tyro_java/article/details/51232458 提示:如果发现配置完后,出现类似“npm不是内部命令……”等信息。 可采取如下措施进行解决—— 检查环…

机器学习04正则化

正则化(Regularization) 过拟合问题(Overfitting): 如果有非常多的特征,通过学习得到的假设可能能够非常好地适应训练集 :代价函数可能几乎为 0), 但是可能会不能推广到…

Adaboost算法

概述 一句话概述Adaboost算法的话就是:把多个简单的分类器结合起来形成个复杂的分类器。也就是“三个臭皮匠顶一个诸葛亮”的道理。 可能仅看上面这句话还没什么概念,那下面我引用个例子。 如下图所示: 在D1这个数据集中有两类数据“”和“-”…

机器学习05神经网络--表示

神经网络:表示(Neural Networks: Representation) 如今的神经网络对于许多应用来说是最先进的技术。 对于现代机器学习应用,它是最有效的技术方法。 神经网络模型是许多逻辑单元按照不同层级组织起来的网络, 每一层…

逻辑回归(Logistic Regression, LR)又称为逻辑回归分析,是分类和预测算法中的一种。通过历史数据的表现对未来结果发生的概率进行预测。例如,我们可以将购买的概率设置为因变量,将用户的

逻辑回归(Logistic Regression, LR)又称为逻辑回归分析,是分类和预测算法中的一种。通过历史数据的表现对未来结果发生的概率进行预测。例如,我们可以将购买的概率设置为因变量,将用户的特征属性,例如性别,年龄&#x…

机器学习06神经网络--学习

代价函数 标记方法: 神经网络的训练样本有 m 个 每个包含一组输入 x 和一组输出信号 y L 表示神经网络层数 Sl表示每层的 neuron 个数(SL 表示输出层神经元个数) 将神经网络的分类定义为两种情况: 二类分类:SL1, y0 or 1 表示哪一类&…

Logistic Regression Classifier逻辑回归

Logistic Regression Classifier逻辑回归主要思想就是用最大似然概率方法构建出方程,为最大化方程,利用牛顿梯度上升求解方程参数。 优点:计算代价不高,易于理解和实现。缺点:容易欠拟合,分类精度可能不高…

机器学习07应用机器学习的建议

决定下一步做什么(Deciding What to Try Next) 确保在设计机器学习系统时,能够选择一条最合适、最正确的道路。 具体来讲,将重点关注的问题是:假如你在开发一个机器学习系统,或者想试着改进一个机器学习…

CSS3--5.颜色属性

HTML5中添加了一些新的颜色的表示方式 1.RGBA:说得简单一点就是在RGB的基础上加进了一个通道Alpha。RGBA在RGB的基础上多了控制alpha透明度的参数。以上R、G、B三个参数,正整数值的取值范围为:0 - 255。百分数值的取值范围为:0.0%…

逻辑回归的通俗解释 逻辑回归的定位

1 逻辑回归的定位 首先,逻辑回归是一种分类(Classification)算法。比如说: 给定一封邮件,判断是不是垃圾邮件给出一个交易明细数据,判断这个交易是否是欺诈交易给出一个肿瘤检查的结果数据,判断…

机器学习08机器学习系统设计

首先要做什么 一个垃圾邮件分类器算法为例: 为了解决这样一个问题,首先要做的决定是如何选择并表达特征向量 x。 可以选择一个由 100 个最常出现在垃圾邮件中的词所构成的列表,根据这些词是否有在邮件中 出现,来获得我们的特…

数学笔记1——导数1(导数的基本概念)

什么是导数导数是高数中的重要概念,被应用于多种学科。从物理意义上讲,导数就是求解变化率的问题;从几何意义上讲,导数就是求函数在某一点上的切线的斜率。我们熟知的速度公式:v s/t,这求解的是平均速度&a…

python接口自动化(四)--接口测试工具介绍(详解)

简介 “工欲善其事必先利其器”,通过前边几篇文章的介绍,大家大致对接口有了进一步的认识。那么接下来让我们看看接口测试的工具有哪些。 目前,市场上有很多支持接口测试的工具。利用工具进行接口测试,能够提供测试效率。例如&…

机器学习09支持向量机

支持向量机(Support Vector Machines) 在监督学习中,许多学习算法的性能都非常类似,因此,重要的不是你该选择使用学习算法 A 还是学习算法 B,而更重要的是, 应用这些算法时,所创建的大量数据在应用这些算…

数学笔记2

数学笔记2——导数2(求导法则和高阶导数)和、差、积、商求导法则设uu(x),vv(x)都可导,则:(Cu)’ Cu’, C是常数(u v)’ u’ v’(uv)’ u’ v’(u/v)’ (u’v – uv’) / v21、2不解释,下面给出3、4的推导过程乘法法则的推导过乘法法则…

机器学习10聚类

无监督学习 在非监督学习中,我们需要将一系列无标签的训练数据,输入到一个算法中, 然后让它找这个数据的内在结构。 我们可能需要某种算法帮助我们寻找一种结构。图上的数据看起来可以分成两个分开的点集(称为簇)&am…

关联分析(Association analysis)

关联分析(Association analysis) 简介 大量数据中隐藏的关系可以以‘关联规则’和‘频繁项集’的形式表示。rules:{Diapers}–>{Beer}说明两者之间有很强的关系,购买Diapers的消费者通常会购买Beer。 除…

机器学习11主成分分析

降维(Dimensionality Reduction) : 一、 降维目的: 目的一:数据压缩(Data Compression) 目的二:数据可视化(Visualization) 二、 主成分分析(PCA) 主成分…

使用Apriori进行关联分析(一)

使用Apriori进行关联分析(一)大型超市有海量交易数据,我们可以通过聚类算法寻找购买相似物品的人群,从而为特定人群提供更具个性化的服务。但是对于超市来讲,更有价值的是如何找出商品的隐藏关联,从而打包促…