資源簡介 (共45張PPT)第2單元 第2課卷積神經網絡及其應用(清華大學版)八年級下1核心素養目標3新知講解5拓展延伸7板書設計2新知導入4課堂練習6課堂總結課后作業801核心素養目標信息意識計算思維數字化學習與創新信息社會責任意識到深度學習模型可能會帶來偏見(如數據偏見、算法歧視等),并且在應用這些技術時要考慮社會的公平性、隱私保護等問題。通過掌握CNN的基本原理和方法,學生能夠運用計算機技術來解決實際生活中的復雜問題,從而在各種行業中實現創新應用。通過學習CNN,能掌握如何分解問題、設計算法(卷積、池化等操作)優化網絡結構(如調整超參數、選擇不同的網絡架構等)。能夠具備處理和分析海量數據的能力,理解深度學習模型如何通過處理大數據來完成任務,如圖像識別、視頻處理等。02新知導入本課中你將學習:什么是卷積神經網絡如何訓練卷積神經網絡如何用訓練好的網絡進行推理02新知導入隨著層數的加深,神經網絡從數據中提取特征的能力也大大提升,但新的問題緊跟而來:相對于 CSV數據等表格數據,圖像和語音中的數據量要大很多。網絡層數、圖像分辨率等因素的增加,使所需要的參數急劇增長,不僅會導致模型訓練時間變長,模型推理效率變低,甚至還會導致模型無法正常訓練。于是,科學家再次從生物神經學領域找到靈感,仿照人類的視知覺處理機制提出了卷積神經網絡,有效地解決了神經網絡在計算機視覺領域的應用難題。02新知導入03新知講解一、認識卷積神經網絡卷積神經網絡(convolutional neural network,CNN)是一種特殊的神經網絡,在深度學習中應用非常廣泛,也是深度神經網絡中最具影響力的一種模型。要理解卷積神經網絡,首先要了解圖像的數字化原理。03新知講解1.圖像的數字化原理圖像是由一個個像素點構成的。對于黑白圖像來說,像素點的值只有兩種,即 0和1,分別代表黑、白兩種顏色。而灰度圖像中像素點的亮暗程度,則是通過0~255 的數值控制,從而顯示出不同的圖案。將一張灰度圖像壓縮為 25x25 像素,再通過 Python 代碼讀取圖像灰度值,結果如圖 2.2.1 所示。03新知講解彩色圖像的數字化原理與黑白圖像類似,只不過是用RGB(紅、綠:藍)三原色混合而得到各種色彩。如圖2.2.2所示,用Python 代碼讀取彩色圖像,每一個像素點會出現由三個0~255 的數值組成的列表,這三個值對應像素點的 R、G、B 三種顏色。圖 2.2.2 中的[255 255 255] 表示白色,[174 179 184]表示一種帶有藍綠色調的淺灰色。03新知講解2.卷積神經網絡的作用神經網絡用圖像作為訓練數據時,需要讀取整幅圖像作為神經網絡模型的輸入。以全連接神經網絡為例,假如輸入的是一幅100x100 像素的灰度圖像,那么輸入層就有 100x100個神經元,隱藏層任何一個神經元都將有 100x100 個參數需要訓練,即使隱藏層和輸入層的神經元數量一致,僅僅兩層神經網絡就有 100x100x100x100 個參數。03新知講解這個計算量非??膳?。因此,神經網絡層數不斷增多,會出現“參數爆炸”的情況。如圖2.2.3 所示,x表示輸入元素,每一根連接線代表一個參數,圖(b)比圖(a)多了2個輸入數據,參數卻多了 10個。如果輸入元素由5x5像素(5行5列25 個像素)的圖像變為 10x10 像素的圖像,參數會迅速變為原來的很多倍。03新知講解科學家在腦神經科學領域找到了新的突破,他們參考動物視覺感受野(指單個或一組神經元對視覺刺激產生反應的區域范圍)的理論設計了卷積神經網絡。卷積神經網絡中有兩種特殊的網絡,分別為卷積層和池化層。卷積層用來提取圖像的特征,池化層用來減少數據的運算量。對于計算機來說,圖像不過是一個充滿數字的表格,這種表格在數學上叫做數字矩陣,而卷積和池化就是數字矩陣中的兩種重要的“計算”方法。03新知講解如圖 2.2.4 所示,與全連接神經網絡相比,卷積神經網絡的卷積層每個神經元僅與上一層的某個區域連接,這樣參數量就大大減少。03新知講解卷積神經網絡最早由圖靈獎獲得者楊立昆(Yann LeCun)教授在1998年提出,隨后在各個方面被廣泛應用。2012年辛頓團隊奪冠的 AlexNet 是卷積神經網絡的代表作之一。經過多年的發展,除了圖像處理之外,語音識別、自然語言處理等領域也都離不開卷積神經網絡。03新知講解二、LeNet 模型的搭建LeNet 模型由楊立昆提出,是第一個成功應用于數字識別問題的卷積神經網絡,在經典的數字手寫體(MNIST)數據集上,LeNet模型可以達到約 99.2%的正確率。LeNet模型是卷積神經網絡人們的模型,至今依然被廣泛應用于一些簡單的圖像分類場景。03新知講解1.認識 LeNet 模型的結構LeNet 模型有多個版本,一般指 LeNet-5 模型。如圖 2.2.5 所示,在每一個卷積層的后面都有一個池化層,用來減少數據和參數的數量。很多人模仿LeNet 模型,通過增加或者減少卷積層和池化層的數量,搭建解決特定任務的神經網絡模型。如果數據集使用的是灰度圖像,特征比較明顯且圖像尺寸較小,直接使用 LeNet 模型一般也能取得很不錯的效果。03新知講解LeNet-5 模型共有7層,輸入的是 32x32像素的灰度圖像,經過一層卷積后,得到6個28x28的特征圖;這些特征圖經過池化后,變為6個14x14的特征圖;特征圖再依次經過卷積、池化、展平處理,得到120個1x1的特征圖;最后經過兩個全連接層后,實現10個手寫數字分類。LeNet-5 模型的參數數量僅為6萬多個,是一個效率非常高的模型。03新知講解2.用 BaseNN 搭建 LeNet 模型使用 BaseNN 可以搭建出一個LeNet 模型,且代碼輸出結果會呈現各層說明。運行結果如下。03新知講解上面的代碼中,用“model.add()”添加神經網絡層,其中 Conv2D 表示添加的是卷積層,MaxPool表示添加的是最大池化層,Linear表示添加的是全連接層。七層網絡結構中前幾層用 ReLU 激活函數,最后一層用Softmax激活函數。03新知講解三、LeNet 模型的訓練深度學習是機器學習的一個重要分支,因此,深度學習的模型訓練流程和機器學習是一致的。相對來說,深度學習在訓練數據的容量、模型搭建的難度、訓練方法的復雜性和對算力的要求方面,都要超過其他機器學習。尤其是深度學習的訓練數據多、模型復雜,算力設備對訓練速度的影響很大?!皵祿侨剂希P褪且?,算力是加速器”,支持并行計算的GPU 設備成為深度學習模型訓練的基礎設施。03新知講解1.常見的深度學習模型訓練工具深度學習的開發框架都可以用來訓練深度學習模型,但難度較高。為了降低模型訓練的技術門檻,一些企業和研究機構逐步推出了專用的深度學習模型訓練工具或者平臺,實現以低代碼或者無代碼(也稱零代碼)的形式訓練模型,即不寫代碼或者寫一點代碼,就能訓練出深度學習的模型。03新知講解從用 BaseML 訓練機器學習模型的過程中,可以看出訓練模型的程序代碼其實非常簡單,甚至看不到分支結構和循環結構。因此,開發無代碼訓練深度學習模型的工具的難度并不高。一些面向青少年學習人工智能的平臺也增加了無代碼訓練的插件,如圖2.2.6所示的是 XEdu 系列工具中的EasyTrain。03新知講解2.用無代碼工具訓練 LeNet 模型EasyTrain 是 XEdu 中的無代碼訓練插件,需要在 MMEdu 和 BaseNN的環境下運行。借助 EasyTrain,不需要編寫代碼就可以訓練一個 LeNet 模型,適用于人工智能入門初學者。03新知講解啟動 EasyTrain后,瀏覽器將自動打開一個本地網頁。頁面上方呈現一個進度條,根據進度流程的提示完成所有操作即可完成模型訓練。LeNet是一個圖像分類模型,先選擇“分類任務”,再選擇“LeNet”模型,完成“數據集選擇”。然后開始設置參數,其中分類數量要和數據集保持一致,最后單擊“生成代碼”按鈕,網頁中將生成一段訓練代碼,如圖 2.2.7 所示。03新知講解單擊“進入訓練”按鈕,瀏覽器便會跳轉至訓練頁面。頁面中的“loading”表示模型正在訓練。如圖 2.2.8所示,訓練過程中會可視化呈現兩個圖,分別是損失函數曲線(Loss Chart)和識別準確率曲線(AccuracyChart ),圖中的橫坐標為訓練輪數,縱坐標為對應數值。訓練結束后,頁面上會顯示模型保存的路徑。03新知講解使用 EasyTrain 訓練模型雖然不用編寫代碼,但也需要做一些準備工作并了解深度學習的知識。比如,要準備一個符合要求的數據集,并保存在規定的位置(關于數據集的格式在第3課介紹)。再如,了解各種模型和超參數的作用。超參數是模型開始訓練之前設置值的參數。03新知講解超參數設置是訓練模型工作的重點,如輪數(epoch)、學習率(lr)等。輪數表示要訓練多少輪,學習率用來控制模型在訓練過程中的模型權重更新速度。第一次訓練模型時直接使用默認值訓練即可。隨著對模型和超參數理解的加深,我們就能基于其他網絡結構(如 MobileNet、ResNet 等)訓練出更好的模型。03新知講解閱讀自動化機器學習(automated machine learning,AutoML)的出現是為了簡化機器學習的整個流程,讓非專業的用戶也能夠利用機器學習的技術解決實際問題。03新知講解閱讀可以把 AutoML想象成一臺“自動洗衣機”。訓練模型就像我們把臟衣服放進洗衣機,選擇合適的洗滌程序,按下“啟動”按鈕,洗衣機就會自動完成清洗、漂洗、脫水等一系列復雜的過程。同樣,只要提供數據,AutoML也會自動完成數據預處理、模型選擇、超參數調整、訓練、評估等一系列復雜的機器學習流程。即使是對機器學習一竅不通的人,也能夠輕松地利用機器學習解決實際問題。03新知講解借助 EasyTrain,不需要編寫代碼就能訓練各種經典的卷積神經網絡模型,用來解決各種圖像分類的問題。請以小組為單位,使用XEdu內置的昆蟲數據集訓練LeNet 模型,并體驗模型的推理準確度。核心實踐內容包括:(1)在 EasyTrain中選擇分類任務,選擇LeNet模型和昆蟲數據集完成類別、數量等參數設置并進行訓練。(2)生成代碼并啟動模型訓練,觀察準確率變化和訓練時長。(3)使用模型轉換得到的 ONNX模型和代碼,按照代碼說明運行并輸入測試集中的圖片進行推理。注:ONNX(open neural netvork exchange)是一種開放的深度學習模型交換格式。挑戰04課堂練習一、選擇題1、卷積神經網絡的核心操作是什么?A. 反向傳播 B. 卷積操作C. 數據預處理 D. 激活函數2、在卷積神經網絡中,什么層用于降低圖像的分辨率?A. 卷積層 B. 池化層C. 全連接層 D. 激活層3、卷積神經網絡中常用的激活函數是哪個?A. Sigmoid B. TanhC. ReLU D. SoftmaxBBC04課堂練習4、在卷積神經網絡中,卷積層的作用是?A. 進行數據降維 B. 進行特征提取C. 進行全連接 D. 進行激活操作二、判斷題1、卷積神經網絡在圖像分類中,池化層的作用是減少計算量并保留重要信息。( )2、卷積神經網絡的訓練過程完全依賴于監督學習。( )3、卷積神經網絡主要用于處理結構化數據。( )4、在CNN中,池化層會增加網絡的計算復雜度。( )B√√XX04課堂練習三、操作題圖像分類任務目標:使用卷積神經網絡進行手寫數字識別(MNIST數據集)。任務:使用Keras或PyTorch搭建一個基本的CNN模型來識別MNIST數據集中的數字。訓練并評估模型的準確率。調整模型的結構(例如卷積層和池化層的數量),觀察對模型性能的影響。05拓展延伸卷積神經網絡的高級結構ResNet(Residual Networks)通過引入“殘差連接”(residual connections)來解決深度神經網絡訓練中的梯度消失或梯度爆炸問題。殘差連接允許信息跨層傳播,避免了隨著層數增加,信息和梯度的丟失。具體創新點包括:殘差塊:每個殘差塊將輸入信號和通過卷積層的輸出信號相加,這種跳躍連接使得深層網絡的訓練變得更加容易。提高模型的深度:殘差連接使得可以訓練非常深的網絡,如ResNet-50、ResNet-101等,而不會遭遇性能下降的問題。05拓展延伸卷積神經網絡的高級結構Inception網絡(或GoogleNet)通過引入多尺度的卷積核來捕捉不同尺寸的特征,采用了“混合卷積”的方式。這種結構的創新包括:Inception模塊:每個模塊中包含不同大小的卷積核(1x1, 3x3, 5x5),以及池化操作,這些操作可以并行進行,然后將結果合并。1x1卷積:用1x1卷積來減少特征圖的維度,從而減少計算量。05拓展延伸深度學習中的遷移學習與微調遷移學習是一種使用在一個任務上訓練好的模型,來幫助解決另一個相關任務的方法。遷移學習有兩個常見策略:1. 直接遷移:將預訓練的模型應用于一個相似的任務,直接使用預訓練權重。2. 微調(Fine-tuning):凍結大部分網絡層,只調整某些層的權重,特別是網絡的最后幾層。這種方法可以在相對較少的樣本上進行高效的訓練,提高模型在新任務上的性能。05拓展延伸深度學習中的遷移學習與微調微調通常涉及將預訓練模型的最后幾層替換成新的任務相關的層,然后對網絡進行少量訓練。通過微調,可以在大規模數據集(如ImageNet)上預訓練的模型基礎上,通過少量數據對特定任務進行調整,提高模型的泛化能力。05拓展延伸模型壓縮與加速量化(Quantization):通過將模型參數從高精度(如32位浮點數)轉化為低精度(如8位整數)來減少模型的存儲和計算需求。量化后,模型運行速度提高,內存占用降低。剪枝(Pruning):剪枝是通過去除神經網絡中不重要的神經元(權重小的連接)來減少模型的復雜度。剪枝可以降低計算量和存儲需求,并在某些情況下提高模型的泛化能力。05拓展延伸神經網絡的優化算法優化算法在深度學習中至關重要,它們決定了模型訓練的效率和穩定性。以下是幾種常用的優化算法:SGD(Stochastic Gradient Descent):傳統的隨機梯度下降方法,通過計算每個樣本的梯度來更新模型參數,具有較強的可解釋性,但收斂速度較慢。Momentum:通過引入慣性項來加速SGD的收斂過程,避免了振蕩,尤其在梯度變化較大的情況下表現良好。05拓展延伸神經網絡的優化算法Adam(Adaptive Moment Estimation):結合了RMSprop和Momentum的優點,使用梯度的一階矩和二階矩來調整學習率,收斂速度快且表現穩定。RMSprop:通過對過去梯度的平方進行指數衰減加權平均來動態調整學習率,尤其適合處理非平穩目標函數。06課堂總結1引入新知內容卷積神經網絡及其應用2認識卷積神經網絡3學習LeNet 模型的搭建和訓練4完成課堂練習5進行知識拓展1234507板書設計卷積神經網絡及其應用1、進行新知引入2、認識卷積神經網絡3、學習LeNet 模型的搭建和訓練4、完成課堂練習5、進行知識拓展課后作業。1、卷積神經網絡項目的應用2、課堂小結08課后作業1、設計一個卷積神經網絡應用的項目,選擇一個實際問題(如醫學影像分析、垃圾分類等),描述如何利用CNN來解決該問題,包括數據收集、網絡架構設計、訓練和評估等方面。2、總結本課所學內容。https://www.21cnjy.com/recruitment/home/fine 展開更多...... 收起↑ 資源列表 【清華大學版】《信息科技》八年級下冊第2單元第2課《卷積神經網絡及其應用》.pptx 引入視頻.mp4 縮略圖、資源來源于二一教育資源庫