如何改善您的自訂視覺模型

在本指南中,您將瞭解如何改善自訂視覺服務模型的品質。 分類器物件偵測器的品質取決於您提供的標記資料數量、品質及種類,以及整體資料集的平衡程度。 良好的模型有一個平衡的訓練資料集,代表將提交給它的內容。 建立這類模型的程式是反復的;通常會進行一些定型以達到預期的結果。

以下是可協助您定型更精確模型的一般模式:

  1. 第一回合定型
  2. 新增更多影像並平衡資料;重新定型
  3. 新增背景、光源、物件大小、攝影機角度及樣式各異的影像;重新定型
  4. 使用新影像來測試預測
  5. 根據預測結果修改現有的定型資料

防止過度學習

有時候,模型將會學習如何根據您的影像共通的任意特性進行預測。 例如,如果您建立蘋果與柑橘的分類器,且已使用手拿蘋果與白盤裝柑橘的影像,分類器可能過度重視手與白盤,而不是蘋果與柑橘。

未預期的分類影像

若要更正這個問題,請提供具有不同角度、背景、物件大小、群組及其他變化的影像。 下列各節會根據這些概念進行擴充。

資料品質

定型影像的數目是您的資料集最重要的因素。 我們建議每個標籤至少使用50個影像作為起點。 使用較少影像,過度學習的風險比較高,雖然您的效能數字可能暗示品質良好,但您的模型可能在與真實世界的資料奮戰。

資料平衡

此外,務必考慮定型資料的相對數量。 例如,對一個標籤使用 500 個影像且對另一個標籤使用 50 個影像,會讓定型資料集不平衡。 這會導致模型在預測某個標籤會比預測另一個標籤更精確。 如果影像最少的標籤與影像最多的標籤之間可至少維持 1:2 的比例,可能會看到較佳的結果。 例如,如果具有最多影像的標籤有 500 個影像,那麼最少影像的標籤應該至少有 250 個影像用於定型。

資料多樣性

務必使用代表在正常使用期間將送出到分類器的影像。 否則,您的模型可以瞭解如何根據您的影像共通的任意特性進行預測。 例如,如果您建立蘋果與柑橘的分類器,且已使用手拿蘋果與白盤裝柑橘的影像,分類器可能過度重視手與白盤,而不是蘋果與柑橘。

未預期的分類影像

若要更正這個問題,請包含各種不同的影像,以確保您的模型能夠妥善地一般化。 以下一些方式可讓您的定型集更為多元:

  • 背景: 在不同背景的前方提供物件的影像。 自然內容中的相片會將更多資訊提供給分類器,所以比放在中性背景前方的相片更好。

    背景範例影像

  • 光源: 提供具有不同光源的影像 (也就是,以閃光燈、高曝光等方式拍攝) ,尤其是用於預測的影像有不同的光源。 對於使用具有各種飽和度、色調、亮度的影像也很有幫助。

    光源範例影像

  • 物件大小: 提供物件的大小和數目不同的影像 (例如,香蕉的群體相片,以及單一 banana) 的特寫。 不同的大小可協助分類器更適當地一般化。

    大小範例影像

  • 攝影機角度: 提供以不同攝影機角度拍攝的影像。 或者,如果所有相片都必須以固定式攝影機 (例如,監視攝影機) 拍攝,請務必對每個定期發生的物件指派不同的標籤,以避免過度學習 — 將不相關的物件 (例如,路燈柱) 解釋為主要特徵。

    角度範例影像

  • 樣式: 提供相同類別的不同樣式影像 (例如,不同的相同水果) 。 不過,如果您有樣式迥異的物件 (例如米老鼠與現實中的老鼠),建議您分別標示為不同類別,更清楚地表示不同的特徵。

    樣式範例影像

僅 (分類器的負面影像)

如果您使用影像分類器,您可能需要加入負面的 範例 ,以協助讓您的分類器更加精確。 負數範例是不符合任何其他標記的影像。 您上傳這些影像時,將特別的 [負向] 標籤套用於影像。

物件偵測器會自動處理負面樣本,因為繪製周框方塊以外的任何影像區域都會被視為負的。

注意

自訂視覺服務支援某些自動處理負片的功能。 例如,如果您正在建置葡萄與香蕉的分類器,並送出了一隻鞋子的影像進行預測,則分類器應該會針對葡萄與香蕉,將該影像評分為接近 0%。

反過來說,如果負類影像只是用來定型之影像的變化,由於相似度極高,模型很可能會將負類影像分類為標記的類別。 例如,如果有一個柳橙與葡萄柚分類器,但您饋送小柑橘的影像,它可能會將小柑橘評分為柳橙,因為小柑橘有許多和柳橙類似的特徵。 如果是這類負類影像,建議您另外建立一或多個額外標記 (例如「其他」),並在定型期間以此標記來標示負類影像,使模型能更適當區分這些類別。

請考慮遮蔽和截斷 (僅限物件偵測器)

如果您想要物件偵測器偵測截斷的物件 (物件已部分剪下映射) 或 pixels occluded 物件 (物件被影像) 中的另一個物件封鎖,則您必須包含涵蓋這些案例的定型影像。

注意

其他物件所 pixels occluded 的物件問題不會與重 迭閾值 混淆,也就是分級模型效能的參數。 自訂視覺網站上的 [重 迭閾值] 滑杆會處理預測的周框方塊必須與真正的周框方塊重迭的程度,以視為正確。

使用預測影像以供進一步定型

當您藉由將影像提交至預測端點來使用或測試模型時,自訂視覺服務會儲存這些影像。 您可以接著使用它們來改善模型。

  1. 若要查看提交至模型的影像,請開啟 自訂視覺網頁,移至您的專案,然後選取 [ 預測 ] 索引標籤。預設視圖會顯示目前反復專案的影像。 您可以使用 [反覆項目] 下拉式功能表欄位,來檢視在先前反覆項目期間送出的影像。

    預測索引標籤的螢幕擷取畫面 (檢視中有影像)

  2. 將滑鼠停留在影像上,以查看模型所預測的標記。 影像會進行排序,如此一來,可為模型帶來最多改進的影像會列在最上方。 若要使用不同的排序方法,請在 [排序] 區段中進行選取。

    若要將影像新增到現有定型資料,請選取影像、設定正確的標記,然後按一下 [儲存並關閉]。 影像將會從 [預測] 中移除並新增到定型影像集。 您可以選取 [定型影像] 索引標籤加以檢視。

    標記頁面的影像

  3. 然後使用 [ 定型 ] 按鈕重新定型模型。

以視覺化方式檢查預測

若要檢查影像預測,請移至 [定型影像] 索引標籤,在 [反覆項目] 下拉式功能表中選取您先前的定型反覆項目,,然後檢查 [標記] 區段下的一或多個標記。 檢視現在應該在模型無法正確預測指定標記的每個影像周圍顯示紅色方塊。

反覆項目記錄的影像

有時,視覺檢查可以識別出您接著可藉由新增更多定型資料,或修改現有定型資料來更正的模式。 例如,蘋果與萊姆的分類器錯誤地將所有青蘋果加上萊姆的標籤。 您可接著讓定型資料包含已標記青蘋果的影像,然後新增並提供此定型資料,藉以更正此問題。

下一步

在本指南中,您已學到幾種技術,讓您的自訂影像分類模型或物件偵測器模型更加精確。 接下來,了解如何藉由將影像送出到預測 API,以程式設計方式測試它們。