# 第六章 核光滑 KNN引入,对30-NN来说,拟合的函数并不连续,“不连续是不好看并且不必要的”,“我们可以分 配权重,使其随着与目标点的距离平滑降低.” **核:“根据距离远近分配发言权的投票机制。”“核”本质上都在回答一个问题:两个点之间到底有多“亲近”?** 在统计学和机器学习中,**Nadaraya–Watson 核回归(Nadaraya–Watson Kernel Regression)** 是一种非参数预测方法。它的核心思想是:**对于一个新的输入点** $x$**,其预测值** $\hat{f}(x)$ **是训练集中所有目标值** $y_i$ **的加权平均**,而权重的大小取决于训练点 $x_i$ 与查询点 $x$ 之间的距离。 距离越近的点,权重越大;距离越远的点,权重越小。 --- ### 1. 数学表达式 假设我们有训练数据集 $\{(x_1, y_1), (x_2, y_2), \dots, (x_n, y_n)\}$,对于给定的输入 $x$,Nadaraya-Watson 核回归的估算式为: $$\hat{f}(x) = \sum_{i=1}^{n} w(x, x_i) y_i$$ 其中,$w(x, x_i)$ 是**核权重**,定义为: $$w(x, x_i) = \frac{K\left(\frac{x - x_i}{h}\right)}{\sum_{j=1}^{n} K\left(\frac{x - x_j}{h}\right)}$$ 将权重带入回归公式,得到完整的 Nadaraya–Watson 表达式: $$\hat{f}(x) = \frac{\sum_{i=1}^{n} K\left(\frac{x - x_i}{h}\right) y_i}{\sum_{j=1}^{n} K\left(\frac{x - x_j}{h}\right)}$$ **符号说明:** - $K(\cdot)$:**核函数(Kernel function)**。常用的有高斯核 $K(u) = \frac{1}{\sqrt{2\pi}} e^{-\frac{u^2}{2}}$。它必须是非负的,且通常在 0 处取得最大值。 - $h$:**带宽(Bandwidth)**。这是最重要的超参数。$h$ 越大,平滑程度越高(可能欠拟合);$h$ 越小,曲线越波动(可能过拟合)。 - 分母:用于**归一化**,确保所有权重的总和为 1。 ### 2. 优缺点 - **优点**:不需要假设数据的具体分布(是非参数的),能够拟合非常复杂的非线性关系。 - **缺点**:计算量大(预测每个点都要遍历整个训练集,复杂度 $O(n)$);容易受“边界偏差”影响;在高维空间表现较差(维度灾难)。 - 核函数在非参数估计中充当局部加权机制,使得函数估计在某一点附近主要依赖邻域数据;当与局部多项式拟合结合时,其效果类似于对目标函数在该点进行加权的局部泰勒近似。 流形:约束、自由度、轨道 - 高维展开:**把复杂函数拆成低维函数的叠加,主动砍掉高阶交互** **可变系数模型**的定义及其**局部加权最小二乘**估计式: ### 1. 可变系数模型 (Varying Coefficient Model) 该式定义了条件线性模型,其中系数是变量 $Z$ 的函数: $f(X) = \alpha(Z) + \beta_1(Z)X_1 + \dots + \beta_q(Z)X_q {}$ --- ### 2. 局部加权最小二乘估计 (Locally Weighted Least Squares) 该式展示了如何通过目标函数最小化来拟合给定点 $z_0$ 处的参数: $\min_{\alpha(z_0), \beta(z_0)} \sum_{i=1}^{N} K_\lambda(z_0, z_i) \left( y_i - \alpha(z_0) - x_{1i}\beta_1(z_0) - \dots - x_{qi}\beta_q(z_0) \right)^2 {}$ > 高维函数太复杂 → 用 ANOVA 分解 → 再人为限制只保留低阶结构 → 用 backfitting 或局部回归去估计 ### 1. 可变系数模型 (Varying Coefficient Models) **可变系数模型**是线性模型的推广。它保留了线性模型的易解释性,但允许系数不再是常数,而是随着另一个变量 $Z$(称为调节变量)的变化而变化。 - **核心方程:** $$f(X) = \alpha(Z) + \beta_1(Z)X_1 + \dots + \beta_q(Z)X_q$$ - **直观理解:** 想象你在研究“工龄”对“薪资”的影响。在线性模型中,这个影响(斜率)是固定的;但在可变系数模型中,这个斜率可以随“行业类型”或“地理位置”($Z$) 而平滑变化。 - **拟合方法:** 通常使用**局部回归**(如式 6.17 所示)。在每一个特定的 $z_0$ 附近,利用核函数 $K_\lambda$ 对样本加权,只看邻近的数据点来估算当前的 $\alpha(z_0)$ 和 $\beta(z_0)$。 --- ### 2. 后验拟合算法 (Backfitting Algorithm) 当模型变得复杂(例如**加法模型** $Y = \sum f_j(X_j) + \epsilon$)时,我们无法一次性拟合所有非参数函数。**Backfitting** 是一种“分而治之”的迭代算法。 #### **算法逻辑:** 1. **初始化:** 先给每个函数 $f_j$ 一个初始值(通常是 0)。 2. **循环迭代:** 对于每一个变量 $j$,计算其“残差”: $$\text{Residual} = Y - \alpha - \sum_{k \neq j} \hat{f}_k(X_k)$$ 3. **局部更新:** 用这个残差对 $X_j$ 进行平滑处理(如移动平均或样条回归),得到更新后的 $\hat{f}_j$。 4. **重复:** 轮流更新所有变量,直到每个函数的变化都非常小(收敛)为止。 > **比喻:** 就像调音师调钢琴。先调准一根弦,此时其他弦可能还不准;于是再去调下一根,如此反复循环,直到整台琴的音准达到平衡。 --- ### 3. 两者的联系 - **应用场景:** Backfitting 通常用于拟合**广义加法模型 (GAM)**。 - **计算优势:** 它不需要进行庞大的矩阵求逆,只需反复调用简单的平滑算子(Smoother),这使得它在处理高维数据时非常高效。 - **灵活性:** 你可以轻松地在 Backfitting 框架下加入可变系数项,将复杂的非线性关系拆解为一系列简单的局部一维拟合。 --- **总结表:** | | | | |---|---|---| |**特性**|**可变系数模型**|**Backfitting 算法**| |**本质**|一种具体的**模型结构**|一种通用的**迭代求解算法**| |**解决问题**|系数随环境/时间变化的动态性|多个非参数项联立拟合的计算难题| |**关键点**|局部加权回归|循环更新残差| 这两个概念在处理金融时间序列、流行病学分析以及任何具有“情境相关性”的数据时都非常强大。 在高维情况下,我们不直接拟合 $Y = f(X,Z)$,而是假设: **X 和 Y 的关系是线性的,但这个线性关系的系数由 Z 决定** 即: $$Y = \sum_j \beta_j(Z)\, X_j$$ 因此问题转化为:**去学习这些函数 $\beta_j(Z)$** 问题:拟合 f(X) ↓(结构假设)ANOVA 分解\加性模型\二阶交互模型\可变系数模型 f(X) = g1(X1) + g2(X2) + ... ↓(优化方法) backfitting ↓(具体拟合) 核平滑 / spline / 局部回归 “阶数为 的自回归(autoregressive)时间序列形式为 “yt = β0 + β1yt−1 + β2yt−2 + ⋯ + βkyt−k + εt zt = (yt−1, yt−2, ⋯ , yt−k)” 用记滞后集(lag set),模型则看起来是一个标准的线性模型 ,而且 一般使用最小二乘来拟合.采用核为 的局部最小二乘拟合允许模型 根据序列的短期记忆(short-term history of the series)来变化.这区别于更传统 的因窗口时间变化的动态线性模型.” 第六章可能还需要再看,如**核方法**