线性回归相关知识及公式推导
转自https://www.cnblogs.com/GuoJiaSheng/p/3928160.html
在现实生活中普遍存在着变量之间的关系,有确定的和非确定的。确定关系指的是变量之间可以使用函数关系式表示,还有一种是属于非确定的(相关),比如人的身高和体重,一样的身高体重是不一样的。
线性回归:
1: 函数模型(Model):
假设有训练数据
那么为了方便我们写成矩阵的形式
2: 损失函数(cost):
现在我们需要根据给定的X求解W的值,这里采用最小二乘法。
a.最小二乘法:
何为最小二乘法,其实很简单。我们有很多的给定点,这时候我们需要找出一条线去拟合它,那么我先假设这个线的方程,然后把数据点代入假设的方程得到观测值,求使得实际值与观测值相减的平方和最小的参数。对变量求偏导联立便可求。
因此损失代价函数为:
3: 算法(algorithm):(注意 A的转置乘B = B的转置乘A)
现在我们的目的就是求解出一个使得代价函数最小的W:
a.矩阵满秩可求解时(求导等于0):
b.矩阵不满秩时(梯度下降):
梯度下降算法是一种求局部最优解的方法,对于F(x),在a点的梯度是F(x)增长最快的方向,那么它的相反方向则是该点下降最快的方向,具体参考wikipedia。
原理:将函数比作一座山,我们站在某个山坡上,往四周看,从哪个方向向下走一小步,能够下降的最快;
注意:当变量之间大小相差很大时,应该先将他们做处理,使得他们的值在同一个范围,这样比较准确。
1)首先对θ赋值,这个值可以是随机的,也可以让θ是一个全零的向量。
2)改变θ的值,使得J(θ)按梯度下降的方向进行减少。
描述一下梯度减少的过程,对于我们的函数J(θ)求偏导J:
Repeat until convergence:{
下面是更新的过程,也就是θi会向着梯度最小的方向进行减少。θi表示更新之前的值,-后面的部分表示按梯度方向减少的量,α表示步长,也就是每次按照梯度减少的方向变化多少。
}
假设有数据集D时:
对损失函数求偏导如下:
使用矩阵表示(方便计算)
从概率层面解释-回归模型的目标函数:
基本上每个模型都会有一个对应的目标函数,可以通过不同的最优化求解方法(梯度下降,牛顿法等等)对这些对应的目标函数进行求解。线性回归模型,我们知道实际上是通过多个自变量对自变量进行曲线拟合。我们希望找到一条可以较好拟合的曲线,
那我们如何判断一条曲线的拟合程度的好坏。上面讲到,我们采用的是最小二乘法(预测值和真实值得误差的平方和),那为什么要用这个作为目标函数呢?
可以从中心极限定理、高斯分布来分析:
1.中心极限定理:
设有n个随机变量,X1,X2,X3,Xn,他们之间相互独立,并且有相同的数学期望和均值。E(X)=u;D(x)=δ2.令Yn为这n个随机变量之和。
Zn为X这几个变量的规范和。
2.高斯分布
假的给定一个输入样本x,我们得到预测值和真实值间的存在的误差e,那么他们的关系如下:
而这里,我们就可以假设e服从标准的高斯分布。
为什么呢?回归模型的最终目标是建立自变量x和y之间的关系,我们希望通过x可以较为准确的表示结果y。而在实际应用场景中,很难甚至不可能把导致y结果的所有变量(特征)都找到,放到回归模型里面。
我们只存放那些认为比较重要的特征。根据中心极限定理,把那些对结果影响比较小的(假设独立分布)之和认为是符合正态分布是合理的。
那么x和y的条件概率:
那么知道一条样本的概率,我们就可以通过极大估计求似然函数,优化的目标函数如下:
通过取对数我们可以发现极大似然估计的目标函数和最小平方误差是一样。
在概率模型中,目标函数的极大和极小与极大似然估计是等价的。
假设随机变量为Y,和普通变量x存在相关关系,由于Y是随机变量,对于x的各个确定值,Y有它的分布(高斯)。
假设为:
使用极大似然估计可求解。
我们知道对于下面公式:
y为随机变量,在c=E(y)时达到最小,这表明以E(y)作为y的近似是最好的。
线性回归相关知识及公式推导相关推荐
- 卷积神经网络(CNN)相关知识以及数学推导
神经网络概述 神经元模型 以上就是经典的"M-P神经元模型".在这个模型中,神经元接收来自n个其他神经元传递过来的输入信号,这些输入信号通过带权重的连接进行传递,神经元接收到的总输 ...
- 机器学习的相关知识的简介
机器学习的相关知识与介绍 后面有机器学习生活应用的例子 *阿尔法狗( AlphaGo )是一款围棋人工智能程序,由谷歌( Google) ! : 旗下 De叩Mind 公司的戴密斯·哈萨比斯.大卫·席 ...
- JS作用域相关知识(#精)
在学习<你不知道的JS>一书中,特将作用域相关知识在此分享一下: #说到作用域,就不得不提到LHS查询和RHS查询: 1)如果查询目的是对变量进行赋值,则使用LHS查询 2)如果查询目的是 ...
- 工业相机参数之帧率相关知识详解
点击上方"小白学视觉",选择加"星标"或"置顶"重磅干货,第一时间送达 工业相机是机器视觉系统的重要组成部分之一,在机器视觉系统中有着非常重 ...
- shell的相关知识(变量、脚本定义)
一.shell的相关知识: 1.对于shell编程语言大体分为:机器语言.汇编语言.高级语言 2.shell变量类型:事先确定数据的存储格式和长度 shell变量分为:字符型.数值型 数值型又分为:整 ...
- 视频压缩算法的相关知识
视频压缩算法的相关知识 MPEG-1 MPEG 视频压缩编码后包括三种元素:I帧(I-frames).P帧(P-frames)和B帧(B-frames).在MPEG编码的过程中,部分视频帧序列压缩成为 ...
- linux 格式化 dvd,linux 服务器分区格式化相关知识 -mount
关于linux 系统mount和mkfs 的相关知识: 使用mount 1)Mount的相关格式:mount [-t 文件类型][-o 选项] devicedir 详解: -t 文件类型,通常默认m ...
- WinForm开发,窗体显示和窗体传值相关知识总结
以前对WinForm窗体显示和窗体间传值了解不是很清楚 最近做了一些WinForm开发,把用到的相关知识整理如下 A.WinForm中窗体显示显示窗体可以有以下2种方法: Form.ShowDialo ...
- js基础--数据类型检测的相关知识
欢迎访问我的个人博客:www.xiaolongwu.cn 前言 最近工作有点忙,好几天都没更新技术博客了. 周末起床打开有道云笔记,发现自己的博客todolist里躺了一堆只有名字的文件. 话不多说, ...
最新文章
- hdu 1598(最小生成树变形)
- 听音训练手册--音频制品与听评
- linux indent格式化代码
- 查询2021抚顺高考成绩,2021年抚顺高考状元是谁分数多少分,历年抚顺高考状元名单...
- jquery 获取键值对中最大值_jquery属性的操作
- Java实现的时钟置换算法_时钟页面置换算法
- 美团点评:摩拜贡献收入15亿元 同期亏损45.5亿元
- linux服务器重启为啥重新新增端口,Linux服务器上新增开放端口号
- 清除SQL被注入script恶意病毒代码的语句
- python3 messagebox_如何在Python3.4中正确实现tkMessageBox?
- 灵机一动之优雅实现用例顺序插入
- 前端商城项目实战-(前端篇)
- netty权威指南 微云_《Netty权威指南》(二)NIO 入门
- 大前端:数据可视化 大屏设计工具整理
- 苹果手机屏幕镜像搜索不到电视_无线同屏器连接电视步骤
- 三大主流前端框架介绍VUE 、React、Angular
- C# 使用斑马打印机打印图片
- 1677. 【USACO】山峰暸望
- 网络工程专业就业方向
- 英语长难句之非谓语动词作状语与独立主格-学习笔记