部落格 · 指南

如何在 iPad 上訓練機器學習模型,不需要 Mac,也不用寫程式碼

一份實用指南:選擇模型類型、收集好的範例、訓練、測試並匯出 .mlmodel。全部在 iPad 上完成,你的範例從不上傳。

作者:MagicaLCore ·

過去,訓練自己的模型就意味著需要一臺電腦、專門的工具和大量的設定工作。有了配備 M1 或更新晶片的 iPad,MagicaLCore 把整個流程放進一款 App:你提供範例、訓練、測試,然後匯出一個能用在自己 App 裡的模型。

這份指南會從頭到尾帶你走一遍,並介紹一些好習慣,它們決定了模型只是在示範中可用,還是在真實生活中也可用。

1. 選擇合適的模型類型

從你希望模型回答的問題開始。MagicaLCore 可以訓練六種模型:

模型 它回答 範例
圖像 這張照片裡是什麼? 熟或未熟的水果、葉子的種類
聲音 這是什麼聲音? 鳥鳴、樂器、敲門聲
表格資料 根據這些欄位,是哪個類別或哪個數值? 根據手、腳和臂展預測身高
文字 這段文字在講什麼,或是什麼語氣? 依主題分類訊息
手勢姿勢 這是哪個靜止的手勢? 石頭、布或剪刀
手部動作 這段影片中是哪個手部動作? 影片中的簡短手勢

如果你的問題符合其中一種,iPad 就足夠了。

2. 收集好的範例

模型的品質始終取決於它的資料。以下幾條規則對每種模型類型都有幫助:

  • 每個類別一個資料夾。 資料夾名稱就是標籤:熟、未熟。表格資料則使用 CSV 檔案,其中一欄是你要預測的值。
  • 多樣性勝過數量。 從不同角度、在不同光線和背景下拍攝的照片。在不同房間錄下的聲音。
  • 保持類別平衡。 每個類別的範例數量要接近。用 10 張某樣東西的照片和 1,000 張另一樣東西的照片訓練出的模型,會學會一律猜那個大類別。
  • 收集模型將來會看到的東西。 如果你的 App 會在戶外使用 iPad 相機,就用類似的相機在戶外拍的照片來訓練。
  • 留下一些範例。 用模型在訓練中從未見過的範例來測試,才是誠實的方法。

3. 設定訓練,每項設定都有說明

你可以用預設設定訓練,得到一個實用的第一版模型。當你想要更多控制時,MagicaLCore 會顯示每一項設定,每項都附有一個資訊按鈕,用淺白的文字說明它的作用。你在使用的同時就學會了機器學習的術語,而不用靠猜。

4. 看著它學習

訓練過程中,MagicaLCore 會逐次迭代繪出訓練資料和驗證資料的準確率與損失。有兩件事值得留意:

  • 兩種準確率一起上升:模型學到的東西,在它沒有背下來的範例上也同樣有效。
  • 訓練準確率持續上升,驗證準確率卻停滯不前:模型正在死記硬背。更多樣的範例通常比更多的迭代次數更有幫助。

訓練很長,課卻很短,或者這天特別忙?暫停它,之後在歷史記錄中從中斷的地方繼續。

5. 像使用者一樣測試

數字只是開始,真正的考驗是用新範例試試模型。MagicaLCore 讓你用自己的照片、音訊檔案、一列資料或一句話來測試,也可以用相機和麥克風即時測試。試試困難的情況:光線不好、背景噪音、不尋常的角度。每一次出錯,都在告訴你下一步該加入哪些範例。

6. 匯出真正的 .mlmodel

滿意之後,匯出一個帶有名稱、作者和描述的 .mlmodel 檔案。這是 Xcode 和 Swift Playgrounds 都能讀取的標準格式,因此你可以把它放進 iPhone 或 iPad App。MagicaLCore 中的「使用你的模型」指南會針對每種模型類型展示程式碼。

為什麼在 iPad 上?

  • 不需要 Mac。 在同一臺裝置上訓練、測試和匯出。搭配 Swift Playgrounds,你甚至可以在上面開發 App。
  • 隱私從設計開始。 訓練、測試和匯出都在 iPad 上完成。你的資料集永遠不會為了訓練模型而上傳。
  • 你去哪裡,它就去哪裡。 校外教學、花園、教室:你可以在同一個地方收集範例並訓練。

快速檢查清單:每個類別一個資料夾,範例多樣且平衡,留下一些用於測試,測試困難的情況,然後匯出。

關於其他 App 和服務的資訊已於文章發布日期查證,日後可能有所變動。所有產品名稱均歸其所有者所有。

繼續閱讀

所有文章