如何透過 Alphai 學習人工智能?
首先我們先要理解什麼是人工智能(Artificial Intelligence)
Intelligence : "All the mental functions whose object is conceptual and rational knowledge".
所有以概念和理性知識為對象的心理功能
Pragmatic definition: "All of man's intellectual faculties". | 所有關乎到人類智力的東西
Artificial : "Produced by the work of man and not by nature". | 透過人工製造而不是自然生成
Artificial Intelligence : "A set of theories and techniques implemented to achieve machines capable of simulating human intelligence".
為實現能夠模擬人類智慧而生成的機器而實施的一套理論和技術。
AlphaAI 機器人的 4 個自主級別 :
對人工智能有初步概念後 , 我們將向大家介紹 AlphaAI 機器人(人工智能)的4個自主級別 :
1) Remote control - 遙控
2) Programming - 編程
3) Supervised learning - 監督式學習
4) Reinforcement learning - 強化學習
這4個級別亦適用於其他的 AI 機器人上 。
Lv 1 Remote Control - 遙控 :
第一階段 Remote Control (遙控) 是發送指令以做出結果 , 其中不涉及自主操作。
機械人的特點 : AlphAI 無線連接至電腦 , 引擎(motor)
與日常生活相似 : Motor <--> 肌肉
機械人不具的品質 / 效能 : 機械人沒有自主操作 , 所有操作都由人類發出指令以控制的。
Lv 2 Programming - 編程
第二階段 Programming (編程) 多數會涉及 Sensor (感應器) 並會依照事前由人類預設的情境及程式做出相對結果。
機械人的品質(跟LV1相比) : 涉及 Sensor , 經過編程後,機械的決策將由 Sensor 的狀況而決定並充許做出自主性的行為。
與日常生活相似 : Sensor <--> Output Device
機械人不具的品質 / 效能 : 機器人只做人類預先計劃好的事情。
人類會提前預備所有的場景和機械人要怎麼做。機器人只會做同樣的事情,但它不會變通。
Lv2 編程是沒有主動性的!
Level 3: Supervised Learning (監督式學習)
第三階段 Supervised learning(監督式學習):
所有資料都被「標註」(label),由人類告訴機器相對應的值,以提供機器學習在輸出時判斷誤差使用。這種方法為人工分類,對電腦來說最簡單,對人類來說最辛苦。
這種方法像是告訴機器(電腦)標準答案,正式考試的時候機器將依照標準答案作答,正確性會比較高。
例如,若要訓練機器區分大象和長頸鹿,我們會提供機器 100 張大象和長頸鹿的照片。機器會依照標註的照片去偵測大象和長頸鹿的特徵,再依照特徵來辨識出大象和長頸鹿從而得出結果。
相對於 LV1,2 的編程及遙控 , LV3 的 Supervised Learning 多了學習,記憶,分析,得出結果再自行做出相應行為。
機械人的品質(建基於Lv1,2再加入) :
- 記住人類給出的例子(數以百計)
- 透過學習而改變機械人的"腦袋"
訓練數據的必要質量 :
- 沒有錯誤
- 足夠數量的例子(愈多愈好)
- 情況的完整性
與日常生活相似的地方 :
• 學習/改變關係
• 重複/堅持
機械人不具的品質 / 效能 :
機器人只是簡單地再現了人類決定的行為 , 它仍舊是沒有主動學習/判斷的能力。
再者, 意想不到的事情/未曾經歷的事情可能會發生 , 尤其是訓練量不足的時間將會發出錯誤。
Level 4 : Reinforcement Learning (強化學習)
第四階段 Reinforcement Learning(強化式學習) : 機械人將透過每一次與環境互動來學習,以取得最大化的預期利益。運用強化式學習的方式,我們不需標註任何資料,但需告訴它採取的哪一步是正確、那一步是錯誤的,根據反饋的好壞(reward and punishment) ,機械人將自行逐步修正、最終得到正確的結果。要讓非監督式學習達至一定程度的正確性,就不能缺少強化式學習的方式。假如機械人在進行自行辨識特徵與分類時,將某張大象的照片預測成長頸鹿,則人類給予錯誤的訊息。它會再次辨認特徵及分類。透過一次一次正確與錯誤的學習並進行修正,最後的預測就會越來越精準。
Reinforcement Learning 最大的分別是人類只需要告知機械人對錯及所需的結果讓它自行學習慢慢進行修正 , 不像監督式學習般需為機械人提供所有情況及對錯。
缺點是學習需時長 , 但準確度會隨時間提高。
機械人的品質(建基於Lv1,2,3再加入) :
- 了解它們可獲得的獎勵(reward and punishment system)
- 會嘗試探索行動(自我提升)
- 可以超越人類 (例如 : AlphaGO)
與日常生活相似的地方 :
• Trial and error (從錯誤中學習並進行修正)
• 探索↔“人類好奇”
機械人不具的品質 / 效能 :
- 雖然 Reinforcement Learning 的學習更為自主,但仍然是由人類編寫的算法決定, 仍然不算是「主動思考」。
- 機械人沒有「人」的意識 , 例如無法對事物意義所出理解、抽象能力等等
- 它亦不知道如何設定自己的目標 , 所有學習都需由人類設置獎勵系統。
例子 :
從 AlphAI 學習 Neutral Network
Neural Network 分為3層 , 1) Input Layer 2) Hidden Layer 3) Output Layer
Input Layer 為輸入(樣本) , 需分析的內容 | 例如 : 大象,長頸鹿相片 , 從中辨識牠們
Hidden Layer 簡單來說就是訓練層 , 層數愈多分析便愈準確 , 例如上圖可見機械人分別以 edges , combinations of edges , object models 來分析 , 綜合三者而得出結果。
Output Layer 為輸出 , 分析後的結果 | 例如 : 這張相片是大象
就 AlphAI 「line tracking」這個 reinforcement learning 作為例子 ,
Input Layer 是 AlphAI sensor 收集的影象 , 如上圖的紅 , 黃 , 相片等等
Hidden Layer 則是它的學習過程 ,由 Input 的點連至 Hidden Layer 的點再到 Output Layer ,
從中分析並做出結果 , Reward or Punishment
Output Layer 是它的行動 , 例如 : 在黑線時保持行駛 , 接近路障時回駛等。