top of page

工作內容

Work content

許哲嘉: 文字

工作環境

Working environment

許哲嘉: 文字

我的工作環境位於一館六樓1609C,可能是佈置的關係,感覺與其他研究室比起來空間比較小。不過,重點是工作方面的效能,那裏的電腦規格很好,對於人工智慧這種需要大量記憶體才比較好運作的專案,GPU的記憶體有6GB左右,撇除電腦偶爾會因一些外在因素當機以外,在專案運作上完全沒有問題。在防疫期間,因為可以遠端連線學校電腦運行專案,而且開會可以使用LINE進行遠距通訊,所以疫情在專案的進度方面可以說是幾乎沒有影響。

許哲嘉: 文字
工作環境-4.jpg
工作環境-1.jpg
工作環境-2.jpg
工作環境-3.jpg
許哲嘉: 作品集

工作詳述

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技術

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

許哲嘉: 文字

在這學期的專題中,因為柏沅已經跟老師一陣子了,他對於老師指派的工作內容比較熟悉,而且他的能力也比我強,所以在專題工作分配上,通常他會被分配到比較難的部分,而我通常都是處理相對簡單的部分,比如說資料的處理,或者修正AlphaPose標記骨架位置的程式。

不過在處理TensorFlow JS時,我自行嘗試將專案的模型運作於網頁,找出讀取、資料處理方式,一步一步處理,將最終結果顯示出來,測試過程不借助老師與柏沅的幫助,這讓我感受到自己正在慢慢的能夠獨當一面。在完成完整功能的部分,柏沅也幫我整理好程式碼,提點我應前往研究的方向,並在最後幾個比較複雜的功能幫我一起完成,這使我漸漸了解哪些路是不必走的。

當我們開發窒礙難行時,隨時可以與老師討論;對於有些無解的地方,在老師給予的解法也無法順利運作時,有時候我們也會想到一些新的解決方案,提出來後老師也會很認真地回應我們的方法是否有漏洞,而當方法可以很順利運作時也會給予我們肯定,這樣子與老師的互動,整體來說,比起說是師生,我更覺得像是團隊中隊長與組員的身分進行對談,對於我們提出自己意見,老師也相當歡迎。

許哲嘉: 文字
bottom of page