Active Learning主動學習

2022-06-16 07:48:11 字數 1546 閱讀 1490

active learning主動學習

我們使用一些傳統的監督學習方法做分類的時候,往往是訓練樣本規模越大,分類的效果就越好。但是在現實生活的很多場景中,標記樣本的獲取是比較困難的,這需要領域內的專家來進行人工標註,所花費的時間成本和經濟成本都是很大的。而且,如果訓練樣本的規模過於龐大,訓練的時間花費也會比較多。那麼有沒有辦法,用盡可能少的標註,獲取盡可能好的訓練結果?主動學習(active learning)為我們提供了這種可能。主動學習通過一定的演算法查詢最有用的未標記樣本,並交由專家進行標記,然後用查詢到的樣本訓練分類模型來提高模型的精確度。

定義:在某些情況下,沒有類標籤的資料相當豐富而有類標籤的資料相當稀少,並且人工對資料進行標記的成本又相當高昂。在這種情況下,我們可以讓學習演算法主動地提出要對哪些資料進行標註,之後我們要將這些資料送到專家那裡,讓他們進行標註,再將這些資料加入到訓練樣本集中對演算法進行訓練。這一過程叫做主動學習。

由此我們可以看出,主動學習最主要的就是選擇策略。

主動學習的模型如下:

a=(c,q,s,l,u),其中 c 為一組或者乙個分類器,l是用於訓練已標註的訓練樣本。q 是查詢函式,用於從未標註樣本池u中查詢資訊量大的資訊,s是督導者,可以為u中樣本標註正確的標籤.

最開始,先將樣本分為少量的已標記樣本l,和大量未標記樣本u.學習者通過少量初始標記樣本l開始學習,通過一定的查詢函式q選擇出乙個或一批最有用的樣本(大多數演算法都每次選擇一批樣本),專家標記,將標記後的樣本從u中刪除,加入l中,然後利用獲得的新知識(所有l)來訓練分類器和進行下一輪查詢。主動學習是乙個迴圈的過程,直至達到某一停止準則為止。

在各種主動學習方法中,查詢函式的設計最常用的策略是:不確定性準則(uncertainty)和差異性準則(diversity)。

不確定性:我們可以借助資訊熵的概念來進行理解。我們知道資訊熵是衡量資訊量的概念,也是衡量不確定性的概念。資訊熵越大,就代表不確定性越大,包含的資訊量也就越豐富。事實上,有些基於不確定性的主動學習查詢函式就是使用了資訊熵來設計的,比如熵值裝袋查詢(entropy query-by-bagging)。所以,不確定性策略就是要想方設法地找出不確定性高的樣本,因為這些樣本所包含的豐富資訊量,對我們訓練模型來說就是有用的。

差異性:怎麼來理解呢?之前說到或查詢函式每次迭代中查詢乙個或者一批樣本。我們當然希望所查詢的樣本提供的資訊是全面的,各個樣本提供的資訊不重複不冗餘,即樣本之間具有一定的差異性。在每輪迭代抽取單個資訊量最大的樣本加入訓練集的情況下,每一輪迭代中模型都被重新訓練,以獲得的知識去參與對樣本不確定性的評估可以有效地避免資料冗餘。但是如果每次迭代查詢一批樣本,那麼就應該想辦法來保證樣本的差異性,避免資料冗餘。

主動學習 active learning

閱讀目錄 在機器學習 machine learning 領域,監督學習 supervised learning 非監督學習 unsupervised learning 以及半監督學習 semi supervised learning 是三類研究比較多,應用比較廣的學習技術,wiki上對這三種學習的簡...

mysql 3台主主 mysql主主

設定主 主複製 1 在兩台伺服器上各自建立乙個具有複製許可權的使用者 2 修改配置檔案 主伺服器上 mysqld server id 10 log bin mysql bin relay log relay mysql relay log index relay mysql.index auto i...

Haproxy Keepalived主主高可用

介紹 haproxy是高效能的 伺服器,其可以提供7層和4層 具有healthcheck,負載均衡等多種特性,效能卓越,包括twitter,reddit,stackoverflow,github在內的多家知名網際網路公司在使用。keepalived是乙個高可用方案,通過vip 即虛擬ip 和心跳檢測...