no free lunch

介紹

no free lunch直譯為“沒有免費的午餐”,意思是沒有付出,沒有收穫。或者說不可能不付出就獲得好處。

No Free Lunch Theorems No Free Lunch Theorems

Wolpert and Macready在1997年提出了No Free Lunch Theorems (沒有免費的午餐理論),該理論用於比較兩種最佳化算法之間的關係,即如何確定一種算法比另外一種算法好。原文描述如下圖:

具體描述為:針對某一具體域內的所有最佳化問題Q,算法A與算法B經過m步疊代之後達到目標函式給定值的所有可能性的累加和是相等的。

公式 公式

公式如下:

機器學習

Hume (1739–1740)在觀察了結合常變與不變的對象之後,指出:我們沒有任何理由得出對於我們已有經驗的物體之外的推理。最近,在增加了嚴格條件之後,Mitchell (1980), Schaffer (1994) and Wolpert (1996)實驗表明對於無監督學習的偏見是錯誤的。

Wolpert (1996)指出,在一個沒有噪聲的條件下,損失函式是誤分率,如果我們關注的是離線訓練集的誤分率,對於兩種機器學習算法,沒有明顯的區別。

比如:

d = 訓練集合;

m = 訓練集合中的元素個數;

f = 目標的輸入輸出關係;

h = 假設算法f的輸入參數為d,結果為h

C =針對f,h的離線訓練損失函式

如果以下面的參數來衡量,所有的算法都是相同的: E( C| d), E( C| m), E( C| f, d), or E( C| f, m).

結論

我們比較兩種算法A與B:

1. 對於所有的問題,A並不總是優於B

2. 對於所有的問題,特定算法並不總是比隨機算法好。

如下圖:

結論 結論

一種算法只是針對某一問題來說是最好的,如下圖:

算法 算法

相關詞條

熱門詞條

聯絡我們