Type: concept
Confidence: 0.95
Created: 2026-04-16
Updated: 2026-04-16
Tags: 技术研究数学信息论

Solomonoff先验

概述

Solomonoff 先验(算法概率)M(x) = Σ 2^{-|p|} 是对所有能输出 x 的程序按其长度加权求和,是 Occam 剃刀的精确数学化,为通用归纳推理提供了最优先验分布。

关键内容

定义

$$M(x) = \sum_{p: U(p) = x^*} 2^{-|p|}$$

其中 U 是一台固定的通用图灵机,求和遍历所有使 U 输出以 x 为前缀的串的程序 p,|p| 是程序 p 的长度。

直觉解释

想象一只猴子在键盘上随机打字,产生一个程序。这个程序被送入通用图灵机执行。M(x) 就是猴子打出的程序恰好输出 x 的概率。

Occam 剃刀的形式化

短程序的概率(2^{-|p|})远高于长程序。一个 10 bit 的程序比一个 100 bit 的程序有 2^90 ≈ 10^27 倍高的先验概率。因此,如果一个简单的规律(短程序)能解释数据,它自动获得更高的后验概率。

与 Kolmogorov 复杂性的关系

$$K(x) \leq -\log_2 M(x) \leq K(x) + O(\log K(x))$$

算法概率的负对数近似等于 Kolmogorov 复杂性。一个字符串的先验概率主要由能产生它的最短程序决定。

Solomonoff 收敛定理

如果数据由某个可计算的概率分布 μ 生成,Solomonoff 预测器的预测概率会以指数速度收敛到 μ 的真实条件概率,且总预测误差有界:

$$D_{\text{KL}}(\mu | M | x_1 \cdots x_n) \leq K(\mu) \cdot \ln 2$$

不可计算性

M(x) 是不可计算的——不存在算法能在有限时间内精确计算它。这涉及对所有可能程序的求和,等价于解决停机问题。但它提供了一个理论上限(gold standard),实际学习算法可视为其可计算近似。

来源

相关