3b. 人臉識別

學習目標 :

  • 加深對電腦視覺、監督式學習法和訓練AI模型的理解及應用。

學習內容 :

  • 透過訓練 AI 模型去識別人臉。

所需準備 :

 
材料: Parameter 參數 :
“U03b Face Recognition.json”
人臉

Sensor (Input)
傳感器
相機 32 x 24

  • 彩色的
Action (Output)
行動
  • 刪除2個輸出“Adrian”和“Jane”。
  • 添加所需自定輸出的數量,將名稱作為輸出標籤
AI Supervised Learning, Neural Network 監督學習,神經網絡
Visualization
可視化
OFF only <network value>;
僅<網絡值> Off

下載並導入 "U03b Face Recognition"

刪除 Output "Adrian" 及 "Jane" :

在「Action」按下「x」來刪除 default output , 然後按「+」來加入自訂的名稱

例子 : Bobby , 這次不用選擇 Robot's action

開始訓練 :

  • 點擊<重置學習>按鈕一次。
  • 關閉<自動駕駛>按鈕。
  • 點擊<學習>按鈕。
  • 要求一名學生將機器人握在手中。

使用機器人的相機對著參與者的臉,按下5次正確標記的輸出(操作)。此操作用於識別參與者。

做出成功人臉識別的提示 :

  • 臉部應覆蓋75-80%的屏幕圖像。越接近臉越好。
  • 對於同一參與者,每次使用相同的背景。使用簡單的背景。
  • 每次拍攝同一參與者的照片時,稍微移動相機。
  • 對其他參與者重複上述操作。

測試 :

  • 關閉<學習>按鈕。點擊按鈕 , 開啟<自動駕駛>。機器人將使用學習的智能來識別臉部。
  • 測試第一位參與者 - 測試第二位參與者 - 測試第三位參與者等。
  • 結果是否正確?
  • 如果結果不好,您可以添加更多的訓練。或考慮到同一背景進行測試。

討論 :

  • 機器人能否正確識別人臉?
  • 機器人在訓練後是否獲得了智能?您如何知道?
  • 您能否注意到隱藏層?有多少層?

總結 :

  • 重溫 「3a訓練識別可口可樂罐和Perrier瓶」的 監督式學習法 Supervised Learning(總結及要點)

延伸 :

簡介「隱藏層 Hidden Layers」-  神經網路有三種不同的層:

  • 輸入層 - 神經網絡需要一個輸入層去接收輸入資訊,讓層內的神經元及連接可以作出處理及計算,並且 將計算結果傳送到下一個層。 
  • 輸出層 - 神經網絡一定有一個輸出層。輸出層接收到由之前所有層處理過的訊息,並作最後計算及處 理,將計算出的輸出數值放在輸出元內。 
  • 隱蔽層 - 隱蔽層是介乎輸入層和輸出層之間的層,可以是一個,亦可以是多個的。
    • 隱蔽層是隱藏在神經 網路內的,正常情況下是看不到的,這就是為何被稱為 “隱蔽層” 了。 
    • 隱蔽層會用複雜及高深的數學去處理資訊。這使神經網路能夠擁有學習複習工作及事物的能力。 
    • 隱蔽層使神經網路成為最優秀和最強大的機械學習演算法。 
    • 用AI去處理複雜的問題,隱蔽層是必須的。 
    • 如果使用大量的隱蔽層或者隱蔽層內有大量的神經元,這時,神經網絡就需要大量的時間去處理資 訊和計算結果了。 
    • 有多個隱蔽層的神經網絡被稱為 “深度神經網絡”,它擁有 “深度學習” 的能力。