核回归

核回归和loess类似,都是非参数回归方法。

整体来说,核回归和loess有点接近,但又有点不同,首先,loess对于在x0估计y的取值,它会选择划定一个范围,通过该范围的样本去估计x0的y值,但是核回归不一样,它会考虑选择全部样本去估计这个x0的y值。另一方面,loess在估计关于x0的y值,计算各点的权重需要先计算距离再通过权重函数计算,而loess则直接把核函数作为权重函数,因为核函数本身也可以作为概率密度函数,所以省去了loess中的归一化等处理,简化了过程。

下面我们选择高斯核函数,用一个具体的例子说明核回归的思想。

高斯核函数和正态分布函数一个样,呈一个钟型曲线,这样,假如我们把拟合点x0作为高斯核函数的期望,就可以直接得到样本的各个x在高斯核函数的取值作为它们的一个权重。

以上的过程,对应loess中的决定拟合点的数量和位置,确定关于各个拟合点的各个样本权重(因为我们采取所有样本进行估计,所以不需要选择每个拟合点附近距离最近的n个点这个步骤)。

接下来就是loess中的拟合步骤了。在loess中,我们可以进行一次或者二次的多项式拟合,而在核回归同样也是这样(不过一般在核回归中采取零次或一次),首先写出核回归的d次多项式:

f ^ ( x ) = β 0 + β 1 ( X i − x ) + . . . + β d ( X i − x ) d \hat f(x) = \beta_0 + \beta_1 (X_i - x) + ... + \beta_d (X_i - x)^d f^(x)=β0+β1(Xix)+...+βd(Xix)d

这个拟合的d次多项式是比较特别的,可以看到系数对应的是x_i - x而不是单纯的x,另一方面,关于权重函数,同样也是用x_i - x:

K h ( X i − x ) = 1 h K ( X i − x h ) K_h(X_i - x) = \frac{1}{h} K(\frac{X_i - x}{h}) Kh(Xix)=h1K(hXix)

当然,不论是拟合的多项式还是权重函数,自变量都是x,但是写成x_i - x,我认为这是为了反映出比起自变量x的位置,x与其他样本点才是更重要的,更能反映出权重和拟合的多项式的关系的变量。换个角度来思考,我们现在做的是非参数估计,没有做关于总体分布的任何假设,全部的分析都是基于样本进行的,所以其实我们做出来的估计都是基于样本的,在这个角度看来,如果我们要估计某一点x的取值,比起它所在的绝对坐标,它和其他样本的相对坐标才是分析它的取值的关键,这是我认为多项式和权重函数都采取x_i - x作为自变量的原因。

分析了核回归拟合的多项式之后,下一步就是分析怎么解出多项式的参数beta了,可以知道,我们的目标就是拟合一个多项式,使得多项式尽可能地拟合附近的样本,所以和loess一样,这里也是采取局部线性回归的方式,结合权重定义损失函数:

∑ i = 1 n K h ( X i − x ) ( Y i − β 0 − β 1 ( X i − x ) − . . . − β d ( X i − x ) d ) 2 \sum_{i=1}^{n} K_h(X_i - x) (Y_i - \beta_0 - \beta_1(X_i - x) - ... - \beta_d (X_i - x)^d)^2 i=1nKh(Xix)(Yiβ0β1(Xix)...βd(Xix)d)2

使损失函数达到最小,就能得到得到参数。

就像前面提到的,核回归的拟合多项式一般取零次或者一次,也就是d=0或者d=1,针对这两种情况,我们可以解出各自的最优参数表达式,并重新代近拟合方程,得到各自的表达式:

f ^ N W ( x ) = ∑ i = 1 n K h ( X i − x ) Y i ∑ i = 1 n K h ( X i − x ) \hat f_{NW}(x) = \frac{\sum_{i=1}^{n} K_h(X_i - x)Y_i} {\sum_{i=1}^{n} K_h(X_i - x)} f^NW(x)=i=1nKh(Xix)i=1nKh(Xix)Yi

f ^ L L ( x ) = 1 n ∑ i = 1 n [ s ^ 2 ( x ) − s ^ 1 ( x ) ( X i − x ) ] K h ( X i − x ) Y i s ^ 2 ( x ) s ^ 0 ( x ) − s ^ 1 ( x ) 2 \hat f_{LL}(x) = \frac{1}{n} \sum_{i=1}^n \frac{[\hat s_2(x) - \hat s_1(x)(X_i - x)] K_h(X_i - x)Y_i}{\hat s_2(x) \hat s_0(x) - \hat s_1 (x)^2} f^LL(x)=n1i=1ns^2(x)s^0(x)s^1(x)2[s^2(x)s^1(x)(Xix)]Kh(Xix)Yi

s ^ r ( x ) = 1 n ∑ i = 1 n ( X i − x ) r K h ( X i − x ) \hat s_r (x) = \frac{1}{n} \sum_{i=1}^n (X_i - x)^r K_h(X_i - x) s^r(x)=n1i=1n(Xix)rKh(Xix)

第一条式子对应d=0的情况,也称为Nadaraya-Watson kernel estimator,第二条式子对应d=1,也称为local linear kernel estimator

关于拟合多项式选择零次和一次的区别,下图会更清晰地反映出来:

从上图可以看到,Nadaraya-Watson kernel estimator对拟合点拟合的结果认为这个区间的y值都是常数,所以是一条水平的直线,而下图则拟合出一条倾斜的直线,更接近真实的情况。但是必须说明的是,我们要做的不是像loess那样在一个个小区间拟合出一条直线再整合,我们在核回归中要做的是通过拟合多项式从而估计在拟合点x的取值y,我们要估计的是在拟合多项式上的一个点。

想浏览更多关于数学、机器学习、深度学习的内容,可浏览本人博客

  • 2
    点赞
  • 38
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: matlab数据回归是一种基于函数的数据分析方法。函数是一种用于将数据映射到高维空间的数学函数,它通过将数据从低维空间转换为高维空间,使我们能够更好地分析和处理数据。 在matlab中进行数据回归分析,首先需要选择合适的函数。常用的函数有高斯函数、多项式函数等。选定函数后,我们可以使用matlab中的函数来进行回归分析。 首先,我们需要准备好要进行回归分析的数据集。在matlab中,可以使用矩阵来表示数据集。接下来,需要根据选定的函数,计算样本点之间的矩阵。矩阵是一个对称矩阵,表示样本之间的相似性。在计算矩阵时,需要注重函数的参数选择,参数的选取直接影响到回归的效果。 计算完矩阵后,可以进行回归分析。回归的目标是预测或估计依赖于输入变量的输出变量。在matlab中,可以使用回归函数进行预测。回归函数会从矩阵中学习样本之间的模式,并生成预测结果。可以通过调整函数的参数以及回归函数的参数来优化预测结果。 最后,通过对回归结果进行分析和评估,可以判断回归模型的准确性和可靠性。在matlab中,可以使用多种评估指标来评估模型,如均方误差、决定系数等。 总之,matlab数据回归是一种基于函数的数据分析方法,通过将数据映射到高维空间,使我们能够更好地分析和处理数据。在matlab中进行数据回归分析,需要选择合适的函数,计算矩阵,并使用回归函数进行预测和评估。 ### 回答2: MATLAB数据回归是一种基于函数的非参数统计方法,用于建立输入变量和输出变量之间的非线性关系。 在MATLAB中,可以使用函数fitrkernel来进行数据回归。该函数使用自适应回归算法,通过选择合适的函数和调整宽度来拟合数据。 使用fitrkernel函数的步骤如下: 1.准备好输入变量和输出变量的数据,可以是1D或2D的数据。 2.选择一个函数,常用的有高斯函数和多项式函数。高斯函数适用于连续变量,多项式函数适用于离散变量。 3.选择合适的宽度。宽度控制函数的影响范围,通常通过交叉验证或网格搜索来确定最佳值。 4.调用fitrkernel函数,并传入输入和输出变量的数据,函数和宽度作为参数。 5.得到拟合的模型后,可以使用predict函数来进行预测。传入新的输入变量,即可得到对应的输出变量。 MATLAB数据回归在处理非线性问题时具有较好的性能,可以对各种类型的数据进行建模和预测。然而,数据回归需要选择合适的函数和宽度,这需要一定的经验和实践。同时,数据回归的计算复杂度较高,对大规模数据集的处理可能会带来一些挑战。因此,在使用数据回归时需要注意这些问题,并选择合适的方法来优化模型的性能。 ### 回答3: MATLAB数据回归是一种非参数的回归方法,用于拟合数据的非线性关系。它使用函数将输入数据映射到高维特征空间,然后在该空间中进行线性回归。这种方法适用于非线性、非正态分布的数据,并且不需要事先对数据进行特征转换或假设数据分布。 在MATLAB中,可以使用“fitrkernel”函数执行数据回归。此函数接受输入数据和响应变量,并根据指定的函数和其他参数拟合模型。常用的函数包括高斯函数、多项式函数和sigmoid函数。 拟合完成后,可以使用“predict”函数基于训练的模型对新的输入数据进行预测。此函数会返回预测的响应变量值。 除了回归模型,MATLAB还提供了其他的回归方法,如线性回归、局部加权线性回归和支持向量回归等。这些方法在不同的数据集和问题上可能具有不同的性能和适用性。 总之,MATLAB数据回归是一种非参数的回归方法,适用于非线性、非正态分布的数据。通过映射数据到高维特征空间,并在该空间中进行线性回归,该方法能够较好地拟合数据的非线性关系。使用“fitrkernel”函数可以方便地进行数据回归模型的拟合和预测。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值