BERT預訓練模型於影像處理之應用


【監督式學習與非監督式學習】

傳統的機器學習方式,主要可分為監督式學習與非監督式學習。監督式學習透過大量的人工標記樣本進行模型訓練,透過模型所預測的數據與真實情況所產生的誤差進行模型調整,透過不斷地學習,達到可以處理新樣本資料的能力。至於非監督式學習則無須任何標記樣本,主要透過樣本之間特性找到樣本之間的關係進行學習。由此可知,監督式學習與非監督式學習最主要的差別在於是否需要透過人工標記樣本進行訓練。然而,在實務應用上,雖然監督式學習有著良好的效果,但往往需要花費大量人力與時間成本進行訓練樣本標記。而非監督式學習雖然無須任何標記樣本,然而在許多應用上效果不彰問題使得無監督式學習的應用領域十分受限。為了平衡監督式學習與非監督式學習的優缺點,近期所提出的「自監督式學習」逐漸成為機器學習的主流。

【自監督式學習】

近期所提出的自監督式學習可在監督式學習與非監督式學習中取得一個較為折衷的作法。自監督式學習主要概念為,利用輔助任務由大量無標記的樣本中自動取得樣本存在的標記資訊,產生標記樣本,再透過自動產生的標註樣本進行監督式學習,以學習到對於後續目標任務有價值的特徵訊息,這樣的過程通常被稱為「預訓練(Pretrain)」,預訓練得到的模型則稱為「預訓練模型」。有了預訓練模型後,對於目標任務僅需要少量標記樣本,對於預訓練模型進行「微調(Fine-tune)」即可。自監督式學習所需要遠少於監督式學習的標記樣本,即可達到接近監督式學習的效果。自監督學習已經在自然語言處理的相關應用上取得很好的成效。基於自監督式學習,由Google所提出的「基於變換器的雙向編碼器表示技術(Bidirectional Encoder Representations from Transformers,BERT),俗稱「BERT預訓練模型」大大地推進了自然語言處理的進程。由於BERT預訓練模型可以大量降低微調時所需的標記樣本數量及訓練所需的時間,目前主要的自然語言處理方法植基在BERT預訓練模型上實現。BERT預訓練模型在自然語言處理領域取得重大成果後,各領域深度學習研究學者也逐漸把目光放在將BERT轉移至各種深度學習領域應用,如影像處理等。 

【BERT於影像處理】

由於BERT預訓練模型在自然語言處理上取得傑出的成果,也逐漸被應用至不同領域。其中近期OpenAI 提出一套將BERT預訓練模型應用在影像處理領域的方法,是一個十分成功的案例。基於遷移學習(Transfer Learning)概念,該方法是透過「二次預訓練(Second Pass Pretrain)」方式實現。如圖1所示,將已經預訓練完成的BERT模型透過「遮罩語言模型(Masked Language Model)」進行二次預訓練的輔助任務,像素(Pixel)向量中部BERT模型將會具有影像特徵擷取的能力。經過二次預訓練完後的BERT模型,將可以應用於支援影像處理的目標任務,僅需要透過部分標記後的影像資料進行微調即可。目前OpenAI已經將二次預訓練完後的BERT模型成功應用在影像辨識的目標任務上。根據OpenAI的實驗,透過針對四個影像辨識資料集(CIAR-10、CIFAR-100、STL-10、ImageNET)進行測試,實驗結果顯示,BERT預訓練模型在影像辨識的效能上,略勝知名影像監督式學習模型ResNET以及知名影像自監督式模型SimCLR。由實驗結果可知,將BERT應用至影像處理是個可行的方法,目前也正嘗試將BERT預訓練模型應用在其他的影像處理的目標任務上。

資料來源:自行繪製

圖1、BERT二次預訓練架構圖 

【結語】

BERT預訓練模型已經成功被應用至處理影像處理的議題上,證明著自監督學習對於不同領域應用有著強大的泛用性。因此也預期未來將會有更多BERT預訓練模型應用不同影像處理的目標任務被提出,甚至應用至語音處理等各種的人工智慧學習領域。同時,由於自監督學習的發展,除了大量的降低訓練時的標記樣本與時間成本,自監督學習強大的泛用性也是重要的優勢。可以預期,自監督學習將會在未來人工智慧發展扮演舉足輕重的角色。

參考來源:

1.https://blog.csdn.net/sdu_hao/article/details/104515917

2.https://zh.wikipedia.org/wiki/BERT

3.https://openai.com/blog/image-gpt/

延伸閱讀