第 43 章
利用Create ML 訓練你的機器學習模型來進行圖片辨識

在前面的章節,你已經學習過如何在你的 iOS App 中整合一個 Core ML 模型,在該章節的範例應用,我們使用了一個由其他開發者所預先訓練的 ML 模型。不過,若你無法找到一個符合自己需求的 ML 模型呢?

你必須要訓練你自己的模型。但是該如何做呢?

訓練自己 ML 模型的工具很多。Tensorflow 與 Caffe 就是其中的範例。不過,這些工具需要許多的程式,而且沒有一個很友善的視覺介面。自Xcode 10 釋出之後,Apple 導入了一個稱作 Create ML 的新工具,開發者(即使是非開發者)可以利用這個工具來訓練自己的 ML 模型。

Create ML 最初是在伴隨在 Xcode 10 中,而你是透過內置的 Playgrounds 運作。 自 Xcode 11 開始,Create ML 成為一個獨立的全功能應用App。 要訓練自己的 ML 模型,你只需將訓練數據導入 Create ML 工具即可。 當我們繼續以下的內容,你便會了解我的意思了。

暫時,Create ML 的重點在於訓練以下5個領域的機器學習模型:

  1. 圖片 (Images)
  2. 文字 (Text)
  3. 表格資料(Tabular data)
  4. 聲音(Sound)
  5. 活動(Activity)

以圖片為例,你可以針對圖片辨識建立自己的圖片分類器(classifier),譬如你可以照一張照片作為輸入,而 ML 模型則會輸出圖片的標籤。你也可以建立文字分類的 ML 模型。舉例來說,你可以訓練一個模型來辯別使用者的留言是正面或者是負面。

本章,我們會將重點放在圖片辨識 ML 模型的訓練。至於其他的 ML 模型將會在另外的章節做探討。

建立一個 ML 模型的工作流程

當你需要建立自己的 ML 模型,你需要從一個問題來開始。這裡舉兩個例子:

  • 我找不到任何 ML 模型可以識別所有美食類型。
  • 我所能找到的 ML 模型只能識別 1,000 種真實世界的物件。不過,一些像是 HomePod 與 Apple Watch 物件則沒有出現在模型中。

一般而言,想建立自己的 ML 模型通常是因為現成的模型不符合所需。

圖 43.1. 建立一個 ML 模型的工作流程
圖 43.1. 建立一個 ML 模型的工作流程

為了能夠建立模型,先從資料收集開始進行。譬如說,你想要訓練一個能分類麵包種類的模型,你會拍攝各種不同的麵包照片,然後訓練這個模型。

接著,你使用一些測試資料來評估這個模型,並看是否對結果感到滿意,如果不滿意的話,回去收集更多資料,再次進行調整與訓練模型直到對結果感到滿意為止。

最後,輸出 ML 模型,並整合至你的 iOS App。建立一個 ML 模型的工作流程大致上是這樣。


本文摘自《iOS 17 App程式設計進階攻略》一書。如果你想繼續閱讀和下載完整程式碼,你可以從AppCoda網站購買完整電子版,全書範例檔皆可下載。

results matching ""

    No results matching ""