ε 管道回归
支持向量机(SVR)回归
在核映射后的空间里铺一条宽度为 2ε 的管道,管内的小残差不进损失,只有贴壁或穿出管道的点成为支持向量。
这篇能回答什么
支持向量回归(SVR)要回答的是:能不能在标准化后的面积–楼层空间里铺一条 ε 管道,让大多数房源的总价落在管里,只让管壁外的点拉曲面。线性回归(OLS)用平方损失惩罚每一个残差,杠杆点会把整条直线拽歪;SVR 的 ε-不敏感损失在 |r|≤ε 时为零,管内点即使删掉,对偶系数也可以不变。预测是连续万元数,不是档位,也不是叶均值。
教学表把残差相对管道的位置印成类别 A/B/C:A 是残差大于 +ε 的上侧穿出,B 是小于 −ε 的下侧穿出,C 是落在管内。完整个案 345。上侧 85 条(24.64%),下侧 52 条(15.07%),管内 208 条(60.29%)。C 过六成说明默认 ε 已经「吞」掉多数小误差;A 比 B 厚,管道上方的高价段更常穿出——读拟合时要连同两侧人数一起写,不能把 60.29% 写成命中率。
什么时候不该用
论文必须报告「面积每增 1 平米,总价平均变化 B 万元」以及标准误、VIF 时,OLS 仍是对的工具;SVR 的 w 在 RBF 核下没有原空间单位。Y 是户型档时改支持向量机分类,那里最大化的是类别间隔,不是 ε 管道。行数上万且只要便宜基线时,ExtraTrees回归或提升树更合适——核矩阵随 N² 涨。只要邻居平均、不要管道,用K近邻回归。
如何选择方法
管道、邻居、矩形叶是三条不同的连续几何。SVR 最小化 \|w\| 同时惩罚穿出 ε 管的松弛;KNN 不估计 w;树用 MSE 切缝。线性核等于在原空间铺一条平的管,RBF 核把点抬到无限维再铺弯管。默认 RBF 适合「单价与面积交织、总价不是一张纸能铺住」的住房表;若方案只要一条可写出的线性规则,应显式改线性核,而不是看完 RBF 管内人数再声称「模型是线性的」。
SVR:定量 Y + 定量特征;ε 管道 + 核;输出管内/管外人数与 RMSE。
OLS:平方损失、每个残差都进损失;有 B、标准误与 VIF。
K近邻回归:同样要标准化,但判决是 K 个邻居的平均,没有 ε。
梯度下降线性回归:大样本可加线性,无核、无管道。
输入、输出与限制
输入
因变量必须是定量。特征为定量列,预测前做 Z-score。ε、惩罚 C 与核是超参数,不是数据列。城市、区域没有内积,不要塞进来。
因变量:正好 1 个定量列(本例总价(万元))。
特征:最少 2 个,最多 40 个定量。本练习用面积(平米)、楼层、总楼层、建筑年份。
输出
结果表按管道位置分成 A / B / C:上侧 85、下侧 52、管内 208,合计 345。管内点不是「预测对了」,只是 |残差|≤ε。另给出拟合/残差图。默认 RBF、C=1、ε 按标准化 Y 的尺度选取。
产品限制
有效行少于 20 时拒绝拟合。
核矩阵上限约 3500 行,超过则先下采样。
默认 RBF,γ=1/p;线性核须显式改。
特征一律标准化;Y 的 ε 在标准化尺度上解释。
房源 ID、小区名称、高基数定类拒绝进入核。
案例
研究问题。 综合评价表怀疑面积与楼层把总价拧成弯面,又不想让每一套普通房源的小误差都去拽曲面。研究者要一条 ε 管道:管内的点可以忽略,只报告有多少套房从上方或下方穿出,以及穿出是否集中在高价段。
工作表「Sheet1」。完整个案 345。管道位置:上侧 A 85(24.64%)、下侧 B 52(15.07%)、管内 C 208(60.29%)。两侧不对称(85 对 52)提示高价段更容易顶破管壁。下载后:Y 勾总价(万元),特征勾面积、楼层、总楼层、建筑年份;不要勾城市或房源 ID。
在 StatsX 中操作
步骤 1 · 导入中等规模房源表
Sheet1 行数应远低于核矩阵上限。上万行应先抽样或改树方法,不要硬跑 RBF。
步骤 2 · 检查特征已能量纲对齐
面积与楼层量纲差两个数量级,产品会做 Z-score。对 SPSS 或 sklearn 时必须同样标准化,否则 ε 的「管内」含义会变。
步骤 3 · 选支持向量机回归
目录同时有支持向量机分类。Y 是总价时必须点回归:分类最大化的是档位间隔,输出会变成标签而不是万元。
步骤 4 · 指定管道与核,Y 为总价
因变量:总价(万元)。特征:面积、楼层、总楼层、建筑年份。保持默认 RBF 与 C=1,先数管内套数,再决定是否改 ε。
步骤 5 · 先数管内套数再谈拟合
合计应对上 345。C 若仍是 208 条,加大 ε 会让更多点「免费」进管,训练损失变好看,曲面却更钝。




如何阅读输出
下表按 ε 管道切开残差,不是房屋类型频数。合计 N=345。上侧 A 85(24.64%)穿出管顶,下侧 B 52(15.07%)穿出管底,管内 C 208(60.29%)。C 的 60.29% 表示这些点的 |r|≤ε,损失为零,它们通常不是支持向量。预测值是核展开给出的连续均值,单位万元。
| 项目 | 类别 | 统计量 | 取值 |
|---|---|---|---|
| 支持向量机(SVR)回归 | 类别 A | 频数 | 85 |
| 支持向量机(SVR)回归 | 类别 B | 频数 | 52 |
| 支持向量机(SVR)回归 | 类别 C | 频数 | 208 |
| 支持向量机(SVR)回归 | 合计 | 有效样本 N | 345 |
| 支持向量机(SVR)回归 | 类别 A | 占比(%) | 24.64 |
| 支持向量机(SVR)回归 | 类别 B | 占比(%) | 15.07 |
| 支持向量机(SVR)回归 | 类别 C | 占比(%) | 60.29 |
左右滑动可查看完整表格
教学示例表在 StatsX 工作台中的计算结果口径。


阅读顺序:N 是否低于核上限 → 管内人数(本例 C=208)→ 两侧是否对称(本例 85 对 52)→ 测试 RMSE → 高价段是否集中在 A 侧。不要把 A/B/C 写成「三类客户」。本页没有 OLS 那种整体 F,也不能把支持向量个数写成「显著变量数」。
把 ε 加大,C 层几乎总能更肥,训练的 ε-损失下降,曲面变钝。把 C(惩罚)加大,穿出点被罚得更重,管道会更贴训练总价,支持向量增多,过拟合风险上升。本页数字只对默认 RBF、C=1 与产品 ε 成立。换线性核,管内人数可以差出一整层,方法节必须写核名。w 在 RBF 下没有「每平米多少万元」,要单位斜率回 OLS。
理论与公式
ε-不敏感损失在管道内为零,只惩罚穿出的部分。这与 OLS 的平方损失逐点惩罚不同:
原问题在特征映射 φ 下求解,松弛变量 ξ、ξ* 分别对应上侧与下侧穿出:
对偶只出现内积,RBF 核把它换成 K(x,x')=\exp(-\gamma\|x-x'\|^2)。落在管内且未贴壁的点 α_i=α_i^*=0,删掉它们曲面不变。本例 n=345,管内 208、上侧 85、下侧 52。分类 SVM 用铰链损失最大化类别间隔,没有 ε——那是另一页。OLS 的残差平方和没有「免费区间」,每一个点都拉直线。
注意事项
管内 208 条 ≠ 预测对了,只表示 |残差|≤ε。
两侧 85 对 52 不对称时,先看高价段,不要先怪核。
ε 与 C 必须事先写进方案;看完分层再调属于窥探。
RBF 下没有带单位的 B,不能冒充 OLS 系数表。
核矩阵限制约 3500 行,是实现闸,不是「SVR 不能用于大样本」的理论结论。
线性核与 RBF 的管内人数可以差出一层,方法节必须写核名。
常见问题
参考文献
Drucker, H., Burges, C. J. C., Kaufman, L., Smola, A., & Vapnik, V. Support vector regression machines[C]//NIPS. 1997.
Smola, A. J., & Schölkopf, B. A tutorial on support vector regression[J]. Statistics and Computing, 2004, 14: 199–222.
Vapnik, V. The Nature of Statistical Learning Theory. Springer.