全文共2301字,預計學習時長6分鐘
圖源:unsplash
深度學習的關注度正持續上升,它是機器學習的一個子領域,基於人工神經網絡的概念來執行特定任務。然而在理論上,人工神經網絡與人類大腦的運作方式並不相同,甚至都不相似!
它們之所以被命名為人工神經網絡,是因為它們可以完成確切的任務,同時達到理想的精確度,而無需使用任何特定規則進行明確編程。
幾十年前AI失敗的主要原因是缺乏數據和計算能力。經過數年時間,這一情況已顯著改善。基於大型科技巨頭和跨國公司投資AI數據,數據的豐富程度已大大提高。而鑑於圖形處理單元(GPUs)功能強大,計算能力也不再是挑戰。
本文將詳細討論構建深度學習模型的五個基本步驟,以及如何使用這些步驟來處理各種深度學習項目。
1.定義架構
深度學習是解決複雜任務的最優方法之一,例如圖像分類或分割、人臉識別、目標檢測、聊天機器人等。但是,對於每一個複雜的項目,深度學習模型均需進行五個固定步驟以完成當前任務。
構建深度學習模型的第一步,也是最重要的一步就是成功定義網絡和架構。根據所執行任務的類型,一般傾向於使用特定類型的體系結構。
通常,對於計算機視覺任務,如圖像分割、圖像分類、面部識別和其他類似項目,首選卷積神經網絡(CNNs)或ConvNets。而對於自然語言處理和與文本數據相關的問題,遞歸神經網絡(RNNs)和長短期記憶(LSTMs)更為可取。
在此步驟中,還可以決定整個深度學習架構的模型構建結構類型。執行此操作的三個主要步驟是順序模型(Sequential Models)、功能性API或用户定義的自定義架構。下文將更詳細地討論每種方法。
2.編譯模型
首選架構構建完成後,將繼續進行構建模型的第二個步驟——編譯模型。編譯步驟通常是TensorFlow深度學習框架中的一行代碼,可以採用model.compile()函數進行編譯。
在深度學習中,編譯的要求是配置模型,以便成功完成擬合/訓練過程。正是在編譯中,為評估程序定義了培訓程序的一些關鍵組成部分。
列舉一些必要參數,下一步需要分配損耗、優化器和指標。損耗的種類取決於所遇問題的類型以及亟待解決的問題。優化器通常是指用於計算的adam、RMSprop或類似優化器;指標是指用於分析的準確性度量或任何其他由用户定義的衡量標準。
3.擬合模型
圖源:unsplash
成功定義整體架構並編譯模型後,第三個邏輯步驟是在訓練數據集上擬合模型。擬合功能可在固定數量的週期(數據集上的迭代)內訓練模型。藉助擬合功能,可以確定訓練週期的數量、輸入和輸出數據、驗證數據等重要參數。擬合功能可用於計算和估算這些基本參數。
在培訓過程中,必須持續評估擬合步驟。重要的是要確保所訓練的模型在提高準確性和減少整體損失的同時,運行良好。
同樣重要的是,要考慮到該模型沒有以任何方式被過度擬合。為此,必須使用Tensorboard之類的工具進行持續評估,以分析各種圖表,並瞭解這些模型是否有可能被過度擬合。一旦訓練完成並對固定數量的週期進行分析後,就可以繼續進行第四個步驟——評估並使用訓練好的模型進行預測。
4.評估和預測
評估深度學習模型是檢驗構建模型是否按預期工作的一個十分重要的步驟。構建的深度學習模型在現實應用程序中可能運行不佳。因此,評估深度學習模型變得至關重要。
評估深度學習模型的一個主要方法是,確保模型對預處理步驟開始時,將分割測試數據所做的預測考慮在內,以驗證訓練模型的有效性。除測試數據外,還必須用可變數據和隨機測試對模型進行測試,以查看其在未經訓練的數據上的有效性,以及其性能效率是否符合預期要求。
假設我們建立了一個簡單的人臉識別模型。需考慮到該模型已使用圖像訓練過,並嘗試在測試數據和實時視頻錄製中使用不同面孔評估這些圖像,以確保訓練的模型運行良好。
5.部署模型
部署階段是構建任何模型的最後一步。一旦成功完成模型構建後,如果想要保留模型或進行部署,以面向更廣泛的受眾,這便是一個可選的步驟。部署方法各不相同,可以將其部署為跨平台傳輸的應用程序,也可以使用amazon提供的AWS雲平台進行部署,或者使用嵌入式系統部署。
如果想要部署監控攝像頭之類的東西,則可以考慮使用類似樹莓派的嵌入式設備與攝像頭模塊共同執行此功能。帶有人工智能的嵌入式系統是部署物聯網項目的常用方法。
使用flask、Django或任何其他類似框架構建深度學習模型後,也可以選擇在網站上部署這些深度學習模型。另一個有效部署模型的方法是為智能手機用户開發一個android或iOS應用程序,以覆蓋更廣泛的用户。
圖源:unsplash
構建任何深度學習模型都需遵循這些步驟,至少包含前述五個中的四個。對於新手或初級項目而言,部署步驟是可選步驟,但在相關行業和公司中,該步驟卻是極其重要,不可或缺。
需要格外注意的是,在構建和使用深度學習模型前,必須考慮數據預處理、探索性數據分析以及其他強制性清理步驟。模型的構建步驟必須在完成所有數據的預處理後才可以執行。
留言點贊關注
我們一起分享AI學習與發展的乾貨
如轉載,請後台留言,遵守轉載規範