介紹一篇iccv2019的#**#。主題是
用熵解決半監督的域適應問題
在#人工智慧#領域,半監督域適應是乙個很常見問題。是指存在兩個資料集,乙個是全部標註的源域,另乙個是只有少量資料有標註,大量資料無標註的目標域。要利用源域的資料訓練乙個在目標域上好使的模型
域適應問題的難點在於:如何找到源域與目標域的不變數,即知識。然後通過什麼樣的途徑將知識從源域遷移到目標域。
**作者假定分類器的引數包含了域不變的資訊。**的目標在於,通過極大極小化熵損失函式,找到合適的分類器引數。
整個網路分為兩個部分:
1. 特徵提取器 f:採用主流的卷積神經網路,例如vgg,resnet等,去掉最後的線性分類層
2. 分類器 c:k類別的線性分類器
資料流程:
x先輸入到f中,得到f(x)。再計算l-2範數歸一化後,得到
然後輸入到分類器c中,得到
最後經過乙個softmax層,輸出
其中,分類器c的引數為 w=[w_1,w_2,...,w_k](k為類別個數)。最終的輸出可以寫成
當w_i和f(x)同方向時,這一項取最大值,此時類別為第i類
注:柯西不等式:|(a,b)|≤|a||b|。當a,b同方向時,取最大值
所以要想正確分類,權重向量w_i的方向必須和該類別特徵的標準方向一致。所以**視權重向量w_i為每個類別的原型。**的目的在於估計域不變的原型。
首先用有標籤的資料訓練出乙個模型來
本文利用交叉熵損失函式,訓練源域d_s和目標域d_t中有標籤的資料。但是這並不能保證模型能學到針對整個目標域的判別性特徵。所以接下來要採用對抗的思想來訓練無標記資料
存在乙個簡單的域不變原型,能夠代表兩個域的所有資料
講過上面的交叉熵loss後,原型w_i更靠近源域的分布,作者希望原型能向目標域偏移。所以針對目標域無標記資料計算香濃熵:
增加熵值,則每個類輸出的概率值很平均。此時,固定f,更新c的引數,能讓原型w_i向未標記的目標域移動。
為了在未標記資料上學到判別性特徵,訓練f時,要減小熵值,使得未標記資料的特徵聚集在估計原型周圍
訓練策略總結如下
看公式三,訓練分兩個步驟
1.固定分類器c,訓練特徵提取器f:利用有標記的資料訓練模型提取到有用的特徵。針對無標記的資料,最小化熵loss能提取到最具有判別性的特徵。
關於熵loss的作用,這篇文章中有分析這裡就不贅述了
2.固定特徵提取器f,訓練分類器c:利用有標記的資料訓練模型對特徵進行正確分類。針對無標記的資料,最大化熵loss則會使
向量中的每乙個分量都相似。這就迫使引數w_i向f(x)的方向靠近,也就是目標域未標記資料整體靠近。這樣得到的原型w_i不僅包含了源域的資訊還包含了目標域的資訊。從而找到了域不變資訊。
從這裡我們也可以看出這篇**的缺陷:w_i包含了有標記資料的第i類的資訊,同時包含了目標域中所有無標記資料的資訊。
我們期望w_i包含目標域中第i 類資料的資訊,但是這並不好找到。
子域和父域的問題
我安裝了乙個父域控為dc1.exchtest.com,dns伺服器在也在這台伺服器上,然後建了乙個子域為sales.exchtest.com,dns伺服器在子域的域控制器上 conto.sales.exchtest.com,然後分別在父域控和子域控的dns伺服器上新增對方區域為其輔助dns區域,現在...
跨域iframe的高度自適應
跨域iframe的高度自適應 1.跨子域的iframe高度自適應 2.完全跨域的iframe高度自適應 同域的我們可以輕鬆的做到 1.父頁面通過iframe的contentdocument或document屬性訪問到文件物件,進而可以取得頁面的高度,通過此高度值賦值給iframe tag。2.子頁面...
目標檢測 域適應的學習筆記
在基於深度學習的目標檢測任務中,訓練集與測試集樣本分佈的不一致是乙個影響模型表現的常見因素,為了使得訓練集的分布與測試集一致,我們需要採用一定的樣本增廣操作 可以看到在 第五類和第八類訓練資料較少 但是測試集中佔比不少 的問題中,我們一眼就明白,這是乙個類別分布不一致的問題 但是這是不是乙個類別不平...