思考
機器學習中哪個算法好?哪個算法差呢?
下面兩條線,哪個更好呢?
沒有免費午餐定理
如果我們不對特征空間有先驗假設,則所有算法的平均表現是一樣的。
假設我們的計算機只有兩個存儲單元,而且每個存儲單元只能存儲兩個標簽,一類是class1(圓圈),一類是class2(叉叉)。假設其中一個存儲單元是圓圈,另一個存儲單元未知,需要我們預測,預測的可能情況如下:
如果不對特征空間有假設,則可以認為這兩種情況的概率差不多,也就意味着,我們無論選擇預測哪個結果,成功的概率都是50%。
假設計算機的存儲單元變成三個,情況變成如下:
如果不對特征空間有假設,則可以認為這四種情況的概率差不多。
三個存儲單元的情況,以只兩個存儲單元的狀態,預測第三個存儲單元的結果如下:
存儲單元更多的情況,"?"處應該是圓圈還是叉叉呢?
大多數人應該選擇上面的"?"為圓圈,下面的“?”是叉叉,這樣真的對嗎?如果我們把圓圈定義成花瓣,叉叉定義成蜜蜂。上邊的"?"恰好表示小蜜蜂在花瓣里,也是合理的。但是大多數算法卻不這么做。
我們認為:特征差距小的樣本更有可能是同一類
但是事實上,沒有所謂的世界上最好的算法,只有公認的好方法(支持向量機、決策樹、神經網絡等)
如果這篇博客對你有用,點個贊再走唄~