儘管現在人工智能在許多方面都取得了迅速的進步,人工智能的發展離不開神經網絡原理的誕生,但它仍然是少數人能理解的東西,掌握它的人也更少。在人們生活中經常使用的語音助手,人臉識別,圖片提取文字等都離不開神經網絡的應用。但網絡上的資料都是一堆枯燥無味的數學公式,本文在不使用複雜的數學公式的前提下對
神經網絡進行通俗的講解。首先在計算機裡圖像只是一堆數字而已,每一個像素點有一個特定的數字。如選一個28*28的圖片怎麼讓計算機對手寫圖像進行識別呢?我們使用多層神經網絡對圖像進行特徵提取來進行對數字的識別。
本圖神經網絡有4層,其中有784個輸入層,2個隱含層,一個輸出層。
輸入層有784個,這784個輸入值就是28*28個像素點所代表的數值排成一列而成。
輸出層就是代表計算機最終計算預測結果,判斷圖像代表的是什麼數值。
隱含層是神經網絡的關鍵,對圖像識別的正確性至關重要。其中隱含層的層數和個數由自己進行分配選取,從而來達到最好的識別效果。其中隱含層主要是對
圖片的特徵進行提取。隱含層到底時怎麼進行工作的呢?下面進行詳細的介紹。我沒知道,數字9可以由一個0和一個1組合而成,數字8可以由兩個0組合而成。隱含層的第二層就是想這樣對圖像進行特徵提取並來對數字進行區分的。
但是一層隱含層識別率還是有點低,為了提高識別的準確性,我們可以對第二層的圖像進行細分,所以添加了第一層的隱含層。如下圖,數字0還可以進行進一步的細分。
所以隱含層是對圖像進行精準的提取,組合,判斷,以達到對數字正確的識別。
但是每個層之間的連線是幹什麼的呢?
從上面我們知道第一層的輸入層代表著圖像每個像素的數值p,這些圖像可能很雜亂,如下圖。
但從這些參數怎麼提取我們想要的特徵呢?我們就需要一個權重(weights)w對圖像進行處理來得到我們想要的特徵。
然後與我們的圖像進行疊加就得到我們其中一個特徵。
有些圖像會有噪點,或者我們想提高識別的門檻(閾值)。我就需要一個偏置(biases),來減少干擾。由於每一層都會有一個偏置和一組權重(weights),我們會要計算很多的數值,所以這一過程的計算量是很大的。(/ □ \)
到這裡一個基本的神經網絡就以及介紹完畢了,就是這麼簡單(*^__^*) 。
但是如果上述過程出錯會怎麼辦????
那就看我下一篇的反射神經網絡(BP)來解決吧!
閱讀更多 e的左上角 的文章