日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 >

第01课:深度学习概述

發(fā)布時間:2025/3/15 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 第01课:深度学习概述 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

什么是深度學(xué)習(xí)

機(jī)器學(xué)習(xí),顧名思義,是機(jī)器從數(shù)據(jù)中總結(jié)經(jīng)驗(yàn),找出某種規(guī)律構(gòu)建模型,并用它來解決實(shí)際問題。而深度學(xué)習(xí),是機(jī)器學(xué)習(xí)的一個重要分支和延伸,是包含多隱層的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)。深度學(xué)習(xí)通過組合低層特征形成更加抽象的高層表示屬性類別或特征,從而學(xué)習(xí)到數(shù)據(jù)本身最關(guān)鍵的特征。

簡單來說,深度學(xué)習(xí)就是更深、更加復(fù)雜的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)。首先,我將通過一個例子來解釋什么是神經(jīng)網(wǎng)絡(luò)。

例如一個房屋價格預(yù)測問題。輸入 x 是房屋面積大小,輸出 y 是房屋的價格。如果要預(yù)測價格與面積的關(guān)系,最簡單的一種模型就是 y 與 x 近似線性相關(guān)。

如上圖所示,紅色圓圈表示真實(shí)樣本的價格與面積分布,藍(lán)色虛線表示預(yù)測線性模型。這種最簡單的線性模型被稱為線性感知機(jī)模型。線性感知機(jī)模型的基本結(jié)構(gòu)如下:

其中,w 為權(quán)重系數(shù)(Weights),b 為偏移量(Bias)。線性感知機(jī)模型表征了房屋價格與單一變量(房屋面積)的線性關(guān)系。

單個神經(jīng)元(Neuron)與線性感知機(jī)的基本結(jié)構(gòu)非常類似,只是在線性的基礎(chǔ)上增加了非線性單元,目的是為了讓模型更加復(fù)雜。

這里的非線性單元指的就是激活函數(shù)。關(guān)于激活函數(shù)的概念這里不作介紹,后面章節(jié)我將詳細(xì)介紹。這里,大家把它看成是一個非線性函數(shù)即可。這樣,線性感知機(jī)和非線性單元就構(gòu)成了單個神經(jīng)元。

單個神經(jīng)元描述的是輸出與單一變量之間的關(guān)系。還是上面的例子,如果房屋價格不僅與房屋面積有關(guān),還和房間數(shù)目、地理位置等多個因素有關(guān)。這樣,輸入 x 不再是單一變量,而是由房屋面積、房間數(shù)目、地理位置等組成的多維向量。因此,我們就可以使用多個神經(jīng)元來構(gòu)建一個更加復(fù)雜的模型。

如上圖所示, x1、x2、x3 表示輸入元素,$\bigcirc$ 表示神經(jīng)元。h1、h2、h3 是隱藏層神經(jīng)元,之所以設(shè)置隱藏層神經(jīng)元是為了分別從不同輸入中提取特征,再將這些特征經(jīng)過輸出層神經(jīng)元 out,預(yù)測房價 g。每一個隱藏層神經(jīng)元與每個輸入元素都進(jìn)行連接,這保證了提取信息的完整性。這個模型就是最簡單的神經(jīng)網(wǎng)絡(luò)模型。

上面隱藏層個數(shù)為什么是 3?其實(shí),隱藏層神經(jīng)元個數(shù)不是固定的,可以是 2,也可以是 4,它是個可調(diào)參數(shù)。更深入地,上面的神經(jīng)網(wǎng)絡(luò)模型只有單隱藏層,如果問題比較復(fù)雜,訓(xùn)練樣本比較多,我們可以使用更多隱藏層,每一隱藏層的神經(jīng)元個數(shù)都可以設(shè)置。一般來說,層數(shù)越多越深,神經(jīng)網(wǎng)絡(luò)模型模型越復(fù)雜,學(xué)習(xí)能力越強(qiáng)。這樣的深層神經(jīng)網(wǎng)絡(luò)就被稱為深度學(xué)習(xí)模型。

深度學(xué)習(xí)模型除了標(biāo)準(zhǔn)的神經(jīng)網(wǎng)絡(luò)(Neural Network,NN)之外,還包括卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN)、循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Network,RNN)。

CNN 多應(yīng)用于機(jī)器視覺、圖像處理,RNN 多應(yīng)用于序列模型、語音處理等。關(guān)于 CNN 和 RNN 的詳細(xì)內(nèi)容,我將在之后的章節(jié)中詳細(xì)介紹。

為什么要深度學(xué)習(xí)

傳統(tǒng)的機(jī)器學(xué)習(xí)算法,例如線性回歸、邏輯回歸、支持向量機(jī)、決策樹、隨機(jī)森林等能夠處理很多問題,實(shí)際應(yīng)用也非常廣泛。許多數(shù)據(jù)挖掘競賽、機(jī)器學(xué)習(xí)算法大賽、Kaggle 等,傳統(tǒng)的機(jī)器學(xué)習(xí)算法都有著很優(yōu)秀的表現(xiàn)。但是,隨著互聯(lián)網(wǎng)的興起與蓬勃發(fā)展,每天都有海量的數(shù)據(jù)產(chǎn)生,如何從大數(shù)據(jù)中尋找規(guī)律建立準(zhǔn)確的模型,深度學(xué)習(xí)逐漸發(fā)揮其優(yōu)勢,呈現(xiàn)出比傳統(tǒng)機(jī)器學(xué)習(xí)更大的能力。下面,我們用一張圖來說明。

上圖共有 4 條曲線,從下往上分別為傳統(tǒng)機(jī)器學(xué)習(xí)算法、規(guī)模較小的神經(jīng)網(wǎng)絡(luò)、規(guī)模中等的神經(jīng)網(wǎng)絡(luò)、規(guī)模較大的神經(jīng)網(wǎng)絡(luò)。從每條曲線的趨勢可以看出,當(dāng)數(shù)據(jù)量較少的時候,傳統(tǒng)機(jī)器學(xué)習(xí)模型的表現(xiàn)是不錯的,與神經(jīng)網(wǎng)絡(luò)模型差別不大。但隨著數(shù)據(jù)量越來越大,傳統(tǒng)機(jī)器學(xué)習(xí)模型的性能表現(xiàn)開始增長緩慢,似乎到達(dá)了瓶頸。而神經(jīng)網(wǎng)絡(luò)模型的性能仍然表現(xiàn)出較快的上升趨勢,且規(guī)模越大,性能提升越明顯。這主要是因?yàn)樯疃葘W(xué)習(xí)模型網(wǎng)絡(luò)結(jié)構(gòu)更加復(fù)雜,更能從大數(shù)據(jù)中提取有效的特征,準(zhǔn)確性較高。所以,近些年來,深度學(xué)習(xí)在處理大數(shù)據(jù)和建立復(fù)雜準(zhǔn)確的學(xué)習(xí)模型方面,有著非常不錯的表現(xiàn)。

在機(jī)器視覺、圖像處理方面,深度學(xué)習(xí)可以說是帶來了革命性的變化。近些年來,在全球知名的圖像識別競賽 ILSVRC 中,深度學(xué)習(xí)模型,尤其是各種 CNN 模型在錯誤率方面,不斷刷新紀(jì)錄,相比之前傳統(tǒng)機(jī)器學(xué)習(xí)算法,性能提升有質(zhì)的飛躍。

圖片轉(zhuǎn)載自 cs231n

上圖中,從 2010 年開始,開始使用 CNN 模型。轉(zhuǎn)折點(diǎn)是 2012 年, AlexNet 的出現(xiàn),直接將錯誤率降低了近 10 個百分點(diǎn)。這是之前所有機(jī)器學(xué)習(xí)模型無法做到的。2015 年,包含 152 層神經(jīng)元的 ResNet 模型,竟然將錯誤率降低至 3.57%,這甚至比人類肉眼識別的準(zhǔn)確率還高!

除了在圖像識別方面,深度學(xué)習(xí)在機(jī)器翻譯領(lǐng)域也取得了飛躍式的發(fā)展。基于 RNN 的機(jī)器翻譯最典型的代表就是谷歌翻譯,讓機(jī)器能夠在深度學(xué)習(xí)中不斷完善答案,給用戶最想要的信息。說白了就是更智慧、更精準(zhǔn)了。直接改善了之前逐詞直譯的效果,而是升級為以整個句子為單位進(jìn)行翻譯。從性能上來說,谷歌翻譯整合神經(jīng)網(wǎng)絡(luò),翻譯質(zhì)量已經(jīng)接近人工筆譯。

不止這些,深度學(xué)習(xí)在諸如自動駕駛、推薦系統(tǒng)、人臉識別等領(lǐng)域都取得了重大進(jìn)展。

為什么能夠深度學(xué)習(xí)

近些年來,深度學(xué)習(xí)能夠飛速發(fā)展的主要原因歸結(jié)為三點(diǎn):

第一,數(shù)據(jù)量指數(shù)級增長為深度學(xué)習(xí)提供了數(shù)據(jù)基礎(chǔ)和先決條件。任何機(jī)器學(xué)習(xí)模型的構(gòu)建都是基于數(shù)據(jù)的,足夠多數(shù)據(jù),更利于模型從中準(zhǔn)確地挖掘數(shù)據(jù)特征,尋找數(shù)據(jù)規(guī)律。基于大數(shù)據(jù)構(gòu)建的模型才能更加準(zhǔn)確、有效。

第二,計(jì)算機(jī)硬件更新以及 GPU 的出現(xiàn)為深度學(xué)習(xí)提供了強(qiáng)大的運(yùn)算能力。大數(shù)據(jù)是好事,但是要快速且準(zhǔn)確地通過深度學(xué)習(xí)模型處理并運(yùn)算這些數(shù)據(jù)需要強(qiáng)大的計(jì)算機(jī)硬件作為支撐。近些年來,計(jì)算機(jī)硬件不斷更新?lián)Q代,運(yùn)算速度大大提升,最關(guān)鍵的是 GPU 的出現(xiàn)和使用,大大提高了深度學(xué)習(xí)模型的訓(xùn)練速度,可能原來使用 CPU 需要訓(xùn)練一周、一個月的模型,使用 GPU 只要幾個小時就搞定了。這大大提高了效率。現(xiàn)在,很多深度學(xué)習(xí)框架都支持使用 GPU 來加速模型運(yùn)算。

第三,模型和算法上的創(chuàng)新和改進(jìn)讓深度學(xué)習(xí)的性能和速度也大大提升。近些年來,不斷有新的深度學(xué)習(xí)模型和優(yōu)化算法被提出,例如 AlexNet 模型、ResNet 模型、SGD 算法、Adam 算法等。這些優(yōu)化模型和算法讓深度學(xué)習(xí)模型本身更加強(qiáng)大,不僅大大提高了運(yùn)算速度,也提高了訓(xùn)練的精準(zhǔn)度,使得模型性能大大提高。

如何進(jìn)行深度學(xué)習(xí)

深度學(xué)習(xí)如此強(qiáng)大,那么我們?nèi)绾稳腴T并系統(tǒng)地學(xué)習(xí)呢?下面,我將給大家簡要介紹下本達(dá)人課的主要內(nèi)容和章節(jié)分布。

深度學(xué)習(xí)的復(fù)雜性和難點(diǎn)主要體現(xiàn)在神經(jīng)網(wǎng)絡(luò)模型的數(shù)學(xué)推導(dǎo)、神經(jīng)網(wǎng)絡(luò)模型的優(yōu)化,以及如何理論聯(lián)系實(shí)戰(zhàn),構(gòu)建一個優(yōu)秀的深度學(xué)習(xí)模型來解決實(shí)際問題。為了完整地將深度學(xué)習(xí)知識點(diǎn)梳理清楚,本課程共包含三大部分。

第一部分(第 01-04 課)主要介紹一些深度學(xué)習(xí)的預(yù)備知識。對深度學(xué)習(xí)進(jìn)行簡要概述,列舉重要的 Python 基礎(chǔ)知識,手把手教你搭建本課程需要的開發(fā)環(huán)境,使用 Anaconda 平臺,重點(diǎn)介紹 Jupyter Notebook 的使用以及知名的深度學(xué)習(xí)框架 PyTorch。

第二部分(第 05-14 課)主要介紹神經(jīng)網(wǎng)絡(luò)的基礎(chǔ),以最簡單的兩層神經(jīng)網(wǎng)絡(luò)入手,詳細(xì)推導(dǎo)正向傳播與反向梯度的算法理論。然后,從簡單網(wǎng)絡(luò)推導(dǎo)至深度網(wǎng)絡(luò),并重點(diǎn)介紹神經(jīng)網(wǎng)絡(luò)優(yōu)化算法及構(gòu)建神經(jīng)網(wǎng)絡(luò)模型的實(shí)用建議。每一部分都會有一個實(shí)戰(zhàn)演練的例子,方便大家實(shí)操。

第三部分(第15-18篇)主要介紹卷積神經(jīng)網(wǎng)絡(luò) CNN 和循環(huán)神經(jīng)網(wǎng)絡(luò) RNN,重點(diǎn)剖析兩種模型的數(shù)學(xué)原理和推導(dǎo)過程。最后,利用越來越火的深度學(xué)習(xí)框架 PyTorch 分別構(gòu)建 CNN 和 RNN 模型,解決實(shí)際問題。

總結(jié)

以上是生活随笔為你收集整理的第01课:深度学习概述的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。