跳到主要內容區塊

國立臺灣大學昆蟲學系

演講資訊

整合生物學專題報導
  • 發布單位:昆蟲學系

講題: Pioneering Insect-Inspired Intelligent Approaches with Future Prospects                                    

演講者: 黃世杰 特聘教授 國立成功大學電機工程學系

小編:楊騰志、楊丹宏

 

 

Art editor Img

大綱 & 新知

“AI”也就是我們熟知的「人工智慧」,目前已幾乎是每一部科幻電影的必備要素。而現實生活中也越來越貼近我們,大至工廠自動生產、醫療輔助器材,小至網路上轉換照片性別的APP、電腦對弈等等均是,本次整合生物課程邀請黃世杰特聘教授來為我們深入淺出的介紹甚麼是人工智慧。

人工智慧的原理

人工智慧的理論重點即在於找出輸入層(input layer)和輸出層(output layer)的關係,其中將兩者之間連結的即為隱藏層(hidden layer),透過程式的設計可以讓軟體進行深度學習,漸漸地將隱藏層複雜化,形成縝密的神經網路,從而得出越來越精準的結果。

講者提到一個訓練理想的神經網路,即使是沒看過的東西也能推導出正確的結果。

人工智慧的應用

人工智慧的應用根據需求可分為分類型(classification)、聚合型(clustering)及迴歸型(regression),此外又可根據是否經過人為訓練,分為監督式和非監督式。

  • 監督式(supervised learning & inferring): 透過提前輸入大量的訓練資料(training data)讓電腦學習、判斷後,即可使其舉一反三的去推論更多未知的資料。
  • 非監督式(unsupervised): 和監督式不同,他並沒有訓練的這個階段,通常用於將大量的資料自動區分成複數特徵相近的類群。

以下則介紹一些常見的人工智慧計算形式:

  • 卷積神經網路(Convolutional Neural Network/ CNN) : 多數用於圖形辨識;透過降維使其能夠以很少的元素表現其原始的目標。
  • K-近鄰演算法(K-Nearest Neighbor/ KNN): 透過訓練計算出新樣本和鄰近數據庫樣本的距離,從而推測出新樣本屬於哪一類群。
  • K-平均演算法(K-Means Clustering): 隨機的圈畫複數樣本後,計算其中的中心點,判斷各點和各中心的距離後,再重新進行規劃,進而可得出最有可能的類群分類。
  • 生成對抗網路(Generative Adversarial Network/ GAN): 將兩個神經網路以互相博弈的形式進行對抗,從而產生兩者之間的生成網路。多數將圖片轉換畫風轉換人物性別的軟體都是以此產生。

來自大自然的啟發

除此之外,講者也特別為我們介紹了許多模仿自大自然的生物活動的程式設計: 比如模擬螢火蟲發光的形式來表現功能性的Firefly Algorithm;如同蜂群中的外勤蜂在找蜜源時都選擇最多的部分,來模擬尋找資料的Artificial Bee Colony;或是以根長出莖的形式來模擬演算結果的最佳生長演算法 (Plant Growth Algorithm)等等。其中讓我印象最深刻的是Ant Colony System,螞蟻會透過費洛蒙來追蹤其他螞蟻的足跡,而理論上在起迄點不變的情況下,路徑越短,則費洛蒙越濃,以此為原理只要不斷地追蹤較濃的方向電腦即能找出起始點之間的最短路徑,GPS的最佳路徑計算及是此原理。

透過老師精彩的演講讓我們能夠窺見人工智慧的未來展望,也讓我們有了基本的了解讓我們往後對人工智慧能有更多、更深入的理解。

 

Q&A

Q1: 訓練AI的時候須注意哪些要點?

A1: 訓練AI的時候有兩大要點,第一,資料量一定要夠,資料量若不夠,則沒辦法學到輸入和輸出的非線性關係;第二,資料的品質(quality)一定要好,若資料品質欠佳,則有可能輸出的結果毫無意義,這就是所謂garbage in, garbage out的概念。

Q2: 假設今天pattern 不明顯的話,我要怎麼找出適用的model? 要怎麼建立?

A2: 神經網絡裡面有個概念叫做交差驗證 (cross validation),輸入跟輸出的資料 (a pair of training data)有時還要加入其他進行交互驗證,例如訓練紅燈停,必須訓練一下粉紅色的燈要不要停,或是距離多遠要停等等,這樣比較能夠確定神經網絡是訓練好的(well-trained)人工智能。

Q3: 螞蟻、蜜蜂演算法算是類神經網路的一類嗎?

A3: 不是。類神經網路一般可視為計算智能(computational intelligence, CI),偏重計算的方式。螞蟻、蜜蜂最佳路徑演算法則歸類為最佳化演算法,用來推測出最佳解。最顯而易懂的區分是,今天假設我要從A到B地,那麼如果類神經網路已經過訓練,則今天一個輸入進去,就可以立即獲得對應輸出,而最佳化演算法的概念則是,我並不知道從A到B哪一條路是最佳,我放很多螞蟻去找哪一條路徑是最佳解。

Q4: 最佳解應該是直線,但最後收斂成有點弧度的曲線,有沒有可能電腦給我們的收斂解並非最佳解?

A4: 這也是有可能,需要看設計者的收斂準則定在哪裡,訂得很不嚴謹的話就有可能造成premature convergence的狀況發生。

Q5: Convolutional Neural Network透過比較少的單位去判斷整體物件是什麼,但會不會有辨識錯誤的狀況?

A5: 當然有可能,今天假設輸入品質不好的data,就有可能出來不好的結果。所以,input data的品質越高,錯誤率就可以降低許多。

 

Key words: 人工智能 (Artificial intelligence, AI), 類神經網路 (neural network), 最佳化演算法 (optimization algorithm)  

 

花絮照片3~5 :

AI 除了可以代表Amazing Insects外,也可以是Artificial Intelligence。

螞蟻覓食行為得到的啟發: 最佳路徑演算法

講者耐心回答問題,大家都收穫滿滿。