python神經(jīng)網(wǎng)絡(luò) 神經(jīng)網(wǎng)絡(luò)的每一層網(wǎng)絡(luò),有什么實際的意義嗎?
神經(jīng)網(wǎng)絡(luò)的每一層網(wǎng)絡(luò),有什么實際的意義嗎?這個問題涉及到神經(jīng)網(wǎng)絡(luò)的可解釋性。經(jīng)過訓練,每一層神經(jīng)網(wǎng)絡(luò)都有其實際意義,但這一意義通常很難被人類簡單地理解。人類可以嘗試對經(jīng)過訓練的神經(jīng)網(wǎng)絡(luò)進行重復計算,但
神經(jīng)網(wǎng)絡(luò)的每一層網(wǎng)絡(luò),有什么實際的意義嗎?
這個問題涉及到神經(jīng)網(wǎng)絡(luò)的可解釋性。經(jīng)過訓練,每一層神經(jīng)網(wǎng)絡(luò)都有其實際意義,但這一意義通常很難被人類簡單地理解。人類可以嘗試對經(jīng)過訓練的神經(jīng)網(wǎng)絡(luò)進行重復計算,但這種計算的意義還不夠明確,因此一般認為神經(jīng)網(wǎng)絡(luò)的“解釋性”不強。
一般來說,淺層神經(jīng)元提取一些低級特征,而深層神經(jīng)元提取一些高級特征。在許多問題中,我們可以設(shè)計一些方法來可視化從每個隱藏層中提取的特征,但是這種方法不能很好地解釋所有的問題,所以很多人把神經(jīng)網(wǎng)絡(luò)看作一個“黑匣子”。
在某些特定問題中,模型可能具有良好的可解釋性。以卷積神經(jīng)網(wǎng)絡(luò)(CNN)為例,提出了一種逐層提取特征的方法。如下圖所示,底層網(wǎng)絡(luò)提取圖像的邊緣、紋理等特征。隨著層次的提高,網(wǎng)絡(luò)逐漸提取出更高層次、更全面的特征。然而,這并不是說CNN的解釋能力是完美的。只能說,CNN比一般的神經(jīng)網(wǎng)絡(luò)具有相對更好的解釋能力,但我們?nèi)匀缓茈y真正厘清每一層網(wǎng)絡(luò)的實際意義。
在深度學習被提出之前,當時機器學習領(lǐng)域最流行、最成功的方法是隨機林,隨機林中的每一棵決策樹都有非常好的解釋性——深度學習拋棄了這種解釋性,從模型的最終性能來看,它也有一個更好的表現(xiàn)比各種隨機森林。從這個例子中,我們還可以感覺到模型的可解釋性和模型的性能之間存在著非常復雜的關(guān)系。模型越復雜,模型的可解釋性越好。