活動簡介:
地點:元智大學 元智七館 R70404 教室
時間:2020年10月15日
課程名稱:愛文芒果五類不良品辨識競賽 影像辨識工作坊
授課老師:許旭安 老師(人稱AI屆的馮迪索、韓國X)
參加動機:
這次之所以會參加「芒果損壞辨識 AI人工智慧研習課程」的原因,是當初參加清華大學電機營隊,有參觀過研究生的研究室,剛好他們近期有主辦這個活動,得知這個資訊後,我便決定參與這個活動。
今天文章的內容,會記錄老師的教學過程,還有實際訓練AI模型的程式。
課程內容1:機器學習、深度學習 理論初探
首先,老師先用簡報分享了「人工智慧」、「機器學習」、「深度學習」的簡單歷史,接著介紹CNN卷積神經網路的內容,運作原理等等,只用了短短20分鐘,就教學完了複雜的課程,教學內容簡明扼要,也能夠輕鬆理解。
以下的圖片皆出自「AI HUB Taipei」。
課程大綱:
人工智慧歷史:
老師介紹到,原來「人工智慧」並不是近幾年來才興起的,自從1956年就有人曾提出相似的概念,利用電腦模擬人類運算,並且在經過「兩次興衰」後,這幾年便是人工智慧的第三波浪潮!
深度學習的神經網路:
深度學習究竟是什麼呢?深度學習就是模仿人類腦神經,製造出一個具有許多「神經元」的AI模型,下去分析資料,並且預測出最終資料。
類神經網路架構:
類神經網路架構可以分成「三大層」,分別是最初的「輸入層」,中間的「隱藏層」,還有最後的「輸出層」。大部分的運算都是在隱藏層中完成的,後續的「卷積層 Convolutional layer」、「池化層 Pooling layer」、「平坦層 Flatten layer」、「全連接層Fully Connected layer」都是包含在隱藏層當中。
類神經網路運算:
類神經網路運算,就好像電腦的大腦,要綜合每一個細節,根據其權重進行運算,最後得出要執行的動作。舉一個例子來說,如果要判斷這是不是杯子,可以從很多細節判斷,不過每個細節的權重不同。
「有握把」、「接近橢圓形」都是一個杯子常有的特徵,不過「有握把」的權重會大於「接近橢圓形」,因為幾乎每個杯子都有握把,但不是每個杯子都接近橢圓形。
資料匯入流程:
匯入,可以說是把「數據」與「標籤」混合。讓電腦讀取「水杯」時,知道他的標籤為「水杯」。
在把資料匯入的過程,有很多事情必須處理,如果處理得當會使模型訓練事半功倍,反之,如果沒有把資料處理妥當,永遠都無法訓練出好的模型。
資料匯入流程如下:「導入資料處理套件」、「讀取標籤與照片」、「匹配標籤與照片」、「顯示圖片檔」
資料前處理流程:
在完成「資料匯入流程」後,為了使模型能夠更有效率的被訓練,必須優化資料。「圖片壓縮」、「圖片分群」、「圖片增強」、「隨機讀取」等等,這幾個做法都是為了幫助模型訓練時提升效率。
- 圖片壓縮:有時候一張圖片檔案過大,容易進行模型訓練的負擔,嚴重影響訓練速度
- 圖片分群:要把相同標籤的數據集整理在一起。
- 圖片增強:當圖片太少時,可以把一張圖片經過「曝光調整」、「偏移」、「裁切」等等手法,轉換成數十張照片。
- 隨機讀取:為了讓模型不要「死背學習」,所以要讓模型用「隨機」的數據去訓練,才能達到真正有效的目的。
圖片像素意義:
圖片是由許多像素構成的,每一個像素可以控制一個空格的顏色,對機器來說就是(1~255),圖片的像素可以幫助模型進行訓練,下面的圖片就是一個很好的例子,我們人看到的是0的圖片,可電腦看到的,則是用0排的很接近一個橢圓。
CNN架構基本包含:
- 卷積層(Convolutional layer)
- 池化層(Pooling layer)
- 平坦層(Flatten layer)
- 全連階層(Fully connected layer)
卷積運算 Covolution:
卷積層 Convolutional layer:
池化層 Pooling layer:
全連接層 Fully Connected layer:
課程內容2:芒果不良品 AI模型訓練實作
老師講述完基礎理論後,開始帶著我們進行實戰。這次也是使用免費的AI訓練環境「Google Colab」,老師都有事前提供好程式碼與訓練數據,讓我們可以在課程中學習的更迅速。
不過為了不使文章篇幅過長,我會把「芒果不良品 AI模型訓練實作」撰寫成一篇文章,如果有興趣的人也可以去參考看看喔!
心得感想:
這次的活動辦在平常日,平常本該在學校上課,不過因為剛段考完,而且上課的主題、內容又十分吸引我,所以我就請了事假出來參與這堂「芒愛文芒果五類不良品辨識競賽 影像辨識工作坊」。
雖然坐在我身邊的,不是教授就是大學專科生,不過我卻絲毫沒有壓力,因為我告訴我自己:現在就是「體驗」深度學習的最好時機,不用怕不會。只要聽懂了任何一點新知識,都代表著這堂課非常值得!
在這堂課中,我不但吸收了課堂正課的70-80%新知識,又在下課而外花時間請教指導老師,讓我額外多學了很多實用的知識。
舉例來說:雖然老師上課教學使用「Google Colab」平台,但我在下課時也請教老師該如何用自己的電腦「訓練AI模型」,最終利用Anaconda在我自己的Macbook Pro上,建立出我自己專屬的深度學習環境,超級感動的!
我體會到了:人生不只是讀書而已,探索未來興趣也是非常重要的一件事!所以我希望可以分享給大家一個觀念:「讀書固然重要,但探索人生也必須投資!」