1. 程式人生 > >《白話深度學習與TensorFlow》之深度學習為什麼這麼強

《白話深度學習與TensorFlow》之深度學習為什麼這麼強

《白話深度學習與TensorFlow》

之深度學習為什麼這麼強

1. 不用再提取特徵

由於巨量的線性分類器的堆疊(並行和序列)以及卷積網路的使用,它對噪聲的忍耐能力、對多通道資料上投射出來的不同特徵偏向的敏感程度會自動重視或者忽略。

2. 處理線性不可分

神經網路用大量的線性分類器的堆疊使得整個模型可以將線性不可分的問題變得可分。

SVM 也有一定的能力來處理線性不可分的問題,但它利用的是維度的引人(或者說升維)來解決的。而神經網路的每一個神經元都是一個線性分類器,所以神經網路能且只能通過線性分類器的組合來實現線性不可分的問題。

 

例如,在這個二維空間中有這樣一個不規則的四邊形,如果我們想用一條線(一個線性分類器)把它分開,並保證其一側是這個四邊形內所有的點,我們稱為“類別1”,另一側是其他的點,我們稱為“類別0”,這簡直是不可能的,因為不管怎麼畫,這一條線都會使得其中至少有一個類非常“不純” 。 沒關係,我們大不了畫 4 條線了,

用這 4 條線把它圍起來,也就是必須同時滿足 4 個分類器的 1 分類標準才算是我們要約束的 1 分類一一每條直線的表示式都是形如 f(x)=wx+b 的線性分類器 。其實這也就是神經網路比以前各種分類器厲害的地方了,以前任何一種分類器可都沒有這種能耐 。 這裡畫出來的這個不規則四邊形不一定是一張圖片中的資訊,它只是用來表示一些向量在空間中的聚集區域 。

神經網路的神經元可以有很多層,每層可以有很多個神經元,整個網路的規模可以有幾千甚至幾萬個神經元,那麼在這種情況下,我們幾乎可以描繪出任意的線性不可分的模型了 。 當然,我們這裡只是用一個簡單的二維向量來進行示意,真正的使用場景中,這些向量通常有幾十萬個維度或者更多,神經網路的層數也會非常深一一這就是我們平時所說的深度學習了 。 隨著維度的加大,深度的加深,所能描述的分類器的複雜程度也會隨之增加,所以傳統分類模型中無法通過簡單的線性分類器和非線性分類器處理的複雜學習場景(例如圖形、視訊、音訊等)就能夠通過海量分類器的疊加來實現。