Dave Bowman: Hello, HAL. Do you read me, HAL?
HAL: Affirmative, Dave. I read you.
(2001: A Space Odyssey)
所以,到底什麼是機器學習?機器為什麼要學習呢?
要回答這個問題,就要先回到今日大家琅琅上口的人工智慧 (AI) 上了。早在五、六十年前,甚至更早的年代,人類就希望能夠打造一種機器,能夠模擬人類思考、做決策、並且與外在世界互動,就像是在電影 2001: A Space Odyssey 中,一手掌握太空船與人類命運的 HAL 9000 電腦一樣。
如果有一天,人類能夠打造出跟人一樣具有「智慧」的物體,那麼人豈不就跟神有同樣的地位了?我想這也是「部分人類」所追求的科學的終極目標。
過去受到硬體運算能力的限制下,AI 的發展與應用有限,而在技術突飛猛進的今日,人們越來越能夠讓 AI 從理論中走出來,實際應用在各個領域。
要讓機器能夠像人一樣具有智慧,能夠與外在世界互動,有兩種做法,一種是告訴(教)機器在各種狀況下該如何反應,譬如當機器「看到有人走進便利商店」的時候就說「歡迎光臨」,這的確是一種非常直接的做法,我們可以持續的教機器如何應對,在機器當中寫入更多的條件,譬如「看到小貓走進便利商店」的時候就說「喵喵」、「看到小狗走進便利商店」的時候就說「汪汪」,但這世界上的狀況千變萬化,不可能窮盡所有可能狀況然後輸入到機器當中。
因此,我們需要讓機器自己有能力學習,去應對這變化無窮的世界(就是授人以魚不如授人以漁的概念)
機器學習的目的,就是透過大量的資料與演算法,讓機器能夠(學會)建立一套模型,來面對「特定任務」的各種狀況。以剛剛便利商店的例子(好奇怪的例子,但都走到這裡了就暫且用下去吧),如果我們希望機器能夠自己判斷來者是人、是貓、還是狗,首先我們必須找到足夠多的人、貓、狗的照片,並且建立幾個機器能夠用以判斷的特徵(譬如高度、顏色、聲音等)。
接著,幫助機器建立初步的模型,利用這模型來判斷照片內容,給予回饋(答對或是答錯),然後持續優化這個模型,直到誤差值小到一個可以接受的範圍。這樣的過程,也跟人類學習的過程一樣:嘗試練習、建立回饋迴路 (feedback loop),然後持續優化自己的思考方式或做事方式。
當一個模型被訓練完成之後,機器就有能力模擬人類,針對「特定任務」中的各種狀況作出判斷。
而深度學習是實現機器學習的一個方法,其技術受到「人腦如何處理資訊」的方式所啟發,過程中不需要仰賴人類的智慧去定義特徵,機器透過深度學習的技術,能夠自己找到判斷的特徵與方法。不過跟上述機器學習的方式相比,深度學習需要仰賴更多的學習資料,以及消耗更多的運算資源。
因為有了機器學習與深度學習,讓人類在打造 AI 的路上又往前邁進了一大步,但到目前為止,人類終究只能夠針對「特定任務」分別打造 AI,像是下圍棋的 AI、開車的 AI、煮咖啡的 AI 等等,也就是所謂的 ANI (Artificial Narrow Intelligence),要打造通用的 AI (AGI, Artificial General Intelligence),像是 HAL 9000 (這年頭可能沒多少人認識)
或是 Jarvis(這個應該比較多人知道),則還有很長一段路要走,所以大家可以先不用太擔心 AI 征服世界的那一天。
先這樣,我們明天見!
Tony: Jarvis, are you up?
Jarvis: For you sir, always.
(Iron Man)