【Coursera】线性回归和逻辑回归
一、线性回归
1、批量梯度下降法
- 每次对参数进行一次迭代时,都要扫描一遍输入全集
- 算法可以收敛到局部最优值
- 当迭代多次之后,每次迭代参数的改变越小
2、随机梯度下降法
- 对于一个输入样本,对参数进行一次更新
- 算法通常不会收敛到局部最优值,整个过程类似在上山迂回下山,有时可能上山,有时可能下山,但算法的最后都会得到局部最优值附近的一个值
- 若输入数据非常多的时候,随机梯度下降比批量梯度下降更加合适
3、概率解释
在原式子里加入一个"error term",之后得到这个“error tem”的正态分布,从而到处输出y和x、θ之间的概率关系。然后通过最大似然估计法,得到若要使得y的概率最大,等价于利用最小二乘法最小化θ。
二、局部加权线性回归
- 参数θ的数量随着训练数据的增大而变多,但是当训练数据量巨大的时候,每次预测所需要的代价都很高。
- 原训练数据需要保留,因为每当对一个新的数据X进行预测时,需要用到X周围的测试数据,从而得出θ的值。对于和测试点靠近的训练点数据,所得权值较高,而对于距离测试点很远的测试数据,所得权值就很小,这就是为什么叫做局部线性回归的原因。
- 对于线性回归,,利用训练数据求出θ之后,在对一个新的数据进行预测时,将不会再使用到原训练数据
- 局部加权线性回归是一种非参数学习算法,而线性回归是一种参数学习算法。
三、逻辑回归
- 核心在于使用了sigmod函数,使得函数输出的值分布在[0, 1]区间内。
- 在某些特定条件下,为了使得sigmod函数g(z)的输出为两个离散值:0和1.可以使用感知器学习算法。
- 逻辑回归推导到最后的公式形式和线性回归中的最小二乘形式几乎相同,但是它们属于不同的算法,因为h(θ)函数不同,导致了根本的差异。
四、牛顿法
- 在对参数θ进行极大似然估计时,可以采用Newton’s method。这个算法收敛的速度非常快(二次收敛),迭代次数也少,但是在每次迭代时,都需要计算一次Hessian矩阵,计算量和n有关。因此当量级偏少少,牛顿迭代法也是一个相当好的算法。
- 参数的数值可以任取,但是一般取为零向量。
- 海森价值函数: \(J(\Theta )=\frac{1}{2}\sum_{i=1}^{m}(\Theta ^{T}x^{(a)} - y^{i})^{2}\) \(H=X^{T}X\)
- 无论θ的初始值为什么,牛顿法迭代一次后即可得到:\(\Theta^{*}=(X^{T}X)^{-1}X^{T}\vec{y}\), 即最小二乘法的解。
五、广义线性模型
- 线性回归和逻辑回归中的伯努利分布和高斯分布都可以转换为指数分布的形式。
- 在将伯努利分布转换为指数分布的过程中,可以得到sigmod函数,这就是之前为什么Logisitic regression刚好是sigmod函数的原因。(当然,还有更深层次的原因)
六、回归问题实战
1、线性回归
2、局部加权回归(参数0.01)
局部加权回归中,参数设定非常重要,可能存在欠拟合和过拟合的情况。
3、逻辑回归
参数θ的有多种更新方法——梯度下降法和牛顿法等,务必掌握其优缺点,合理选用。
【Coursera】线性回归和逻辑回归的更多相关文章
- [机器学习] Coursera ML笔记 - 逻辑回归(Logistic Regression)
引言 机器学习栏目记录我在学习Machine Learning过程的一些心得笔记,涵盖线性回归.逻辑回归.Softmax回归.神经网络和SVM等等.主要学习资料来自Standford Andrew N ...
- Matlab实现线性回归和逻辑回归: Linear Regression & Logistic Regression
原文:http://blog.csdn.net/abcjennifer/article/details/7732417 本文为Maching Learning 栏目补充内容,为上几章中所提到单参数线性 ...
- 【数据分析】线性回归与逻辑回归(R语言实现)
文章来源:公众号-智能化IT系统. 回归模型有多种,一般在数据分析中用的比较常用的有线性回归和逻辑回归.其描述的是一组因变量和自变量之间的关系,通过特定的方程来模拟.这么做的目的也是为了预测,但有时也 ...
- Spark MLlib回归算法------线性回归、逻辑回归、SVM和ALS
Spark MLlib回归算法------线性回归.逻辑回归.SVM和ALS 1.线性回归: (1)模型的建立: 回归正则化方法(Lasso,Ridge和ElasticNet)在高维和数据集变量之间多 ...
- Machine Learning 学习笔记 (1) —— 线性回归与逻辑回归
本系列文章允许转载,转载请保留全文! [请先阅读][说明&总目录]http://www.cnblogs.com/tbcaaa8/p/4415055.html 1. 梯度下降法 (Gradien ...
- 机器学习(三)—线性回归、逻辑回归、Softmax回归 的区别
1.什么是回归? 是一种监督学习方式,用于预测输入变量和输出变量之间的关系,等价于函数拟合,选择一条函数曲线使其更好的拟合已知数据且更好的预测未知数据. 2.线性回归 于一个一般的线性模型而言,其 ...
- 机器学习_线性回归和逻辑回归_案例实战:Python实现逻辑回归与梯度下降策略_项目实战:使用逻辑回归判断信用卡欺诈检测
线性回归: 注:为偏置项,这一项的x的值假设为[1,1,1,1,1....] 注:为使似然函数越大,则需要最小二乘法函数越小越好 线性回归中为什么选用平方和作为误差函数?假设模型结果与测量值 误差满足 ...
- 线性回归、逻辑回归(LR)
线性回归 回归是一种极易理解的模型,就相当于y=f(x),表明自变量 x 和因变量 y 的关系.最常见问题有如 医生治病时的望.闻.问.切之后判定病人是否生了什么病,其中的望闻问切就是获得自变量x,即 ...
- 机器学习之感知器和线性回归、逻辑回归以及SVM的相互对比
线性回归是回归模型 感知器.逻辑回归以及SVM是分类模型 线性回归:f(x)=wx+b 感知器:f(x)=sign(wx+b)其中sign是个符号函数,若wx+b>=0取+1,若wx+b< ...
随机推荐
- codevs 2639 约会计划
codevs 2639 约会计划 题目描述 Description cc是个超级帅哥,口才又好,rp极高(这句话似乎降rp),又非常的幽默,所以很多mm都跟他关系不错.然而,最关键的是,cc能够很好的 ...
- 9 stark组件 增删改
1.效果图 2.详细步骤解析 1.构造增删改查url,反向解析 2.ModelForm定制add.edit页面 3.staradmin中的ModelForm 3.总结.代码 1.知识点 1.解决代码重 ...
- python爬虫之requests库介绍(二)
一.requests基于cookie操作 引言:有些时候,我们在使用爬虫程序去爬取一些用户相关信息的数据(爬取张三“人人网”个人主页数据)时,如果使用之前requests模块常规操作时,往往达不到我们 ...
- node.js学习笔记(三)——事件循环
要理解事件循环,首先要理解事件驱动编程(Event Driven Programming).它出现在1960年.如今,事件驱动编程在UI编程中大量使用.JavaScript的一个主要用途是与DOM交互 ...
- async/await工作机制探究--NodeJS
ES6中的async/await让Promise变得更加简便,通常await处理的链式Promise会包裹在函数中,返回结果仍然是一个Promise对象. 但是当await直接处理链式Promise时 ...
- 微信小程序中的 web-view 组件
web-view 是一个可以承载 web 网页的容器,当 WXML 文件中存在 web-view 组件时,其他组件会自动全部失效,而且 web-view 承载的组件会自动铺满小程序的整个页面.其他组件 ...
- 人在囧途——Java程序猿学习Python
引言 LZ之前其实一直对python都很好奇,只是苦于平时没有时间去了解它,因此趁着51假期这个机会,便迫不及待的开始了自己的探索.作为一个标准的Java程序猿,在了解python的过程当中,LZ遇到 ...
- python的类和对象2(self参数)
python的类和对象2(self参数) 1.python里面对象的方法都会有self参数,它就相当于C++里面的this指针:绑定方法,据说有了这个参数,Python 再也不会傻傻分不清是哪个对象在 ...
- [Unity Shader] 坐标变换与法线变换及Unity5新增加的内置函数
学习第六章Unity内置函数时,由于之前使用mul矩阵乘法时的顺序与书中不一致,导致使用内置函数时出现光照效果不一样,因此引出以下两个问题: 1 什么时候使用3x3矩阵,什么时候使用4x4矩阵? 2 ...
- 【微服务架构】SpringCloud组件和概念介绍(一)
一:什么是微服务(Microservice) 微服务英文名称Microservice,Microservice架构模式就是将整个Web应用组织为一系列小的Web服务.这些小的Web服务可以独立地编译及 ...