台灣人工智慧學校南部分校工程師孫曉恩,在就讀清華大學數學研究所博士班時,偶然從媒體上看到了人工智慧圍棋軟體 AlphaGo 與人類棋王對弈的新聞, 當 AlphaGo 戰勝了韓國棋王李世乭,也燃起了他對 AI 的興趣。 2018 年選擇進入台灣人工智慧學校技術領袖班研習,孫曉恩表示,與台北總校第三期 200 多位學員們一起投入 AI 研習的四個多月間非常開心且充實,並坦言,當初程式語言這個領域是他是比較需要花時間研究的,經過慢慢的接觸與研習就絕對能夠愈來愈上手。當時與另外四位組員一同實作「人物手勢辨識」專題期間,更加了解類神經網路範疇當中 CNN 與 RNN 的應用,再度奠定了孫曉恩成為 AI 工程師目標。
人工智慧這個領域在近幾年來成為媒體非常關心的話題,但對於一般想要一探究竟的大眾,卻覺得深奧而難以窺視。現今人工智慧主要涵蓋機器學習與深度學習,當中所牽涉到的專業領域主要包括電腦科學以及數學這二門學科,而數學卻又在當中扮演了什麼樣的角色?一直是曉恩在學中做、做中學所探討的問題,以下他便舉出三項接觸 AI 後的數學應用經歷加以介紹:
1. 其實在眾多的機器學習模型當中,不論是 Neural Network、SVM、或是到入門級的 Logistic Regression,我們所採用讓模型學習到我們手邊資料的方式就是 Gradient descent,藉由 Gradient descent 我們可以讓 Loss function 的值逐漸地往其最小值移動,最終達成我們讓機器學習的目的,而這背後的知識原理即是大一微積分所含蓋的內容:「函數上升最快的方向即為其梯度方向」,反之「函數下降最快的方向即為其梯度之反方向」,若是了解此一觀念要理解 Gradient descent 便是再自然不過的事了。
2. 既然說到了 Gradient descent ,相信有接觸過一些類神經網路或深度學習的人應該會聽過 Backpropagation 一詞,然而這又是什麼呢? Backpropagation 其實就是計算 Loss function 的 gradient 的一種方式。首先我們必須了解到深度神經網路其實可以看作是一個多層的合成函數,而在對 Loss function 的 gradient 進行計算時,我們免不了會對深度神經網路這樣的合成函數做微分運算,而對合成函數進行微分便是透過微積分的 Chain rule,若是我們有去了解 Backpropagation 的整個過程的話,就會發現其實它就是微積分裡的 Chain rule。
3. 卷積神經網路 (Convolutional Neural Network, CNN) 是深度學習裡極為重要的一門分支,電腦視覺這領域便是因為它的關係在近幾年有了許多重大的進展,然而這種神經網路的一大特點即為「卷積」。卷積是什麼? 卷積是一種數學的運算,其功用是可以對資料 ( 如: 訊號、影像 ) 做特徵的萃取,萃取出來的特徵會再送到下一個卷積層做進一步的特徵萃取,如此的方式增強了神經網路的學習效率,在圖像的分類上,比起一般的深度神經網路效果高出太多,因此它也成為了各家爭相研究的對象。
以上談到的經驗分享,是目前接觸 AI 領域當中,較常運用到數學的部分。孫曉恩工程師認為,其他像是機率、統計、線性代數等,也是在進入 AI 領域後會接觸到的數學科目,數學系的學生除了專業科目所培養出來能力之外,平時的訓練也正養成具備清楚的邏輯思考能力、快速了解問題的學習能力,因此數學系的學生在進入 AI 這個領域時,對於理論的理解是擁有相當優勢的。另一方面,關於程式語言或與電腦相關的技術上相較處於弱勢,需要靠勤加練習給予補足。
「在 AI 的領域中,新跟變就是常態,因此保有一顆學習的心,在過程中發現有不足時,願意多花時間理解、補上是不可或缺的重要態度。」孫曉恩堅定地說著。希望勉勵每一位和他一樣對人工智慧充滿熱情和興趣的人,都能夠有像 AlphaGo 一般的自我進化學習能力,成為戰勝自己的贏家。
南部分校工程師孫曉恩簡介: