在真實世界中測試分析演算法的重要性

Timo Sachse

在理想的「實驗室」條件下,開發及測試任何東西都可能在真實世界的環境中發現其效能減損。設計師可能會認為理論上的完美風洞條件會是世界上打造最好的一級方程式賽車。但是在葡萄牙海岸狂風大作的四月天,測試模型很可能會被吹得東倒西歪。

影像分析亦是如此,這也是為什麼確保機器學習演算法對於特定使用案例及場景的有效性而言,在實際使用環境中進行測試極為重要。

進行測試之前,先訓練

在實際環境中進行測試之前,必須先開發並訓練機器學習演算法,例如用於影像分析的物件偵測及辨識演算法。

如果要開發深度或機器學習型分析應用,您需要收集大量資料。在影像監控中,這通常是由圖像和影像剪輯組成,其中包含人類和車輛或其他感興趣的物體。對於這些在影像分析中感興趣的物體,為了要增加廣度,所需的資料集可能相當巨大。

為使機器或電腦能夠辨識資料,必需經過資料註釋程序,分類並標記這些物體相關物體。已註解的資料需要涵蓋足量的各種樣本,與分析應用的使用場景相關。不幸的是,資料註釋在很大程度上是個手動和勞務密集的工作。

註釋資料將送入演算法模型,同時訓練架構將會迭代修改並改進模型,直到符合所需的品質。換句話說,模型經過最佳化,能夠解決定義的任務。

機器學習訓練法

基於機器學習的演算法訓練可以透過三種主要方式進行:

  1. 監督學習:模型學習做出準確預測
  2. 無監督學習:模型學習辨識集群
  3. 強化學習:模型從錯誤中學習

監督學習是目前最常見的機器學習法,可以廣義描述為「範例學習」。訓練資料經過明確註釋,這代表輸入的資料配對所需的輸出結果。監督學習通常需要非常大量的註釋資料,演算法的訓練效能直接取決於訓練資料的品質。

在監督學習中最重要的部分是使用資料集,其來自於實際部署情況,代表所有可能的輸入資料。對於物體偵測器而言,開發人員必須確保透過各式各樣的影像來訓練演算法,包括不同物體的實例、方向、比例、光線條件、背景及干擾。只有在訓練資料對於計劃的使用案例具有代表性的情況下,最終的分析應用才能在處理新資料時做出準確預測。

無監督學習利用演算法來分析並分組未標記的資料集。這是監控行業並不常見的訓練法,因為模型需要經過大量校正及測試,但仍然無法預測品質。資料集必須與分析應用相關,但無須清楚標記或標示。

在無監督學習可免除手動註釋的工作,但訓練所需的影像或視訊數量必須大幅增加達到數個數量級。在訓練階段,即將訓練的模型會識別資料集的共同特徵,並由訓練架構提供協助。在部署階段,這使得它能夠根據模式對資料進行分組,同時偵測出異常,即無法對應任何經學習的分組。

強化學習用於例如機器人學、工業自動化及業務策略規劃,但由於需要大量回饋,該法在目前的監控用途中運用有限。強化學習與採取適當行動有關,盡可能在特定情況下提高潛在回報,當模型做出正確的選擇時回報更大。該演算法不使用資料/標籤組進行訓練,而是透過與環境互動測試其決策並進行最佳化,同時衡量回報程度。該演算法的目標是學習行動準則,協助最大化回報。

在部署之前實際進行測試

一旦模型經過訓練,便需要進行徹底測試,通常在實際部署情況下透過廣泛測試結合自動化的部分。在自動化的部分中,應用將透過新資料集進行基準測試,這些資料集必須在模型訓練過程未曾看過。如果這些基準未達預期,流程會重新開始:收集新的訓練資料、製作或修改註釋,然後重新訓練模型。

達到所需的品質水準後,便會開始實地測試。在這個測試中,應用會暴露在實際場景。數量和變化取決於應用範圍:範圍越窄,需要測試的變化越少;範圍越廣,需要的測試越多。再次比較結果並進行評估,如果結果不符所需,則將再次導致重新開始流程。另一個可能結果是定義先決條件,解釋哪些已知場景為不適合應用,或者僅部分建議的應用。

然而,將分析應用暴露在實際案例中,跟在真實世界中執行應用並不相同。部署(也稱為推論或預測)是在監控系統上執行經訓練的機器學習模型、監控實際場景的過程,以便測試演算法是否使用它在訓練階段學習的內容來產生所需的輸出。只有在使用實際資料取代在整個開發和測試中的「乾淨」資料,可能會大幅偏離品質時,我們才能發現演算法是否適合設計目的。

分析測試:常被忽略

或許是對處理器及分析功能越來越「智慧」的印象,客戶相信能夠完美執行分析功能、「開箱即用」,但卻並非如此。實際進行測試極為重要,而且需要考慮分析功能的部署成本。

影像監控分析功能將會持續進步,提升準確度及效率,但通常是在完美的條件下進行開發。我們生活的世界並不完美且很可能會讓任何演算法失效,針對這些瑕疵進行測試是不可或缺。

不完美並非由應用本身自動引起,而這往往是因為與預期不同。也就是說,測試不僅有助於找到缺陷或限制,它還將大幅提高對於一般分析功能的認知。反之,這將有助以最好的方式準備偵測器(攝影機)的安裝方式,甚至可能導致場景本身的修改(例如照明)。

您可以在我們的白皮書中閱讀更多關於 AI 影像分析。

 

下載白皮書