新聞中心

        EEPW首頁(yè) > 智能計(jì)算 > 業(yè)界動(dòng)態(tài) > 深度學(xué)習(xí)干貨|基于Tensorflow深度神經(jīng)網(wǎng)絡(luò)(DNN)詳解

        深度學(xué)習(xí)干貨|基于Tensorflow深度神經(jīng)網(wǎng)絡(luò)(DNN)詳解

        作者: 時(shí)間:2022-07-04 來源:網(wǎng)絡(luò) 收藏

        (Deep Neural Networks,簡(jiǎn)稱)是的基礎(chǔ),想要學(xué)好,首先我們要理解模型。

        本文引用地址:http://www.104case.com/article/202207/435861.htm

        的基本結(jié)構(gòu)

        神經(jīng)網(wǎng)絡(luò)是基于感知機(jī)的擴(kuò)展,而DNN可以理解為有很多隱藏層的神經(jīng)網(wǎng)絡(luò)。多層神經(jīng)網(wǎng)絡(luò)和DNN其實(shí)也基本一樣,DNN也叫做多層感知機(jī)(MLP)。

        DNN按不同層的位置劃分,神經(jīng)網(wǎng)絡(luò)層可以分為三類,輸入層,隱藏層和輸出層,如下圖示例,一般來說第一層是輸入層,最后一層是輸出層,而中間的層數(shù)都是隱藏層。

        網(wǎng)絡(luò)結(jié)構(gòu)

        層與層之間是全連接的,也就是說,第i層的任意一個(gè)神經(jīng)元一定與第i+1層的任意一個(gè)神經(jīng)元相連。雖然DNN看起來很復(fù)雜,但是從小的局部模型來說,它還是和感知機(jī)一樣,即一個(gè)線性關(guān)系加上一個(gè)激活函數(shù)。

        訓(xùn)練過程中包含前向傳播算法和后向傳播算法

        DNN前向傳播算法

        就是利用若干個(gè)權(quán)重系數(shù)矩陣W,偏倚向量b來和輸入值向量X進(jìn)行一系列線性運(yùn)算和激活運(yùn)算,從輸入層開始,一層層地向后計(jì)算,一直到運(yùn)算到輸出層,得到輸出結(jié)果為值

        DNN反向傳播算法

        如果我們采用DNN的模型,即我們使輸入層n_in個(gè)神經(jīng)元,而輸出層有n_out個(gè)神經(jīng)元。再加上一些含有若干神經(jīng)元的隱藏層,此時(shí)需要找到合適的所有隱藏層和輸出層對(duì)應(yīng)的線性系數(shù)矩陣W,偏倚向量b,讓所有的訓(xùn)練樣本輸入計(jì)算出的輸出盡可能的等于或很接近樣本輸出,怎么找到合適的參數(shù)呢?

        在進(jìn)行DNN反向傳播算法前,我們需要選擇一個(gè)損失函數(shù),來度量訓(xùn)練樣本計(jì)算出的輸出和真實(shí)的訓(xùn)練樣本輸出之間的損失。接著對(duì)這個(gè)損失函數(shù)進(jìn)行優(yōu)化求最小化的極值過程中,反向不斷對(duì)一系列線性系數(shù)矩陣W,偏倚向量b進(jìn)行更新,直到達(dá)到我們的預(yù)期效果

        在DNN中,損失函數(shù)優(yōu)化極值求解的過程最常見的一般是通過梯度下降法來一步步迭代完成的,也可以是其他的迭代方法比如牛頓法與擬牛頓法。

        過擬合問題

        解決方法如下:

        獲取更多數(shù)據(jù):從數(shù)據(jù)源獲得更多數(shù)據(jù),或數(shù)據(jù)增強(qiáng);數(shù)據(jù)預(yù)處理:清洗數(shù)據(jù)、減少特征維度、類別平衡;增加噪聲:輸入時(shí)+權(quán)重上(高斯初始化);正則化:限制權(quán)重過大、網(wǎng)絡(luò)層數(shù)過多,避免模型過于復(fù)雜;多種模型結(jié)合:集成學(xué)習(xí)的思想;Dropout:隨機(jī)從網(wǎng)絡(luò)中去掉一部分隱神經(jīng)元;限制訓(xùn)練時(shí)間、次數(shù),及早停止。核心代碼

        核心代碼


        評(píng)論


        相關(guān)推薦

        技術(shù)專區(qū)

        關(guān)閉
        主站蜘蛛池模板: 湘潭市| 八宿县| 措美县| 青龙| 门头沟区| 德昌县| 琼海市| 星座| 呼玛县| 鹤壁市| 错那县| 宕昌县| 武夷山市| 应城市| 北海市| 桂东县| 三穗县| 乐山市| 钟山县| 舞钢市| 繁昌县| 盱眙县| 深泽县| 通江县| 公安县| 翼城县| 当雄县| 将乐县| 扎鲁特旗| 冕宁县| 嵊州市| 棋牌| 石首市| 维西| 克东县| 延津县| 儋州市| 台北市| 和顺县| 遂昌县| 横峰县|