【】AI八股-神經網絡相關

Deep-Learning-Interview-Book/docs/深度學習.md at master · amusi/Deep-Learning-Interview-Book · GitHub

?網上相關總結:

小菜雞寫一寫基礎深度學習的問題(復制大佬的,自己復習用) - 知乎 (zhihu.com)

CV面試問題準備持續更新貼 - 知乎 (zhihu.com)

Epoch

  • Epoch?是指完成一次完整的數據集訓練的過程。
  • 比如,有一個數據集有1000個樣本,當網絡用這些樣本訓練一次后,這就是一個epoch。

Iteration

  • Iteration?是指在一個epoch中,使用一個batch進行訓練的次數。
  • 如果你的數據集有1000個樣本,batch size是100,那么一個epoch就會有10次iteration(1000/100=10)。

Batch Size

  • Batch Size?是指每次iteration中用于訓練的樣本數量。
  • 如果你的batch size是100,每次訓練就使用100個樣本。

反向傳播(BP)推導

假設我們有一個簡單的三層神經網絡(輸入層、隱藏層和輸出層):

  1. 輸入層: xxx
  2. 隱藏層: hhh
  3. 輸出層: yyy

前向傳播

  1. 輸入到隱藏層: h=f(Wxhx+bh)h = f(W_{xh} x + b_h)h=f(Wxh?x+bh?) 其中 WxhW_{xh}Wxh? 是輸入到隱藏層的權重矩陣,bhb_hbh? 是隱藏層的偏置向量,fff 是激活函數。

  2. 隱藏層到輸出層: y^=g(Whyh+by)\hat{y} = g(W_{hy} h + b_y)y^?=g(Why?h+by?) 其中 WhyW_{hy}Why? 是隱藏層到輸出層的權重矩陣,byb_yby? 是輸出層的偏置向量,ggg 是輸出層的激活函數,通常在分類問題中是softmax函數。

損失函數

假設我們使用均方誤差損失函數:

其中 yyy 是實際輸出,y^\hat{y}y^? 是預測輸出。

反向傳播

我們需要計算損失 LLL 對每個權重和偏置的梯度,然后更新這些參數。我們從輸出層開始,逐層向后推導。

  1. 輸出層梯度:

  2. 隱藏層到輸出層權重梯度:

  3. 隱藏層到輸出層偏置梯度:

  4. 隱藏層誤差:

  5. 輸入層到隱藏層權重梯度:

  6. 輸入層到隱藏層偏置梯度:

參數更新

使用梯度下降法更新權重和偏置:

其中 η 是學習率。

?深度神經網絡(DNN)反向傳播算法(BP) - 劉建平Pinard - 博客園 (cnblogs.com)

感受野計算

如何計算感受野(Receptive Field)——原理 - 知乎 (zhihu.com)

池化?

1. 池化的作用

池化的主要作用有兩個:

  • 降低計算復雜度:通過減少特征圖的尺寸,減少后續卷積層和全連接層的計算量。
  • 減小過擬合:通過降低特征圖的分辨率,可以使模型更具魯棒性,對輸入數據的小變化不那么敏感。
2. 池化類型

池化操作通常有兩種類型:

  • 最大池化(Max Pooling):從池化窗口中選擇最大值。
  • 平均池化(Average Pooling):從池化窗口中選擇平均值。

?池化(Pooling)的種類與具體用法——基于Pytorch-CSDN博客

一圖讀懂-神經網絡14種池化Pooling原理和可視化(MAX,AVE,SUM,MIX,SOFT,ROI,CROW,RMAC )_圖池化-CSDN博客

卷積神經網絡(CNN)反向傳播算法 - 劉建平Pinard - 博客園 (cnblogs.com)

Sobel邊緣檢測

是圖像處理中常用的技術,它使用卷積核(濾波器)來突出圖像中的邊緣。Sobel算子通過計算圖像灰度值的梯度來檢測邊緣。

1. Sobel算子

Sobel算子有兩個卷積核,一個用于檢測水平方向的邊緣,另一個用于檢測垂直方向的邊緣。

水平Sobel卷積核(Gx)
 

diff

復制代碼

-1 0 1 -2 0 2 -1 0 1

垂直Sobel卷積核(Gy)
 

diff

復制代碼

-1 -2 -1 0 0 0 1 2 1

2. Sobel卷積操作

通過將這兩個卷積核分別與圖像進行卷積操作,可以得到圖像在水平方向和垂直方向上的梯度圖。

卷積計算過程

假設有一個3x3的圖像塊:

 

css

復制代碼

a b c d e f g h i

水平方向的梯度計算(Gx):

 

css

復制代碼

Gx = (c + 2f + i) - (a + 2d + g)

垂直方向的梯度計算(Gy):

 

css

復制代碼

Gy = (g + 2h + i) - (a + 2b + c)

3. 組合梯度

最終的梯度強度可以通過組合Gx和Gy計算得到:

 

scss

復制代碼

G = sqrt(Gx^2 + Gy^2)

梯度計算

通過這些卷積核,我們可以計算圖像在水平方向和垂直方向的梯度。梯度表示圖像灰度值的變化速率,變化速率大的地方就是邊緣。具體來說:

  • 水平方向梯度(Gx):表示圖像從左到右的變化。如果有明顯的水平邊緣,Gx會有大的值。
  • 垂直方向梯度(Gy):表示圖像從上到下的變化。如果有明顯的垂直邊緣,Gy會有大的值。

4. 組合梯度

最終,通過組合水平方向和垂直方向的梯度(通常使用歐幾里得距離),我們可以得到圖像的梯度強度:

計算力(flops)和參數(parameters)數量

(31 封私信 / 80 條消息) CNN 模型所需的計算力(flops)和參數(parameters)數量是怎么計算的? - 知乎 (zhihu.com)

參數共享的卷積環節

不可導的激活函數如何處理

BN

BatchNormalization、LayerNormalization、InstanceNorm、GroupNorm、SwitchableNorm總結_四維layernormal-CSDN博客

Batch Normalization原理與實戰 - 知乎 (zhihu.com)

Normalization操作我們雖然緩解了ICS問題,讓每一層網絡的輸入數據分布都變得穩定,但卻導致了數據表達能力的缺失。BN又引入了兩個可學習(learnable)的參數?𝛾?與?𝛽?。這兩個參數的引入是為了恢復數據本身的表達能力,對規范化后的數據進行線性變換?

重點最后一句

感受野計算?

卷積神經網絡物體檢測之感受野大小計算 - machineLearning - 博客園 (cnblogs.com)

卷積神經網絡的感受野 - 知乎 (zhihu.com)

資源 | 從ReLU到Sinc,26種神經網絡激活函數可視化 (qq.com)

非線性激活函數的線性區域

從 SGD 到 Adam —— 深度學習優化算法概覽(一) - 知乎 (zhihu.com)

一個框架看懂優化算法之異同 SGD/AdaGrad/Adam - 知乎 (zhihu.com)

指數移動平均公式

EMA指數滑動平均(Exponential Moving Average)-CSDN博客

動量梯度下降法(Momentum)

Adagrad

RMSprop

Adam

Adam那么棒,為什么還對SGD念念不忘 (2)—— Adam的兩宗罪 - 知乎 (zhihu.com)

dropout

深度學習-Dropout詳解_深度學習dropout-CSDN博客

Dropout的深入理解(基礎介紹、模型描述、原理深入、代碼實現以及變種)-CSDN博客

一文看盡12種Dropout及其變體-騰訊云開發者社區-騰訊云 (tencent.com)

Pytorch——dropout的理解和使用 - Circle_Wang - 博客園 (cnblogs.com)

1x1卷積?

?(31 封私信 / 80 條消息) 卷積神經網絡中用1*1 卷積有什么作用或者好處呢? - 知乎 (zhihu.com)

深度學習筆記(六):1x1卷積核的作用歸納和實例分析_1x1卷積降維-CSDN博客

AlexNet網絡結構詳解(含各層維度大小計算過程)與PyTorch實現-CSDN博客

深度學習——VGG16模型詳解-CSDN博客

3乘3卷積代替5乘5卷積

經典卷積神經網絡算法(4):GoogLeNet - 奧辰 - 博客園 (cnblogs.com)

1x1卷積降維再接3x3卷積

resnet

兩種ResNet設計

channel不同怎么相加

通過卷積調整

ResNet解析-CSDN博客

(31 封私信 / 80 條消息) resnet(殘差網絡)的F(x)究竟長什么樣子? - 知乎 (zhihu.com)

(31 封私信 / 80 條消息) Resnet到底在解決一個什么問題呢? - 知乎 (zhihu.com)

殘差連接使梯度穩定

ResNet中的恒等映射是一種直接將輸入添加到輸出的操作方式,確保了信息和梯度可以穩定地傳遞。它通過保持梯度的穩定性,防止了梯度消失和爆炸問題,從而使得訓練非常深的網絡成為可能。

(31 封私信 / 80 條消息) ResNet為什么不用Dropout? - 知乎 (zhihu.com)

人工智能 - [ResNet系] 002 ResNet-v2 - G時區@深度學習 - SegmentFault 思否

DenseNet詳解_densenet網絡-CSDN博客

yolo系列

YOLO系列算法全家桶——YOLOv1-YOLOv9詳細介紹 !!-CSDN博客?

?【YOLO系列】YOLOv1論文超詳細解讀(翻譯 +學習筆記)_yolo論文-CSDN博客

YOLO系列算法精講:從yolov1至yolov8的進階之路(2萬字超全整理)-CSDN博客?

NMS

v2引入anchor

?

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

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

相關文章

.net 調用海康SDK的跨平臺解決方案

??歡迎點贊 :?? 收藏 ?留言 ?? 如有錯誤敬請指正,賜人玫瑰,手留余香!??本文作者:由webmote 原創??作者格言:新的征程,我們面對的不僅僅是技術還有人心,人心不可測,海水不可量,唯有技術,才是深沉黑夜中的一座閃爍的燈塔序言 上2篇海康SDK使用以及常見的坑…

PCL 點云PFH特征描述子

點云PFH特征描述子 一、概述1.1 概念1.2 算法原理一、代碼實現二、結果示例一、概述 1.1 概念 點特征直方圖PFH(Point Feature Histograms)描述子:用于表示點云中每個點的局部幾何形狀信息,它是一種直方圖描述子,包括了點云的法線方向和曲率信息,PFH描述子可以幫助區分不同…

深入Django(八)

掌握Django的管理后臺 引言 在前七天的教程中,我們介紹了Django的基礎架構、模型、視圖、模板、URL路由、表單系統以及數據庫遷移。今天,我們將深入了解Django的管理后臺,這是一個功能強大的內置管理界面,用于創建、更新、查看和…

【JavaEE精煉寶庫】文件操作(1)——基本知識 | 操作文件——打開實用性編程的大門

目錄 一、文件的基本知識1.1 文件的基本概念:1.2 樹型結構組織和目錄:1.3 文件路徑(Path):1.4 二進制文件 VS 文本文件:1.5 其它: 二、Java 操作文件2.1 方法說明:2.2 使用演示&…

QT面試筆記總計

一 Qt 保證多線程安全? 使互斥鎖保證多線程安全性。QMutex類、。使用讀寫鎖保證多線程安全性,QReadWriteLock。使用信號和槽機制保證多線程安全性。使用顯示切換保證多線程安全性。QTread類。 Qt 中的事件與信號的區別? 事件與信號的實現機制不同;事…

HCIA綜合實驗

學習新思想,爭做新青年。今天學習的是HCIA綜合實驗! 實驗拓撲 實驗需求 總部: 1、除了SW8 SW9是三層交換機,其他交換機均為2層交換機。 2、GW為總部的出口設備,使用單臂路由技術,VLAN10,20,100的網關都在GW…

ERROR: “armeabi-v7a“ not supported for HarmonyOS

IDE 從 devecostudio-mac-4.1.3.700 升級至 devecostudio-mac-5.0.3.403 后拋出了如下異常: ERROR: "armeabi-v7a" not supported for HarmonyOS. 解決辦法 一.entry/build-profile.json5 需 entry/build-profile.json5 的 abiFilters 中移除 "armeabi-v7a&qu…

計算機網絡體系結構詳解:協議與分層

在學習計算機網絡時,理解網絡協議與分層體系結構是至關重要的。本文將詳細介紹這些概念,幫助基礎小白快速入門。 1. 什么是網絡協議 網絡協議是計算機網絡中用于數據交換的規則和標準。這些規則規定了數據格式、時序以及發送和接收數據時的動作。網絡協…

Unity3D瓦片地圖輔助定位工具

介紹 該工具用于TileMap的瓦片輔助定位,通過鍵盤或鼠標按瓦片尺寸0到1的比例作為單次移動值移動定位點游戲對象。當采用定位點游戲對象映射瓦片時,可使用該工具來移動定位點游戲對象,在新版本Unity3D的TileMap編輯器中可使用GameObject Brush…

基于java+springboot+vue實現的流浪動物管理系統(文末源碼+Lw)277

摘 要 在如今社會上,關于信息上面的處理,沒有任何一個企業或者個人會忽視,如何讓信息急速傳遞,并且歸檔儲存查詢,采用之前的紙張記錄模式已經不符合當前使用要求了。所以,對流浪動物信息管理的提升&…

【React】React18 Hooks之useState

目錄 useState案例1(直接修改狀態)案例2(函數式更新)案例3(受控表單綁定)注意事項1:set函數不會改變正在運行的代碼的狀態注意事項2:set函數自動批量處理注意事項3:在下次…

實現基于Spring Security的權限管理系統

實現基于Spring Security的權限管理系統 大家好,我是免費搭建查券返利機器人省錢賺傭金就用微賺淘客系統3.0的小編,也是冬天不穿秋褲,天冷也要風度的程序猿! 在現代Web應用中,權限管理系統是至關重要的組成部分。通過…

[數據集][目標檢測]護目鏡檢測數據集VOC+YOLO格式888張1類別

數據集格式:Pascal VOC格式YOLO格式(不包含分割路徑的txt文件,僅僅包含jpg圖片以及對應的VOC格式xml文件和yolo格式txt文件) 圖片數量(jpg文件個數):888 標注數量(xml文件個數):888 標注數量(txt文件個數):888 標注類別…

ORB 特征點提取

FAST關鍵點 選取像素p,假設它的亮度為Ip; . 設置一個閾值T(比如Ip的20%); 以像素p為中心,選取半徑為3的圓上的16個像素點; 假如選取的圓上,有連續的N個點的亮度大于IpT或小于…

Redis 八股文

標題 1. Redis主從同步原理:判斷下線的條件:故障轉移如何保證Sentinel高可用 1. Redis主從同步原理: 1、slave執行命令向master建立連接 2、master執行bgsave(后臺存儲),生成rdb快照(redis備份方式&#x…

FreeRTOS中vTaskDelay 和 xTaskDelayUntil 的區別?

vTaskDelay 和 xTaskDelayUntil 是 FreeRTOS 提供的兩種不同任務延遲函數,各自有其適用的場景和優缺點。vTaskDelay 適用于簡單的延遲操作,而 xTaskDelayUntil 提供了精確的周期控制能力。在設計 FreeRTOS 應用程序時,根據任務的時間要求選擇…

日志自動分析-Web---360星圖GoaccessALBAnolog

目錄 1、Web-360星圖(IIS/Apache/Nginx) 2、Web-GoAccess (任何自定義日志格式字符串) 源碼及使用手冊 安裝goaccess 使用 輸出 3-Web-自寫腳本(任何自定義日志格式字符串) 4、Web-機器語言analog(任何自定義日…

游戲AI的創造思路-技術基礎-強化學習(1)

我們“強化”一下機器的“學習”,讓機器變得更強~~~~ 目錄 1. 強化學習的定義 2. 發展歷史 3. 強化學習的基本概念和函數 3.1. 基本概念和函數 3.1.1. 基本概念和函數 3.1.2. Q函數 3.1.2.1. 定義與作用 3.1.2.2. 數學表示 3.1.2.3. 更新規則 3.1.2.4. 算…

AI時代算法面試:揭秘高頻算法問題與解答策略

三種決策樹算法的特點和區別 ID3算法:基本的決策樹算法,適用于簡單的分類問題C4.5算法:改進了ID3算法,適用于更復雜的分類問題,可以處理連續型數據和缺失值CART算法:更加通用的決策樹算法,適用于…

云服務器在 Web 應用程序中作用

云服務器在Web應用程序中扮演著至關重要的角色,它不僅是現代Web應用程序的基石,還是推動業務發展和提升用戶體驗的關鍵技術之一。下面將詳細探討云服務器在Web應用程序中的重要作用及其優勢。 首先,云服務器為Web應用程序提供了高度可擴展的…