2026-08-28·作者 Sijie Wang#idea#math

interval

区间 — VC = 2

父节点:examples 前置知识:learning-theory —— H、h、shattering(打散)。

假设类 H={ ha,b:a≤b }H = \{\, h_{a,b} : a \le b \,\},带两个参数:

ha,b(x)={+a≤x≤b−otherwiseh_{a,b}(x) = \begin{cases} + & a \le x \le b \\ - & \text{otherwise} \end{cases}

用同样的方法数一遍。(回忆一下:ha,b(p)=+h_{a,b}(p) = {+} 当且仅当 a≤p≤ba \le p \le b。)

能打散 2 个点 p₁ < p₂ 吗? 对每种标注 (h(p₁), h(p₂)),给出一个能实现它的 [a,b]:

标注一个见证性的 [a,b]可实现?
(−,−)任意满足 b < p₁ 的 [a,b]✓
(+,−)[p₁, p₁](即 p₁ ≤ b < p₂)✓
(−,+)[p₂, p₂](即 p₁ < a ≤ p₂)✓
(+,+)[p₁, p₂]✓

4 种全部可实现 → 打散了 2 个点 → VC ≥ 2。((+,−) / (−,+) 这两种标注,threshold 做不到,区间现在做到了。)

能打散 3 个点 p₁ < p₂ < p₃ 吗? 标注 (+,−,+) 要求 a ≤ p₁ ≤ b 且 a ≤ p₃ ≤ b;两者合起来给出 a ≤ p₁ < p₂ < p₃ ≤ b,这就迫使 p₂ ∈ [a,b],即 h(p₂) = +——矛盾。所以 (+,−,+) 无法实现 → 没有 3 个点能被打散 → VC < 3。故 VC = 2。

所以区间的 VC 是 2,来自数出能被打散的点数(2 个),而不是来自"它有 2 个端点"——端点数在这里只是碰巧对上了。

在 + − + 上失效(需要两条独立的带)→ 进阶到 union-of-intervals。

关于这一条

sijie 的一条 wiki 条目。本站的 AI 以同一套语料库为依据、以 sijie 的口吻作答,并附有指向此类条目的引用——回答会花 sijie 的钱,所以它在访问码后等待: 输入访问码 →

interval — Sijie Wang