導航:首頁 > 網路問題 > 卷積神經網路用什麼平台

卷積神經網路用什麼平台

發布時間:2022-09-23 14:37:56

如何使用tensorflow實現卷積神經網路

沒有卷積神經網路的說法,只有卷積核的說法。
電腦圖像處理的真正價值在於:一旦圖像存儲在電腦上,就可以對圖像進行各種有效的處理。如減小像素的顏色值,可以解決曝光過度的問題,模糊的圖像也可以進行銳化處理,清晰的圖像可以使用模糊處理模擬攝像機濾色鏡產生的柔和效果。
用Photoshop等圖像處理,施展的魔法幾乎是無止境的。四種基本圖像處理效果是模糊、銳化、浮雕和水彩。?這些效果是不難實現的,它們的奧妙部分是一個稱為卷積核的小矩陣。這個3*3的核含有九個系數。為了變換圖像中的一個像素,首先用卷積核中心的系數乘以這個像素值,再用卷積核中其它八個系數分別乘以像素周圍的八個像素,最後把這九個乘積相加,結果作為這個像素的值。對圖像中的每個像素都重復這一過程,對圖像進行了過濾。採用不同的卷積核,就可以得到不同的處理效果。?用PhotoshopCS6,可以很方便地對圖像進行處理。
模糊處理——模糊的卷積核由一組系數構成,每個系數都小於1,但它們的和恰好等於1,每個像素都吸收了周圍像素的顏色,每個像素的顏色分散給了它周圍的像素,最後得到的圖像中,一些刺目的邊緣變得柔和。
銳化卷積核中心的系數大於1,周圍八個系數和的絕對值比中間系數小1,這將擴大一個像素與之周圍像素顏色之間的差異,最後得到的圖像比原來的圖像更清晰。
浮雕卷積核中的系數累加和等於零,背景像素的值為零,非背景像素的值為非零值。照片上的圖案好像金屬表面的浮雕一樣,輪廓似乎凸出於其表面。
要進行水彩處理,首先要對圖像中的色彩進行平滑處理,把每個像素的顏色值和它周圍的二十四個相鄰的像素顏色值放在一個表中,然後由小到大排序,把表中間的一個顏色值作為這個像素的顏色值。然後用銳化卷積核對圖像中的每個像素進行處理,以使得輪廓更加突出,最後得到的圖像很像一幅水彩畫。
我們把一些圖像處理技術結合起來使用,就能產生一些不常見的光學效果,例如光暈等等。
希望我能幫助你解疑釋惑。

⑵ 基於keras平台的卷積神經網路識別,可以用矩形框圈主識別的位置么

不知道呢。

⑶ 如何用tensorflow搭建卷積神經網路

在MNIST數據集上,搭建一個簡單神經網路結構,一個包含ReLU單元的非線性化處理的兩層神經網路。在訓練神經網路的時候,使用帶指數衰減的學習率設置、使用正則化來避免過擬合、使用滑動平均模型來使得最終的模型更加健壯。
程序將計算神經網路前向傳播的部分單獨定義一個函數inference,訓練部分定義一個train函數,再定義一個主函數main。

二、分析與改進設計
1. 程序分析改進
第一,計算前向傳播的函數inference中需要將所有的變數以參數的形式傳入函數,當神經網路結構變得更加復雜、參數更多的時候,程序的可讀性將變得非常差。
第二,在程序退出時,訓練好的模型就無法再利用,且大型神經網路的訓練時間都比較長,在訓練過程中需要每隔一段時間保存一次模型訓練的中間結果,這樣如果在訓練過程中程序死機,死機前的最新的模型參數仍能保留,杜絕了時間和資源的浪費。
第三,將訓練和測試分成兩個獨立的程序,將訓練和測試都會用到的前向傳播的過程抽象成單獨的庫函數。這樣就保證了在訓練和預測兩個過程中所調用的前向傳播計算程序是一致的。
2. 改進後程序設計
mnist_inference.py
該文件中定義了神經網路的前向傳播過程,其中的多次用到的weights定義過程又單獨定義成函數。
通過tf.get_variable函數來獲取變數,在神經網路訓練時創建這些變數,在測試時會通過保存的模型載入這些變數的取值,而且可以在變數載入時將滑動平均值重命名。所以可以直接通過同樣的名字在訓練時使用變數自身,在測試時使用變數的滑動平均值。
mnist_train.py
該程序給出了神經網路的完整訓練過程。
mnist_eval.py
在滑動平均模型上做測試。
通過tf.train.get_checkpoint_state(mnist_train.MODEL_SAVE_PATH)獲取最新模型的文件名,實際是獲取checkpoint文件的所有內容。

⑷ 深度學習Caffe實戰筆記Caffe平台下,怎樣調整卷積神經網路結構

調整cnn網路結構需要增加或者減少layer的層數,並且更改layer的類型,比如在現有的conv層和pooling層後面繼續增加conv層和pooling層,目的是為了提取更高層次的特徵。當然你也可以增加全連接層數目(那麼做訓練會變慢--、),修改激活函數和填充器類型。建議你還是使用caffe中自帶的cifar10_quick和caffenet進行訓練,然後針對你的數據修改相應的網路參數和solver參數。

⑸ 卷積神經網路

關於花書中卷積網路的筆記記錄於 https://www.jianshu.com/p/5a3c90ea0807 。

卷積神經網路(Convolutional Neural Network,CNN或ConvNet)是一種具有 局部連接、權重共享 等特性的深層前饋神經網路。卷積神經網路是受生物學上感受野的機制而提出。 感受野(Receptive Field) 主要是指聽覺、視覺等神經系統中一些神經元的特性,即 神經元只接受其所支配的刺激區域內的信號

卷積神經網路最早是主要用來處理圖像信息。如果用全連接前饋網路來處理圖像時,會存在以下兩個問題:

目前的卷積神經網路一般是由卷積層、匯聚層和全連接層交叉堆疊而成的前饋神經網路,使用反向傳播演算法進行訓練。 卷積神經網路有三個結構上的特性:局部連接,權重共享以及匯聚 。這些特性使卷積神經網路具有一定程度上的平移、縮放和旋轉不變性。

卷積(Convolution)是分析數學中一種重要的運算。在信號處理或圖像處理中,經常使用一維或二維卷積。

一維卷積經常用在信號處理中,用於計算信號的延遲累積。假設一個信號發生器每個時刻t 產生一個信號 ,其信息的衰減率為 ,即在 個時間步長後,信息為原來的 倍。假設 ,那麼在時刻t收到的信號 為當前時刻產生的信息和以前時刻延遲信息的疊加:

我們把 稱為 濾波器(Filter)或卷積核(Convolution Kernel) 。假設濾波器長度為 ,它和一個信號序列 的卷積為:

信號序列 和濾波器 的卷積定義為:

一般情況下濾波器的長度 遠小於信號序列長度 ,下圖給出一個一維卷積示例,濾波器為 :

二維卷積經常用在圖像處理中。因為圖像為一個兩維結構,所以需要將一維卷積進行擴展。給定一個圖像 和濾波器 ,其卷積為:

下圖給出一個二維卷積示例:

注意這里的卷積運算並不是在圖像中框定卷積核大小的方框並將各像素值與卷積核各個元素相乘並加和,而是先把卷積核旋轉180度,再做上述運算。

在圖像處理中,卷積經常作為特徵提取的有效方法。一幅圖像在經過卷積操作後得到結果稱為 特徵映射(Feature Map)

最上面的濾波器是常用的高斯濾波器,可以用來對圖像進行 平滑去噪 ;中間和最下面的過濾器可以用來 提取邊緣特徵

在機器學習和圖像處理領域,卷積的主要功能是在一個圖像(或某種特徵)上滑動一個卷積核(即濾波器),通過卷積操作得到一組新的特徵。在計算卷積的過程中,需要進行卷積核翻轉(即上文提到的旋轉180度)。 在具體實現上,一般會以互相關操作來代替卷積,從而會減少一些不必要的操作或開銷。

互相關(Cross-Correlation)是一個衡量兩個序列相關性的函數,通常是用滑動窗口的點積計算來實現 。給定一個圖像 和卷積核 ,它們的互相關為:

互相關和卷積的區別僅在於卷積核是否進行翻轉。因此互相關也可以稱為不翻轉卷積 。當卷積核是可學習的參數時,卷積和互相關是等價的。因此,為了實現上(或描述上)的方便起見,我們用互相關來代替卷積。事實上,很多深度學習工具中卷積操作其實都是互相關操作。

在卷積的標準定義基礎上,還可以引入濾波器的 滑動步長 零填充 來增加卷積多樣性,更靈活地進行特徵抽取。

濾波器的步長(Stride)是指濾波器在滑動時的時間間隔。

零填充(Zero Padding)是在輸入向量兩端進行補零。

假設卷積層的輸入神經元個數為 ,卷積大小為 ,步長為 ,神經元兩端各填補 個零,那麼該卷積層的神經元數量為 。

一般常用的卷積有以下三類:

因為卷積網路的訓練也是基於反向傳播演算法,因此我們重點關注卷積的導數性質:

假設 。

, , 。函數 為一個標量函數。

則由 有:

可以看出, 關於 的偏導數為 和 的卷積

同理得到:

當 或 時, ,即相當於對 進行 的零填充。從而 關於 的偏導數為 和 的寬卷積

用互相關的「卷積」表示,即為(注意 寬卷積運算具有交換性性質 ):

在全連接前饋神經網路中,如果第 層有 個神經元,第 層有 個神經元,連接邊有 個,也就是權重矩陣有 個參數。當 和 都很大時,權重矩陣的參數非常多,訓練的效率會非常低。

如果採用卷積來代替全連接,第 層的凈輸入 為第 層活性值 和濾波器 的卷積,即:

根據卷積的定義,卷積層有兩個很重要的性質:

由於局部連接和權重共享,卷積層的參數只有一個m維的權重 和1維的偏置 ,共 個參數。參數個數和神經元的數量無關。此外,第 層的神經元個數不是任意選擇的,而是滿足 。

卷積層的作用是提取一個局部區域的特徵,不同的卷積核相當於不同的特徵提取器。

特徵映射(Feature Map)為一幅圖像(或其它特徵映射)在經過卷積提取到的特徵,每個特徵映射可以作為一類抽取的圖像特徵。 為了提高卷積網路的表示能力,可以在每一層使用多個不同的特徵映射,以更好地表示圖像的特徵。

在輸入層,特徵映射就是圖像本身。如果是灰度圖像,就是有一個特徵映射,深度 ;如果是彩色圖像,分別有RGB三個顏色通道的特徵映射,深度 。

不失一般性,假設一個卷積層的結構如下:

為了計算輸出特徵映射 ,用卷積核 分別對輸入特徵映射 進行卷積,然後將卷積結果相加,並加上一個標量偏置 得到卷積層的凈輸入 再經過非線性激活函數後得到輸出特徵映射 。

在輸入為 ,輸出為 的卷積層中,每個輸出特徵映射都需要 個濾波器以及一個偏置。假設每個濾波器的大小為 ,那麼共需要 個參數。

匯聚層(Pooling Layer)也叫子采樣層(Subsampling Layer),其作用是進行特徵選擇,降低特徵數量,並從而減少參數數量。

常用的匯聚函數有兩種:

其中 為區域 內每個神經元的激活值。

可以看出,匯聚層不但可以有效地減少神經元的數量,還可以使得網路對一些小的局部形態改變保持不變性,並擁有更大的感受野。

典型的匯聚層是將每個特徵映射劃分為 大小的不重疊區域,然後使用最大匯聚的方式進行下采樣。匯聚層也可以看做是一個特殊的卷積層,卷積核大小為 ,步長為 ,卷積核為 函數或 函數。過大的采樣區域會急劇減少神經元的數量,會造成過多的信息損失。

一個典型的卷積網路是由卷積層、匯聚層、全連接層交叉堆疊而成。

目前常用卷積網路結構如圖所示,一個卷積塊為連續 個卷積層和 個匯聚層( 通常設置為 , 為 或 )。一個卷積網路中可以堆疊 個連續的卷積塊,然後在後面接著 個全連接層( 的取值區間比較大,比如 或者更大; 一般為 )。

目前,整個網路結構 趨向於使用更小的卷積核(比如 和 )以及更深的結構(比如層數大於50) 。此外,由於卷積的操作性越來越靈活(比如不同的步長),匯聚層的作用變得也越來越小,因此目前比較流行的卷積網路中, 匯聚層的比例也逐漸降低,趨向於全卷積網路

在全連接前饋神經網路中,梯度主要通過每一層的誤差項 進行反向傳播,並進一步計算每層參數的梯度。在卷積神經網路中,主要有兩種不同功能的神經層:卷積層和匯聚層。而參數為卷積核以及偏置,因此 只需要計算卷積層中參數的梯度。

不失一般性,第 層為卷積層,第 層的輸入特徵映射為 ,通過卷積計算得到第 層的特徵映射凈輸入 ,第 層的第 個特徵映射凈輸入

由 得:

同理可得,損失函數關於第 層的第 個偏置 的偏導數為:

在卷積網路中,每層參數的梯度依賴其所在層的誤差項 。

卷積層和匯聚層中,誤差項的計算有所不同,因此我們分別計算其誤差項。

第 層的第 個特徵映射的誤差項 的具體推導過程如下:

其中 為第 層使用的激活函數導數, 為上采樣函數(upsampling),與匯聚層中使用的下采樣操作剛好相反。如果下采樣是最大匯聚(max pooling),誤差項 中每個值會直接傳遞到上一層對應區域中的最大值所對應的神經元,該區域中其它神經元的誤差項的都設為0。如果下采樣是平均匯聚(meanpooling),誤差項 中每個值會被平均分配到上一層對應區域中的所有神經元上。

第 層的第 個特徵映射的誤差項 的具體推導過程如下:

其中 為寬卷積。

LeNet-5雖然提出的時間比較早,但是是一個非常成功的神經網路模型。基於LeNet-5 的手寫數字識別系統在90年代被美國很多銀行使用,用來識別支票上面的手寫數字。LeNet-5 的網路結構如圖:

不計輸入層,LeNet-5共有7層,每一層的結構為:

AlexNet是第一個現代深度卷積網路模型,其首次使用了很多現代深度卷積網路的一些技術方法,比如採用了ReLU作為非線性激活函數,使用Dropout防止過擬合,使用數據增強來提高模型准確率等。AlexNet 贏得了2012 年ImageNet 圖像分類競賽的冠軍。

AlexNet的結構如圖,包括5個卷積層、3個全連接層和1個softmax層。因為網路規模超出了當時的單個GPU的內存限制,AlexNet 將網路拆為兩半,分別放在兩個GPU上,GPU間只在某些層(比如第3層)進行通訊。

AlexNet的具體結構如下:

在卷積網路中,如何設置卷積層的卷積核大小是一個十分關鍵的問題。 在Inception網路中,一個卷積層包含多個不同大小的卷積操作,稱為Inception模塊。Inception網路是由有多個inception模塊和少量的匯聚層堆疊而成

v1版本的Inception模塊,採用了4組平行的特徵抽取方式,分別為1×1、3× 3、5×5的卷積和3×3的最大匯聚。同時,為了提高計算效率,減少參數數量,Inception模塊在進行3×3、5×5的卷積之前、3×3的最大匯聚之後,進行一次1×1的卷積來減少特徵映射的深度。如果輸入特徵映射之間存在冗餘信息, 1×1的卷積相當於先進行一次特徵抽取

⑹ 經典卷積神經網路簡介之【AlexNet】

論文中轉 : ImageNet Classification with Deep Convolutional Neural Networks

自Le Net-5在1998年提出以後,時隔14年,AlexNet橫空問世,在2012年ImageNet競賽中以冠軍的成績笑傲群雄,也就是從那時起,更多更優秀的網路被相繼提出。論文第一作者是來自多倫多大學的Alex Krizhevsky,因此網路稱為Alex Net。

在論文中,作者訓練了一個大而深(相比於之前)的卷積網路用於ImageNet比賽,將120萬高分辨圖像分為1000個類別。在測試集上,分別達到了37.5%的top-1錯誤率和17.0%的top-5錯誤率,超越了先前最好的網路。網路共有600萬參數,65萬個神經元,5個卷積層加3個全連接層,輸出為1000類別。為了防止過擬合,作者採用了數據擴充和dropout正則法,實驗結果表明此方法非常有效;為了加快訓練速度,作者採用了兩塊並行的GPU同時對特徵圖進行運算。

由於採用了雙GPU模式,所以結構圖呈現的是上圖的樣子,下面引用一張博客作者 chenyuping666 文章的圖片,可以詳細的了解網路內部結構與實現細節。

從上圖可以看到,輸入為227×227×3的圖像

在conv1中 ,卷積核大小為11×11,步長為4,通道數為96(每台GPU運算48個,下同),經過激活函數Relu激活後,採用最大池化(size=3×3,stride=2),標准化,輸出為27×27×96。

在conv2中 ,卷積核大小為5×5,步長為1,通道數256,先對輸入特徵圖擴展像素為31×31(pad=2),然後卷積,激活,池化(size=3×3,stride=2),標准化,輸出特徵圖為13×13×256。

在conv3,conv4中 ,卷積核大小都為3×3,步長為1,pad=1,通道數為384,經過激活後輸出特徵圖為13×13×384。

在conv5中 ,卷積核大小都為3×3,步長為1,通道數為256,經過激活,池化後輸出特徵圖為6×6×256。

在fcn6,fcn7中 ,共有4096個神經元,採用了dropout技術防止過擬合。

在fcn8 ,也就是最後一層,採用softmax輸出1000個類別。

相比於之前的網路,AlexNet為何能取得比較好的結果呢,從作者的論文中可以發現以下幾點:

3.1 非線性激活函數Relu
在之前一般使用tanh(x)或sigmoid作為激活函數,但這些飽和的線性函數在梯度的計算上非常緩慢,並且容易產生梯度消失問題。Relu的出現使這些問題得到了有效的解決。在基於cifar-10數據集的標准四層網路測試中,採用tanh和Relu作為激活函數使error rate達到0.25所用的時間,Relu比tanh快大約6倍。

3.2 多個GPU
作者認為計算資源的大小限制了網路的大小,要想訓練大的網路結構,必須擁有足夠的計算資源。120萬的數據集太大以至於單個GPU不足以匹配,因此作者將網路的計算任務分配到兩個GPU上執行。目前GPU特別適合做並行化,因為一個GPU可以直接從另一個GPU讀和寫內容,而不需要經過主機內存。

3.3 局部響應歸一化(LRN)
作者在文章中提出了Local Response Normalization的方法,分別將top-1和top-5錯誤率降低了1.4%和1.2%。作者在文中提到,如果訓練樣本產生一個正輸入到Relu,網路只會在那個特定神經元上學習,但是引入局部響應正則化後,提高了網路的泛化能力。這種響應歸一化會產生一種由某一神經元所激發的橫向抑制,為由使用不同卷積核計算的神經元輸出之中的「big activities」創造競爭。

3.4 重疊池化
一般的池化操作因為沒有重疊,所以pool_size 和 stride是相等的。例如6×6的圖像在size=2×2的池化後,輸出為3×3,但是本文使用的size<stride,即取步長為1,輸出為4×4大小的圖像。這一方案分別使top-1和top-5錯誤率降低了0.4%和0.3%。

⑺ 怎樣用python構建一個卷積神經網路

用keras框架較為方便

首先安裝anaconda,然後通過pip安裝keras

⑻ yolov5ds使用了什麼神經網路

卷積神經網路。
當下YOLO最新的卷積神經網路YOLOv5是完全基於PyTorch實現的,現版本的YOLOv5每個圖像的推理時間最快0.007秒,即每秒140幀(FPS),但YOLOv5的權重文件大小隻有YOLOv4的1/9。

哪個輕量卷積神經網路最好

模型網路結構 Mobile Net V1。
它是一種模型體積較小、可訓練參數及計算量較少並適用於移動設備的卷積神經網路。
mobileNet V1的主要創新點是用深度可分離卷積(depthwise separable convolution)代替普通的卷積,並使用寬度乘數(width multiply)減少參數量,它可在犧牲極少精度的同時去換取更好的數據吞吐量。

閱讀全文

與卷積神經網路用什麼平台相關的資料

熱點內容
手機網路忽然4g變2g 瀏覽:439
win7設置無線網路名 瀏覽:216
計算機網路自下而上 瀏覽:559
企業的網路營銷規劃 瀏覽:216
手機怎麼連接網路不能用 瀏覽:216
怎麼通過伺服器訪問網路 瀏覽:646
mac連不上網路和手機熱點 瀏覽:253
如何解決網路異常現象 瀏覽:85
網路連接顯示500 瀏覽:587
車載ce導航無線網路 瀏覽:530
特徵融合分類網路怎麼做 瀏覽:648
自己家的wifi沒有網路了怎麼設置 瀏覽:512
電腦怎麼蹭wifi的網路 瀏覽:993
電視只能用有線網路不能連接wifi 瀏覽:556
二級交換網路的交叉點怎麼計算 瀏覽:920
威寧企業網路營銷 瀏覽:442
有線電視網路能上wifi嗎 瀏覽:149
不想要電腦怎麼設置網路 瀏覽:804
天長教體局無線網路 瀏覽:184
月卡無線網路 瀏覽:66

友情鏈接