直接閱讀技術類的教材是困難的, 理論的密集程度常常令人生畏, 而Welch Labs的視頻用有趣的短片形式, 以達到教學的目的, 並結合相關資源介紹技術背景, 使你能熟練掌握主題。
而本文介紹的系列視頻, 將帶領大家使用Python構建和訓練一個完整的人工神經網路。
1.資料+架構要想使用一種機器學習的方法, 我們首先需要資料。 獲取到資料後, 我們會使用程式設計語言Python, 在二維numpy庫裡存儲資料。 資料準備好後, 就可以用它訓練一個模型了。 機器學習中有大量的模型, 本文訓練的是當前特別火的人工神經網路。
Ps:把資料放進模型之前, 我們需要考慮資料單位間的差異。
上一節我們建立了神經網路, 這次我們將用Python程式設計語言來實現它。
對深度學習模型按照輸入層、靠近輸入層的隱含層、靠近輸出層的隱含層和輸出層的次序, 依次計算並存儲模型的中間變數叫做正向傳播(forward-propagation)。 在本節中, 我們介紹如何使用Python實現正向傳播。
本節重點放在如何改進神經網路, 使預測更準確。
梯度下降法, 是當今最流行的優化(optimization)演算法, 亦是至今最常用的優化神經網路的方法。 本視頻通過舉例, 介紹了梯度下降是如何優化神經網路的。
反向傳播(back-propagation)是計算深度學習模型參數梯度的方法。 總的來說, 反向傳播中會依據微積分中的鏈式法則, 按照輸出層、靠近輸出層的隱含層、靠近輸入層的隱含層和輸入層的次序, 依次計算並存儲模型損失函數的得分與參數梯度。
反向傳播可能比較簡單, 但不會太簡單。 反向傳播中的錯誤是讓神經網路學習的關鍵。 在這個視頻中, 用高中數學水準淺顯易懂地介紹了反向傳播背後的推導和思考過程。
當構建複雜的系統, 如神經網路時, 檢查部分工作可以避免以後許多問題。 在這裡, 我們將借助對導數的簡單理解和一些小技巧來檢查梯度計算部分。
如果代碼通過了這個測試, 那可以確信, 我們已經正確地計算和編碼了梯度。
6.訓練
經過以上工作,現在是時候訓練神經網路了。我們將使用BFGS數值優化演算法並查看結果。
7.過擬合,測試和正則化我們已經建立並訓練了神經網路,但是在開香檳慶祝之前,還要保證我們的模型適用于現實世界。
實踐中,如果測試資料集是給定的,我們通常用機器學習模型,在該測試資料集上的誤差來表示泛化誤差。基於上述重要結論,以下兩種擬合問題值得注意:
欠擬合:機器學習模型無法得到較低訓練誤差。
過擬合:機器學習模型的訓練誤差遠小於其在測試資料集上的誤差。
我們要盡可能同時避免欠擬合和過擬合的出現。可以使用正則化來應對過擬合問題。
想要視頻請舉手
—完—
親愛的朋友:
本周的充電時間,分享一個有趣且相對簡單的系列短片。希望能對你有所幫助。
祝安!
智慧觀 一米
2018-4-18 於北京中關村
想知道AI加教育領域有哪些最新研究成果?
想要AI領域更多的乾貨?
想瞭解更多專家的“智慧觀”?
請在對話介面點擊“找找看”,去獲取你想要的內容吧。
聲明:
編譯文章旨在幫助讀者瞭解行業新思想、新觀點及新動態,為原作者觀點,不代表智能觀觀點。
轉載智慧觀原創文章,請聯繫
智慧觀小艾(微信號:zng2017618)!
6.訓練經過以上工作,現在是時候訓練神經網路了。我們將使用BFGS數值優化演算法並查看結果。
7.過擬合,測試和正則化我們已經建立並訓練了神經網路,但是在開香檳慶祝之前,還要保證我們的模型適用于現實世界。
實踐中,如果測試資料集是給定的,我們通常用機器學習模型,在該測試資料集上的誤差來表示泛化誤差。基於上述重要結論,以下兩種擬合問題值得注意:
欠擬合:機器學習模型無法得到較低訓練誤差。
過擬合:機器學習模型的訓練誤差遠小於其在測試資料集上的誤差。
我們要盡可能同時避免欠擬合和過擬合的出現。可以使用正則化來應對過擬合問題。
想要視頻請舉手
—完—
親愛的朋友:
本周的充電時間,分享一個有趣且相對簡單的系列短片。希望能對你有所幫助。
祝安!
智慧觀 一米
2018-4-18 於北京中關村
想知道AI加教育領域有哪些最新研究成果?
想要AI領域更多的乾貨?
想瞭解更多專家的“智慧觀”?
請在對話介面點擊“找找看”,去獲取你想要的內容吧。
聲明:
編譯文章旨在幫助讀者瞭解行業新思想、新觀點及新動態,為原作者觀點,不代表智能觀觀點。
轉載智慧觀原創文章,請聯繫
智慧觀小艾(微信號:zng2017618)!