【云駐共創】深度學習概覽

      網友投稿 692 2025-03-31

      深度學習


      人工智能具有兩大核心技術:

      機器學習

      深度學習

      本章節我們將主要圍繞深度學習的相關基礎知識展開。

      學習目標

      本課程學習完成之后,可以:

      描述神經網絡的定義與發展

      熟悉深度學習神經網絡的重要“部件”

      熟悉神經網絡的訓練與優化

      描述深度學習中常見的問題

      帶著這些學習目標,讓我們一起學習深度學習的內容吧~

      目錄

      深度學習簡介

      訓練法則

      正則化

      優化器

      神經網絡類型

      常見問題

      1. 深度學習簡介

      首先,我們看下如下圖傳統機器學習和深度學習的一種比較。眾所周知深度學習是屬于機器學習,但是由于大多數深度學習的樣本是沒有標簽的,而且在神經網絡學習中特征的信息是逐層逐步去學習的。因此,深度學習又是給予無監督特征學習和特征層次結構學習的一個模型。

      由于神經網絡能夠處理大量的數據信息,而且它能夠承載數據之間的一些復雜計算,所以深度學習在處理視覺、語音、文本以及自然語言處理這些方面有著突出的優勢。

      接下來通過5個方面來分析和對比傳統機器學習和深度學習之間的優缺點:

      深度學習和機器學習的一般流程差別不大,我們先來看一下傳統機器學習的一般流程:

      首先,我們得定位任務——尋找挖掘數據的目標;然后,對數據進行預處理工作(主要包括數據清洗、特征提取和特征選擇);數據處理完畢,將這些數據導入模型中進行訓練;得到好的模型之后,我們將模型進行應用,如推理、預測和識別。

      思考一個問題:特征提取特征選擇是否可以在深度學習中自動選擇呢?

      答案當然是肯定的。所以說,傳統機器學習和深度學習在特征工程方面是很較大的差別的。在深度學習中,我們并不需要做大量的特征工程工作。

      接下來我們一起揭開深度學習的神秘面紗~

      通常,我們所說的深度學習實則位一種深層次的學習。也就是使用了深層神經網絡,其層數越多證明它的結構越深。當我們處理高維數據時,深層次的網絡能夠得到比較好的性能。因為學習的性能比較多。

      深度學習使用的神經網絡是一種類腦的算法。在發明神經網絡的時候,科學家也是通過研究腦部信號在大腦之中一個傳導過程,然后我們通過了解它的一個傳導過程,知道這樣一個大致的信號,科學家才研究了神經網絡。

      比如在大腦處理信號的時候,我們是由不同神經元之間的相互連接。一個神經元有樹突、細胞核、軸突、突觸等。我們信息傳遞的時候通過上一個神經元的突觸傳給下一個神經元的樹突,神經元之間的相互傳遞信號,最終到達我們的大腦中樞。然后大腦中樞做出判斷。

      我們科學家通過模擬這種傳遞方式,發明了單層的感知機——單層神經網絡。主要包含輸入層、隱藏層和輸出層。輸入層將數據導入模型,隱藏層包含一些計算函數,計算后由輸出層進行輸出。當面臨很復雜很復雜的數據時,我們也可以將隱藏層增加更多的乘數來增加我們的模型的復雜度。

      一般人工神經網絡的設計和應用研究中,我們通??紤]三個比較重要的方面:

      神經元的作用函數

      神經元之間的連接方式

      網絡如何進行學習

      神經網絡

      下面看一下神經網絡的整個發展歷程:

      主要分為四個階段,可謂是兩起兩落。萌芽時期是從1958~1969年;在1958年發明了感知機,在1969年時,美國人工智能先驅明斯基發現感知機在處理XOR上還是有問題的,不能正確的去進行分類。從此之后神經網絡發展變得十分緩慢。從1986年到1998年的這一段時間是神經網絡發展的另一階段,第二代神經網絡由深度學習大神Hinton在1986年起,發明了適用于多層感知機的BP算法,并采用Sigmoid函數進行非線性映射,有效解決了非線性分類問題。到1995年數據量的不斷增加,也導致了緩慢發展。再到2006年Hinton提出了深層網絡中使用無監督訓練的的解決方案,對權值進行分析,然后有監督訓練進行微調。因此,2006年成為看深度學習的元年。

      我們了解了整個深度學習的發展歷程,接下來看下深度學習,神經網絡算法是怎么一步一步進行發展和進化的。

      單層感知機

      我們構建一個神經網絡模型,分別為輸入層、隱含層、輸出層。這是一個非常普通簡單的神經網絡模型,俗稱為感知機(Perceptron)。

      感知機其實就是類似神經網絡的一個神經元

      w0相當于bias,也就是偏置

      w1-wn是權重

      step fucntion是sign

      XOR問題

      上面我們提到了一個明斯基提出的XOR問題,那么XOR問題是什么呢?

      如果我們是And問題,00、01、10,我們可以用And進行分割;然后是或的問題,00屬于0、10、01是1,11是1,這部分可以分類;最好,異或問題,00,11都是0,10,01屬于一類,如果我們用單層感知機,他不能將00,11分為一類。這就是明斯基提出的XOR問題。

      單層感知機是解決線性問題的,在XOR問題上就無法解決了。

      前饋神經網絡

      單層神經網絡無法解決這個問題,那么我們多增加幾個隱藏層。所以說我們要加入一層后再加上一層隱藏層看看是否可以解決這樣一個問題。如下面的神經網絡,可以稱為多層感知機,也是一種前饋神經網絡。

      關于前饋神經網絡,它的神經元都是分層排列的,可以看出輸入節點是沒有計算功能的。只是為了輸入我們的一個特征向量,當輸入完特征向量后,具有計算功能的神經元都在隱藏層中,包含一些激活函數。通過計算再傳給下一層直到計算完傳到輸出層為止。

      采用這樣的單項結構,每一層都包含多個神經元,同一層神經元之間不存在相互聯系,層與層之間的信息只沿著一個方向進行。這也就是我們神經網絡的一種重要特點和一個結構特色。

      由于我們加入了兩層隱含層,這樣可有效地解決XOR問題。具體如何解決如下圖所示。

      當輸入進入到激活函數后,可得到紫色這條線;同理,進入黃色激活函數后,

      可以得到黃色這條線。因此,兩條線的劃分,可以有效解決XOR問題。

      下面我們看看隱藏層的個數對神經網絡的影響

      其實,隱藏層的個數對神經網絡是存在巨大的影響的。對神經網絡的性能,可以通過增加層數來看一下它的一個分類效果,當我們按照隱藏層數為0時,如左圖分界線為一條直線;當為3層時候,類似于有三條直線的樣子;增長到20的時候,就為一條彎曲的曲線了。這樣可以更好的將我們的正類和負類進行分散開。

      可以得知,當層數增加的越多,模型的分辨能力則越強。

      到這里對深度學習和神經網絡應該有了初步了解了,下面繼續學習如何去訓練神經網絡,能夠得到一個比較優秀的神經網絡。

      2.訓練法則

      想要理解和充分的掌握神經網絡當中的訓練法則,需要學習什么是梯度下降?機器學習當中常用的損失函數到底是什么?

      什么是梯度下降?

      學過高數都知道,梯度下降的方向為函數增長最快的方向。損失函數就是目標輸出和實際輸出之間的誤差。

      我們再從二元的拋物線看,它是如何一步一步的去替我們更新參數的。當梯度為0時是最大的一個方向,然后一步一步的去往下找,每一步都更新w和b,最終找到一個最優的地方。

      在深度學習中,除了我們使用到的均方誤差函數,我們還引入了交叉熵誤差函數,其實就是刻畫了兩個概率分布之間的距離。

      均方誤差在深度學習神經網絡中出現的梯度飽和現象,比如在使用Sigmoid函數,做梯度下降時,它把導數產生飽和現象會使得梯度下降算法會很慢很慢,參數更新也很慢。這個時候我們就可以用交叉熵誤差函數來替代均方誤差函數。

      梯度下降算法

      梯度下降算法一共包含三種,如下:

      全局梯度下降算法

      隨機梯度下降算法

      小批量梯度下降算法

      全局梯度下降算法(BGD)如下:

      總的說來,上述的梯度下降算法實在太慢了,很不常用。收斂的太慢,但是找的比較仔細。為了解決這樣的問題又開發出了隨機梯度下降算法。

      隨機梯度下降算法(SGD

      ):

      簡單說來是一種在線學習的方法,隨機這樣來迭代更新梯度和參數。相比全局梯度下降算法來說,速度時提上來了,但是你會發現,依舊還是不能找到我們的一個全局最小值。很容易陷入局部最優。

      綜合全局和局部梯度下降法的優勢,將二者優化則產生了一個小批量梯度下降算法。

      小批量梯度下降算法

      其核心也是在更新參數時,沒有全局或隨機更新參數,而是小批量的去更新w和b,其他步驟一致。綜合之后,可以找到全局最優,但是速度沒有隨機梯度下降算法的快。這就是魚與熊掌不可兼得?。?/p>

      因此,在工程項目中盡量使用小批量隨機梯度來尋找最優。

      反向傳播算法

      反向傳播算法,首先還是計算出我們的output輸出層值,也就是先正向傳播,先算出預測值,計算出誤差。然后,在計算每一層產生了多少個小的誤差,導致出來一個總的誤差。

      比如從輸入到輸出層,中間是做流水線工作的,計算出每個單元的一個誤差,然后在和預測進行比較。這樣從后往前找,找到最近的隱藏層誤差,然后比較,再更新權值。這里用到的損失函數也是均方誤差。

      具體每層的誤差函數如上圖所示。如何做w_c和w_b的更新,公式如下:

      使用偏導,然后依次使用鏈式求導一層一層計算,得到最優參數。

      對于神經網絡的訓練可以總結如上。這樣經過正向傳播后再反向更新參數,最終實現BP算法。

      到此,大家對梯度下降和更新損失函數里面的參數有了一定的了解,下面講解重要??的一點——激活函數。

      激活函數

      激活函數可以說是人工智能里面極其重要的一個部件。因為我們機器學習無法學習或者是理解復雜的非線性問題。因此,我們引入激活函數使得神經網絡模型可以學習和理解這些復雜的非線性問題。簡而言之,由于激活函數的存在,使神經網絡可以解決極其復雜的數據分布問題。

      從上面的公式計算出來的結果才是神經元的輸出值。

      Sigmoid函數

      介紹一種簡單的激活函數——Sigmoid。其實它就是指數函數的倒數形式,從公式看,可以保證分母不為0。取值范圍是0~1.

      一般來說,如果網絡在5層以內,產生梯度退化成0的這一種現象,我們將這種現象稱之為梯度消失問題。在我們使用激活函數時一定要避免這種問題。

      tanh函數

      tanh函數也是一種指數形式。取值范圍從-1到1. 導數0~1. 同樣也會產生梯度消失問題。

      Softsign函數

      Softsign函數,也是為了保證分母不為0。取值范圍(-1,1)??梢詮膱D看出減緩了梯度消失問題,但還是沒有解決梯度消失。

      以上三個都出現了梯度消失的問題,下面介紹一個Relu函數。

      Relu函數

      Relu就是一個線性單元,計算量比較小。相當于做了一個特征選擇。Relu激活函數的導數時常數,它永遠不會趨于0,沒有出現飽和的問題。因此,可以很快的更新參數,從而減緩梯度消失的問題。

      雖然不能解決梯度消失,但是可以很大程度上去避免這樣一個問題。

      我們再優化一下,那就是Softplus函數

      Softplus函數

      使用In()函數使得Relu的折點變得更加圓滑,計算量稍許增大,但是可以減緩梯度消失的問題。而且在回歸問題上也是表現比較突出。

      Softmax函數

      最后還有這個Softmax函數,做的是一個比值百分比,在分類任務中比較常用。

      到此關于激活函數的種類、優缺點進行了重點解析。

      3.正則化

      正則化濕極其中喲啊的減少泛化誤差的技術。

      參數懲罰

      簡單說來,參數懲罰就是在目標函數中增加一個懲罰項,alpha就是一個懲罰因子。最后面跟上的一項則是懲罰項。這樣可以避免過擬合問題。

      因為我們的目標函數是讓誤差逐漸約等于0,這樣就證明預測值和真實值是相等的。由于我們想約束這個目標函數等于0,因此我們要約束新目標函數等于0.

      由于懲罰因子特別大,則參數會特別小,這樣就會約束我們的參數了。以防止過擬合現象。其中bias是不需要懲罰正則的。

      L1正則

      簡單說就是在懲罰項中的w加上了絕對值,也就是1范數。

      L2正則

      第二種正則方法則是將懲罰項變成一個函數的平方形式。這樣可以讓參數左邊約等于一個小的直接近于0的值。注意,但不能讓我們的參數等于0.

      對比L1和L2的區別

      主要的區別也是在于:

      L1正則屬于拉普拉斯分布

      L2正則屬于高斯分布

      L1可以將部分參數歸為0,從而導致對一部分信息的刪除,起到了特征選擇的作用;

      另一種正則化方法——【數據集合的擴充】

      數據集合的擴充在我們機器學習當中也會經常會被用到,如果樣本不是很多,則可以增加我們的樣本來防止過擬合想象。但是深度學習需要很多很多的樣本,不同領域的數據擴充還是不一樣的。

      Dropout

      Dropout也是神經網絡中比較常用的一種方法。通過隨機Drop和Out參數,這樣不斷更新參數,可以避免過擬合的問題。

      針對神經網絡中的過擬合問題,Dropout相比范數約束和參數懲罰的效果要好很多??梢詷嬙炱帘螀担沟脜档玫揭粋€好的解。Dropout是一種更有效,計算簡單的避免過擬合方法。

      4.優化器

      上面章節介紹了梯度下降算法以及改進的算法,我們將其封裝為一個對象,這樣就稱為了所謂的——優化器。

      上圖給出了很多的優化器,目前用的最多的還是Adam。

      動量優化器

      動量優化器是基于反向傳播算法,在目標函數最后加入了一個動量項,也就是給函數一個一定的初速度(慣性),使得訓練的時候比較快,更快的找到一個最佳參數。這樣可以加快收斂,縮減震蕩。

      關于動量優化器的優缺點:

      Adagrad優化器

      Adagrad主要是為了不同參數設置不同的學習率。下面給出Adagrad的優缺點:

      該算法容易提前停止,還沒找到最優點則會停止。

      為了解決提前停止的現象,改進版本則為——RMS Prop

      RMSProp

      RMSprop優化器通過引入一種衰減系數來解決提前停止的現象。

      這種優化器對RNN網絡是非常友好的。

      到此還有比這更好的優化器嘛?當然有了,那就是Adam優化器

      Adam優化器

      Adam優化器通過引入自適應,結合其他優化器的優點。既保留了梯度、又保留了動量。但是兩個變量m_t和v_t有兩個弊端:

      為了解決在開始迭代的時候,出現m_t和v_t接近0,使用上面的計算方式來更新參數。

      優化器性能比較

      我們可以看出Adamgrad、Adam delta和RMSprop它能夠很好地快速尋找到一個最優解,其他的優化器則會很慢或者會走很多的彎路。

      因此,在工程實驗的時候我們盡量的使用Adaptive自適應的優化器,可以更好的收斂和更快找到最優解。

      5.神經網絡的類型

      卷機神經網絡

      卷機神經網絡也可以稱為一種前饋神經網絡。在圖像處理比較出色。

      CNN網絡的核心思想

      局部感知:一般認為,人對外界的認知是從局部到全局的,而圖像的空間聯系也是局部的像素聯系較為緊密,而距離較遠的像素相關性則較弱。因而,每個神經元其實沒有必要對全局圖像進行

      感知,只需要對局部進行感知,然后在更高層將局部的信息綜合起來就得到了全局的信息。

      參數共享:對輸入的圖片,用一個或者多個卷積核掃描照片,卷積核自帶的參數就是權重,在同一個卷積核掃描的圖層當中,每個卷積核使用同樣的參數進行加權計算。權值共享意味著每一個卷積核在遍歷整個圖像的時候,卷積核的參數是固定不變的。

      那么如何做卷積計算呢?

      有一個3*3的卷積核,在卷積核如何做運算呢?

      第一步是先匹配原始圖片的大小,通過相同位置相乘算出來一個值,然后再累積相加,然后再依次向右移動計算。然后再從上往下計算,這期間涉及到一個步長問題,可以自己設定。

      卷積層

      關于卷積層的工作流程。

      池化層

      池化有最大池化和平均池化。可以看出一個特征選擇,降維的一個過程。

      全連接層

      在Softmax的時候也講解過,相當于在做分類。

      循環神經網絡

      循環神經網絡( Recurrent neural networks ,簡稱 RNN )是一種通過隱藏層節點周期性的連接,來捕捉序列化數據中動態信息的神經網絡,可以對序列化的數據進行分類。

      和其他前向神經網絡不同, RNN 可以保存一種上下文的狀態,甚至能夠在任意長的上下文窗口中存儲、學習、表達相關信息,而且不再局限于傳統神經網絡在空間上的邊界,可以在時間序列上有延拓,直觀上講,就是本時間的隱藏層和下一時刻的隱藏層之間的節點間有邊。

      RNN 廣泛應用在和序列有關的場景,如如一幀幀圖像組成的視頻,一個個片段組成的音頻,和一個個詞匯組成的句子。

      RNN相比CNN其實就是加入了一個記憶單元,將之前的信息乘以一個權重加上當前的信息,然后再用Sigmoid計算出來。

      將記憶單元展開之后,是如上所示的計算流程。

      RNN的類型

      如下,一對一,一對多,多對一,多對多,多直對多。

      時序反向傳播( BPTT ):

      傳統反向傳播( BP )在時間序列上的拓展

      t 時刻的梯度是前 t -1時刻所有梯度的累積

      時間越長,梯度消失越明顯

      BPTT 的三個步驟:

      前向計算每個神經元的輸出值

      反向計算每個神經元的誤差值

      【云駐共創】深度學習概覽

      計算每個權重的梯度

      當遇到梯度消失的問題時,需要更改我們的模型,也就是LSTM。

      通過LSTM可以很好的去解決循環神經網絡的梯度消失問題。由于LSTM的計算量比較大,從而需要進一步的優化。

      改進的GRU也是一種LSTM的變種,也就是將我們之前的兩個門:忘記門和輸入門。將三個sigmoid函數變成了兩個,這樣比LSTM還要簡單高效。

      生成對抗網絡(GAN)

      生成對抗網絡( Generative Adversarial Nets )是一種框架,通過對抗過程,通過訓練生成器 G 和判別器 D 。兩者進行的博弈,最終使判別器無法區分樣本是來自生成器偽造的樣本還是真實樣本。訓練 GAN 框架采用成熟的 BP 算法。

      1)生成器 G :輸入“噪聲” z ( z 服從一個人為選取的先驗概率分布,如均勻分布、高斯分布等)。

      采用多層感知機的網絡結構,用最大似然估計( MLP )的參數來表示可導映射 G ( z ),將輸入空間映射到樣本空間。

      2)判別器 D :輸入為真實樣本×和偽造樣本 G ( z ),并分別帶有標簽 real 和 fake 。判別器網絡可以用

      帶有參數多層感知機。輸出為判別樣本是否為真實樣本數據的概率 D ( G ( z ))。

      生成對抗網絡可應用于圖像生成、語義分割、文字生成、數據增強、聊天機器人和信息檢索,排序等場景。

      通過兩種CNN或RNN來進行對抗,GAN也就是一種思想一致框架。

      通過將輸入導入到生成器,生產虛擬的結果,然后和真實的值共同導入到判別器里面,進行判斷,得出結果。下面給出生成模型和判別模型:

      那么GAN的訓練法則又是什么呢?

      如果想讓模型變得好,得有一個好的判別器,也就是好的裁判,所以需要用模型最大的識別出網絡結果,這樣來訓練模型。

      6.常見的問題

      數據不平衡問題

      問題描述:在分類任務的數據集中,各個類別的樣本數目不均衡,出現巨大的差異,預

      測的類別里有一個或者多個類別的樣本量非常少。

      比如:

      圖像識別實驗中,在4251個訓練圖片中,有超過2000個類別中只有一張圖片。還有一些類中有2-5個圖片。

      導致問題:

      口對于不平衡類別,我們不能得到實時的最優結果,因為模型/算法從來沒有充分地考察隱含類。ロ它對驗證和測試樣本的獲取造成了一個問題,因為在一些類觀測極少的情況下,很難在類中有代表性。

      梯度消失問題

      梯度消失:當網絡層數越多時,進行反向傳播求導值越小,導致梯度消失

      梯度爆炸:當網絡層數越多時,進行反向傳播求導值越大,導致梯度爆炸

      過擬合問題

      問題描述:模型在訓練集表現優異,但在測試集上表現較差。

      根本原因:特征維度過多,模型假設過于復雜,參數過多,訓練數據過少,噪聲過多,導致擬合的函數完美的預測訓練集,但對新數據的測試集預測結果差。過度的擬合了訓

      練數據,而沒有考慮到泛化能力。

      解決方法:(1)數據增強;(2)正則化,降低參數值;(3)限制訓練時間;(4)Dropout 。

      學習推薦

      華為Learning網站

      https://e.huawei.com/cn/talent/#home

      華為Support案例庫

      https://support.huawei.com/enterprise/servicecenter?lang=zh

      本文參與華為云社區【內容共創】活動第16期。

      https://bbs.huaweicloud.com/blogs/352652

      任務19:深度學習概覽

      機器學習 深度學習 神經網絡

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      上一篇:如何在Excel中用結果或值替換公式?
      下一篇:如何增加PPT的頁數(PPT怎樣增加頁數)
      相關文章
      国产亚洲综合一区二区三区| 亚洲一卡2卡3卡4卡5卡6卡| 亚洲高清乱码午夜电影网| 亚洲白嫩在线观看| 亚洲资源在线观看| 337p欧洲亚洲大胆艺术| 亚洲欧洲日产国产综合网| 久久久久无码精品亚洲日韩| 亚洲va无码专区国产乱码| 亚洲爆乳无码一区二区三区| 精品久久久久久亚洲| 国产AV无码专区亚洲Av| 亚洲精品无码永久在线观看你懂的| 亚洲精品高清在线| 亚洲熟女乱综合一区二区| 久久99亚洲综合精品首页 | 亚洲日韩中文字幕在线播放| 国产亚洲美女精品久久久| 亚洲自偷自偷图片| 亚洲av无码av制服另类专区| 久久精品亚洲综合专区| 久久久久亚洲精品无码蜜桃| 亚洲第一页中文字幕| 亚洲精品二三区伊人久久| 亚洲欧美日韩一区二区三区| 亚洲AV日韩AV无码污污网站| 国产精品亚洲综合| 亚洲色图综合在线| 久久青青草原亚洲AV无码麻豆| 亚洲色欲色欲综合网站| 亚洲春黄在线观看| 亚洲中文字幕精品久久| 国产精品亚洲lv粉色| 亚洲午夜无码片在线观看影院猛| 最新国产AV无码专区亚洲| 图图资源网亚洲综合网站| 亚洲精品国产成人| 中文字幕亚洲情99在线| 国产亚洲精品美女| 亚洲精品无码精品mV在线观看| 亚洲av日韩av无码|