類神經網路:多元分類

稍早,您遇到 二元分類 且能從兩個可能選項中擇一使用,例如:

  • 指定的電子郵件為垃圾郵件或非垃圾郵件。
  • 特定象徵很惡劣或無害。

在本節中,我們將調查 多元分類 這些模型可以從「多種」可能性中挑選。例如:

  • 這隻狗是熊、獵犬或血獵犬嗎?
  • 這朵花是西伯利亞伊里斯嗎? 或矮鬍子?
  • 請問是「Boeing 747」、「Airbus 320」、「Boeing 777」還是「Ebraer 190」?
  • 這是蘋果、熊、糖果、狗或雞蛋的圖片嗎?

現實世界的多課問題有數百萬人選擇 分別建立不同的類別比方說,以多元分類模型為例 都能輕鬆辨識任何圖片

本節將詳細說明多元分類的兩個主要變化版本:

單一或所有

「One-vs.-all」提供二元分類可用於二元分類 。

假設有 N 個可能的解決方案出現分類問題,則屬於「一體制」 解決方案包含 N 個獨立的二進位分類器,也就是一個二進位檔 每個可能結果的分類項。在訓練期間 通過一連串的二元分類器,訓練每個分類器回答 分類問題

以一張水果的圖片為例 可能會訓練出不同的辨識器,分別回答不同的是 問題:

  1. 這張圖片是蘋果嗎?
  2. 這張圖片是橘色嗎?
  3. 這張圖片是香蕉嗎?
  4. 這張圖片是葡萄紫嗎?

下圖說明實際的運作方式。

圖 7. 一張珍珠圖片被輸入成 4 種不同
      二元分類器模型第一個模型能預測「apple」或「not」
      「apple」),並預測出「not apple」。第二個模型會預測
      「橘色」「非橘色」,則預測值「不是橘色」
      第三個模型「不是梨」,而且預測結果是
      「pear」。第四個模型預測的是「葡萄紫」「非葡萄紫」及
      就是「非葡萄紫」
圖 7.將珍珠以輸入內容的形式傳遞給四個 二元分類器第一、第二和第四個模型 (預測 圖片是蘋果、橘子還是葡萄紫) 預測負類第三個模型 (預測 圖片為梨可) 預測的是正類。
,瞭解如何調查及移除這項存取權。

如果類別總數,這個方法相當合理 但類別數量越少,效率就越低 上升。

我們就能建立更有效率的全方位模型 這種模型搭配深層類神經網路,其中每個輸出節點都代表 類別下圖說明這個方法。

圖 8:具備下列架構的類神經網路:輸入層
      1 個節點、含 3 個節點的隱藏層、有 4 個節點的隱藏層、
      也就是 4 個節點的輸出層輸入節點給了一隻梨子的圖片。
      S 函數會套用至輸出層。每項
      輸出節點代表映像檔
      。輸出節點 1 表示「是蘋果嗎?」且值為 0.34
      輸出節點 2 表示「是橘色嗎?」且值為 0.18
      輸出節點 3 表示「是珍珠嗎?」,其值為 0.84
      輸出節點 4 表示「是葡萄紫?」且值為 0.07
圖 8. 使用 類神經網路模型S 函數會套用至輸出內容 每個輸出值都代表輸入內容 就是指定的水果此模型預測 圖片為梨子,有 7% 的機率會 葡萄。

一對一 (softmax)

您可能已經注意到,圖 8 輸出層中的機率值 加總的值不會等於 1.0 (即 100%)。(實際上加總為 1.43)。單人駕駛 每個二進位結果集的可能性取決於 同時獨立處理其他資料集也就是挑選機率最高的 的「apple」與「not apple」相比也未考量到 水果選項:「橘色」、「珍珠」或「葡萄紫」。

不過,假設我們想預測每水果 我們該如何調整設計?在這個範例中,而不是預測「apple」而 「apple」,我們要預測「apple」對比「橘色」對「梨」而不是「葡萄紫」 這種多元分類稱為「一對一分類」

我們可以使用相同類型的類神經元,實作一對一分類 用於單一分類,一項重大變更的網路架構。 我們必須將不同的轉換套用至輸出層。

針對 one-vs.-all,我們將 S 函數套用至每個輸出內容 分別產生 0 到 1 個節點的輸出值 ,但不保證這些值加總為 1。

針對 one-vs.-one,我們可以改為套用名為 softmax 的函式, 針對多重類別問題中的每個類別指派小數的機率, 所有機率加總等於 1.0。這項額外限制 讓訓練的收斂速度更快

下方圖片重新實作單類別、多類別分類 做為一道式任務請注意,為了執行 softmax, 位於輸出層 (稱為 softmax 層) 前方的 也就是與輸出層相同的節點數量

圖 9:具備下列架構的類神經網路:輸入內容
      含 1 個節點的隱藏層、有 4 個節點的隱藏層、有 4 個節點的隱藏層
      也就是 4 個節點的輸出層輸入節點給了一隻梨子的圖片。
      系統會對輸出層套用 softmax 啟動函式。每項
      輸出節點代表映像檔
      。輸出節點 1 表示「是蘋果嗎?」且值為 0.19
      輸出節點 2 表示「是橘色嗎?」且值為 0.12
      輸出節點 3 表示「是珍珠嗎?」且值為 0.63
      輸出節點 4 表示「是葡萄紫?」且值為 0.06
圖 9.單對一分類的類神經網路實作,使用 執行 softmax 層每個輸出值都代表 輸入的圖片是指定的水果,而不是其他三項水果 (所有機率總和為 1.0)。此模型預測 圖片可能為梨子

Softmax 選項

請參考下列 softmax 變化版本:

  • Full softmax 是我們先前討論的 softmax。也就是 softmax 會計算每個可能類別的機率。

  • 候選樣本是指 softmax 會計算機率 但僅適用於隨機抽樣 排除標籤。舉例來說,如果我們想找出 無論輸入圖像是米格魯或血管,我們都不必 會提供每個非狗用範例的機率

如果類別數量不多,Full softmax 的成本很低 但會因為類別數量攀升而造成高成本 候選樣本有助於改善 類別數量

一個標籤與多個標籤

Softmax 假設每個範例都是單一類別的成員。 但有些範例可以同時屬於多個類別。 例如:

  • 無法使用 softmax。
  • 請務必依賴多重邏輯迴歸。

例如,上述圖 9 中的 one-vs.-one 模型假設每個輸入值都假設 只能描述一種水果類型:蘋果、橘子、梨子或 一顆葡萄不過,如果輸入圖片可能包含多種水果,例如 而一碗蘋果與柳橙;必須運用多種物流 迴歸模型