快速連結

如何動手實現深度學習神經網路的應用系統?

  • 05 Nov 2023
  • 第373期
  • 文.圖/陸清達(逢甲大學通訊工程學系教授)
A+ A-

深度學習是一種機器學習方法,它的主要特點是使用深層神經網路來擬合和解析各種複雜的數據的關聯性。藉由訓練深層神經網路來實現各種任務,例如:圖像識別、語音辨識、語者辨識、語音合成、自然語言處理、圖像生成、推薦系統等等。深度學習神經網路可以自動地學習從原始數據中的關鍵特徵,甚至可以不需使用特定的數位影像處理技術於影像特徵擷取,即可準確辨識物件,故深度學習神經網路在處理大量數據和複雜任務時的表現都極為優異。

深度學習神經網路的核心主要為倒傳遞神經網路、卷積神經網路(convolutional neural network, CNN)和遞迴神經網路(recurrent neural network, RNN)等架構,透過大量的樣本數據和最佳化演算法,訓練模型參數,實現辨識、濾波、分類、生成等豐富的應用。


AI Hat專題成果照片。

逢甲大學通訊工程學系致力於深度學習的相關教學與應用,針對不同學習面向可以有多種方式進行。為了讓大家能快速實現專案,選擇開發工具特別重要。或許大家會狐疑應該使用那一個軟體比較好?建議大家選擇自己熟悉的程式語言即可;目前最火紅的就是Python程式語言,該語言有豐富的深度學習函式庫,讓開發深度學習神經網路變得簡單,很容易成功。另外一項就是本系同學從大一就開始接觸的MATLAB程式語言,該語言在學術界和工業界中使用廣泛,具有強大的機器學習和深度學習工具箱;逢甲大學的同學都可以在有版權的平台上開發。MATLAB中的App designer提供許多的物件,對於建立使用者圖形介面,既快速又方便。

要如何動手實現深度學習應用的專題呢?大家可以根據下列步驟依序處理:定義問題、蒐集數據、選擇深度學習網路的架構、數據預處理、設計模型、模型訓練、模型評估、模型優化、部署模型、持續改進等步驟。乍看之下好像很繁瑣,其實這些步驟只是把逢甲大學大力推行的CDIO(Conceive- Design- Implement-Operate)概念,進一步拆解,然後逐一實現而已。

在定義問題方面:必須先確定自己想要解決的問題或目標,盡量找出一個明確、可量化的目標,例如:圖像分類、自然語言處理、信號預測等等。在蒐集數據方面:蒐集和整理與專案相關的數據集,盡可能的豐富、多樣化,畢竟數據是深度學習神經網路的主要養分,其質量和多樣性對模型的性能具有關鍵性的角色。在挑選深度學習模型方面:選擇適合目前專案的深度學習網路模型,例如:ANN, CNN, RNN, GAN, 甚至是最近非常火紅的Transformer 模型。在數據預處理方面:許多資料的蒐集都會缺漏、錯誤,如何清理和預處理數據,讓模型可以訓練,過程極為繁瑣,但卻必須正面對決與處理,包括數據清理、標準化、特徵工程等等。在模型訓練方面:使用訓練數據來訓練模型,包括:選擇損失函數、最佳化演算法,以及調整超參數,都必須謹慎挑選,這攸關訓練模型的品質。在模型評估方面:使用驗證數據集(validation set)或測試數據集(testing set)來評估模型的性能。在模型優化方面:根據評估結果調整模型結構、超參數等,優化深度學習神經網路性能。在部署模型方面:將訓練好的神經網路部署到實際應用場域中,經常必須結合IoT(Internet of Things)設備、網站、邊緣運算裝置、行動裝置、嵌入式系統等周邊,讓深度學習神經網路融入實際的應用系統。在持續改進方面:監控應用中模型的性能,根據實際反饋不斷改進與優化模型,讓系統可以落地應用。

對同學來說,學期結束的期末專題,或者畢業專題都是讓同學執行深度學習應用系統的試煉場域,進階也可以結合逢甲大學的5G專網場域,融入大數據、大頻寬、低延遲的特性,讓專題面向更具深度,大家可以根據上述步驟從頭到尾試行一次,在逢甲大學就學期間若能試行2~3次,相信同學的專業能力都能符合業界的期待~

我也指導一些同學使用深度學習神經網路製作有趣的專題(如圖1~3),讓同學試練,也鼓勵同學們參加全國專題競賽,與頂尖大學的同學們同場競爭,作為精進自己的方法。經過全國專題競賽的備戰與競爭,同學們都能大幅成長,主要原因就是透過專題導向式學習(project-based learning),在解決專題所遭遇的問題中,把上課中沒有學過的專業補足,讓自己變強。逢甲大學的教育特別重視實作能力,這是大家的優勢,期待同學們踴躍參加各類型的專題競賽,讓參加比賽成為一種氛圍與習慣,提升自己的專業硬實力,與溝通協調、簡報製作、口條訓練的軟實力,大幅提升自己的職場競爭力!


巡檢車進入管線進行檢測的實景圖。

台灣創新技術博覽會 逢甲大豐收  6專利2未來科技外加1金1銀1銅佳績

熱門標籤