神經網路

通用逼近定理(universal approximation theorem)

/ yoo-nih-VER-sul uh-prok-sih-MAY-shun THEER-um /

通用逼近定理,是關於神經網路能做什麼的一個數學承諾。粗略地說,它講的是:僅有一個隱藏層的前饋網路,就能把基本上任何合理的連續函數逼近到你想要的任意精度——只要你給它足夠多的神經元。說白了,世上幾乎任何平滑的「輸入到輸出」的關係,不管多麼彎曲、多麼複雜,原則上都能被這樣一個網路擬合出來。這正是我們之所以相信神經網路足夠靈活、值得一用的那個形式化的理由。

可以把它想成用許多細小的直段或起伏的小片去拼出任何曲線:只要片數夠多,你就能把任何形狀描摹到你想要的精度。這條定理保證了那些小片確實存在。它在歷史上很重要,因為它回應了一個根本性的擔憂——「這整套路子是不是從根上就有侷限?」——給出了一個令人安心的否定。無論你想學的是什麼函數,在那茫茫之中,總存在一個能逼近它的網路。

但要讀那行小字,因為這定理遠比它聽起來要弱。它承諾存在這樣一個網路;它對如何找到這個網路、需要多少個神經元(可能是個天文數字)、或者普通的訓練會不會真把它找出來,則隻字未提。它對推廣到新資料也什麼都沒說——它只關乎擬合一個已知的函數。在實踐中,深度(許多層)通常勝過單純的寬度(一個巨大的層),儘管這條定理只需要一層。所以把它當作一個讓人寬心的存在性證明,而非一份食譜:它告訴你目的地可達,卻沒告訴你該怎麼開過去。

想讓一個網路去模仿一條蜿蜒如山脈般的曲線?這條定理承諾:存在某個單隱藏層的網路能把它復現到毫釐之差——也許要用上數千個神經元。可在現實裡,一個更深、神經元總數卻少得多的網路,通常能更輕鬆地學會同一條曲線,也推廣得更好,這正是幾乎沒人真去搭建定理所描述的那種「單個巨型層」版本的原因。

這條定理保證存在一個能擬合的網路——但它不告訴你如何找到或訓練它。

「能表示」不等於「能學到」。這條定理是關於單個固定函數的一個存在性結論;它對訓練、所需的神經元數量、或推廣到未見過的資料,都隻字未提。別把它說過頭。

又稱
universal approximationUAT通用逼近定理万能逼近定理普適逼近定理