日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

cnn算法

發布時間:2023/12/20 编程问答 19 豆豆
生活随笔 收集整理的這篇文章主要介紹了 cnn算法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

?

機器學習算法完整版見fenghaootong-github

卷積神經網絡原理(CNN)

卷積神經網絡CNN的結構一般包含這幾個層:

  • 輸入層:用于數據的輸入
  • 卷積層:使用卷積核進行特征提取和特征映射
  • 激勵層:由于卷積也是一種線性運算,因此需要增加非線性映射
  • 池化層:進行下采樣,對特征圖稀疏處理,減少數據運算量。
  • 全連接層:通常在CNN的尾部進行重新擬合,減少特征信息的損失

CNN的三個特點:

  • 局部連接:這個是最容易想到的,每個神經元不再和上一層的所有神經元相連,而只和一小部分神經元相連。這樣就減少了很多參數
  • 權值共享:一組連接可以共享同一個權重,而不是每個連接有一個不同的權重,這樣又減少了很多參數。

  • 下采樣:可以使用Pooling來減少每層的樣本數,進一步減少參數數量,同時還可以提升模型的魯棒性。

輸入層

在CNN的輸入層中,(圖片)數據輸入的格式 與 全連接神經網絡的輸入格式(一維向量)不太一樣。CNN的輸入層的輸入格式保留了圖片本身的結構。

對于黑白的 28×28 的圖片,CNN的輸入是一個 28×28 的的二維神經元:

而對于RGB格式的28×28圖片,CNN的輸入則是一個 3×28×28 的三維神經元(RGB中的每一個顏色通道都有一個 28×28 的矩陣)

卷積層

這一層就是求內積

左邊是輸入,中間部分是兩個不同的濾波器Filter w0、Filter w1,最右邊則是兩個不同的輸出。

最左邊是輸出為:

?

ai.j=f(m=02n=02wm,nxi+m,j+n+wb)ai.j=f(∑m=02∑n=02wm,nxi+m,j+n+wb)

?

以上圖為例:

  • wm,nwm,n:filter的第m行第n列的值
  • xi,jxi,j: 表示圖像的第i行第j列元素
  • wbwb:用表示filter的偏置項
  • ai,jai,j:表示Feature Map的第i行第j列元素
  • ff:表示Relu激活函數

激勵層

激勵層主要對卷積層的輸出進行一個非線性映射,因為卷積層的計算還是一種線性計算。使用的激勵函數一般為ReLu函數:

?

f(x)=max(x,0)f(x)=max(x,0)

?

卷積層和激勵層通常合并在一起稱為“卷積層”。

池化層

當輸入經過卷積層時,若感受視野比較小,布長stride比較小,得到的feature map (特征圖)還是比較大,可以通過池化層來對每一個 feature map 進行降維操作,輸出的深度還是不變的,依然為 feature map 的個數。

池化層也有一個“池化視野(filter)”來對feature map矩陣進行掃描,對“池化視野”中的矩陣值進行計算,一般有兩種計算方式:

  • Max pooling:取“池化視野”矩陣中的最大值
  • Average pooling:取“池化視野”矩陣中的平均值

全連接層

  • 和神經網絡一樣

卷積神經網絡的訓練

  • 前向計算每個神經元的輸出值ajaj( 表示網絡的第j個神經元,以下同);
  • 反向計算每個神經元的誤差項σjσjσj,σj在有的文獻中也叫做敏感度(sensitivity)。它實際上是網絡的損失函數EdEd對神經元加權輸入的偏導數
  • 計算每個神經元連接權重wi,jwi,j的梯度( wi,jwi,j表示從神經元i連接到神經元j的權重)
    • 最后,根據梯度下降法則更新每個權重即可。
  • 實例

    CNN實例

    轉載于:https://www.cnblogs.com/htfeng/p/9931745.html

    總結

    以上是生活随笔為你收集整理的cnn算法的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。