R&D
CENTER

模型評估與現場運作:過檢・漏檢、閾值、重新訓練

光憑準確率 99% 這個數字,還不足以讓模型上線。本篇說明如何分別計算過檢與漏檢、依成本設定閾值,以及監控運作中的變化並重新訓練的流程。

基礎4 分鐘0 瀏覽
本課重點
  1. 將良品判為不良品的過檢,與漏掉不良品的漏檢,成本並不相同,必須分別計算。
  2. 閾值不是設在讓準確率最大的值,而是設在讓漏檢維持在容許範圍內、同時減少過檢的值。
  3. 評估資料必須是未用於訓練與閾值調整的獨立資料集,數字才值得信任。
  4. 運作期間要監控分數分布的變化(漂移),並建立將現場判定回饋到訓練的循環。

混淆矩陣:分成四格計算

實際為良品 實際為不良品
模型:OK 正確 漏檢(不良品流出)
模型:NG 過檢(良品報廢・重新檢測) 正確

在不良率 1% 的產線上,將所有零件都判為 OK 的「模型」準確率是 99%,但它一個不良品也抓不到。因此不能只看準確率,而要同時參考以下指標。

  • 召回率(Recall) — 實際不良品中被模型抓出的比例。漏檢越少,數值越高。
  • 精確率(Precision) — 模型判為 NG 的項目中真正不良品的比例。過檢越少,數值越高。
  • F1 — 召回率與精確率的調和平均。用來以單一數字觀察兩者的平衡。

閾值依成本決定

良品零件的分數 不良品零件的分數 threshold 漏檢 過檢 01
在兩個分布重疊的區間,將閾值往左移,漏檢會減少、過檢會增加。消除重疊不是閾值的工作,而是影像與模型的工作。

在大多數現場,一次漏檢的成本遠高於一次過檢。 不良品一旦流到客戶手上,就會引發客訴與召回,而過檢只是重新檢測的成本。因此順序如下。

  1. 先決定可容許的漏檢率。例:0 件。
  2. 在滿足該條件的閾值中,選擇過檢最少的值。
  3. 若過檢仍然太多,要改善的不是閾值,而是影像(光源・對位)與模型。

自動找出 F1 最高點的功能(RoboVision)是很好的起點,但最終數值要依這個成本基準來調整。難以確定的區間,則透過雙閾值的 Gray 交給人員判斷。

將資料分成三份

  • 訓練集 — 模型學習用的資料。
  • 驗證集 — 選擇演算法與閾值時參考的資料。
  • 評估集 — 最後只用一次來確認效能的資料。

若一邊看評估集一邊調整閾值,得到的數字會比實際更好。此外,同一個零件從多個角度拍攝的影像,不可分散到訓練與評估中,因為那等於讓模型再次猜中「已經看過的零件」。

部署到產線

  • 速度 — 判定必須在產線的節拍時間內完成。不只量測單張影像的推論時間,還要量測包含拍攝・前處理・結果傳送在內的總時間。
  • 最佳化格式 — 將訓練好的模型轉換為 ONNX 或 TensorRT,在同一張 GPU 上推論會更快。Physical AI Platform(PaaS)的 Model Hub 負責管理轉換與部署。
  • 結果記錄 — 將判定、分數、影像路徑存成 CSV,並匯集到 fineAi Dash,即可查看依時段・產線・不良類型的趨勢、SPC 與柏拉圖。

運作中的變化:漂移

產線會持續變化。光源老化、原料批次更換、相機稍微偏移。於是良品零件的分數分布會一點一點往右移動,某天過檢就突然增加。PaaS 會以 **PSI(Population Stability Index)**計算分數分布與訓練當時相比改變了多少,並發出警告,讓您在過檢爆發前找出原因。

重新訓練的循環

  1. 現場操作人員為 NG 與 Gray 影像標記實際判定。
  2. 標記過的影像累積到資料集中。
  3. 定期重新訓練,並以評估集確認是否優於先前的模型。
  4. 若有改善,便透過 OTA 部署到現場設備。

只要這個循環持續運轉,模型就會與產線一起進步。反之,若沒有這個循環,上線當天的效能就是最高點。