iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 3
0
AI & Data

花甲老頭學 AI系列 第 3

[鐵人12:Day 03] 簡單即是美

  • 分享至 

  • xImage
  •  

在老頭還不算長的 AI 學習生涯裏,還沒有機會好好拜讀「理查薩頓 (Richard S. Sutton)」這位 Reinforcement Learning 宗師的大作,然而卻三不五時的看到有人引用他的文章「慘痛的教訓 (The Bitter Lesson)」,於是乎起了一些好奇心,想看看他在這篇文章裏到底提出了什麼令大家一談再談的觀點 (註一)。

在文章中,薩頓開宗明義地提到,從這七十年來 AI 研究的歷史中,我們可以學到之最重要的一課是 : 可以充份善用「計算力 (或簡稱算力)」的「通用的演算法」是解決 AI 問題最有效的途徑。

The biggest lesson that can be read from 70 years of AI research is that general methods that leverage computation are ultimately the most effective, and by a large margin.

這個論述似乎與我們所受的資訊科學專業訓練相互違背,假設你是一個大一學生,教授要求你寫一個處理一億筆記錄的搜尋程式,平均搜尋時間必須少於 5 秒。於是你使用最熟悉的線性搜尋法 (Linear Search),寫了個簡潔的程式,一切都很順利,只是平均搜尋時間為 10 秒。接下來你該怎麼辦 ? 是的,老頭和你一樣,我們第一個想到的是「找一個更有效率的搜尋法,重新撰寫程式」,而不是「用一台算力大一倍的電腦來執行你的程式」(如果你真的這麼做了, 教授可能不會讓你過關)。

以上的例子,「用一台算力大一倍的電腦來執行你的程式」就是薩頓所說的「善用算力」,而線性搜尋法則對應薩頓所指的「通用演算法」(註二)。

為了支持他的論證,薩頓在他的文章中用了 1977 年電腦擊敗人類西洋棋冠軍的例子,當時電腦所用的方法,只是單純的「大範圍深度搜尋法」,窮舉其後 N 步棋的所有可能性,找出對自己最有利的下一步。而當時大部份研究西洋棋的電腦科學家們不太能接受這個結果,他們認為這種「暴力式的演算法」不應該是一個研究的主要方向,「找出西洋棋的致勝邏輯」以及「解析棋士的思惟方式」才是正確的道路。薩頓指出,當時的科學家們還沒有從中得到教訓。

隨後,薩頓又舉了大家耳熟能詳的 AlphaGo、語音識別、和電腦視覺為例,告訴大家那些試圖解析人類的思維方法,建立複雜的邏輯模型的研究方向,最後皆是徒勞無功難以突破,反而是「深度學習」這類的方法,不去分析人類的思惟模式,而是使用深度神經網路 (Deep Neural Network; DNN) 以及更多的計算資源,以大量訓練資料集 (training dataset) 來訓練模型,獲得突破性的進展。

最後,薩頓的結論是 :

第一,「搜索」和「學習」這兩個通用方法,會隨著可用的計算資源的增長變得更加強大。也就是說,薩頓認為此兩者,是未來解決 AI 問題的最重要的方法。

第二,我們應該停止「去解析人類複雜的心智結構, 並設法把它複製到我們的 AI 系統中」的這種作法,因為它的複雜的程度是我們難以想像的。反過來說,我們應該建立一種 AI 系統,它不應只是「包含人類發現的知識」,而是藉由「搜索」和「學習」的過程中,讓系統自行去發現人類還未能掌握的那些知識結構。

這篇文章不長,老頭十分推薦 AI 人看看它的全文,儘管刋出之後引起許多正反面的爭議,而老頭也並不完全贊成他的觀點,但是多多閱讀及思辨這類的文章,確實可以提升 AI 人的格局和高度, 讓我們從 AI 程式員,進化到 AI 系統分析師或系統架構師,最後更成為 AI 思想家和 AI 哲學家 ! (老頭!你想太多啦!)

(註一 : 欲閱讀全文,可參考 http://www.incompleteideas.net/IncIdeas/BitterLesson.html
老頭也推薦 Alan Chang 的中英對照
https://medium.com/@allenfrank14/%E7%BF%BB%E8%AD%AF-%E7%97%9B%E8%8B%A6%E7%9A%84%E6%95%99%E8%A8%93-the-bitter-lesson-bd96c154a3c8 )

(註二 : 老頭在資訊科學的相關領域中,並沒有看過「通用演算法」的明確定義,所以它應該是一個相對的概念,一群演算法互相比較,有些是偏向通用的,有些則是偏向專用的。例如拿線性搜尋法,二分搜尋法 (Binary Search) 和雜湊搜尋法 (Hashing Search) 三種演算法來比較,我們可以說線性搜尋法比較「通用」,因為它適用於所有的資料庫結構,二分搜尋法比較「專用」,因為資料庫中的記錄必須依序排列好,方能使用它。而雜湊搜尋法也是比較「專用」,因為資料庫中的記錄必須配合雜湊函式及雜湊表所指示的位置來擺放。)


上一篇
[鐵人12:Day 02] 使命必達
下一篇
[鐵人12:Day 04] 簡單辛苦錢
系列文
花甲老頭學 AI30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言