2013-09-22 143 views
11

我明白監督和無監督學習之間的差異:什麼是弱監督學習(引導)?

監督學習是「教」的分類,使用標記數據的方式。

無監督學習讓分類器「自行學習」,例如,使用聚類。

但什麼是「弱監督學習」?它如何分類它的例子?

回答

16

簡而言之:在弱監督學習中,您使用有限數量的標記數據。

如何選擇這些數據,以及您使用它的方式取決於方法。通常情況下,您只需使用數量有限的數據,這些數據很容易獲得和/或產生真正的差異,然後學習剩餘的數據。我認爲bootstrapping是一種可以用於弱監督學習的方法,但正如下面Ben的評論所顯示的那樣,這不是一個普遍接受的觀點。

見,例如this dissertation一個很好的概述(但我不知道,如果半監督和弱監督學習之間的區別是普遍接受的),它說以下有關引導/弱監督學習:

自舉,也稱爲自我訓練,是一種學習形式, 被設計爲使用更少的訓練實例,因此有時被稱爲弱監督的 。 Bootstrapping從幾個示例訓練開始,訓練一個分類器,並使用該分類器產生的想法爲正的 示例進行再訓練。隨着 訓練示例的增長,分類器得到改進,前提是不會有太多負面例子被誤分類爲正數,這可能會導致性能下降。

例如,在詞性標註的情況下,人們通常會訓練一個10,000字的HMM(或最大熵或其他)標籤,每個標籤都帶有POS。在弱監督標記的情況下,您可能只需使用一個非常小的100個字的語料庫。你得到一些標籤,你用它來標記一個1000字的語料庫,你在那上面訓練一個標籤,然後用它來標記更大的語料庫。顯然,你必須比這更聰明,但這是一個好的開始。 (對於自舉惡搞的更高級的例子見this paper

注:弱監督學習也可以指與嘈雜的標籤學習(例如標籤可以,但不需要被引導的結果)

+0

感謝您的回覆。我沒有完全得到最後一部分;唯一的區別是你在一個較小的數據集上訓練你的「機器」? – Cheshie

+0

您可以在小數據集上訓練,然後將其應用於更大的語料庫,然後重新訓練該更大的語料庫。 – Jirka

+0

這是一個自舉的例子,但並不是真正弱監督學習(或者至少,我從來沒有聽說過被稱爲弱監督的引導)。猜測它只是表明如果他們的定義不明確,使用這些術語幾乎沒有好處。 –

10
  • 弱監督是帶有嘈雜標籤的監督。例如,bootstrapping,其中引導過程可能會錯誤標記一些示例。
  • 遠程監督是指訓練信號,不直接標記的例子;例如,從問題和答案數據集中學習語義分析器。
  • 半監督學習是當你有一個部分標記和部分未標記的數據集。
  • 全監督學習是當你有每個數據點的地面實況標籤。
0

如Jirka所述,弱監督需要對小型標記數據集進行初始(監督)訓練,預測更大的集合和(無監督的)正確識別的實例(或其特徵)到模型中的預測(通過再培訓數據集或直接更新模型)。 (無監督)更新過程迭代直到達到某個目標。顯然,如果最初的預測結果產生許多誤報,這很容易出錯,但是在某些情況下,搜索空間可能受到限制,從而通過弱監督獲得的泛化不會(通常)發生橫置,或者用戶輸入可能是過去(弱)監督學習過程。爲了提供非文本挖掘的互補,非常成功的例子,PSI-BLAST迭代地提煉蛋白質序列概況以鑑定遠端同源物。在這種情況下,對這種方法可能出錯的一個很好的概述可以在paper中找到。