The Elements of Statistical Learning (6)
Kernel Smoothing Methods
随手记
用途:It’s a class of regression techniques that achieve flexibility in estimating the regression function $f(x)$ over the domain $IR^p$ by fitting a different but simple model separately at each query point $x_0$
理解:核平滑方法是一类通过对每个样本点分别拟合一个不同但简单函数来实现对函数$f(x)$的灵活的估计的方法。
待了解:如何实现?性质?优点?缺陷?适用场景? 是否需要且如何正则化避免过拟合?
如何实现:只通过靠近$x_0$的点来拟合简单函数
特点:不需要,或只需要极少的训练
随机旋转+核平滑做集成?
一维核平滑:
Nadaraya-Watson 核平均加权:$$\frac{\sum K_t (x_0,x_i)y_i}{\sum K_t (x_0,x_i)}$$
采用Epanechnikov 二次核:$$K_\lambda (x_0,x)=D(\frac{\left | x-x_0 \right |}{\lambda})$$
其中
$$
D(t)
\begin{cases}
& \text{ $\frac{3}{4}(1-t^2)$ if } \left | t \right | \leqslant 1 \\
& \text{ 0 otherwise. }
\end{cases}
$$
通过对依据距离进行加权,得到光滑且连续的拟合函数,有别于KNN
令$h_\lambda(x_0)$为宽度函数,决定 $x_0$ 领域的宽度。那么更一般化的,核可以表示为
$$K_\lambda (x_0,x)=D(\frac{\left | x-x_0 \right |}{h_t(x_0)})$$
KNN是 $h_k(x_0)=\left | x_0-x_k \right |$的特例,其中 \(x_k\)表示距离 $x_0$ 最近的第k个点
实践中需要注意的细节:
1.光滑参数$\lambda$需要自行选取,\(\lambda\) 越大则方差越小偏倚越大
2.结的处理
3.边界问题
局部线性回归(Local Linear Regression)
光滑核平滑仍有问题,由于在边界区域核的不对称性,可能出现较大偏倚(对称的话偏倚可以相互抵消)
可以采用局部线性回归应对这一问题,即对每一个点分别求解核加权最小二乘方问题
局部线性拟合以适当方差为代价,可以显著减缓边界上的偏倚
局部二次拟合对边界上的偏倚改进不大,且方差增大了很多,但是对于降低定义域内部因曲率导致的偏倚最起作用。
选择核宽度
$\lambda$的选择是方差-偏倚权衡,\(\lambda\) 越大方差越小偏倚越大,对于局部线性回归,如果宽度无限大则趋向于全局线性最小二乘方拟合
正则化参数的选择与光滑样条一章提到的方法相同
多维情况
一维核光滑可以很容易的推广到高维,但边界问题在高维情况下更严重,如果一定要用核光滑的话(干嘛非要用呢?高维不行就不用换别的方法不就得了),应对办法有:
采用结构化核:$$K_\lambda A (x_0,x)=D(\frac{(x-x_0)^TA(x-x_0)}{\lambda})$$
其中A为半正定矩阵,通过A来调节不同维度的影响(通过观察协方差矩阵)
或做方差分析,舍弃部分高阶项
(不管怎么处理,感觉都只能缓解而已,高维直接就不用核平滑算了)
局部似然及其它方法
如果将拟合方法与观测权结合,任何参数模型都能做出局部的。(做成局部的意义是不是以增大方差为代价减小偏倚)
局部似然: $$l(\beta(x_0))=\sum k _\lambda(x_0,x_i)l(y_i, x_i^T \beta(x_0))$$
核密度估计(通常采用高斯核):$$\hat{f_X(x_0)}=\frac{1}{N\lambda}\sum_{i=1}^{N}K_\lambda(x_0,x_i)$$
核密度分类:采用核密度估计后依据密度函数和先验概率进行分类$$\hat{Pr}(G=j|X=x_0)=\frac{\hat{\pi}_j\hat{f}_j(x_0)}{\sum_{k=1}^{j}\hat{\pi}_j\hat{f}_j(x_0)}$$
核平滑另一缺点:不适于实时应用