【深度學習】CNN簡述

文章目錄

  • 一、卷積神經網絡(CNN)
  • 二、CNN結構特性
    • 1. CNN 典型結構
    • 2. 局部連接
    • 3. 權重共享
    • 4.空間或時間上的次采樣
  • 三、理解層面


一、卷積神經網絡(CNN)

  • 卷積神經網絡(Convolutional Neural Network,CNN)是一種用于處理圖像和其他多維數據的深度學習模型。它在計算機視覺任務中表現出色,如圖像分類、目標檢測、語義分割等。
  • CNN的核心思想是利用卷積操作來提取圖像的特征,并通過層層堆疊的方式進行深度學習。CNN

二、CNN結構特性

1. CNN 典型結構

  • 卷積塊:由連續 M(2 - 5)個卷積層和 b(0 或 1)個池化層構成。多個卷積層可逐步提取不同層次的圖像特征,池化層則在適當位置對數據降維。
  • 卷積網絡堆疊:一個卷積網絡中可堆疊 N(1 - 100 或更大)個連續的卷積塊,之后連接 K(0 - 2)個全連接層。卷積塊負責特征提取,全連接層整合特征用于最終任務。CNN典型結構

2. 局部連接

傳統FNN中神經元與所有輸入相連,參數眾多;而CNN里神經元僅與輸入數據的局部區域相連,大幅降低參數數量,增強了模型對圖像的特征提取能力。

全連接神經網絡(FNN)
FNN 的局限性:

  • 參數巨大:權重矩陣的參數數量龐大,計算量呈指數級增長和訓練時間過長。
  • 特征提取困難:圖像具有局部不變性特點,即局部區域特征在不同位置可能具有相似性,但 FNN 難以有效捕捉這類特征,限制了其在圖像分析任務中的表現。

FNNvsCNN

  • 卷積層(Convolutional Layer)
    • 功能:卷積層是 CNN 的核心組件,主要負責提取圖像的局部特征,并完整輸出特征圖。
    • 參數包含
      • 卷積核(Kernels):卷積核如同特征提取的 “探測器”,具有不同的個數、大小(用寬 W 和高 H 表示)以及通道數(Channel,分為單通道和多通道)。不同的卷積核能夠捕捉不同類型的特征,如邊緣、紋理等。
      • 步長(Stride):步長用于控制卷積核在輸入數據上滑動的距離,不同的步長設置會改變輸出特征圖的大小。較大的步長會使特征圖尺寸變小,減少計算量,但可能會丟失一些細節信息;較小的步長則能保留更多細節,但計算量會相應增加。
      • 補邊/填充(Padding):為避免卷積操作時邊緣信息的丟失,在輸入數據的邊緣添加像素值,即補邊 / 填充。通過合適的填充,可以使卷積操作后的輸出和輸入尺寸保持一致,確保邊緣區域的特征也能被有效提取。

卷積核滑過輸入特征圖((Input FeatureMap),滑動到每一個位置時,卷積核中的每個元素與其覆蓋的陰影部分輸入數據對應位置的每個元素做乘積再求和,得到表示當前位置的輸出數據,在全部滑動位置都計算完成后,就得到了輸出矩陣,也叫做輸出特征圖(Output Feature Map)
其中卷積核也叫過濾器或者濾波器,濾波器在輸入像素矩陣上掃過的面積稱之為感受野卷積

  • 池化層(Pooling Layer)

    • 功能:池化層也稱為下采樣層,通常在連續的卷積層之間會周期性地插入一個池化層。降低數據維度,減少參數數量,降低計算復雜度。
    • 常見的池化類型有:
      • 平均池化AveragePool:計算局部區域的平均值作為新元素,對特征進行平滑處理,保留整體特征的同時減少噪聲影響。
      • 最大池化MaxPool:選取局部區域的最大值作為新的特征圖元素,能夠突出顯著特征,例如在圖像中強化邊緣和紋理等關鍵信息。
        [圖片]
    • 反池化:與池化操作相反,用于在特定場景下恢復數據的維度,在一些需要上采樣的任務中發揮作用。
    • 池化層也有步長(Stride)參數,計算輸出大小時一般不需要 填充(Padding)。
  • 全連接層(Fully Connected Layer)

    • 位于卷積層之后,需先將卷積層輸出的特征圖“攤平” 。
    • 功能:整合之前所有層提取的特征,使網絡擁有全局視野,用于最終分類或回歸任務。連接前一層的特征,將輸出值傳入激活函數(如Softmax、ReLU等)。

激活函數(Activation Function)

  • 卷積層和池化層后通常會添加激活函數,用于引入非線性特性。
  • 常見的激活函數:
    • ReLU
      [圖片]
    • Sigmoid
      [圖片]
    • Softmax
      [圖片]

3. 權重共享

同一卷積核在處理圖像不同位置時,權重保持不變。這極大減少了參數數量,同時也體現了圖像局部不變性的特性,即相同特征無論出現在圖像何處,都能用同一卷積核檢測。
[圖片]

4.空間或時間上的次采樣

主要由池化層實現,在空間(圖像場景)或時間(視頻等時間序列數據場景)維度上對數據進行下采樣,降低數據規模,突出關鍵特征。

三、理解層面

  • 特征學習:CNN旨在學習輸入圖像的特征。通過多層網絡結構,逐步從原始像素數據中提取不同層次的特征。
  • 層級理解
    • 前幾層主要檢測圖像的邊緣、線條等基礎特征。
    • 中間幾層開始檢測物體的部分區域,如紋理、形狀片段等。
    • 靠后幾層能夠檢測完整的物體,實現對圖像內容更高級、更抽象的理解。

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

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

相關文章

理解OSPF 特殊區域NSSA和各類LSA特點

本文基于上文 理解OSPF Stub區域和各類LSA特點 在理解了Stub區域之后,我們再來理解一下NSSA區域,NSSA區域用于需要引入少量外部路由,同時又需要保持Stub區域特性的情況 一、 網絡總拓撲圖 我們在R1上配置黑洞路由,來模擬NSSA區域…

論文閱讀筆記:Denoising Diffusion Implicit Models (5)

0、快速訪問 論文閱讀筆記:Denoising Diffusion Implicit Models (1) 論文閱讀筆記:Denoising Diffusion Implicit Models (2) 論文閱讀筆記:Denoising Diffusion Implicit Models &#xff08…

藍橋杯2024年第十五屆省賽真題-R 格式

題目鏈接&#xff1a; 思路&#xff1a; 通過數組模擬d的每一位&#xff0c;逐位進行計算&#xff0c;從而實現對d的精確處理。 代碼&#xff1a; #include<bits/stdc.h> #define int long long using namespace std; const int N 2020;int n; string s; vector<i…

深入探索 Linux Top 命令:15 個實用示例

在 Linux 系統管理中&#xff0c;top 命令是系統性能監控不可或缺的工具。它能夠實時顯示系統的 CPU、內存、進程等資源的使用情況&#xff0c;幫助您快速識別性能瓶頸和異常進程。本文將詳細介紹 15 個實用的 top 命令使用示例&#xff0c;旨在幫助您更高效地進行系統管理與優…

15.1linux設備樹下的platform驅動編寫(知識)_csdn

上一章我們詳細的講解了 Linux 下的驅動分離與分層&#xff0c;以及總線、設備和驅動這樣的驅動框架。基于總線、設備和驅動這樣的驅動框架&#xff0c; Linux 內核提出來 platform 這個虛擬總線&#xff0c;相應的也有 platform 設備和 platform 驅動。 上一章我們講解了傳統的…

Eclipse 視圖(View)

Eclipse 視圖(View) Eclipse 視圖(View)是 Eclipse 界面的重要組成部分,它提供了用戶交互的平臺,使得用戶可以通過圖形界面來編輯、調試、分析代碼等。在本文中,我們將深入探討 Eclipse 視圖的功能、使用方法以及它們在軟件開發中的作用。 1. 視圖的功能 Eclipse 視圖具…

Python解決“數字插入”問題

Python解決“數字插入”問題 問題描述測試樣例解題思路代碼 問題描述 小U手中有兩個數字 a 和 b。第一個數字是一個任意的正整數&#xff0c;而第二個數字是一個非負整數。她的任務是將第二個數字 b 插入到第一個數字 a 的某個位置&#xff0c;以形成一個最大的可能數字。 你…

ubuntu部署ollama+deepseek+open-webui

ubuntu部署ollamadeepseekopen-webui 全文-ubuntu部署ollamadeepseekopen-webui 大綱 Ollama部署 安裝Ollama&#xff1a;使用命令apt install curl和curl -fsSL https://ollama.com/install.sh | sh ollama-v網絡訪問配置&#xff1a;設置環境變量OLLAMA_HOST0.0.0.0:11434&…

Java的Selenium常用的元素操作API

click 觸發當前元素的點擊事件 clear() 清空內容 sendKeys(...) 往文本框一類元素中寫入內容 getTagName() 獲取元素的的標簽名 getAttribute(屬性名) 根據屬性名獲取元素屬性值 getText() 獲取當前元素的文本值 isDisplayed() 查看元素是否顯示 get(String url) 訪…

洛谷題單3-P1035 [NOIP 2002 普及組] 級數求和-python-流程圖重構

題目描述 已知&#xff1a; S n 1 1 2 1 3 … 1 n S_n 1\dfrac{1}{2}\dfrac{1}{3}…\dfrac{1}{n} Sn?121?31?…n1?。顯然對于任意一個整數 k k k&#xff0c;當 n n n 足夠大的時候&#xff0c; S n > k S_n>k Sn?>k。 現給出一個整數 k k k&#xff0…

CMDB平臺(進階篇):3D機房大屏全景解析

在數字化轉型的浪潮中&#xff0c;數據中心作為企業信息架構的核心&#xff0c;其高效、智能的管理成為企業競爭力的關鍵因素之一&#xff0c;其運維管理方式也正經歷著革命性的變革。傳統基于二維平面圖表的機房監控方式已難以滿足現代企業對運維可視化、智能化的需求。樂維CM…

小白速通:Verilog流水線實現及時序分析

目錄 題目&#xff1a;時序分析&#xff1a;時鐘頻率為50MHz數據1: a10, b20, c30, d40, e2數據2: a5, b15, c25, d35, e3數據3: a8, b12, c16, d24, e4 流水線效率分析 題目&#xff1a; verilog中&#xff0c;y(abcd)*e&#xff0c;時鐘頻率為50Mhz&#xff0c;用流水線的形式…

【RK3588 嵌入式圖形編程】-SDL2-掃雷游戲-創建網格

創建網格 文章目錄 創建網格1、概述2、更新Globals.h文件3、創建單元4、創建網格5、傳遞事件6、清空單元7、反饋單元格已清除8、測試9、完整代碼10、總結在本文中,將詳細介紹如何構建一個二維的交互式掃雷單元格網格。 1、概述 在本文中,我們將專注于構建掃雷游戲的基礎結構…

高精度矢量內積計算方法 (單精度浮點, 超長矢量)

高精度矢量內積計算方法 (單精度浮點, 超長矢量) 對于單精度浮點類型的超長矢量(超過1億元素)內積計算&#xff0c;累加誤差確實是一個重要問題。以下是幾種減少誤差的方法&#xff1a; 1. Kahan求和算法 這是最常用的補償求和算法&#xff0c;可以有效減少累加誤差&#xf…

Java基礎:Logback日志框架

什么是日志 日志技術 可以將系統執行信息&#xff0c;方便的記錄到指定位置&#xff08;控制臺&#xff0c;文件中&#xff0c;數據庫中&#xff09; 可以隨時可以開關的形式控制日志的啟停&#xff0c;無需侵入到源代碼中去進行修改 LogBack日志框架 LogBack快速入門 logb…

MessageQueue --- RabbitMQ WorkQueue and Prefetch

MessageQueue --- RabbitMQ WorkQueue and Prefetch 什么是WorkQueue分發機制 --- RoundRobin分發機制 --- PrefetchSpring example use prefetch --- Fair Dispatch 什么是WorkQueue Work queues&#xff0c;任務模型。簡單來說就是讓多個消費者綁定到一個隊列&#xff0c;共同…

RNN模型與NLP應用——(9/9)Self-Attention(自注意力機制)

聲明&#xff1a; 本文基于嗶站博主【Shusenwang】的視頻課程【RNN模型及NLP應用】&#xff0c;結合自身的理解所作&#xff0c;旨在幫助大家了解學習NLP自然語言處理基礎知識。配合著視頻課程學習效果更佳。 材料來源&#xff1a;【Shusenwang】的視頻課程【RNN模型及NLP應用…

詳解AI采集框架Crawl4AI,打造智能網絡爬蟲

大家好&#xff0c;Crawl4AI作為開源Python庫&#xff0c;專門用來簡化網頁爬取和數據提取的工作。它不僅功能強大、靈活&#xff0c;而且全異步的設計讓處理速度更快&#xff0c;穩定性更好。無論是構建AI項目還是提升語言模型的性能&#xff0c;Crawl4AI都能幫您簡化工作流程…

從零開始玩python--python版植物大戰僵尸來襲

大家好呀&#xff0c;小伙伴們&#xff01;今天要給大家介紹一個超有趣的Python項目 - 用pygame制作植物大戰僵尸游戲的進階版本。相信不少小伙伴都玩過這款經典游戲&#xff0c;今天我們就用Python來實現它&#xff0c;讓編程學習變得更加有趣&#xff01;&#x1f31f; 一、…

圖解AUTOSAR_SWS_FlashTest

AUTOSAR Flash Test模塊詳解 基于AUTOSAR 4.4.0規范的Flash測試模塊分析與圖解 目錄 概述 1.1 Flash Test模塊的作用 1.2 工作原理架構設計 2.1 整體架構 2.2 依賴關系狀態管理 3.1 狀態轉換圖 3.2 前臺與后臺測試模式配置結構 4.1 配置類圖 4.2 關鍵配置參數交互流程 5.1 序列…