元智大學資管系第二十六屆實習成果展-ZS
工作內容
Work content
工作環境
Working environment
我的工作環境位於一館六樓1609C,可能是佈置的關係,感覺與其他研究室比起來空間比較小。不過,重點是工作方面的效能,那裏的電腦規格很好,對於人工智慧這種需要大量記憶體才比較好運作的專案,GPU的記憶體有6GB左右,撇除電腦偶爾會因一些外在因素當機以外,在專案運作上完全沒有問題。在防疫期間,因為可以遠端連線學校電腦運行專案,而且開會可以使用LINE進行遠距通訊,所以疫情在專案的進度方面可以說是幾乎沒有影響。
工作詳述
Work details
1. 主要工作內容架構
我們的實驗室主要是研究與人工智慧、醫療相關的資訊技術。在我加入專題生行列的期間,主要進行的工作為高爾夫專案。
2. 詳細工作內容
-
學習各種Python語法
大三上學期初時,我就開始詢問找謝老師,我了解到在各個機器學習專案中,絕大部分皆採用Python作為主要撰寫得程式語言,所以熟悉它的語法非常重要。
-
了解人工智慧運作、實際撰寫簡易模型
在學習Python的同時,我也有去修老師的類神經網路課程,同時研讀老師給我的人工智慧相關書籍,書中以Keras(TensorFlow的高階API,需要手動調整的參數較少)撰寫程式碼,讓我更快速了解AI是如何訓練而成的。
-
TensorFlow Lite/TensorFlow JS
這兩種皆為TensorFlow機器學習套件,如何將它的強大功能應用於對應程式語言正是我所需要學習的。其中TensorFlow Lite運行於android;TensorFlow JS運行於網頁中。起初我們打算開發高爾夫專案於App上運行,不料Lite版部分TensorFlow官方開發未完全,於是則以替代方案移動至JS版執行。
-
利用所學製作專題—高爾夫揮桿階段分類模型
透過與老師討論專題概念,我們收集網路上專業高爾夫打者的影片,把影片切割每一幀存成照片,透過將照片輸入進AlphaPose程式(AlphaPose技術效果如下圖)標出骨架圖,AlphaPose不是完美的,我的工作是一幀都看過,記錄下來錯誤的部分,寫一支程式出來將錯誤的部分進行修正,確保資料集正確。確認無誤後,便可將資料、預先標註的標籤放入老師預先建立的模型中觀察訓練結果,並且不斷調整模型參數、架構,甚至回去檢視當初分類動作的理念,討論能使機器更容易判別的模式來更改整體標記方式。
AlphaPose技術 |
---|
實習期間完成之進度
Progress completed during the internship
1. 高爾夫揮桿階段分類模型專題 – 應用於電腦端(2~6月)
高爾夫的專案從寒假到現在,我們一路從無到有,把概念生成程式。從最一開始先把資料及處理過,接下來把資料放進老師寫好的AI模型預測動作階段,剛放入時還曾經無法運行,於是我跟柏沅改變了一些驅動函數(也稱激活函數),訓練效果越來越好,到現在幾乎每個動作的預測準確率都可以達到90%以上,在準備期末考的時間,如果有餘力,我就會去看有助於將此模型執行於手機端的相關Github上的程式,畢竟最終這項程式是要執行於手機上的,能越早看到實際運行的雛形越好。
2. 高爾夫揮桿階段分類模型–應用於網頁端(7~9月)
為了能成功運行於手機,1092學期末我開始研究TensorFlow上運行的機器學習模型如何轉換成TensorFlow Lite(可以運行於行動裝置、IoT上的簡易TensorFlow版本),然而花了一個多月,無奈因官方在某些功能開發尚未齊全,導致Lite在使用模型時會有function無法呼叫的錯誤。
礙於沒有其他可解決方案,所以老師提議改以TensorFlow.js進行開發。使用上可以說是非常順利,不只模型可以順利運行,在Python上需要用到的TensorFlow功能皆可以正常執行!就差如何解決記憶體不足的問題,以及美觀這個網頁使用戶能輕易操作。
3.高爾夫專案論文撰寫(10月~11月初)
專案已經接近完成,可以將這項應用發表於國內外,目前先以國內為目標,投稿至第26屆國際資訊管理暨實務研討會。透過這次的機會閱讀大量英文論文強化自己閱讀速度,自行完成撰寫一篇論文。由老師指出文字、架構錯誤後,再與我們口頭討論,使我們透徹理解,最後由我們自己修正,強化對於論文撰寫能力。
高爾夫揮桿個階段預測混淆矩陣與準確度 | 網頁開發中畫面 |
---|
工作當中扮演的角色
Role in work