李庚修     Keng-Hsiu, Lee

phone     0903685098                                            email      [email protected]

  New Taipei City, Taiwan                                            

簡介


我熱衷學習新的事物,在就讀研究所時我們常常需要自己探索新的領域,這段時間我自學了 python 並透過網路上的資源自行撰寫 Machine Learning 的程式;並且我們時常需要協助老師上課、策畫工作坊,在教學的過程中為了能讓學生更了解上課內容,我會去琢磨我的講解方式,因此在研究所不僅培養了程式的能力,也訓練出了基本的溝通能力,希望在未來的工作中能夠發揮所學。

經歷


研究生  •  淡江大學 電機工程學系 研究所                                                                                                           2019/7 - 2021/8

擔任 Arduino 相關課程之助教
研究 CNN 網路模型與權重評估,擔任 AI 課程、工作坊之助教
參與競賽(資訊應用服務創新競賽、通訊大賽...)

專業能力


  • 程式語言:C 、python
  • ML 框架: Tensorflow
  • 3D繪圖、雷射切割:Fusion 360、Coreldraw

授課經驗


  • 福和國中 武器工作坊 - 結合Unity與達靈頓電路製作觸覺回饋遊戲手把                        2019/03~04

         簡介達靈頓電路並帶領學生操作麵包板實現達靈頓電路、引導學生思考如何結合達靈頓電路與武器,最終作出                一個能與Unity 遊戲結合的觸覺回饋遊戲手把。

  • 淡江大學  AI 工作坊(助教)                                                                                                                                      2019/11

         協助講師講解影像處理深度學習之基本概念,進而透過 MLP、CNN 實作出手寫數字之辨識,最後使用 Jupyter            Notebook 實現鐵達尼號生存率之預測。

  • 淡江大學 暑期課程                                                                                                                                                     2020/07

         於暑修期間教授 Arduino 基本操作,並結合 MCS、Linkit Remote 實作出兩作品。

  • 淡江大學 數值分析(助教)                                                                                                                      2020/9~2021/1

         於學校課堂上擔任老師之助教,補充說明老師上課所教,主要說明 Arduino 程式撰寫之基本語法與觀念。

碩士論文


  • 此論文以卷積神經網路(CNN)及CIRAR-10資料集來進行模型壓縮之研究,針對CNN中全連接層的部分進行壓縮,透過特徵選取(Feature Selection)、隨機取樣(Random Selection)及偽神經元選擇(False Neuron Selection)三種方式來進行優化,經過層層疊代刪除冗於之神經元,找出模型中的最佳子網路,最終將處理完的網路架構放進邊緣裝置(Jetson Nano、Raspberry pi 4)上,使得壓縮過後的模型得以提升在邊緣裝置上的運行速度。


特徵選取(Feature Selection):

  • 特徵選取是機器學習中常用來精簡模型的技巧,本論文參考特徵選擇中包裝法的其中一個做法「前向浮點搜尋法」來進行網路壓縮,而前向浮點搜尋法的作法是,一開始會先建立一個空的集合作為子神經網路,在每一次的搜尋時只加入一個神經元至子神經網路中,並根據加入一測試神經元後子神經網路的辨識率評估該測試神經元的重要性,透過此方法逐一計算出神經元的重要性,最後選出重要性最高之測試神經元加入子神經網路中,作為該次搜尋之結果,經過多次搜尋我們可以找到一個表現最好的子神經網路組合,但此實驗每次搜尋必須將所有神經元都運算過一次,且最後僅取一個神經元,這樣的做法相當耗時,因此模型架構越大越不適用此方法。

隨機取樣(Random Selection):

  • 根據「前向浮點搜尋法」的實驗結果,我們希望能更有效率的將網路進行壓縮,因此使用了「隨機取樣」的方法來將網路進行壓縮,在搜尋的過程我們選擇一部分的神經元加入子神經網路中,並根據該子神經網路之辨識率來判斷該組合的子神經網路表現如何,經過多次的搜尋得到辨識率最高的子神經網路即為經過壓縮的子神經網路,此方法之壓縮時間極快,但每次搜尋的表現相當不穩定,且面對神經元數量較多之網路,此方法將難以找出表現好的子神經網路。


偽神經元選擇(False Neuron Selection):

  • 統整以上兩種方法,我們提出「偽神經元選擇」的概念,此方法是在原始網路的全連接層中加入數個「偽神經元」其參數皆為0,其在辨識的過程中沒有實質貢獻且不會影響準確率,因此將以「偽神經元」作為是否將神經元刪除的基準,對加入偽神經元的網路 我們參考隨機取樣的做法進行「重要性排序 」,根據排序後的結果找出表現最差且重要性低於「偽神經元」的神經元將其刪除,此方法我們可以快速地找出表現較好的子神經網路,並且確保重要的神經元不會在搜尋過程中被誤刪。
  • 重要性排序 」:參考隨機取樣的作法,我們每次搜尋時隨機選取數個神經元進入子神經網路,並將其進行準確率測試,接著我們進一步紀錄每個神經元的「使用次數 」與「所對應之準確率」,並「所對應之準確率」 之總和除以使用次數即可得到該神經元之重要性。


  • 本論文根據上述三種方法對CNN模型中的全連接層進行壓縮,將全連接層中的神經元壓縮88%,經過實驗證實「前向浮點搜尋法(FFS)」的效果最好能保有較高的辨識率,但卻最耗時;而「隨機取樣(Random Selection)」效率最高所需時間最少,但效果不穩定不一定能夠找到最好的子神經網路組合;「偽神經元選擇 (FNS)」為三個方法中既能保有辨識率且花費時間不會太高的方法,因此此方法較能夠廣泛運用於網路壓縮領域之研究,最後將壓縮過後的網路分別放在 Jetson Nano 與 Raspberry Pi 4 上進行運算,在速度上分別得到43.7%與70.2%的提升。


作品


          達靈頓電路之武器工作坊

  •            運用 fritzing 繪製一張 Arduino 的擴充板,透過達靈頓             電路增加 Arduino 腳位的輸出電流,使其得以控制風               扇、水霧、冷熱貼片等模組;使用以上模組製作出              支有觸覺回饋的法杖,最後與 Unity VR 遊戲做結合。

          AI應用於未來食物養殖系統

  •          本作品為結合AI的自動化的養殖箱,我們使用溫濕
  •          度感測器以及加溫燈、風扇、水霧等模組來維持養
  •          殖箱中的溫溼度,並搭配網路攝影機來對蟲體進行
  •          辨識,判斷養殖箱中的蟲隻是否死亡或結蛹,最後
  •          透過 Line 聊天機器人將箱中狀況回傳給使用者。
  •          在蟲體辨識的部分,我們分別標記了蟲蛹及蟲屍各
  •          1000張照片,並且透過 YOLO v5 的模型進行遷移式
  •          學習,最後將訓練好的模型放在 Jetson Nano 上進                     行蟲體狀態的分類。                                                                                                                                                                                       此作品我所負責的是軟體部分,如環境溫溼度監控                                                                                                                        、馬達控制、蟲體辨識及 Line 聊天機器人通知。

 影片連結:https://www.youtube.com/watch?v=vjS8Z9O-cak&ab_channel=%E6%9D%8E%E5%BA%9A%E4%BF%AE


          在 TF 框架下進行 CNN Mnist 即時影像辨識

           本作品是我參考林大貴的 「Tensroflow + Keras 深度學

           習人工智慧實務應用」這本書所做的,本作品是採用

            tensorflow框架及 CNN 進行手寫數字的即時影像辨識。

          

影片連結: https://www.youtube.com/watch?v=wBELjKApUL8&t=2s&ab_channel=%E6%9D%8E%E5%BA%9A%E4%BF%AE