Learning to Learn and Predict: A Meta-Learning Approach for Multi-Label Classification網絡
2019-10-01 11:29:54框架
Paper: https://arxiv.org/pdf/1909.04176.pdf 函數
1. Background and Motivation:學習
多標籤分類問題的目標是同時進行多個 label 的識別,且這些 label 是有必定關聯的;而傳統的 多類別分類問題,僅僅是一個樣本包含一個 label。現有的方法,從統計模型到神經網絡的方法,都是共享標準的交叉熵損失函數進行訓練的。在訓練以後,這些模型嘗試用單個預測策略來對全部的 label 進行最終的預測。實際上,這些方法都是基於以下的假設:no dependency among the labels。然而,如圖1 所示,這種假設在實際狀況下是很難知足的,可是 multi-label classification 的 label 依賴關係的問題卻不多受到關注。測試
因爲受到標籤依賴關係的影響,這些 label 的預測難度是大不相同的。spa
首先,高層的 label 更加容易進行分類,如:organization,person 等;可是更加低層的 label,如 news,broadcast 等,則更加困難。blog
其次,對於 label 之間沒有顯示關係的,可能仍然存在着一些隱層的關係,這在 NLP 領域中,是至關常見的。ci
基於上述觀察,做者考慮學習不一樣的訓練策略 和 預測策略來進行多標籤的識別。get
對於全部 label 的訓練和預測策略,能夠看作是一系列的超參數。然而,想要指定顯示和隱式的標籤依賴,也是不顯示的。爲了解決上述問題,本文提出一種 meta-learning 的框架來建模這些 label dependency,而後自動的學習訓練和測試策略。具體來講,做者引入一種聯合 meta-learning 和 multi-label classification 的學習框架。做者用一種基於 GRU 的 meta-learner 在訓練階段來捕獲 label dependencies 和 學習這些參數。it
本文的貢獻能夠總結爲以下幾點:
1). 首次在多標籤分類問題上,提出聯合的 「learning to learn」 和 「learning to predict」 。
2). 本文方法能夠對每個 label 學習一個 weight 和 decision policy,而且能夠用於訓練和測試階段。
3). 本文方法是一種 model-agnostic,能夠結合到多種模型中,而且取得了比 baseline 方法要好不少的效果。
2. The Proposed Method:
2.1 Classifier Model:
對於一個 N 類的多標籤分類問題來講,咱們將訓練策略表示爲 w,測試策略表示爲 p,其中 wi 和 pi 是第 i 類的訓練權重和預測閾值。wt 和 pt 表示時刻 t 的權重向量和閾值向量。而後,本文的學習目標就變成了:learn a high-quality w and p for a certain classifier C. 爲了更新分類器 C 的參數,做者在每一個時刻採樣一個 batch Bt。而後設置一個加權的交叉熵目標函數來更新 C,定義以下:
其中,$y_i^*$ 表示 第 i 個樣本的真值,$y_i^{(j)}$ 是輸出向量 yi 的第 j 個 值。
2.2 Meta-Learner:
做者這裏認爲 meta-learning 是一種 reinforcement learning 技術。而每個時刻,meta-learner 觀測到當前的狀態 st,而後產生一個訓練策略 wt 和 測試策略 pt,基於這些策略,分類器 C 的參數能夠進行更新。在訓練後,meta-learner 接收到一個獎勵 rt。而本文 meta-learner 的目標就是選擇兩個策略,使得未來的獎勵最大化:
2.2.1 State Representation:
在本文中,做者將 meta-learner 建模爲 RNN 結構,實際上用的是 GRU。狀態表達 st 直接定義爲 GRU 在每個時刻 t 的隱層狀態 ht。而後,st 是根據以下的公式進行計算的:
其中,GRU 在 時刻 t 的輸入是預測策略和訓練策略的組合。
2.2.2 Policy Generation:
在每個時間步驟,meta-learner 能夠產生兩個策略,即:訓練策略 wt 和 預測策略 pt。這兩個策略均被表達爲 N-dimensional 的向量格式。爲了將訓練策略 wt 結合到交叉熵的目標函數中,而且保持 classifier 的訓練梯度在同一個數量級,wt 須要知足加和爲 1 的約束。而後,在每個時刻 t,訓練策略能夠按照以下的方法獲得:
對於測試策略,其定義爲:
在上述兩個公式中,除了 st 是狀態外,其餘的參數都是可學習的參數。
2.2.3 Reward Function:
獎勵按照以下的公式進行計算:
其中,$y_i$ 是第 i 個樣本的輸出機率,$y_i^*$ 是對應的真值向量。做者這裏也給了一個例子,來講明獎勵的計算過程:
2.3 Training and Testing: