top of page

​學習

Learn

蘇柏沅: 文字

技術面

Technical side

python.png

PYTHON

在專題之中,所有事情都是以python為主,包括資料處理、深度學習,學習到各類型檔案的處理方式、讀檔的技巧,例如高爾夫揮桿骨架檔案(json檔案類型),利用python繪圖、製作影片的方式,包括在圖片上寫上文字、將揮桿影片依據每一幀儲存成圖片以及將圖片還完成影片。

deeplearning.png

Deep Learning

是機器學習的分支,一種以人工神經網路為架構,對資料進行表徵學習的演算法。主要分為監督式、非監督式、半監督式。至今已有數種深度學習框架,如深度神經網路(DNN)、卷積神經網路(CNN)和迴圈神經網路(RNN)等等已被應用在電腦視覺、語音辨識、自然語言處理、音訊辨識與生物資訊學等。

這方面主要是老師提供影片、書籍來自行學習,有問題都可以隨時問老師,老師也會隨時關心我們的學習進度。

CNN.png

Deep Learning-卷積神經網路(CNN)

是一種前饋神經網路,它的人工神經元可以回應一部分覆蓋範圍內的周圍單元, 由一個或多個卷積層和頂端的全連通層(對應經典的神經網路)組成,同時也包括關聯權重和池化層(pooling layer)。

一開始我們會先學習卷積神經網路,因為它的結構相對簡單,需要考量的參數更少,對於初學者來說非常好,可以建立深度學習的觀念,學習模型的基本建立方式,有助於往後實驗的進行。

DTW.jpg

Dynamic Time Warping(DTW)動態時間規整演算法

DTW是一種衡量兩個時間序列之間的相似度的方法,主要應用在語音識別領域來識別兩段語音是否表示同一個單詞,在時間序列中,需要比較相似性的兩段時間序列的長度可能並不相等。

在揮桿的過程中,每個人揮的速度可能不相同,拍攝的幀數也不相同,所以再算分數的時候要先讓時間序列長度一致。

餘閒.png

餘弦相似度

通過測量兩個向量的夾角的餘弦值來度量它們之間的相似性,兩個向量有相同的指向時,餘弦相似度的值為1;兩個向量夾角為90°時,餘弦相似度的值為0;兩個向量指向完全相反的方向時,餘弦相似度的值為-1。這結果是與向量的長度無關的,僅僅與向量的指向方向相關。

我們利用骨架的點,並選定一個標準揮桿影片,來與其他高爾夫選手比較,並透過一些演算法來完成評分。

LSTM.png

Long Short-Term Memory(LSTM)

長短期記憶(LSTM)是一種特殊的RNN,主要是為了解決長序列訓練過程中的梯度消失和梯度爆炸問題。相比普通的RNN,LSTM能夠在更長的序列中有更好的表現,改善了以前RNN的一些問題 (例如Memory的設計問題),而LSTM由四個單位組成: Input Gate、Output Gate、Memory Cell以及Forget Gate。

此技術用在我們高爾夫姿勢揮桿判斷上,因為揮桿是有時序存在的,並且我們還有加入Bidirectional LSTM,用來判斷有時間序列的揮桿動作。

POSENET.png

PoseNet

PoseNet是一個基於TensorFlow.js的ML Model,可以在瀏覽器中進行即時人體姿態估算(pose estimation)。估算單個姿勢,也可估算多個姿勢。只要分為兩個階段,第一階段為輸入圖片並通過卷積神經網路解析,第二階段為使用姿勢解碼算法,輸出解碼後的姿勢(decode poses)、姿勢置信度得分(pose confidence scores)、關鍵點位置(keypoint positions)和關鍵點置信度得分(keypoint confidence scores)。​

起初在訓練模型時是用AlphaPose,但因為要移植到瀏覽器上,所以改用PoseNet來進行骨架抓取,兩者並無太多的差異,只有在X軸上起始為相反。

蘇柏沅: Services
TFJS.png
TFJS.png

Tensorflow JS

TensorFlow.js是TensorFlow的JavaScript版本,支持GPU硬體加速,可以執行在Node.js或瀏覽器環境中。不但支援完全基於JavaScript 從頭開發、訓練和部署模型,也可以用來運行已有的Python版TensorFlow模型,或者基於現有的模型進行繼續訓練。將之前的高爾夫揮桿模型轉換為TensorFlow.js。

​非技術面

Non-technical side

蘇柏沅: 文字

1. 時間規劃
由於不需要固定時間進實驗室或學校,主要在家中遠端或用家中電腦進行實驗工作,因此需要好好的規劃時間,在老師規定的時間完成指定的工作,自我約束和時間管控相當重要的,尤其是當其他課程有報告跟期中期末考前,學習找出一個平衡點來完成所有事情,目前仍有需改進的空間。
2. 溝通

學習溝通討論非常重要,知道組員有困難就可以去幫忙,以及跟老師怎麼溝通來有效的針對實驗來進行討論,來確保實驗的進度可以順利進行下去,溝通的技巧對於未來在公司合作專案時會有很大的幫助。

因疫情期間主要以Line文字溝通,偶爾開語音會議,如何用文字來進行有效的溝通變得非常重要,以及語音開會時如何抓取重點報告,才能達到最好的效率以及溝通。
3. 自學能力及蒐集資料能力

我們大多偏向自主學習、主動發問的方式進行,所以需要非常高的耐心與專注度,也需要多去查資料來理解問題,盡量不去依靠老師,這對我在自學其他事物時變得比較順利且快速。

網頁是老師沒有涉及的範圍,因此需要全靠自己去上網查詢,再加上學校所學的大部分是用不上的,網路資源過於分散,所以大大增加難度,自學能力以及蒐集資料的能力相當重要。

蘇柏沅: 文字
bottom of page