Teachable Machine(心得與操作過程)
Google機器學習工具Teachable Machine,可以用簡單的人工智慧功來訓練,可以辨識圖片、聲音與動作。
Teachable Machine網頁用非常簡單與人性化的介面讓沒寫過程式的學生也能快速上手。
照著步驟就能做出簡單的影像與聲音辨識囉!
訓練AI模型的第一步是選擇要訓練模型的種類,分別是圖片、音訊、肢體。
我們選擇簡單的圖片影像辨識訓練,選擇左邊的標準模式,右邊的是給嵌入式系統使用的。
點擊後就會進入這個畫面
有四個重點
1. 分類的名稱修改與增減
2. 上傳檔案的方式
3. 訓練的參數調整
4. 匯出模型
分類的名稱修改與增減
Class1 旁邊的鉛筆圖示可以更改名稱。
Class2 下方的加號圖示(Add a class),可以增加種類。
若是要刪除種類可以找到後面的三個點圖示,裡面有刪除種類與讓選取的種類暫時不作用。
上傳檔案的方式
可以選擇用攝影機或是上傳電腦內的檔案。
影片上傳
點擊 ”Hold to record ”可以擷取一張畫面,如果長按則會擷取多張照片。
點擊設定可以修改擷取的相關參數。
Frames per second(FPS) : 每秒處理幀數,看你是否需要平滑、流暢的畫面運動辨識,如果不用就保持24fps即可。
“ Hold to record ”常因為長按導致有多張不良的擷取圖片,可以在這關閉。
設定完,記得在右下角儲存你的設定唷!
如果要刪除不良的擷取圖片只需把鼠標移動到圖片上方,照到垃圾桶圖示典籍就可以刪除圖片囉!
圖片上傳
可選擇電腦內的檔案或Google drive的檔案。
訓練的參數調整
點擊Train Model 就可以直接訓練了,如果要更詳細的參數調整,請點選
“ Advance ”。
裡面有幾個專有名詞參數
1. Epochs :整個模型訓練的週期(訓練完全部資料)
2. Batch size : 訓練的批次數量,一次丟幾筆資料進去訓練。
3. Learing rate : 學習率大,速度快,容易造成值的震盪與爆炸。學習率小,速度慢,容易造成訓練時間長與過度配適。
建議0.001~0.01,最好不要超過0.03。
4. Reset Defaults : 重設預設值,回到一開始的設定。
5. under the hood : 觀察準確率與損失函數
額外補充 :
Iteration : 迭代,迴圈的次數。
舉例來說 : 我有100筆資料,每次我丟20筆資料去訓練,我需要跑幾次的迴圈。
Data = 100
Batch size = 20
Iteration = 5
Epochs = 1
Data = Batch size * Iterations = (Epochs訓練全部資料的週期 = 1)
左邊是訓練和測試的準確率與損失函數,右邊可以開啟攝影機及時辨識,可以馬上測試模型的好壞。
匯出模型
TensorFlow.js : TensorFlow 的JavaScript 版本
我們使用的是TensorFlow的Keras (.h5檔)
Savemodel SavedModel : 當模型導出為 SavedModel 文件時,不需要建立模型的原始碼,就可再次執行模型。
Tensorflow Lite :是 TensorFlow 應用在可攜式、嵌入式……等。提供相關 API 庫,可執行在 Android、iOS 與樹莓派……等。
選擇要匯出的模型格式,點擊 ” Download my model ”,就會下載到你的電腦裡面了。
程式撰寫
下載了模型檔案 ”converted_keras.zip ”,使用解壓縮軟體,解壓縮到你寫程式的資料夾,解壓縮完成會看到 ”keras_model.h5 ”和 “ labels.txt ”
.h5 檔案是你訓練的模型檔案,label 是你剛剛設定的class索引與名稱。
可以使用官方的程式範例或是去網路上copy別人寫好的程式,記得某些地方有更改,像是.h5的名稱、相對路徑、檔案位置……等。
最後更改判斷式的地方即可。
留言列表