2. AutoEncoder在NLP中的應用


1. AutoEncoder介紹

2. Applications of AutoEncoder in NLP

3. Recursive Autoencoder(遞歸自動編碼器)

4. Stacked AutoEncoder(堆棧自動編碼器)

1. 前言

深度學習是機器學習的一個分支,它設計大量的學習函數和概念模型。大多數機器學習需要大量的人工篩選的特征作為輸入,通常特征篩選需要對數據的意義有深入的了解。並且一個能很好的適用於一組數據的特征可能並不使用於其他數據集。深度學習算法在不同層次上對數據進行抽象,每一個層都是根據上一個簡單的層抽象定義。這是為什么深度學習能夠在復雜的任務熵表現出強大能力的原因。

2. AutoEncoder介紹

在接下來的內容中,我們將主要討論自動編碼器(AE)在NLP中的應用。自動編碼器是表示學習算法的一個很好的例子。它結合了編碼器功能和解碼器功能,以盡可能重建輸入的方式進行訓練,同時隱藏層表示具有有用的屬性。

2.1 Recursive Autoencoder(遞歸自動編碼器)

RAE是遞歸自動編碼器,假設我們有一句話的分詞后的向量表示方式,希望從詞向量中推斷這個句子大概率。我們先為句子構建二叉樹結構。第一步,RAE重建兩個葉子節點,而后再每個步驟中,重建一個葉子節點和上一個RAE中的隱藏節點,直到最后重建出整棵樹,RAE的構建方式可以訓練任意的輸入。
image

2.2 Stacked Autoencoder(堆疊自動編碼器)

我們后面將介紹如何使用堆疊自動編碼器構建深度網絡。SAE是通過依次訓練單個自動編碼器,使用反向傳播進行微調,然后添加輸出層(例如用於分類問題的softmax層)來完成的。已經證明單獨訓練層的方法導致准確性的顯着提高。

image

3. AutoEncoder in NLP

自然語言處理(NLP)是一個研究領域,它對涉及計算機理解人類語言的問題感興趣。NLP包含計算機科學中一些最古老,最困難的問題。近年來,深度學習使得一些看似棘手的問題取得了有希望的進展,如下所示。事實上,自動編碼器已被用於嘗試解決以下問題:

3.1 word Embeddings(詞向量)

為了讓計算機識別語言,我們需要能夠使用單詞,句子和段落並將它們映射到向量。我們將單詞轉換為向量的過程。有一下幾種方法,詞集模型、詞代模型、n-gram、TF-IDF、word2vec。這些是傳統的詞向量模型,由Lebret和Collobert在2015年提出的論文《“The Sum of Its Parts”:
Joint Learning of Word and Phrase Representations with Autoencoders》,它使用自動編碼器來共同學習單詞和短語的表示。

image

3.2 NMT(機器翻譯)

機器翻譯是一個非常難的問題,它的目標是准確地將文本從一種語言翻譯成另一種語言。
逐字翻譯的傳統方法會產生非常差的結果,部分原因是大多數現代語言之間存在顯着的句法差異。解決方案是分析輸入語言中的語法,生成解析樹,然后執行轉換,生成一個新的解析樹,可用於生成輸出語言中的文本。
但是,由於同音異義詞而導致錯誤:在不同的語境中,詞語可能會有非常不同的含義。解決方案是分析源語言中的語義,然后根據這個含義生成目標文本。這個含義可以用單詞,句子和段落向量的形式編碼。
這些不同的方法由Vauquois金字塔顯示。通常,中間表示的深度越大,翻譯質量越高。正如Chandar和Lauly在2014年提出的論文《Bilingual Autoencoders with Global Descriptors
for Modeling Parallel Sentences》,討論如何使用自動編碼器來構建雙語單詞和短語表示,不過說到機器翻譯,不得不說的也是在2014年,由google提出的《Sequence to Sequence Learning
with Neural Networks》,其實AE和Seq2Seq有很多相似的地方。

image

3.3 Document Clustering(文檔聚類)

文檔聚類是將文檔(例如網頁或新聞報道)聚合成不同類別的問題。我們將主要討論無監督的文檔分類。這里的挑戰是以什么樣的方式表示文檔,使得它們可以容易且准確地聚類。
2006年,Hinton使用自動編碼器把804414個向量降低為2000個維度,每個向量代表新聞專線故事中的特定單詞概率。從下面顯示的結果可以看出,自動編碼器明顯優於基於PCA的語義分析的標准方法和Roweis在2000年提出的非線性降維算法。

image

3.4 Sentiment Analysis(情緒分析)

我們將研究情緒分析中最基本的任務:確定陳述的情緒。換句話說,我們想要判斷給定的文本是正面的,中性的還是負面的。這種情緒分析在商業中具有重要的應用,例如股票預測以及產品研究和營銷。

早期的方法只是尋找積極或消極的話語,並單獨預測這種情緒。例如,包含“好”一詞的評論可能是積極的。這種方法可以非常快速地實現,因此仍然有幾家公司使用這種方法實時對大量數據進行情緒分析。然而,這樣的策略可能是不准確的(大多數研究發現這種方法對於大約60-80%的測試數據是准確)。
2011年,由R Socher、Andrew Y. Ng等人發表的論文《Semi-Supervised Recursive Autoencoders
for Predicting Sentiment Distributions》討論使用遞歸自動編碼器的方法實現情緒分析。
image

4. 總結

文本主要介紹了AE在NLP中可以嘗試去解決的問題,其實AE能有這么多用處,主要還是得益於AE算法的強大的數據壓縮的功能,能夠把無論什么形式的數據壓縮到固定維度,供給進行下一步運算使用。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM