笔记数学机器人常青更新 2026.08阅读约 8 分钟

从傅里叶级数讲起,一路到 DCT 的能量压缩性质,真正理解:为什么对平滑信号(如机器人动作)做 DCT,能量会奇迹般集中到几个低频系数上。是 Action Tokenization 里把 DCT 当黑盒用的那一步的展开。

§1为什么要把信号变到"频率域"

同一段信号有两种看法:

  • 时域(time domain):"每个时刻的值是多少"。机器人动作原始就是这种:第 0 步、第 1 步……的关节角度。
  • 频域(frequency domain):"信号由哪些快慢不同的波组成、各占多少"。同一信息的另一种坐标系。

换到频域的好处:很多在时域看起来"密密麻麻"的信号,在频域极其稀疏(只有几个频率有值)。平滑 = 变化慢 = 只有低频 = 频域稀疏 → 可压缩。

§2预备知识

正文会反复用到下面几个概念,每个都写成「中文名 = 英文名 = 最小定义」三元组:

  • 周期函数 = periodic function = 存在正数 TT 使 f(t+T)=f(t)f(t+T)=f(t) 对所有 tt 成立的函数,TT 称为周期[1]。
  • 谐波 = harmonic = 频率为基频整数倍的正弦/余弦分量;第 nn 次谐波的频率是基频的 nn 倍[1]。
  • 复指数 = complex exponential = 形如 eiωte^{i\omega t} 的复值函数;由欧拉公式 eiωt=cos⁡ωt+isin⁡ωte^{i\omega t}=\cos\omega t + i\sin\omega t,它把正弦与余弦打包成一个复数量[1]。
  • 基函数 = basis function = 一组固定的展开用函数/向量;信号写成它们的加权和,权重就是变换系数[1]。
  • 能量压缩 = energy compaction = 变换把信号的大部分能量集中到少数系数上的性质;集中得越好,信号越可压缩[2]。
  • 量化 = quantization = 把连续或高精度数值映射到有限离散等级(例如取整)的有损操作[2]。

§3Fourier 级数:周期信号 = 正弦/余弦之和

傅里叶的洞见(1807):任何周期函数都能写成不同频率正弦/余弦的加权和[3]:

f(t)=a02+∑n=1∞(ancos⁡(nωt)+bnsin⁡(nωt))f(t)=\frac{a_0}{2}+\sum_{n=1}^{\infty}\Big(a_n\cos(n\omega t)+b_n\sin(n\omega t)\Big)

频率 nωn\omega 越高的项变化越快。下面用奇次谐波的正弦叠加逼近方波——经典例子,也能看到"加越多越像、但边角永远过冲"的吉布斯现象。

图 1 · 傅里叶级数逼近方波
方波 = 无穷个奇次正弦谐波之和。灰线是目标方波,红线是前若干个谐波的叠加;拖滑块增加谐波个数,看叠加结果(红)如何逼近方波(灰)。看点:谐波越多整体越贴合,但跳变点附近红线的过冲始终不消失——这就是正文说的吉布斯现象。

§4连续 Fourier 变换:从周期到任意信号

把周期推向无穷,级数的"离散频率求和"变成"连续频率积分",就得到 Fourier 变换:

F(ω)=∫−∞∞f(t) e−iωt dtF(\omega)=\int_{-\infty}^{\infty} f(t)\,e^{-i\omega t}\,dt

这里 e−iωt=cos⁡ωt−isin⁡ωte^{-i\omega t}=\cos\omega t - i\sin\omega t(欧拉公式)把正弦余弦打包成复指数。F(ω)F(\omega) 是复数,其模表示该频率的强度、幅角表示相位。

§5DFT 与 FFT:离散世界的傅里叶

计算机里信号是有限个采样点 x0,…,xN−1x_0,\dots,x_{N-1},对应离散傅里叶变换 DFT:

Xk=∑n=0N−1xn e−i2πkn/N,k=0,…,N−1X_k=\sum_{n=0}^{N-1}x_n\,e^{-i2\pi kn/N},\quad k=0,\dots,N-1

直接算是 O(N2)O(N^2)。FFT(快速傅里叶变换)利用对称性把它降到 O(Nlog⁡N)O(N\log N)[4]——这是 20 世纪最重要的算法之一,让实时音视频处理成为可能。

名称输入输出复杂度
Fourier 级数连续周期函数离散系数 an,bna_n,b_n—
Fourier 变换 (FT)连续非周期连续谱 F(ω)F(\omega)—
DFTNN 个离散采样NN 个复系数O(N2)O(N^2)
FFT同 DFT(算法优化)同 DFTO(Nlog⁡N)O(N\log N)
DCTNN 个实数采样NN 个实系数O(Nlog⁡N)O(N\log N)

§6从 DFT 到 DCT:去掉复数与边界跳变

DFT 有两个对压缩不友好的地方,DCT 正是为修正它们而生:

  1. DFT 系数是复数(有实部虚部),对实数信号有冗余。
  2. DFT 默认信号周期延拓,首尾若值不同会在边界产生人为跳变 → 制造大量高频 → 不利压缩。

最常用的是 DCT-II(就是 JPEG 和 FAST 用的那个)[5]:

Xk=∑n=0N−1xncos⁡ ⁣[πN(n+12)k]X_k=\sum_{n=0}^{N-1}x_n\cos\!\Big[\frac{\pi}{N}\big(n+\tfrac12\big)k\Big]

注意基底是纯余弦、系数 XkX_k 是实数。k=0k=0 是直流(均值),kk 越大频率越高。逆变换 IDCT(即 DCT-III)用同样的余弦基重建,完全可逆。

§7DCT 的四种变体(知道有别即可)

按"在两端怎么做对称延拓"不同,DCT 有 I~IV 四型[2]。实践中:

变体用途
DCT-II最常用。JPEG、MPEG、FAST action tokenization 都用它
DCT-IIIDCT-II 的逆变换(即 IDCT)
DCT-I端点处理不同,较少用
DCT-IV用于 MDCT(音频,如 MP3/AAC 的重叠变换)

§8DCT 基函数画廊

DCT 把信号分解到这一组固定的余弦基向量上。第 kk 个基 = 频率为 kk 的余弦采样。任何信号都是这些基的加权和,权重就是 DCT 系数。下面是前 8 个基(N=32N=32):

图 2 · DCT-II 基函数(k = 0…7)
每个小图横轴是采样序号 n、纵轴是该基向量的取值:k=0 是常数(直流/均值),k 越大振荡越快(频率越高)。鼠标移到任意一个高亮查看。看点:DCT 做的事就是把信号分别投影到这组由慢到快的固定余弦波上,投影值即系数。
每个小图是一个余弦基向量 cos⁡[π/N (n+0.5) k]\cos[\pi/N\,(n+0.5)\,k]。DCT 系数 XkX_k = 信号在第 k 个基上的投影。

§9能量压缩:DCT 的杀手锏(亲手验证)

这是整页最重要的概念,也是 FAST 能工作的根本原因。能量压缩(energy compaction):对平滑信号,DCT 把绝大部分能量集中到极少数低频系数,其余系数接近 0。

于是我们只需保留前几个大系数、丢弃一大堆接近 0 的,就能用很少的数据近乎完美地重建信号。下面亲手验证:

图 3 · 只保留前 k 个 DCT 系数的重建质量
上图:原始信号(蓝)vs 只用前 k 个 DCT 系数的重建(红)。下图:DCT 系数能量(保留的高亮)。拖 k,看平滑信号只需极少系数就几乎重合;再切换成"含高频/噪声"的信号对比。看点:平滑信号的能量几乎全挤在最左侧几根低频系数上,很小的 k 红蓝两线就重合,而含高频/噪声的信号系数能量摊得开、需要大得多的 k——这正是 energy compaction 的直观含义。

§10为什么偏偏是 DCT(它接近"最优"变换)

理论上,对给定信号统计,能量压缩最优的变换是 KLT(Karhunen–Loève 变换,即 PCA)——它把信号投影到协方差矩阵的特征向量上。但 KLT 依赖数据统计、要现算特征向量,昂贵且不通用。

§11应用:从 JPEG 到 FAST

系统怎么用 DCT
JPEG图像切 8×8 块 → 2D DCT → 量化(丢高频)→ 熵编码[7]。你看到的几乎所有照片都被 DCT 压过
MPEG / H.26x视频帧(残差)做 DCT + 量化
MP3 / AAC用 MDCT(DCT-IV 的重叠版)压音频
FAST(机器人)动作 (T,D) 沿时间轴做 DCT → 量化取整 → BPE[6]。平滑动作 → 能量集中 → 取整后大量 0 → 短 token 序列

§12延伸阅读


§13References

  1. A. V. Oppenheim, R. W. Schafer. Discrete-Time Signal Processing, 3rd ed. Prentice Hall, 2010.
  2. K. R. Rao, P. Yip. Discrete Cosine Transform: Algorithms, Advantages, Applications. Academic Press, 1990.
  3. J. B. J. Fourier. Théorie analytique de la chaleur. Firmin Didot, Paris, 1822.(1807 年提交巴黎科学院的热传导论文的扩展成书)
  4. J. W. Cooley, J. W. Tukey. "An Algorithm for the Machine Calculation of Complex Fourier Series." Mathematics of Computation, 19(90): 297–301, 1965.
  5. N. Ahmed, T. Natarajan, K. R. Rao. "Discrete Cosine Transform." IEEE Transactions on Computers, C-23(1): 90–93, 1974.
  6. K. Pertsch, K. Stachowicz, B. Ichter, D. Driess, S. Nair, Q. Vuong, O. Mees, C. Finn, S. Levine. "FAST: Efficient Action Tokenization for Vision-Language-Action Models." arXiv:2501.09747, 2025.
  7. G. K. Wallace. "The JPEG Still Picture Compression Standard." IEEE Transactions on Consumer Electronics, 38(1): xviii–xxxiv, 1992.
搜标题、小节与正文,本语言内检索。
    ↑↓ · Enter · Escastro-inkstone