核回归技术是一组非参数方法,用于通过一组数据点拟合平滑的曲线。 Nadaraya-Watson 估计就是这样一种方法。 它通常是在自变量分布的核密度估计以及因变量和自变量联合分布的基础上,通过计算因变量的条件期望得到的。

在本文中,我将介绍推导 Nadaraya-Watson 估计(本篇文章中将其简称为“核回归”)的另一种基本原理。 这个基本原理激发了一个变分原理,这将使我们能够制定一个可以称为“正则化核回归”的修改。

许多回归技术可以通过最小化关于二次损失函数的经验风险或关于 N 个数据点 (x₁, y₁) 的残差平方和 R[f] 推导出来,…:

相对于未知回归函数 f 最小化问题,该表达式是不适定的,所以需要对 f 进行进一步的假设。 在参数化建模中,我们将 f 限制在某个假设空间中以使问题成为适定的。 例如,在线性回归中,我们将 f 限制在仿射线性函数的空间,f(x) = m⋅ x + c。 确定斜率 m 和截距 c 使得上述残差平方和最小,将产生最佳拟合曲线。 现在让我们对上述公式应用一些数学变换,并逐步解释这些:

第一个等式就是把平方展开,把y的平方展开作为它们自己的和。对于第二个等式,y的平方和对我们以后要应用的最小化过程没有帮助因为它不依赖于我们想要最小化的函数f。因此,我们可以称它为“const”。我们就不用管它了。

下一步至关重要。我们可以通过狄拉克δ函数来计算f在一个固定位置的值,就像这样:

这将允许我们将整体损失 R[f] 写成一个积分,并且经验风险最小化变得可以通过变分计算的标准工具进行。

δ(delta)的正确定义需要对泛函分析有一定的了解,更准确地说是分布理论或“广义函数”的理解。 但是根据我们的最终目标,可以将狄拉克δ函数想象为以原点为中心的非常窄的峰。我们可以通过新生 delta 函数的极限来近似狄拉克 δ 函数(新生成函数的度量在原点附近变得越来越集中)。

一般情况下这个名字就出现了 - 高斯:

这个函数族消失在 > 0的极限下,并在适当的意义上收敛于狄拉克函数。

最后,在用上述近似代替狄拉克函数之后,我们可以给出积分下的公式的名称:L代表拉格朗日。(这个特定的拉格朗日函数实际上并不依赖于f '的导数,但我们稍后会用到它的通用性)

找到像这样一个函数的平稳点——即一个用拉格朗日函数的积分表示的点——在数学和理论物理中有许多应用。例如,经典力学可以被重新表述为基于最小作用量原理的拉格朗日力学。另一个应用是对光线路径的描述,它遵循费马原理,也就是最小时间原理。

因此,这个问题有一个众所周知的通解。在这里我们感兴趣的是最小化以下形式的函数:

函数f是当且仅当满足以下欧拉-拉格朗日方程时的平稳点:

对于我们到目前为止导出的拉格朗日函数,通过最小二乘法 R[f] 的“抹去”和,所以右侧消失了,因为导数 f ’ 没有依赖关系。

在这种情况下,欧拉-拉格朗日方程可以简单地用代数方法求解f(x):

这正是 Nadaraya 和 Watson 提出的核回归公式。

到目前为止,我们能够推导出经过验证的回归技术。 现在可以进行更多的研究了,我们对变分原理进行一些修改。 例如,可以添加一个使模型正则化的项,并惩罚大导数:

λ > 0是一个正则化参数。我们还引入了常数因子“1 / N”,因此我们实际上是将平均经验风险与正则化项进行比较。计算相应的欧拉-拉格朗日方程是一项简单的任务:

当然,对于λ = 0,这个公式可以简化为传统的核回归。这是一个二阶线性微分方程一旦给出边界条件或初始条件它就有唯一解。在R中,solve和bvpSolve包可以用于数值求解常微分方程。

让我们模拟一些真实的数据。下图显示了Berkeley Earth (http://berkeleyearth.org/data/):)的1850年至2019年全球平均气温的时间序列

虚线是bandwidth h = 10.0的常规核回归,实线是相同bandwidth 和正则化参数λ = 0.5的正则化核回归的结果。欧拉-拉格朗日方程是通过施加一个边界值问题来求解的,该边界值是由前五年/最近五年的温度中值给出的最早/最近的温度。

本文提出的正则化核回归有一些明显的缺陷,例如:

  • 边界条件需要被指定,这看起来像是一个特别的过程,
  • 尝试应用初始条件似乎并不实际,而且会导致荒谬解决方案,
  • 在λ很小的情况下,数值可能不稳定。

但是该模型似乎也有一些理想的功能。例如,对于不同的bandwidth 选择,它似乎相当健壮。下图显示了h = 1.0时使用相同的数据和回归的函数,但bandwidth 更小:

传统的核回归似乎在很大程度上过度拟合了数据,但正则化版本“保持在正确的轨道上”。

该模型的另一个特点是:它可能更擅长处理丢失的数据。这里有一个图表,说明了同样的回归技术,但缺失1920年和1970年之间的数据:

我们可以利用这种健壮性来处理丢失的数据,并尝试推断出未来场景的时间序列。虽然传统的核回归在插值中肯定是有用的,但我们可以预期传统的技术在这项任务中会失败。

然而,正则化的核回归可能会成功,因为增加了“惯性”λ。以下图表显示了对未来情景的先验预测,即2040年全球平均气温将分别上升到15.2摄氏度、15.8摄氏度和16.4摄氏度:

对于每个外推,使用相同的模型超参数h = 10.0, λ = 0.5。尽管在拟合最终模型之前给出了先验,但 2040 年 15.8 °C 的选择并不是临时的:推算到 2040 年的 15.8 °C 实际上是最好的预测,因为有了这个参数,(传统的) 残差平方和被最小化,这可以通过简单的网格搜索来验证。

核回归是一种技术,可以通过最小化与二次损失函数相关的经验风险的“平滑”或“涂抹”推导出来。 这种方法导致可以扩展的变分原理,例如通过添加正则化项。

对结果模型的一些实验显示了一些理想的特性,它可能会在预测时间序列中找到有用的应用。

作者:Matthias Plaue

使用变分原理改进正则化核回归:通过变分法推导和推广Nadaraya-Watson估计相关推荐

  1. 使用自变分原理改进正则化核回归:通过变分法推导和推广Nadaraya-Watson估计

    来源:Deephub Imba 本文约2400字,建议阅读7分钟 本文介绍推导 Nadaraya-Watson 估计)的另一种基本原理. 核回归技术是一组非参数方法,用于通过一组数据点拟合平滑的曲线. ...

  2. 机器学习 | MATLAB实现PSO-IELM粒子群改进极限学习机回归和分类预测

    分机器学习 | MATLAB实现PSO-IELM粒子群改进极限学习机回归和分类预测 目录 分机器学习 | MATLAB实现PSO-IELM粒子群改进极限学习机回归和分类预测 基本介绍 程序设计 回归主 ...

  3. 逻辑回归代价函数的推导过程

    逻辑回归代价函数的推导过程 1.代价函数 在篇文章中,我们要介绍如何拟合逻辑回归模型的参数.具体来说,我要定义用来拟合参数的优化目标或者叫代价函数,这便是监督学习问题中的逻辑回归模型的拟合问题. 对于 ...

  4. 最小二乘法求回归直线方程的推导

    最小二乘法求回归直线方程的推导 转载自:http://blog.csdn.net/marsjohn/article/details/54911788 在数据的统计分析中,数据之间即变量x与Y之间的相关 ...

  5. 逻辑回归原理以及推导

    1.之前听其他面试者说,遇到过写LR中损失函数的推导,也就是从概率一般式  开始,运用似然函数求解概率最大(被问到:为什么可以用似然函数.答:因为目标是要让预测为正的的概率最大,且预测为负的概率也最大 ...

  6. Logistic回归的自己推导

    这里的导数有问题,需要汇总在所有样本计算得到的导数,如下所示: 为什么不像最小二乘法那样计算出恒等式呢? 通过对比思维可以发现,唯一不同的是lr回归相对线性回归多了一层非线性映射,即图中的h(x)为s ...

  7. AI实践之路:线性/逻辑回归背后的广义线性模型与最大似然估计

    写上一篇文章的过程中,讲到逻辑回归是如何利用Sigmoid函数将线性回归的数值转换为概率时,才意识到自己对逻辑回归的理解十分浅显,为什么是Sigmoid函数?它一个就说是概率了?数学原理是什么?为了增 ...

  8. 逻辑回归原理及推导过程

    这篇文章将详细地讲解逻辑回归的推导过程. 原理: 逻辑回归处理的是分类问题,具体来说,是处理二分类问题.为了实现逻辑回归分类器,我们可以在线性回归的基础上(即每个特征乘以一个回归系数后相加),添加一个 ...

  9. 逻辑回归梯度下降推导

    目录 什么是逻辑回归 逻辑回归的代价函数是怎么来的? 逻辑回归求导 参考 什么是逻辑回归 逻辑回归(Logistic Regression)是用于处理因变量为分类变量的回归问题,常见的是二分类或二项分 ...

最新文章

  1. 用python写一个简单的推荐系统
  2. mysql解压版怎么退出_mysql-8.0.15-winx64 解压版安装教程及退出的三种方式
  3. 一般将来时语法课教案_英语语法:一般现在时和现在进行时
  4. 火神山医院紧急招募IT运维志愿者需求
  5. uva-10602-贪心
  6. matlab求被21整除,用matlab求[100,999]之间能被21整除的数的个数,还有建立一个字符串向量,删除大写字母._...
  7. .process和ProcessFunction(没有整理完)
  8. Solr router 路由介绍
  9. android拍照功能编程,android实现手机App实现拍照功能示例
  10. 微信公众平台java开发详解(工程代码+解析)
  11. ReportViewer教程(5)-将数据源字段放入报表
  12. EventBus猜想 ----手把手带你自己实现一个EventBus
  13. 《统计学习方法》—— 感知机原理、推导以及python3代码实现(一)
  14. 洛谷P5108 仰望半月的夜空(后缀数组)
  15. 中国幻想向欧美妥协取得5G权益将是一种错误
  16. Mac(OS X)下的环境变量配置不生效解决办法
  17. Atitit 常见硬件集成列表 目录 1.1. 小程序设备类 1 1.2. atitit.常见手机的传感器与外设 attilax总结 1 1.3. Pc机外设 1 1.4. 设备管理器 2 1.1
  18. 【第三方授权登录】微信授权登录
  19. 常用计算机二级题库,2016最新计算机二级office题库
  20. mysql创建临时表

热门文章

  1. 62个ASP免积分资料下载地址汇总
  2. POLYV直播助手客户端软件做视频直播时如何添加画面源
  3. HUD(抬头显示)的方案介绍
  4. 职称考试计算机怎么学容易,职称计算机考试过关必读的9大技巧
  5. el-select多选全选
  6. importerror: cannot import name ‘HTTPClientFactory‘ from ‘twisted.web.client‘ (unknown location)
  7. 《复杂命名实体识别》
  8. 计算机网络仿真技术概述,浅谈计算机网络仿真技术及其研究
  9. [UOJ48] 核聚变反应强度
  10. 使用HttpClient实现申通快递查询