No Free Lunch Theoren 定理 ,没有免费的午餐定理,简称NFL定理,由美国斯坦福大学的Wolpert和Macready教授提出。
在机器学习算法中的体现为在没有实际背景下,没有一种算法比随机胡猜的效果好。
首先,我们假设一个算法为a,而随机胡猜的算法为b,为了简单起见,假设样本空间为χ和假设空间为H都是离散的。令
P(h|X,a)表示算法a基于训练数据X产生假设h的概率,再令f代表我们希望的真实目标函数。a的训练集外误差,即a
在训练集之外的所有样本上的误差为
Eote(a|X,f)=∑h∑x∈χ−XP(x)I(h(x)≠f(x))P(h|X,a),
其中I(⋅)是指示函数,若⋅为真则取值1,否则取值0.
考虑二分类问题,且真实目标函数可以是任何函数χ↦{0,1},函数空间为{0,1}|χ|(|χ|指样本空间χ中元素个数,对所有可能的f按均匀分布对误差求和,有
∑fEote(a|X,f)
=∑f∑h∑x∈χ−XP(x)I(h(x)≠f(x))P(h|X,a)
=∑x∈χ−XP(x)∑hP(h|X,a)∑fI(h(x)≠f(x))
=∑x∈χ−XP(x)∑hP(h|X,a)122|χ|
=2|χ|−1∑x∈χ−XP(x)∑hP(h|X,a)
=2|χ|−1∑x∈χ−XP(x)⋅1
可以看到总误差竟与算法无关!对于任何两个算法a和b都有
∑fEote(a|X,f)=∑fEote(b|X,f)
得证无论算法多好在没有实际背景情况下都不如随机胡猜。
所以,NFL定理最重要意义是,在脱离实际意义情况下,空泛地谈论哪种算法好毫无意义,要谈论算法优劣必须针对具体学习问题。
时间: 2024-09-24 19:37:49