遷移學習在自然語言處理方面的應用?
這幾天看了楊強老師的遷移學習最新綜述:
Learning to Transfer
作者提出了基於之前遷移的經驗用來提升之後遷移水平的模型,這個想法真的是太贊了!但是看完文章發現好多都是直接用於Computer Vision, NLP方向的很少。。。所以就有了如下困惑:
- 遷移學習今後在NLP的發展方向是什麼?從楊強老師的這篇論文中可以看出,找出不同domain之間的domain-invariant feature factors將是大勢所趨,請問在NLP領域,有沒有這種基於domain-invariant feature factors進行遷移的方法呢?個人感覺文本分析裡面一詞多義等等現象是不是意味著很難找到這種feature factors?有什麼代表性的論文,如果有代碼就更好啦:D
- 還有就是楊強老師在這篇論文包括之前最經典的那篇 A Survey on Transfer Learning 都提到了遷移學習過程中必須要解決的三個問題,即when to transfer, what to transfer和how to transfer。請問如果拿到很多source documents和一個target document, 並且已知source documents上有很多標籤數據,target document無標籤或標籤很少(n&<100), 我們的任務是對target document進行情感分析,請問如何根據這個三段論(即when to transfer, what to transfer和how to transfer)進行很好的遷移呢?
先mark,貼一下我這幾天了解到的遷移學習在NLP領域的一些應用。
1. 結合強化學習來做對話系統
AAAI18_Personalizing a Dialogue System with Transfer Reinforcement Learning
楊強大佬的強化遷移學習,用於功能性對話系統。
2. 閱讀理解
EMNLP17_Two-Stage Synthesis Networks for Transfer Learning in Machine Comprehension
現在的閱讀理解系統都是在有監督數據集上構建的,在新領域上的問答往往會缺乏標註數據,導致回答效果不好。微軟SynNet做的就是問答遷移,同時進行問題生成和答案生成,在已有領域上學習常見問答的關鍵知識點、命名實體或語義概念,相當於學習到一種回答問題的經驗,再遷移到新知識領域。
3. 機器翻譯
Learned in Translation: Contextualized Word Vectors
把機器翻譯的知識遷移到其它nlp task上,這裡先通過翻譯任務訓練出一個可以理解上下文的LSTM編碼器,得到一個隱藏向量,把該向量應用於語義情感分析、問題分類、文本蘊含、問答等等。
代碼在此:Pytorch_Context Vectors (CoVe)
AAAI18_Machine-Translated Knowledge Transfer for Commonsense Causal Reasoning
把機器翻譯的知識遷移到常識因果推理
4. 文本風格遷移
AAAI18_Style Transfer in Text: Exploration and Evaluation
這裡提出了兩種seq2seq模型,第一種模型使用了多個decoder,每個decoder都生成一種風格;第二種模型在encoder上加入了style embedding,只使用一個decoder來生成不同風格文本。
5. 分類任務
這方面的論文就很多了,隨手貼兩個。
AAAI18_Zero-Shot Learning via Class-Conditioned Deep Generative Models
ZSL是解決出現新類別的問題,ZSL也算是TL的一個子領域吧。這裡用的是VAE。
AAAI18_Hierarchical Attention Transfer Network for Cross-domain Sentiment Classification
這篇論文我還沒找到鏈接,從論文題目上看是情感分類。
可以看這個上面的資料,https://jindongwang.github.io/transferlearning/
推薦閱讀:
※深度學習對話系統理論篇--seq2seq入門
※自然語言處理的智能問答(QA)和智能對話(conversation)哪一個更有前景?
※Recurrent Convolutional Neural Networks for Text Classification
※讓問答更自然 - 基於拷貝和檢索機制的自然答案生成系統研究 | 論文訪談間 #02
TAG:機器學習 | 自然語言處理 | 深度學習DeepLearning | 遷移學習TransferLearning |