不同於常見機器學習皆是由 Python 語言實作, 本書使用 JavaScript 語言於瀏覽器實作機器學習, 搭配著名的 JS 機器學習函式庫 ml5.js 可以更快速且便利地達成 AI 網頁應用, 對於許多熟悉 JS 語言的前端工程師或使用者更為親近, 實驗過程使用 p5.js 程式庫, 讓沒有太多程式設計基礎的使用者也可以更輕鬆將結果視覺化, 再搭配使用 p5.js web editor 線上開發環境, 隻需要使用瀏覽器就可以開始輕鬆設計網頁, 不需要在自己的主機建構繁瑣的開發環境, 再搭配 Python 編寫控製闆程式, 將應用結閤至感測器或實體輸齣裝置, 實現更完整的機器學習應用實例。
本書一開始會先介紹機器學習概念與 p5.js web editor 線上開發環境基本操作, 接著直接體驗使用 ml5.js 中的現有模型, 實作可以辨識特定物件的影像分類器。
除瞭網頁實作神經網路外, 可再串連硬體控製闆, 藉由控製闆輸齣預測結果, 比如使用物件偵測來判斷是否有人齣現, 對應的 OLED 顯示器模組就會齣現迎賓文字或相關訊息;或是語音辨識讓玩傢用語音來控製遊戲, 遊戲結束後會通知控製闆啟動振動馬達迴饋給玩傢。
最後會使用 ml5 程式庫實際訓練自己的神經網路模型, 首先為利用控製闆蒐集感測器資料, 再透過神經網路訓練解決迴歸問題, 如藉由溫度感測器的訊號, 找齣感測值與實際溫度的關係, 做齣自製即時電子溫度計, 再結閤可以即時顯示畫麵去背效果的 U-Net 模型, 就可以使用環境溫度來改變虛擬背景特效。
接著為解決分類問題的神經網路, 使用現成的 Facemesh 模型找齣臉部特徵點, 分別蒐集臉部不同的角度資料進行訓練, 最終得到一個可以辨識是否打瞌睡的模型, 再串接實體蜂鳴器在打瞌睡時, 發齣警報聲提醒使用者。
最後訓練的神經網路為捲積神經網路, 透過蒐集配戴口罩與否的不同照片作為訓練資料, 經過捲積神經網路訓練後, 就可以用此模型來判斷畫麵中的人是否有正確配戴口罩, 再結閤模擬門鎖的伺服馬達, 建構齣一套口罩門禁係統的概念。
本產品除實驗手冊外,實驗過程中有任何問題或是建議都可以在 Facebook 粉絲專頁《旗標創客‧自造者工作坊》中留言,即有專人為您服務。
本產品 Windows / Mac 皆適用
操作本產品需要視訊鏡頭及麥剋風 (筆電內建或 USB 外接 webcam 皆可)
本書特色
● 用 JavaScript 升級網頁添加機器學習能力
● 結閤硬體展現機器學習成果實作物聯網應用
● 從感測器蒐集資料、訓練模型到應用完整學習