




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
第5章機器學習與深度學習任務1:使用機器學習實現(xiàn)鳶尾花分類任務2:使用深度學習實現(xiàn)手寫數(shù)字識別機器學習的概念機器學習分類機器學習的流程機器學習的應用場景深度學習概述感知機深度神經(jīng)網(wǎng)絡2任務2:使用深度學習實現(xiàn)手寫數(shù)字識別深度學習概述感知機深度神經(jīng)網(wǎng)絡深度學習概述1深度學習定義深度學習(DeepLearning)是機器學習領(lǐng)域中一個新的研究方向,它被引入機器學習使其更接近于最初的目標——人工智能。深度學習是機器學習的一種,它特指使用深度神經(jīng)網(wǎng)絡(DeepNeuralNetworks,DNNs)來學習數(shù)據(jù)的表示和提取特征的一種算法。這種算法通過構(gòu)建多層網(wǎng)絡結(jié)構(gòu),對目標進行多層表示,以期通過多層的高層次特征來表示數(shù)據(jù)的抽象語義信息,獲得更好的特征魯棒性。深度學習中的“深度”一詞表示用于識別數(shù)據(jù)模式的多層算法或神經(jīng)網(wǎng)絡。深度學習概述2機器學習、深度學習和人工智能之間的關(guān)系人工智能是一個最寬泛的概念,是一個研究領(lǐng)域,同時也是一個實現(xiàn)目標,而機器學習則是實現(xiàn)這一目標的一類方法,深度學習只是機器學習這一類方法中的一種。人工智能、機器學習和深度學習關(guān)系圖深度學習概述3深度學習與機器學習特征提取區(qū)別(1)機器學習機器學習通常需要人工進行特征提取,即將原始數(shù)據(jù)轉(zhuǎn)換為算法可以理解的格式。這個過程需要領(lǐng)域知識和經(jīng)驗,且對于不同的數(shù)據(jù)集和任務,特征提取的方式可能不同。(2)深度學習深度學習能夠自動從原始數(shù)據(jù)中提取特征,無需或僅需少量的人工干預。深度學習模型通過多層網(wǎng)絡結(jié)構(gòu),逐步將低層次的特征抽象為高層次的特征表示,這一過程是自動完成的,且能夠?qū)W習到更為復雜和抽象的特征。機器學習和深度學習特征提取區(qū)別感知機1單層感知機及其基本原理單層感知機模型是由科學家弗蘭克·羅森布拉特在1957年提出的,它的基本結(jié)構(gòu)如圖5-14所示,簡單來說,感知機(Perceptron)就是一個由兩層神經(jīng)元構(gòu)成的網(wǎng)絡結(jié)構(gòu):輸入層接收外界的輸入信號,通過激活函數(shù)變換(閾值),把信號傳送至輸出層,因此它也被稱為“閾值邏輯單元”;輸出層(也被稱為是感知機的功能層)就是M-P神經(jīng)元。單層感知機基本結(jié)構(gòu)左圖輸出y的數(shù)學表達式為:感知機下面我們通過一個區(qū)分香蕉和西瓜的經(jīng)典案例來看看感知機是如何工作的。為了簡單起見,我們假設(shè)西瓜和香蕉有且僅有兩個特征:形狀和顏色,其他特征暫不考慮。這兩個特征都是基于視覺刺激而最易得到的。假設(shè)特征x1代表輸入顏色,特征x2代表形狀,權(quán)重w1和w2的默認值暫且都設(shè)為1。為了進一步簡化,我們把閾值θ(也稱為偏置—bias)設(shè)置為0。為了標識方便,我們將感知機輸出數(shù)字化,若輸出為“1”,代表判定為“西瓜”;若輸出為“0”,代表判定為“香蕉”。感知機學習算法感知機為了方便機器計算,我們對顏色和形狀這兩個特征給予不同的值,以示區(qū)別。比如,顏色這個特征為綠色時,x取值為1,而當顏色為黃色時,x取值為-1。類似地,如果形狀這個特征為圓形,x取值為1,形狀為月牙形狀時,x取值為-1,如下表所示。西瓜和香蕉的特征值表這樣一來,可以很容易根據(jù)感知機輸出y數(shù)學表達式,如下式所示,對西瓜和香蕉做出鑒定:西瓜:y=f(w1x1+w2x2-θ)=f(1×1+1×1-0)=f(2)=1香蕉:y=f(w1x1+w2x2-θ)=f(1×(-1)+1×(-1)-0)=f(-2)=0感知機這里,我們使用了最簡單的階躍函數(shù)作為激活函數(shù)。在階躍函數(shù)中,輸出規(guī)則非常簡單:當f(x)中x>0時,f(x)輸出為1,否則輸出為0。通過激活函數(shù)的“潤滑”之后,結(jié)果就變成我們想要的樣子,這樣就實現(xiàn)了西瓜和香蕉的判定。
接下來我們假定w1還是等于1,而w2等于-1,閾值θ還是等于0。然后我們對于西瓜的特征:綠色圓形通過加權(quán)求和再經(jīng)過階躍激活函數(shù)后輸出如下式所示:
西瓜:y=y=f(w1x1+w2x2-θ)=f(1×1+1×(-1)-0)=f(-2)=f(0)=0
輸出為0,而我們假設(shè)的輸出值0為香蕉,顯然判斷錯了。對于香蕉的特征我們加權(quán)求和經(jīng)過階躍激活函數(shù)得到輸出值為0,對應香蕉,判斷正確。由此可之,我們判斷的正確與否和我們的權(quán)值w1、w2和閾值相關(guān)。
那么怎么選擇權(quán)值和閾值呢?事實上,我們并不能一開始就知道這幾個參數(shù)的取值,而是通過一點點地“試錯”(Try-Error),而這里的“試錯”其實就是感知機的學習過程。感知機2感知機的學習過程在學習之前我們會對權(quán)重和閾值進行隨機初始化,如果初始化的值能判斷出是西瓜還是香蕉,則我們無需學習。但如果判斷錯了那么就會根據(jù)感知機的學習規(guī)則,來調(diào)整權(quán)值和閾值。學習訓練過程通常包括以下幾個步驟:1.初始化:隨機初始化權(quán)重和偏置。2.迭代訓練:對于訓練數(shù)據(jù)集中的每個樣本,執(zhí)行以下步驟:(1)計算當前樣本的加權(quán)和。(2)使用激活函數(shù)計算輸出類別。(3)如果輸出類別與實際類別不一致(即發(fā)生誤分類),則根據(jù)誤分類情況調(diào)整權(quán)重和偏置,以減少損失函數(shù)的值。3.重復迭代:重復上述步驟,直到滿足停止條件(如所有樣本都正確分類,或達到預設(shè)的迭代次數(shù))。感知機2感知機的學習過程通過這個過程,感知機能夠?qū)W習到一組合適的權(quán)重和偏置,使得模型能夠?qū)π碌奈粗獦颖具M行準確的分類。感知機完整工作流程深度神經(jīng)網(wǎng)絡3深度神經(jīng)網(wǎng)絡1.神經(jīng)網(wǎng)絡模型感知機,也叫單層神經(jīng)網(wǎng)絡,是最基礎(chǔ)的神經(jīng)網(wǎng)絡模型結(jié)構(gòu)。神經(jīng)網(wǎng)絡模型由生物神經(jīng)中得到啟發(fā)。在生物神經(jīng)元細胞中,神經(jīng)突觸接收到信號,經(jīng)過接收并處理信號后判斷信號的信息強弱,來做出不同神經(jīng)電位變化反應。神經(jīng)元結(jié)構(gòu)深度神經(jīng)網(wǎng)絡其實解決“異或”問題的關(guān)鍵在于能否解決非線性可分問題,而要解決非線性問題就需要提高網(wǎng)絡的表征能力,也就是需要使用更加復雜的網(wǎng)絡。按照這個思路,可以考慮在輸入層和輸出層之間添加一層神經(jīng)元,將其稱之為隱藏層(HiddenLayer)。增加了一層隱藏層的多層感知機模型深度神經(jīng)網(wǎng)絡雖然多層感知機模型較M-P神經(jīng)元而言已經(jīng)有了很大進步,但這一類模型仍然無法很好地解決比較復雜的非線性問題。因此,在多層感知機模型的基礎(chǔ)上,研究出了如圖所示的神經(jīng)網(wǎng)絡模型。神經(jīng)網(wǎng)絡模型深度神經(jīng)網(wǎng)絡神經(jīng)網(wǎng)絡模型具有如下特點:(1)由輸入層、隱藏層和輸出層組成,根據(jù)問題的需要,結(jié)構(gòu)中可能含有更多隱藏層;(2)每層神經(jīng)元與下一層神經(jīng)元兩兩之間建立連接;(3)神經(jīng)元之間不存在同層連接,也不存在跨層連接;(4)輸入層僅僅起到接收輸入的作用,不進行函數(shù)處理;(5)而隱藏層與輸出層的神經(jīng)元都具有激活函數(shù),是功能神經(jīng)元。圖為具備單個隱藏層的神經(jīng)網(wǎng)絡。此外,針對以上的第(1)條中,對于神經(jīng)網(wǎng)絡模型,當隱藏層如下圖5-20所示大于兩層時,就稱之為深度神經(jīng)網(wǎng)絡(DeepNeuralNetwork,DNN)。深度神經(jīng)網(wǎng)絡模型深度神經(jīng)網(wǎng)絡2.深度神經(jīng)網(wǎng)絡訓練過程深度神經(jīng)網(wǎng)絡的訓練過程是一個復雜但系統(tǒng)化的流程,主要包括以下幾個關(guān)鍵步驟:(1)準備數(shù)據(jù)收集:找到和任務相關(guān)的數(shù)據(jù),比如圖片、文本等。處理:清洗數(shù)據(jù),比如去掉錯誤或重復的部分,然后調(diào)整數(shù)據(jù)格式以便模型可以讀取。(2)設(shè)計網(wǎng)絡架構(gòu):決定網(wǎng)絡的樣子,比如它有多少層,每層有多少節(jié)點等。初始化:給網(wǎng)絡的參數(shù)(比如每個節(jié)點的權(quán)重和偏置)隨機賦值,這是訓練的起點。(3)預測與反饋預測:用網(wǎng)絡對數(shù)據(jù)進行預測,看它能得到什么結(jié)果。計算誤差:比較預測結(jié)果和真實結(jié)果,看看差了多少,這個差就是誤差。深度神經(jīng)網(wǎng)絡2.深度神經(jīng)網(wǎng)絡訓練過程4)調(diào)整參數(shù)反向傳播:基于誤差,反向計算每個參數(shù)應該調(diào)整多少,以便減少誤差。更新:按照計算出的調(diào)整量,更新網(wǎng)絡的參數(shù)。(5)重復訓練迭代:重復上面的預測、計算誤差、調(diào)整參數(shù)的過程,直到誤差減小到滿意的程度或者達到了預設(shè)的訓練次數(shù)。(6)測試模型評估:用之前沒見過的數(shù)據(jù)來測試訓練好的模型,看它在新的數(shù)據(jù)上表現(xiàn)如何。任務實施任務目標:實現(xiàn)手寫數(shù)字(MNIST)識別任務描述:在百度AIStudio平臺,對深度學習框架PaddlePaddle內(nèi)置數(shù)據(jù)集手寫數(shù)字(MNIST)實現(xiàn)分類預測。本任務的內(nèi)容就是搭建神經(jīng)網(wǎng)絡模型,對手寫數(shù)字數(shù)據(jù)集進行學習訓練,最后抽取幾張圖片查看模型預測效果。1.創(chuàng)建項目和環(huán)境(1)登錄百度AIStudio平臺,創(chuàng)建“手寫數(shù)字識別”項目。(2)啟動環(huán)境任務實施2.編寫代碼在項目的Notebook編輯器里,點擊編輯器上方的“+”插入代碼單元格,并編寫下面的代碼。importpaddlefrompaddleimportnnfrompaddle.vision.datasetsimportMNISTfrompaddle.vision.transformsimportCompose,Normalize,ToTensorfrompaddle.ioimportDataLoaderimportmatplotlib.pyplotasplt
#設(shè)置設(shè)備paddle.set_device('gpu'ifpaddle.is_compiled_with_cuda()andpaddle.get_cuda_device_count()>0else'cpu')
#數(shù)據(jù)預處理transform=Compose([ToTensor(),Normalize(mean=[0.5],std=[0.5])])
#加載數(shù)據(jù)集train_dataset=MNIST(mode='train',transform=transform)test_dataset=MNIST(mode='test',transform=transform)任務實施2.編寫代碼#數(shù)據(jù)加載器train_loader=DataLoader(train_dataset,batch_size=64,shuffle=True)test_loader=DataLoader(test_dataset,batch_size=64,shuffle=False)
#定義多層神經(jīng)網(wǎng)絡模型classMLP(nn.Layer):def__init__(self):super(MLP,self).__init__()self.fc1=nn.Linear(in_features=784,out_features=512)self.relu=nn.ReLU()self.fc2=nn.Linear(in_features=512,out_features=10)
defforward(self,x):x=paddle.reshape(x,[x.shape[0],-1])#展平輸入x=self.relu(self.fc1(x))x=self.fc2(x)returnx
#實例化模型model=MLP()
#設(shè)置損失函數(shù)和優(yōu)化器loss_fn=nn.CrossEntropyLoss()optimizer=paddle.optimizer.Adam(learning_rate=0.001,parameters=model.parameters())任務實施2.編寫代碼#訓練模型epochs=5forepochinrange(epochs):forbatch_id,(images,labels)inenumerate(train_loader):preds=model(images)loss=loss_fn(preds,labels)loss.backward()optimizer.step()optimizer.clear_grad()ifbatch_id%100==0:print(f"Epoch[{epoch+1}/{epochs}],Batch[{batch_id+1}],Loss:{loss.numpy()}")
#評估模型model.eval()wit
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- T-ZZB 3706-2024 石化行業(yè)用不銹鋼閥門鑄件
- T-ZJCX 0047-2024 浙江省法人數(shù)字證書應用接口規(guī)范
- 二零二五年度宅基地占用權(quán)轉(zhuǎn)讓協(xié)議
- 獨立董事聘用合同(二零二五年度)-能源行業(yè)節(jié)能減排
- 2025年度門面買賣合同(含廣告位租賃)
- 二零二五年度音樂作品著作權(quán)許可與網(wǎng)絡播放協(xié)議
- 2025年度校外住宿生安全管理及意外傷害賠償協(xié)議
- 2025年度相鄰宅基地邊界爭議解決與宅基地置換協(xié)議
- 二零二五年度拆除工程合同糾紛解決機制合同
- 二零二五年度自然人個人醫(yī)療設(shè)備貸款合同生效與還款規(guī)定
- 2024年中級消防員考試題庫
- 必考古詩賞析知識點(九年級下冊)-2025年中考語文一輪復習
- 2024-2025學年人教版八年級物理上學期課后習題答案
- 遼寧省沈陽市大東區(qū)2024年中考化學模擬試題一
- 國能遼寧北票 200MW 風力發(fā)電項目地質(zhì)災害危險性評估報告
- 江蘇省常州市教育學會2023-2024學年下學期八年級數(shù)學考試卷
- DZ∕T 0214-2020 礦產(chǎn)地質(zhì)勘查規(guī)范 銅、鉛、鋅、銀、鎳、鉬(正式版)
- 2024年瓦斯爆炸事故專項應急演練桌面推演腳本
- 2024年遼寧大連中遠海運川崎船舶工程有限公司招聘筆試參考題庫含答案解析
- 《單層廠房鋼結(jié)構(gòu)》
- 八年級下冊二次根式作業(yè)設(shè)計
評論
0/150
提交評論