Teachable Machine

Teachable Machine

Teachable Machine是由Google開發的一個基於網頁的開源工具,使用戶無需專業知識或編碼能力即可創建機器學習模型。該項目是Google的A.I. Experiment的一部分,於2017年10月推出。谷歌升級了該工具,推出了功能更強大的Teachable Machine 2.0。

它支持圖像、音頻和姿勢輸入,基於TensorFlow.js實現,運行在支持JavaScript的環境中。用戶通過收集樣本數據自動訓練模型,測試準確性後導出使用。訓練過程完全在用戶計算機上運行,以保護隱私。該工具支持導出TensorFlow.js、TensorFlow Lite、Core ML和Arduino等多種格式,適用於網站互動、手機套用和物聯網領域。在套用中,它被用於教育、創意項目和互動藝術等場景。由於官方網頁版在移動設備上支持有限,有第三方開發者推出了iOS移動端套用。此外,已有團隊將其部署至國區域網路絡並提供適配,以方便國內用戶使用。

基本介紹

  • 外文名:Teachable Machine
  • 最近更新時間:2023年8月29日
  • 上市時間:2017年10月
  • 產品類型:基於網頁的AI工具
發展歷程,技術原理,產品特色,需求人群,部署與使用,套用案例,

發展歷程

Teachable Machine於2017年10月由谷歌創意實驗室(Google Creative Lab)推出,是一個基於瀏覽器的機器學習演示實驗,屬於A.I. Experiments項目的一部分,旨在讓用戶無需編程即可理解機器學習,其核心庫為deeplearn.js。
2019年11月,谷歌升級發布了Teachable Machine 2.0,新增了對音頻輸入和身體姿態識別的支持,並允許用戶導出及部署訓練好的模型,使其從一個演示實驗轉變為功能更強大的實用工具。
2021年8月,第三方開發者Robocar Ltd推出了iOS/iPadOS版《TeachableMachine》移動套用,初期僅支持圖像訓練,旨在解決網頁版對移動設備支持不佳的問題,將工具擴展到移動平台。

技術原理

Teachable Machine基於TensorFlow.js庫構建,使得神經網路模型的訓練和推理可直接在瀏覽器中完成。其早期版本使用了deeplearn.js庫,該庫後來併入了TensorFlow.js。
其核心技術為遷移學習,系統使用預訓練模型作為基礎,用戶只需提供少量樣本數據即可快速創建定製化模型。
用戶通過界面進行數據收集,如圖像、音頻、姿勢,隨後可調整Epochs、Batch Size、學習率等參數進行模型訓練,訓練完成後可導出為TensorFlow.js、TensorFlow Lite等格式,整個過程無需編碼。
所有訓練和推理計算均在用戶本地設備的瀏覽器或應用程式中完成,訓練數據不會上傳至伺服器,確保了用戶隱私。

產品特色

Teachable Machine是由谷歌開發的基於網頁的AI工具,其核心特色是無需編程知識,用戶界面友好,旨在降低機器學習入門門檻。
支持圖片、聲音和姿勢三種輸入方式
所有訓練過程均在用戶本地設備(瀏覽器或App)中完成,訓練數據無需上傳至伺服器,保障了用戶隱私安全。
提供多種教程示例
支持將訓練好的模型導出為多種格式,如TensorFlow.js、TensorFlow Lite、Core ML或Arduino兼容格式,方便集成到網站、移動套用或物聯網設備中。

需求人群

需求人群包括教育工作者與學生,用於教育場景;創意開發者與藝術家,用於創意項目和互動藝術;物聯網愛好者,通過導出模型與Arduino等格式結合,適用於物聯網領域;以及無編程經驗的普通愛好者,可以使用該工具無需編碼能力創建機器學習模型。

部署與使用

Teachable Machine 的主要訪問方式為網頁版,用戶可通過瀏覽器訪問官方網址 teachablemachine.withgoogle.com 使用該工具。對於中國大陸地區用戶,由於網路訪問限制,可通過 Longan 團隊部署的國內鏡像站點 “Longan Teachable Machine” 進行訪問,該鏡像站點已內置支持 CodeLab Adapter,可實現開箱即用的硬體聯動功能。官方網頁版不完全支持移動設備,為滿足移動端用戶需求,第三方開發者 Robocar Ltd 推出了名為 “TeachableMachine” 的 iOS/iPadOS 套用,支持通過設備攝像頭收集圖像樣本並訓練模型,訓練過程在設備本地完成。
使用 Teachable Machine 創建模型主要包括數據收集、模型訓練、測試預覽和導出部署幾個步驟。用戶首先需要創建一個新項目,可選擇圖像項目、音頻項目或姿勢項目等類型,對於圖像項目,還可進一步選擇標準圖像模型或適用於嵌入式系統的嵌入式圖像模型。數據收集支持通過設備攝像頭實時捕獲、從本地檔案上傳或從 Google Drive 導入,用戶需要為每個識別類別分別添加並命名,然後上傳或捕獲對應的樣本圖像、音頻或姿勢數據。點擊“訓練模型”按鈕即可開始訓練,用戶可使用默認參數,也可進入高級選項自定義訓練周期(Epochs)、批次大小(Batch Size)和學習率(Learning Rate)等超參數,訓練過程在用戶本地設備或瀏覽器中完成,數據不會上傳至伺服器。訓練完成後,用戶可即時使用攝像頭或上傳新檔案預覽模型效果,若效果不理想,可返回調整數據並重新訓練,滿意的模型可導出為多種格式,包括TensorFlow.js、TensorFlow Lite 或Core ML,以便集成到網站、移動套用或嵌入式設備中,用戶也可獲取一個雲端託管模型的連結。
在使用 Teachable Machine 時,有以下幾點需要注意:Teachable Machine 網頁版需要保持瀏覽器標籤頁在前台運行,不能最小化或切換到後台,否則可能影響其與Scratch等聯動程式的正常執行。若需將 Teachable Machine 的識別結果輸出到Arduino、micro:bit等外部微控制器硬體,通常需要藉助中間工具,一種常見方法是使用 p5.js 編寫腳本,通過串列連線埠與硬體通信,海外用戶使用官方網頁版時,為實現此功能可能需要搭配安裝 Tampermonkey 等瀏覽器外掛程式及相應腳本,國內用戶使用 Longan 鏡像站則已內置 CodeLab Adapter 支持,可更方便地接入 Scratch 等編程環境或硬體。為提高模型準確性,建議使用高質量、標註準確的圖像進行訓練,並確保各類別樣本的背景、光線等條件儘量一致,目標物體居中,每個類別提供約20-50個樣本通常即可獲得較好效果。

套用案例

在教育教學領域,Teachable Machine被用於學校課程中的圖像識別教學,例如進行“口罩識別”或“貓狗分類”。
在創意互動與遊戲領域,有案例通過訓練模型識別特定手勢來控制俄羅斯方塊遊戲。
在硬體互動與控制方面,通過p5.js等中介,Teachable Machine的識別結果可被傳送至Arduino、micro:bit等微控制器,從而控制伺服電機、LED燈等硬體。具體而言,“Tiny Sorter”演示使用Arduino Leonardo控制伺服電機進行物品分揀。
在音樂與藝術創作中,Teachable Machine可與CodeLab Adapter和Scratch結合,訓練AI識別不同樂器卡片(如吉他、薩克斯)並觸發相應音效或互動。
在原型設計與概念演示方面,谷歌創意實驗室團隊曾開發由膠合板和大型塑膠紐扣製成的Teachable Machine實體原型,旨在通過有觸覺的互動幫助理解機器學習概念。此外,該工具也適用於快速構建AI圖像識別套用的原型,例如識別水果種類或區分動物。

熱門詞條

聯絡我們