1. 程式人生 > >半監督學習演算法——ATDA(Asymmetric Tri-training for Unsupervised Domain Adaptation)

半監督學習演算法——ATDA(Asymmetric Tri-training for Unsupervised Domain Adaptation)

Asymmetric Tri-training for Unsupervised Domain Adaptation (2017 ICML)論文筆記

  • Abstract

Tri-training(周志華,2005, 無監督學習領域最經典、知名度最高的做法)利用三個分類器按照“少數服從多數”的原則來為無標籤的資料生成偽標籤,但這種方法不適用於無標籤的目標域與有標籤的源資料不同的情況。

ATDA要解決的問題是:源資料有標籤,目標域沒有標籤,目標域與源域屬於不同的域,如何生成目標域的表達?

需要一個與Tri-training或者Co-training有所不同的非對稱方法—>ATDA

核心: 非對稱地使用三個神經網路,非對稱的意思是說,與Tri-training不同,其中的兩個來為無標籤資料生成偽標籤,還有一個來學習偽標籤的特徵表達。

  • Introduction

首先講CNN的發展,但是這些神經網路面臨一個必然的共同問題:當測試資料的分佈和訓練資料的分佈相同時,神經網路表現優秀,但是神經網路在測試時並不能識別來自不同分佈的樣本。(因為傳統的神經網路訓練的本質就是在訓練集上對目標進行擬合,這種問題是難免而且必然的)

過去的那些半監督學習方法旨在通過最小化域之間的差異以及源域上的category loss來獲得域不變特徵(domain-invariant features)。理論上,一般不存在在目標域與源域都表現好的分類器。直接對目標域的判別特徵進行學習是很困難的,所以從偽標籤學習

入手。

本文針對無監督的域適應提出了一種Tri-train的方法。

  • Method & Core
    示意圖
    方法架構圖:
    在這裡插入圖片描述
    F為共享的特徵抽取層,F1、F2為生成偽標籤的兩個分類器,Ft為學習目標域的特徵表達的分類器。
    Loss Function:
    組成部分為(F1+F)與y的交叉熵,(F2+F)與y的交叉熵,為了保證兩個分類器儘量從不同的視角來訓練,加入正則項 W1T*W2,W1、W2為全連結層的權重。這個思想就是在優化Loss Function的過程中,用W1T*W2的大小進行約束,會讓W1、W2儘量正交,收斂於不同的區域性最小值
    在這裡插入圖片描述

訓練過程

1.首先,用源資料S訓練F1、F2、Ft,其中F1、F2的訓練用上述的Loss Function,Ft用其與y的交叉熵(這裡我的理解相當於一個初始化)。

2.訓練完之後用F1、F2 為目標域生成偽標籤,有兩個條件,當兩個分類器生成的標籤一致的時候該標籤成立,或者某一個分類器生成的標籤的置信度大於一定的閾值如0.95時成立。其目的在於讓生成的偽標籤儘量真,分類器需要達到一定的置信度。為了緩和在偽標籤上的過擬合的問題,其中用到了重取樣等方法。生成偽標籤的訓練集。

  1. 用偽標籤的訓練集訓練Ft。

整體訓練過程如下:
在這裡插入圖片描述