為什麼PCA不被推薦用來避免過擬合

2021-08-19 02:12:12 字數 719 閱讀 1911

pca是高維環境下能想到的最直接的方案。比如人臉識別,維度往往成千上萬,但識別身份的話,每個人樣本最多也就幾十,過擬合現象是很嚴重的。

由此產生了人臉識別早期研究中影響力極大的工作eigenface,其實就是先用pca對人臉影象進行降維,然後再訓練分類器。但pca是無監督的,正如andrew所說:「it does not consider the values of our results y」。所以它雖然能解決過擬合問題,但又會帶來欠擬合問題。

拿人臉識別來說,eigenface雖然能訓練出識別能力尚可的分類器,但因為分類資訊並不一定存在於前幾個主成分上,所以用前幾個主成分來做分類的話,會丟失後面變化細微的主成分上存在的大量分類資訊。正因為如此,之後又出現了fishe***ce等有監督降維工作,識別能力也因此提高了很多。

深度學習也是這樣,pre-training階段很多訓練都是無監督的,其實和pca異曲同工,但之後一定要有進一步的fine-tuning,把無監督提取出來的特徵transfer到我們的目標任務上,這樣得到的特徵才真正work。

所以說,類似於pca和auto-encoder這樣的無監督方法,提取的特徵不會太差、但也不會太好,它最大的作用,是總結出一些關於x的較高層次的抽象知識、為之後的有監督訓練提供乙個比原始特徵空間更好的起點。

實際上,無監督最具優勢之處,就在於它的通用性:不管y是什麼,只要有x就行,之後可以在各種各樣的y上進一步訓練。有證據顯示,人類在嬰兒時期也是先有乙個無監督學習階段,然後才是各種有監督學習。

我為什麼推薦每日瑜伽

隨著大健康理念的興起和普及,健身運動被很多人提上了日程。不難發現,越來越多的人開始通過不同方式嘗試瑜伽這項運動,而受時間空間等客觀因素的影響,人們更願意借助手機app來練www.cppcns.com習瑜伽。但市面上有很多瑜伽教學網際網路平台,選擇哪款app作為自己健身路途中的導師成了乙個難題。對比線...

使用while避免為什麼虛假喚醒

pthread mutex lock work mutex if ac.empty pthread cond wait work mutex,work cond ac.pop back 對於變數鎖,有可能在同一時間進行if判斷,同時滿足條件。而後進入阻塞等待,當出現驚群現象後。ac可能被某個執行緒出...

為什麼我不推薦敏捷開發?

當專案成員越多,我越不推薦敏捷開發,原因在於 當連自己要做什麼事 為什麼這樣做 這樣做為了解決什麼問題 都搞不清楚前,就跳下去玩敏捷開發,那和比通靈還慘,通靈起碼還有個目標物在前面,搞不清楚狀況的人只能陪他跳世界迷霧開地圖了 敏捷開發 mba智庫百科 最下方有段 對敏捷開發的誤解 可順便參考 敏捷軟...