线性回归、Logistic回归、Softmax回归
线性回归(Linear Regression)
- 什么是回归?
给定一些数据,{(x1,y1),(x2,y2)…(xn,yn) },x的值来预测y的值,通常地,y的值是连续的就是回归问题,y的值是离散的就叫分类问题。
高尔顿的发现,身高的例子就是回归的典型模型。
- 回归分为线性回归(Linear Regression)和Logistic 回归。
线性回归可以对样本是线性的,也可以对样本是非线性的,只要对参数是线性的就可以,所以线性回归能得到曲线。
- 线性回归的目标函数?
(1)
为了防止过拟合,将目标函数增加平方和损失:
(2)
增加了平方和损失,是2次的正则,叫L2-norm,有个专有名字:Ridge。【岭回归】
也可以增加绝对值损失,叫L1-norm,也有个专有名字:Lasso。
都假定参数θ服从高斯分布。
- 目标函数的推导?
以极大似然估计解释最小二乘。过程如下:
(3)
- θ的解析式?
一句话:目标函数对θ求偏导,再求驻点。
防止过拟合,加入λ扰动:本质是L2-norm
- 梯度下降算法?
梯度下降得到得是局部最小值,而不是全局最小值。
SGD随机梯度下降的优点?
- 速度快
- 往往能跳出局部最小值
- 适合于在线学习
由于线性回归的目标函数是凸函数,所以在这个地方用梯度下降得到的就是全局最小值。
沿着负梯度方向迭代,更新后的θ会使得J(θ)更小。
注意:这里是对某一个样本,对θj求偏导。
每一个样本都对此时的θj求偏导。
注意:梯度是矢量,既有方向,又有值。例如,在二维空间中的表现为斜率,当斜率为1时,能想象方向,1不就是它的值吗?厉害了,竟然现在才明白过来。
梯度下降:(又称批量梯度下降batch gradient descent)
得到所有样本后,再做梯度下降。
随机梯度下降:(stochastic gradient descent)
来一个样本就进行梯度下降,来一个样本就进行梯度下降,适合于在线学习。
还有一个二者的折衷:
mini-batch:
攒够若干个做一次批梯度下降,若干个样本的平均梯度作为下降方向。
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------------------------------
LR(Logistic Regression)Logistic回归
广义线性模型(General Linear Regression GLR)
1.Logistic回归的损失函数?
负对数似然NLL。
Softmax回归是Logistic回归的多分类情况。
沿着似然函数正梯度上升
这个图很能理解线性回归和LR回归之间的关系。
LogisticRegression 就是一个被logistic方程归一化后的线性回归,仅此而已。
- 提到Logistic回归,首先要说他跟线性回归的联系:其实就是被Logistic方程归一化的线性回归。将预测的输出映射到0,1之间。以概率判断类别,大于0.5,判为一类,小于0.5判为一类。
- Logistic 方程/Sigmoid 函数,大概长这样。
概率分布函数:
似然函数:
对数似然:
对θj求偏导:
沿着梯度上升。梯度上升也行,梯度下降也对。
注意:线性回归里面求损失函数的最小值得时候用到了梯度下降算法。
一定注意,那个是求损失函数的最小值,越小越好,当然用下降;而在这里,要求对数似然函数的最大值,则需要沿着梯度上升,越大越好。到最后得到极大似然估计值θ,那么学到的Logistic回归模型就是:
一定注意,这两次用梯度的目的不同,一次是为了损失值最小,一次是为了似然值最大,一个下降,一个上升!
Logistic的损失函数:
负对数似然损失函数NLL。
可以很好的解释。
常见的损失函数
机器学习或者统计机器学习常见的损失函数如下:
1.0-1损失函数 (0-1 loss function)
2.平方损失函数(quadratic loss function)
3.绝对值损失函数(absolute loss function)
L(Y,f(x))=|Y−f(X)|
4.对数损失函数(logarithmic loss function) 或对数似然损失函数(log-likehood loss function)
逻辑回归中,采用的则是对数损失函数。如果损失函数越小,表示模型越好。
说说对数损失函数与平方损失函数
在逻辑回归的推导中国,我们假设样本是服从伯努利分布(0-1分布)的,然后求得满足该分布的似然函数,最终求该似然函数的极大值。整体的思想就是求极大似然函数的思想。而取对数,只是为了方便我们的在求MLE(Maximum Likelihood Estimation)过程中采取的一种数学手段而已。
全体样本的损失函数可以表示为:
这就是逻辑回归最终的损失函数表达式。
Logistic 回归的总结:
优点:方法简单、容易实现、效果良好、易于解释
特征选择很重要:人工选择,随机森林、PCA、LDA
梯度下降算法是参数优化的重要手段,尤其是SGD。(适用于在线学习,能挑出局部极小值。)
Softmax回归
Logistic回归的推广,概率计算公式:
本章总结:
对于线性回归,求解参数θ即可,可以用解析解的方法求解,也可以用梯度下降的方式求解。
对于Logistic回归和Softmax回归,推导及求解方式相同。基本遵循以下步骤:
- 给出分类概率函数
- 求累加的似然函数
- 转换为对数似然函数求驻点
- 利用梯度下降法求解。
线性回归、Logistic回归、Softmax回归的更多相关文章
- 机器学习之线性回归---logistic回归---softmax回归
在本节中,我们介绍Softmax回归模型,该模型是logistic回归模型在多分类问题上的推广,在多分类问题中,类标签 可以取两个以上的值. Softmax回归模型对于诸如MNIST手写数字分类等问题 ...
- 【分类器】感知机+线性回归+逻辑斯蒂回归+softmax回归
一.感知机 详细参考:https://blog.csdn.net/wodeai1235/article/details/54755735 1.模型和图像: 2.数学定义推导和优化: 3.流程 ...
- Softmax回归 softMax回归与logistic回归的关系
简介 在本节中,我们介绍Softmax回归模型,该模型是logistic回归模型在多分类问题上的推广,在多分类问题中,类标签 可以取两个以上的值. Softmax回归模型对于诸如MNIST手写数字分 ...
- 机器学习 —— 基础整理(五)线性回归;二项Logistic回归;Softmax回归及其梯度推导;广义线性模型
本文简单整理了以下内容: (一)线性回归 (二)二分类:二项Logistic回归 (三)多分类:Softmax回归 (四)广义线性模型 闲话:二项Logistic回归是我去年入门机器学习时学的第一个模 ...
- 利用TensorFlow识别手写的数字---基于Softmax回归
1 MNIST数据集 MNIST数据集主要由一些手写数字的图片和相应的标签组成,图片一共有10类,分别对应从0-9,共10个阿拉伯数字.原始的MNIST数据库一共包含下面4个文件,见下表. 训练图像一 ...
- 机器学习——softmax回归
softmax回归 前面介绍了线性回归模型适用于输出为连续值的情景.在另一类情景中,模型输出可以是一个像图像类别这样的离散值.对于这样的离散值预测问题,我们可以使用诸如 softmax 回归在内的分类 ...
- 02-13 Softmax回归
目录 Softmax回归 一.Softmax回归详解 1.1 让步比 1.2 不同类之间的概率分布 1.3 目标函数 1.4 目标函数最大化 二.Softmax回归优缺点 2.1 优点 2.2 缺点 ...
- 1.线性回归、Logistic回归、Softmax回归
本次回归章节的思维导图版总结已经总结完毕,但自我感觉不甚理想.不知道是模型太简单还是由于自己本身的原因,总结出来的东西感觉很少,好像知识点都覆盖上了,但乍一看,好像又什么都没有.不管怎样,算是一次尝试 ...
- Logistic回归(逻辑回归)和softmax回归
一.Logistic回归 Logistic回归(Logistic Regression,简称LR)是一种常用的处理二类分类问题的模型. 在二类分类问题中,把因变量y可能属于的两个类分别称为负类和正类, ...
随机推荐
- 连接mysql && ERROR 2003 (HY000): Can't connect to MySQL server on 'localhost' (10061)
上一篇:mysql服务正在启动 mysql服务无法启动 && mysql启动脚本 mysql关闭脚本 此篇目编写一个核心目的: 1.mysql连接 先抛出一个问题 这是因为mysql服 ...
- 笔记 : windows系统下 命令行 php --version 的版本与phpinfo()版本不一致问题
第一 : php --version命令cmd不随wamp中php版本改变而改变的, php命令是随着wamp安装时将:wamp/bin/php/php5.6.25[版本]自动或手动添加到环境变量, ...
- beego 初体验 - orm
goland Terminal运行命令: go get github.com/astaxie/beego/orm 安装go mysql驱动: go get github.com/go-sql-driv ...
- nat123学习笔记
1.NAT123内网映射端口 在无内网路由管理员权限的情况下,需要将内网web应用暴露到公网访问,此时需要用到花生壳或者nat123(两个应用都不是免费的,其中花生壳可以8元认证,以后免费使用,nat ...
- base64的编码
计算机中的数据一般是由ascii编码,来存储的, 0---31以及127,表示的是控制字符: 32-126表示的是字符,包括空格,阿拉伯数字,大小写字母: 之后的128个字符,是不可见的字符, 在网络 ...
- sublime text3 增加代码片段(snipper)
有时候编写代码时有些代码片段经常会用到,如果能将这些代码片段整理,再在需要的时候通过某些条件触发,那无疑是非常方便的! 创建方法:工具->插件开发->新建代码片段 默认产生的内容是: &l ...
- CentOS下nginx+php的配置及nginx开机启动配置
关闭防火墙 (不然外链接是访问不了 apache) service iptables stop 关闭安全系统 SELinux( 不然报403 访问页面错误 ) 1.Nginx安装主要在于配置文件的修改 ...
- html5-css的引入
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8&qu ...
- css 扩大点击范围
业务场景:比如某个按钮大小已经固定了,但是需求点击按钮周边就可以触发点击事件. 设置一下before属性里面的height,width就是设置你要点击的范围. rem是css3中新增加的一个单位属性( ...
- Spark学习之路 (八)SparkCore的调优之开发调优
摘抄自:https://tech.meituan.com/spark-tuning-basic.html 前言 在大数据计算领域,Spark已经成为了越来越流行.越来越受欢迎的计算平台之一.Spark ...