首页 > 其他分享 >线性回归

线性回归

时间:2024-02-27 23:15:24浏览次数:28  
标签:right frac 回归 线性 theta sigma sum left

误差项

拟合的线性函数如下,

\[h_{\theta}(x)=\sum_{i=0}^{n} \theta_{i} x_{i}=\theta^{T} x \]

对于每个样本,真实值和预测值之间的偏差,如下,

\[y^{(i)}=\theta^{T} x^{(i)}+\varepsilon^{(i)} \]

独立同分布

误差项是独立同分布的,并且服从均值为0方差为

\[\theta^2 \]

的正态分布。

极大似然估计

计算偏差

\[y^{(i)}=\theta^{T} x^{(i)}+\varepsilon^{(i)} \]

偏差服从正态分布

\[p\left(\epsilon^{(i)}\right)=\frac{1}{\sqrt{2 \pi} \sigma} \exp \left(-\frac{\left(\epsilon^{(i)}\right)^{2}}{2 \sigma^{2}}\right) \]

偏差代入正态分布得到

\[p\left(y^{(i)} \mid x^{(i)} ; \theta\right)=\frac{1}{\sqrt{2 \pi} \sigma} \exp \left(-\frac{\left(y^{(i)}-\theta^{T} x^{(i)}\right)^{2}}{2 \sigma^{2}}\right) \]

求出似然函数如下

\[L(\theta)=\prod_{i=1}^{m} p\left(y^{(i)} \mid x^{(i)} ; \theta\right)=\prod_{i=1}^{m} \frac{1}{\sqrt{2 \pi} \sigma} \exp \left(-\frac{\left(y^{(i)}-\theta^{T} x^{(i)}\right)^{2}}{2 \sigma^{2}}\right) \]

获得对数似然函数

\[\log L(\theta)=\log \prod_{i=1}^{m} \frac{1}{\sqrt{2 \pi} \sigma} \exp \left(-\frac{\left(y^{(i)}-\theta^{T} x^{(i)}\right)^{2}}{2 \sigma^{2}}\right) \]

对似然函数求导

\[\begin{array}{l}\sum_{i=1}^{m} \log \frac{1}{\sqrt{2 \pi} \sigma} \exp \left(-\frac{\left(y^{(i)}-\theta^{T} x^{(i)}\right)^{2}}{2 \sigma^{2}}\right) \\ =m \log \frac{1}{\sqrt{2 \pi} \sigma}-\frac{1}{\sigma^{2}} \cdot \frac{1}{2} \sum_{i=1}^{m}\left(y^{(i)}-\theta^{T} x^{(i)}\right)^{2} .\end{array} \]

得到极大似然估计

\[J(\theta)=\frac{1}{2} \sum_{i=1}^{m}\left(y^{(i)}-\theta^{T} x^{(i)}\right)^{2} \]

这样就得到了误差函数,但是只有误差函数,我们没办法逼近优化,使用梯度下降算法就可以优化参数了。

梯度下降算法

目标函数如下

\[J(\theta)=\frac{1}{2 m} \sum_{i=1}^{m}\left(y^{i}-h_{\theta}\left(x^{i}\right)\right)^{2} \]

梯度下降沿着梯度的方向移动

批量梯度下降算法

\[\frac{\partial J(\theta)}{\partial \theta_{j}}=-\frac{1}{m} \sum_{i=1}^{m}\left(y^{i}-h_{\theta}\left(x^{i}\right)\right) x_{j}^{i} \quad \theta_{j}^{\prime}=\theta_{j}+\frac{1}{m} \sum_{i=1}^{m}\left(y^{i}-h_{\theta}\left(x^{i}\right)\right) x_{j}^{i} \]

沿着m个样本的求出的每个梯度的均值的负方向移动。

优点,容易得到最优解;缺点,每次要考虑所有的样本,速度慢。

随机梯度下降算法

\[\theta_{j}^{\prime}=\theta_{j}+\left(y^{i}-h_{\theta}\left(x^{i}\right)\right) x_{j}^{i} \]

每次找一个样本,求出梯度,沿着负方向移动。

优点,迭代速度快;缺点,不一定每次都朝着收敛的方向。

小批量梯度下降算法

\[\theta_{j}=\theta_{j}-\alpha \frac{1}{10} \sum_{k=i}^{i+9}\left(h_{\theta}\left(x^{(k)}\right)-y^{(k)}\right) x_{j}^{(k)} \]

采用小部分数据计算,比较实用,既有随机梯度下降的速度,也容易得到最优解。

标签:right,frac,回归,线性,theta,sigma,sum,left
From: https://www.cnblogs.com/CallMeRoot/p/18038664

相关文章

  • 测试一波回归模型的误差
    如何衡量一个线性回归模型准确性上一篇文章讲了怎么使用线性回归来预测,但是没有对这个模型的性能和准确性进行有效评估。一般来讲,误差越小,预测就越准确。但是如果误差过于小,也要考虑是否过度拟合。下面几个指标是用来衡量一个模型的误差大小:平均绝对误差(MeanAbsoluteErro......
  • R语言中实现广义相加模型GAM和普通最小二乘(OLS)回归
    原文链接:http://tecdat.cn/?p=20882 原文出处:拓端数据部落公众号 1导言这篇文章探讨了为什么使用广义相加模型 是一个不错的选择。为此,我们首先需要看一下线性回归,看看为什么在某些情况下它可能不是最佳选择。 2回归模型假设我们有一些带有两个属性Y和X的数据。如果它......
  • 线性规划与对偶
    感谢lcw学长的blog,讲的很清晰,受益匪浅。本文使用大量非正式语言,如有需要可以去看原论文。定义称形如\(f(x_1,\cdots,x_n)=\sum\limits_{i=1}^na_ix_i\)的函数为线性函数。称\(f(x_1,\cdots,x_n)\geb,f(x_1,\cdots,x_n)=b,f(x_1,\cdots,x_n)\leb\)为线性约束。称满......
  • 线性数据结构:数组、受限数组(栈、队列)、线性表
    1.数组数组定义  数组(Array)是有序的元素序列。属于线性结构(有且仅有一个前驱、有且仅有一个后继)。数组特点  数组的关键在于在内存中的物理地址对应的是一段连续的内存。这意味着如果想要在任意位置删除/新增一个元素,那么该位置往后的所有元素,都需要往前挪/往后挪一个位......
  • sklearn学习笔记之线性回归
    AI时代扑面而来,在大众面对ChatGPT和Sora发出无数惊叹号的时候,我决定不再只当一个AI时代的API调用者,而是去学习机器学习技术本身。刚好公司也要往人工智能方向发展的计划,于是我开始从基础学习,发现了一个宝藏开源机器学习库:scikit-learn。scikit-learn文档健全,社区生态非常完善,这......
  • 【深度学习】Logistic回归算法和向量化编程。全md文档笔记(代码文档已分享)
    本系列文章md笔记(已分享)主要讨论深度学习相关知识。可以让大家熟练掌握机器学习基础,如分类、回归(含代码),熟练掌握numpy,pandas,sklearn等框架使用。在算法上,掌握神经网络的数学原理,手动实现简单的神经网络结构,在应用上熟练掌握TensorFlow框架使用,掌握神经网络图像相关案例。具体......
  • R语言时变面板平滑转换回归模型TV-PSTR分析债务水平对投资的影响|附代码数据
    全文下载链接:http://tecdat.cn/?p=21506最近我们被客户要求撰写关于TV-PSTR的研究报告,包括一些图形和统计输出。在本文中,当采用两种状态时,单转换函数PSTR模型具有两个变量:我们的经验方法的基础包括评估N个国家的资本流动性。相应的模型定义如下:其中,Iit是第i个国家在时间t时观......
  • 线性基学习笔记
    线性基preface需要一点线性空间知识线性相关:在向量空间V的一组向量\(A:a_1,a_2...a_m\)如果存在不全为零的数\(k_1,k_2,···,k_m\),使\(\suma_ik_i=0\)则称向量组A是线性相关的,否则线性无关线性表出:在向量空间V的一组向量\(A:a_1,a_2...a_m\)如果存在一组实数\(k_......
  • 数据结构——线性表
    线性表1.掌握线性表的定义、逻辑结构及其抽象数据类型等基本概念线性表的抽象数据类型定义ADTList{数据对象:D={ai|ai∈ElemSet,i=1,2,...n,n>=0}//任意数据元素的集合数据关系:R={<ai-1,ai>|ai-1,ai∈D,i=2,3,...n}//除第一个和最后一个外,每个元素都有唯一的前驱和后继基本......
  • chapter5-线性数据结构
    1.向量向量(vector)是可以改变其大小的线性序列容器。像数组一样,向量使用连续的空间存储元素,这表明向量也可以像数组一般通过其下标来访问其元素。但与数组不同的是,向量的大小可以动态变化。向量在内部使用动态数组的方式来存储元素,无需关心实现细节。(平均意义下,向量插入元素的时......