Machine Learning第三讲[Logistic回归] --(二)Logistic回归模型
来源:互联网 发布:超市购物篮数据下载 编辑:程序博客网 时间:2024/06/06 14:07
内容来自Andrew老师课程Machine Learning的第三章内容的Logistic Regression Model部分。
一、Cost Function(代价函数)
有m个样本的训练集:,,x0=1,y∈{0,1}
在上篇博文中提到假设函数:
那么,我们如何选择参数theta呢?
在线性回归模型中,,令 ,为方便记录,将此等式记为:
因为是非线性的,故 也是非线性的,将其代入J(theta),则J(theta)曲线图很有可能出现下列情况,如下左图:
J(theta)在这种情况下,不收敛。
即:J存在多个局部最小值(A,B,C,D,E等都是)。但是使用梯度下降法不一定能找到最优值,比如在梯度下降算法走到A点,再往下走发现B点的J值比A点的J值大了,因此算法停止搜索并断定A是最小值点,此时便没有找到最小值。
而我们希望出现的右图所示的情况,梯度下降算法能一步一步往下走,直到找到最小值。
产生这种情况的原因是因为中含有平方,故使用线性回归的代价函数来用于logsitic模型是不合适的,因此我们用一个新函数来定义logistic的cost函数:
(1)当y=1时,Cost函数图如下所示:
由图可知:
当=1时,cost=0;
当->0时,cost->∞。
当y=1,
若预测值=1,则预测值和实际值相同,因此cost=0;
若预测值->0,即->0,即预测值为0,因为实际值为1,故代价函数cost为无穷大。
(2)当y=0时,Cost函数图如下所示:
由图可知:
当=1,即预测值为1时,而真实值为0,此时cost->∞;
当=0,即预测值为0,而真实值也为0,此时cost=0。
附上一个例题:
二、Simplified Cost Function and Gradient Descent(简化代价函数和梯度下降)
logsitic回归代价函数为:
Note: y=0 or y=1 always
我们将这个Cost分段函数写成一个函数,则:
验证一下为什么可以写成这一个式子:
因为y只可能取0或者1:
(1)若y=1,代入上式,则 满足分段函数表达式。
(2)若y=0,代入上式,则 也满足分段函数表达式。
因此这个式子和分段函数表达式是等价式。
(一)J函数
将上述cost函数代入J(theta),则
将J函数向量化表示为:
为了求出\theta值,我们通过求minJ(\theta)来求,即利用梯度下降算法来求。
预测输出是指:输入x值,输出,即。
(二)梯度下降算法:
梯度下降公式:
(注意同步更新)
将偏导数部分代入得:
将梯度下降算法向量表示得:
Note:虽然分类回归的梯度下降函数和线性回归的梯度下降函数看起来一样,但是其并不相同,因为在线性回归中,而在分类回归中,所以h(x)函数部分不同,导致二者不相同。
三、Advanced Optimization(优化问题)
(1)首先看梯度下降算法,在实现梯度下降算法的过程中,我们需要实现J函数及其偏导数对应的代码:
(2)再来看看除了梯度下降算法之外的其他的优化算法,后三种优化算法性能比较好,但是实现过程比较复杂,理解也比较难(本节不讲述细节):
(3)举例说明如何实现优化算法的调用,代码细节如下图,其中fminunc()用于实现最小代价函数的调用:
(4)如何将这些优化算法应用到logistic回归中呢?如下图,在具体实现时我们只需要填写相应的实现代码:
我们要做的就是不断探索,将高级优化应用于logistic回归和线性回归以提高寻找最小代价函数对应theta值得效率。
参考文章:链接
- Machine Learning第三讲[Logistic回归] --(二)Logistic回归模型
- Machine Learning第三讲[Logistic回归] --(三)多元分类
- Machine Learning---Logistic回归
- Machine Learning第三讲[Logistic回归] --(一)分类和表示
- Machine Learning第三讲[Logistic回归] --(四)解决过拟合问题
- Machine Learning逻辑回归(Logistic Regression)
- Machine Learning---4---Logistic回归
- Andrew Ng 《Machine Learning》第三讲——分类(Classification)&逻辑回归(Logistic Regression Model)
- 第三讲.Classification and logistic regression (分类及logistic回归 / 二分类和多分类)
- logistic 回归(二)
- 【Machine Learning】逻辑回归 Logistic Regression
- [Machine Learning]4.逻辑回归(logistic regression)
- Machine Learning in Action 学习笔记-(5)Logistic回归
- Logistic regression回归模型
- logistic 回归模型
- logistic回归模型总结
- Logistic回归模型
- matlab Logistic回归模型
- PRML读书笔记——采样方法
- tcpdump+wireshark的使用
- Oracle数据库被锁住问题
- 数据库几个操作的专业叫法
- GPLT-古风排版
- Machine Learning第三讲[Logistic回归] --(二)Logistic回归模型
- iOS中respondsToSelector方法的作用
- CSS hack IE常见兼容性问题
- Mathtype 常用快捷键
- 欢迎使用CSDN-markdown编辑器
- Android mvc & mvp
- Linux下的QQ
- Factors in Finetuning Deep Model for Object Detection with Long-tail Distribution解读
- 第八周:[Leetcode]5. Longest Palindromic Substring