深度卷積神經網絡AlexNet

在提出LeNet后卷積神經網絡在計算機視覺和機器學習領域中報有名氣,但是卷積神經網絡并沒有主導這些領域,因為LeNet在小數據集上取得了很好的效果,在更大,更真實的數據集上訓練卷積神經網絡的性能 和可行性有待研究,20世紀90年代初到2012年間的大部分時間里,神經網絡往往被其他機器學習方法超越,支持向量機。

在計算機視覺中,直接將神經網絡與其他機器學習方法進行表也不公平,卷積神經網絡的輸入事原始像素值經過簡單預處理的像素值組成,但是在使用傳統機器學習方法時,在傳統機器學習方法中,計算機視覺流水線時經過手工精心設計的特征流水線組成的,這些傳統方法,大部分的進展都來自對特征有了更聰明的想法,并且學習到的算法往往歸于事后的解釋。

因此,與訓練端到端系統不同,經典機器學習的流水線看起來更像下面這樣。

(1)獲取一個有趣的數據集,收集這些數據集需要傳感器,

(2)根據光學,幾何學,其他知識以及偶然的發現,手動對待特征數據集進行預處理。

(3) 通過標準的特征提取算法,如SIFT或者其他手動調整的流水線來輸入數據。

(4)將提取的特征送入最喜歡的分類器中,以訓練分類器。

當人們和機器學習研究人員交談時,會發現機器學習研究人員相信機器學習即重要又美麗:

7.1.1 學習表征

一種預測這個領域發展的方法時觀察圖像特征的提取方法,圖像特征都是機械的計算出來的,設計一套新的特征函數。改進結果并撰寫論文。SIFT,SURF,HOG 定向梯度直方圖,都占據了主導地位。

在合理的復雜性前提下,特征應該由多個共同學習的神經網絡層組成,每個層都有課學習的參數,機器視覺中,底層可能檢查邊緣,顏色和紋理,實際上,

7.1.2 AlexNet

2012年AlexNet橫空出世,證明了學習到的特征可以超越手動設計的特征,AlexNet使用8層卷積神經網絡,以很大的優勢贏得了2012年ImageNet圖像識別挑戰賽。

AlexNet和LeNet非常類似。

LeNet

全連接層 10 ->全連接層 84 ->全連接層 120->

2x2歐拿冠軍匯聚層

5x5卷積層 16

2x2 平均匯聚層

5x5卷積層

圖片28x28

AlexNet

全連接 1000

全連接層 4096

全連接層 4096

3x3最大匯聚層

3x3卷積層

3x3卷積層

3x3最大匯聚層

5x5卷積層

3x3最大匯聚層

11x11 卷積層

圖片 3x244x244

AlexNet LeNet5深得多AlexNet8組成5卷積2全選隱藏1全連接輸出

2 AlexNet使用ReLU而不是sigmoid 作為激活函數

1 模型設計

AlexNet第一層卷積窗口形狀11x11由于imageNet中大多數圖像高和MNIST圖像10因此需要一個更大卷積窗口捕獲目標第二層卷積窗口形狀縮減5x5然后3x3此外第一層第二層第五層卷積層之后加入窗口形狀3x3步驟2最大匯聚層而且AlexNet卷積通道LeNet10

在最后一個卷積層兩個全連接分別有4096輸出這兩個巨大全連接層1GB模型參數早期GPU顯存有限原始AlexNet才用了數據流設計使得每個GPU負責存儲計算模型一半參數幸運現在GPU現存相對充裕所以很少需要GPU分解模型

2 激活函數

AlexNetsigmoid激活函數改為簡單ReLU激活函數一方面ReLU激活函數的計算更簡單不需要sigmoig激活函數復雜求冪運算另一方面使用補參數初始化方法ReLU激活函數使訓練模型更加容易sigmoid激活函數輸出非常接近于0或者1這些區域梯度幾乎0因此反向傳播無法繼續更新一些模型參數ReLU激活函數區間梯度1因此如果模型參數沒有正確初始化sigmoid函數可以能區間得到幾乎0梯度從而使模型無法得到有效訓練

3 容量控制預處理

AlexNet通過暫退 控制全連接模型復雜度LeNet使用了權重衰減為了進一步擴增數據AlexNet在訓練時增加了大量圖像增強數據翻轉載切變色這使得模型健壯更大樣本量有效減少過擬合

import torch

from torch import nn

from d2l import torch as d2l

net = nn.Sequential (

#這里使用一個11x11更大窗口來捕獲對象

#同時步幅4減少輸出高度寬度

#另外輸出通道遠大于LeNet

nn.Conv2d(1, 96, kernel_size=11, stride=4, padding=1), nn.ReLU(),

nn.MaxPool2d(kernel_size=3, stride=2)

#減小卷積窗口使用填充2來使得輸入與輸出寬一致并且增大輸出通道數

nn.Conv2d(96, 256, kernel_size=5,padding=2), nn.ReLU(),

nn.MaxPool2d(kernel_szie=3, stride=2)

#使用3鏈接卷積層較小卷積窗口

#除了最后卷積層輸出通道數進一步增加

#在前兩個卷積層之后匯聚層不用于減少輸入高度寬度

nn.Conv2d(256, 384, kernel_size=3, padding=1), nn.ReLU(),

nn.Conv2d(384, 384, kernel_size=3, padding=1), nn.ReLU(),

nn.Conv2d(384, 384, kernel_size=3, padding=1), nn.ReLU(),

nn.MaxPool2d(kernel_szie=3, stride=2),

nn.Flatten(),

#這里全連接層輸出數量LeNet好幾倍使用退緩解過擬合

nn.Linear(6400, 4096), nn.ReLU(),

nn.Dropout(p=0.5),

nn.Linear(4096, 4096), nn.ReLU(),

nn.Dropout(p=0.5),

#最后是輸出層因為這里使用Fashion - MNIST所以類別10

nn.Linear(4096, 10)

我們構造高度寬度都為224單通道數據來觀察每一層輸出形狀7-2AlexNet架構相匹配

x = torch.randn(1,1,,224,224)

for layer in net:

x=layer(x)

)

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/919614.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/919614.shtml
英文地址,請注明出處:http://en.pswp.cn/news/919614.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

數據結構-HashSet

在 Java 編程的世界里,集合框架是極為重要的一部分,而 HashSet 作為 Set 接口的典型實現類,在處理不允許重復元素的場景中頻繁亮相。今天,我們就一同深入探究 HashSet,梳理它的特點、常用方法,以及和其他相…

心意行藥號 · 慈心方的八種用法

心意行藥號 慈心方的八種用法慈心方是心意行藥號589個珍貴秘方中的一個養生茶方,配伍比例科學嚴謹,君臣佐使堪稱經典,自古就有“小小慈心方,轉動大乾坤”之說。自清代光緒年間傳承至今,慈心方受益者逾百萬計&#xff…

Spring面試寶典:Spring IOC的執行流程解析

在準備Spring框架的面試時,“Spring IOC的工作流程是什么?” 是一個非常經典的問題。雖然網上有很多詳細的教程,但它們往往過于復雜,對于沒有深入研究過源碼的人來說理解起來確實有些困難。今天我們就來簡化這個概念,從…

學習日志39 python

1 fromkeys()函數是什么在 Python 中,fromkeys() 是字典(dict)的一個類方法,用于創建一個新字典。它的作用是:根據指定的可迭代對象(如列表、元組等)中的元素作為鍵(key)…

SpringBoot + MyBatis-Plus 使用 listObjs 報 ClassCastException 的原因與解決辦法

在項目中我們經常會遇到這種需求: 根據一組 ID 查詢數據庫,并返回指定字段列表。 我在寫代碼的時候,遇到了一個典型的坑,分享出來給大家。一、問題背景我的代碼是這樣寫的(查詢項目表的負責人信息)&#xf…

WT2606B 驅屏語音芯片新增藍牙功能:功能集成一體化,產品升級自動化,語音交互無線化,場景應用普適化!

小伙伴們,歡迎來到我們的 #唯創芯片小講堂!今天我們要為大家介紹一位多才多藝的"芯片全能手"——WT2606B驅屏語音芯片。這顆芯片將在今年8月的I0TE物聯網展及ELEXCON 2025深圳國際電子展上大放異彩。在智能設備滿天飛的今天&#x…

ORA-16331: container is not open ORA-06512: at “SYS.DBMS_LOGMNR“

使用Flink CDC、Debezium等CDC工具對Oracle進行基于log的實時數據同步時遇到異常ORA-16331: container is not open的解決方案。 1. 異常信息 異常信息通常如下: at oracle.jdbc.driver.OracleStatement.executeInternal(OracleStatement.java:1823) at oracle.jdbc…

「三維共振」:重構實體零售的破局模式

在電商沖擊與消費升級的雙重浪潮下,傳統零售模式正面臨前所未有的挑戰。wo店首創的 “三維共振” 運營模式,以場景體驗為根基、數據驅動為引擎、社群共生為紐帶,構建起線上線下深度融合的新型零售生態,至今已實現連續 18 個月客流…

將集合拆分成若干個batch,并將batch存于新的集合

在使用saveAll()等方法時,為了防止集合元素過大,使用splitList將原集合,分割成若干個小集合 import java.util.ArrayList; import java.util.List;public class ListUtils {/*** 將集合拆分成若干個batch,并將batch存于新的集合** param list…

Java主流框架全解析:從企業級開發到云原生

Java作為一門歷史悠久且應用廣泛的編程語言,其強大的生態系統離不開各種優秀的框架支持。無論是傳統的企業級應用開發,還是現代的微服務、云原生架構,Java都提供了豐富的框架選擇。本文將全面解析當前主流的Java框架,涵蓋Web開發、…

機器學習——網格搜索(GridSearchCV)超參數優化

網格搜索(Grid Search)詳細教學1. 什么是網格搜索?在機器學習模型中,算法的**超參數(Hyperparameters)**對模型的表現起著決定性作用。比如:KNN 的鄰居數量 n_neighborsSVM 的懲罰系數 C 和核函…

【LeetCode】18. 四數之和

文章目錄18. 四數之和題目描述示例 1:示例 2:提示:解題思路算法一:排序 雙指針(推薦)算法二:通用 kSum(含 2Sum 雙指針)復雜度關鍵細節代碼實現要點完整題解代碼18. 四數…

Go語言入門(10)-數組

訪問數組元素:數組中的每個元素都可以通過“[]”和一個從0開始的索引進行訪問數組的長度可由內置函數len來確定。在聲明數組時,未被賦值元素的值是對應類型的零值。下面看一個例子package mainfunc main(){var planets [8]stringplanets[0] "Mercu…

為什么經過IPSec隧道后HTTPS會訪問不通?一次隧道環境下的實戰分析

在運維圈子里,大家可能都遇到過這種奇怪的問題:瀏覽器能打開 HTTP 網站,但一換成 HTTPS,頁面就死活打不開。前段時間,我們就碰到這么一個典型案例。故障現象某公司系統在 VPN 隧道里訪問 HTTPS 服務,結果就…

【Linux系統】進程信號:信號的產生和保存

上篇文章我們介紹了Syetem V IPC的消息隊列和信號量,那么信號量和我們下面要介紹的信號有什么關系嗎?其實沒有關系,就相當于我們日常生活中常說的老婆和老婆餅,二者并沒有關系1. 認識信號1.1 生活角度的信號解釋(快遞比…

WEB服務器(靜態/動態網站搭建)

簡介 名詞:HTML(超文本標記語言),網站(多個網頁組成一臺網站),主頁,網頁,URL(統一資源定位符) 網站架構:LAMP(linux(系統)+apache(服務器程序)+mysql(數據庫管理軟件)+php(中間軟件)) 靜態站點 Apache基礎 Apache官網:www.apache.org 軟件包名稱:…

開發避坑指南(29):微信昵稱特殊字符存儲異常修復方案

異常信息 Cause: java.sql.SQLException: Incorrect string value: \xF0\x9F\x8D\x8B\xE5\xBB... for column nick_name at row 1異常背景 抽獎大轉盤,抽獎后需要保存用戶抽獎記錄,用戶再次進入游戲時根據抽獎記錄判斷剩余抽獎機會。保存抽獎記錄時需要…

leetcode-python-242有效的字母異位詞

題目&#xff1a; 給定兩個字符串 s 和 t &#xff0c;編寫一個函數來判斷 t 是否是 s 的 字母異位詞。 示例 1: 輸入: s “anagram”, t “nagaram” 輸出: true 示例 2: 輸入: s “rat”, t “car” 輸出: false 提示: 1 < s.length, t.length < 5 * 104 s 和 t 僅…

【ARM】Keil MDK如何指定單文件的優化等級

1、 文檔目標解決在MDK中如何對于單個源文件去設置優化等級。2、 問題場景在正常的項目開發中&#xff0c;我們通常都是針對整個工程去做優化&#xff0c;相當于整個工程都是使用一個編譯器優化等級去進行的工程構建。那么在一些特定的情況下&#xff0c;工程師需要保證我的部分…

零基礎學Java第二十二講---異常(2)

續接上一講 目錄 一、異常的處理&#xff08;續&#xff09; 1、異常的捕獲-try-catch捕獲并處理異常 1.1關于異常的處理方式 2、finally 3、異常的處理流程 二、自定義異常類 1、實現自定義異常類 一、異常的處理&#xff08;續&#xff09; 1、異常的捕獲-try-catch捕…