深度學習是機器學習的一個分支。之前整理的機器學習的筆記見點擊這個鏈接。閱讀該書第5章後,補充一些小點。
1. 容量、過擬合、欠擬合
模型的容量:模型擬合各種函數的能力。我們可通過調整模型的容量,來控制模型是否偏向於過擬合或欠擬合。容量低的模型可能很難擬合訓練集。容量高的模型,可能造成過擬合,記住了不適用於測試集的訓練集性質。
如何控制模型容量?一種方法是選擇假設空間。如果選了線性迴歸函數,將關於其輸入的所有線性函數作爲假設空間。如果選擇廣義線性迴歸,則假設空間包含了多項式函數,而非僅有線性函數了。
統計學習理論,提供了量化模型容量的不同方法。有名的一個是VC維。VC維度量二元分類器的容量,定義爲該分類器能夠分類的訓練樣本的最大數目。假設存在m個不同點的訓練集,分類器可以任意地標記該m個不同的點,則VC維被定義爲m的最大可能值。
參數模型:學習到的函數在觀測新數據前,參數有限且固定的向量。非參數模型無此限制,例如:KNN。還可將一個參數學習算法(內層)嵌入到另一個增加參數數目的算法(外層)中,創建非參數學習算法。
2. 沒有免費午餐定理
啥叫 no free lunch theorem?重點在 free 上。
機器學習的目標不是找一個通用學習算法,或者是絕對最好的學習算法。而是要具體問題,具體求解。要想在某個任務上效果最好,必須要找,即沒有免費的午餐。
因爲ML研究理論說:在所有可能的數據生成分佈上平均之後,每一個分類算法在未事先觀測的點上,都有相同的錯誤率。
幸運的是,這個結論僅在我們考慮所有可能的數據生成分佈時才成立。實際任務中,如果我們對遇到的概率分佈進行假設的話,那麼可以設計出在這些分佈上效果最好的學習算法。
3. 無偏估計、有偏估計
點估計試圖爲一些感興趣的量提供單個“最優”預測,例如線性迴歸中的權重
估計的偏差被定義爲:
如果
舉例:伯努利分佈。考慮一組服從均值爲
我們常用估計量,是訓練樣本的均值:
代入得
無偏估計令人滿意,但並不總是“最好”的估計。有時還常用其他有重要性質的有偏估計。
4. 方差
第3小節討論了估計的偏差
含義:當獨立的從潛在的數據生成過程中重採樣數據集時,如何期望估計量的變化。
我們希望偏差較小,也希望方差較小。真實值是定的,換一次數據集,就求出一個估計,希望估計值變化越小越好。
以伯努利分佈爲例,關注估計
估計量方差的下降速率是關於數據集樣本數目
均值的標準差作用。我們通常用測試集樣本的誤差均值來估計泛化誤差。測試集中樣本數量決定了該估計的準確度。中心極限定理指出,均值會接近一個高斯分佈。可計算出置信區間,來比較算法好壞。
一致性條件:當數據集中數據點的數量m趨近於無窮時,點估計會收斂到對應參數的真實值。我們想要這個條件。
若滿足了一致性,則說明該估計量的偏差會隨數據樣本數目的增多而減少。反之,漸進無偏估計,卻不等同於滿足一致性。