iT邦幫忙

2024 iThome 鐵人賽

DAY 14
0
AI/ ML & Data

認識AI與NLP的30日旅行團系列 第 14

Day14 NLP發展的歷史與重大進展(下)

  • 分享至 

  • xImage
  •  

2013-詞嵌入(word embeddings)

原先在NLP領域中主要是通過稀疏向量(SparseVector),在2001年,首次出現的稠密向量(DenseVector)對詞語進行描述,也就是詞嵌入。

2013 年Mikolov等人做出的主要創新是「去除隱藏層和近似的計算目標」,提升了模型的訓練效率。在結合用來產生詞向量(將文本中詞語轉換為低維向量,能捕捉詞語間的語義關係,並在NLP中使用。)的相關模型word2vec(word to vector)後,可以用來訓練大規模的詞嵌入模型。

word2vec模型有兩種不同的方法,兩種方法剛好是相反的:

  1. CBOW(continuous bag-of-words):根據周圍詞與預測中心詞語。
  2. skip-gram:根據中心詞語預測周圍詞語。

在觀念上,這個「嵌入」的模型和昨天介紹過的「前饋神經網路」差異不大,最差的差異在於,在透過一個大雨易資料庫的訓練過後,可以得到相關單詞(如性別、時態、國際事務)間的特定關係。

另外,將預訓練的「詞嵌入矩陣」用於初始化後,可以提高下游的任務型能。

而在現在,word2vec應用的範圍也不僅限於詞語,而是跳脫到了其他領域,其中的「skip-gram」現在也被用於網路、生物序列等領域。

2013-用於NLP的神經網路

三個類型的神經網路應用最廣:循環神經網路(RNN)、卷積神經網路(CNN)、結構遞歸神經網絡(RvNN)

  • 循環神經網路(RNN, Recurrent Neural Network)
    是處理序列輸入的一種神經網路,可以處理具有不定長度的數據,如文章、聲音、影片。

    特性是加入一個hidden vector,這個隱藏向量不會學習,但會在數據序列中傳遞,可以幫助RNN利用過去資訊預測未來結果。

  • 長短期記憶網路(LSTM, long-shortterm memory networks)
    在2013Ilya Sutskever博士提出的LSTM模型對於原先的梯度消失/梯度爆炸問題(兩個都是當前面隱藏層學習速率低於後面時,隨隱藏層數目增加,分類準確率反而下降,指示原因有些不同)可以有更好的解決辦法。

    LSTM也是循環神經網路的一種,借用了人腦長期記憶、短期記憶的理論,在模型中設定了一個大門(Gate),可以決定哪些元素應該被保留 (長期)、那些該被遺忘(短期)。可以將這個大門視為RNN中的hidden vector。

  • 卷積神經網絡(CNN, convolutionalneural networks)
    與RNN相比,CNN的優點是有更好的「並行性」,不同於前者在操作中依賴過去所有的狀態,CNN在每個時間步驟中只依賴局部上下文。

    CNN可以涵蓋更廣泛的上下文內容(利用卷積層),也可以和LSTM進行組合與堆疊,加速LSTM的訓練。

  • 結構遞歸神經網絡(RvNN, recursive neural networks)
    RNN、CNN都將語言視為一個「序列」(從前到後一整段的整體),但從語言學角度來看,語言是有層級結構的:單字→詞語→句子。

    這也啟發了RvNN,以樹狀結構取代序列,與先前都是由左至右對序列進行處理的方法不同,這是一個由下而上的結構,樹中的每個節點都是透過子節點的表徵計算所得。

2014-序列到序列模型(Sequence-to-sequencemodels)

Sutskever 等人提出,類似前面我們有提過的,利用「編碼器」、「解碼器」的方法,做出預測,並將輸出符號作為下一個符號的輸入。

除了在文字、翻譯領域有好的成績,也在對圖片產生描述、對表格產生文字等等方面有很好的應用。

序列到序列的模型通常都是基於RNN的,但也可以使用其他模型,比如LSTM、Transformer等等,甚至是各類的結合體。

**2015年-注意力機制(**self-attention mechanism)

在Day2有介紹過了,可以用來觀察句子或文件周圍的單字,得到包含了更多上下文資訊的表述。

是Transformer的核心。

2018-預訓練的語言模型(Pretrained Language Models)

在2015年被首度提出,但在2018年時,才被證明在不同類型的任務中都非常有效。

語言模型嵌入與上下文無關,僅是用於初始化模型的第一層,可以做為目標模型中的特徵,或根據具體任務進行調整。

使用預訓練的語言模型,可以在少量資料的情況下進行有效的學習。


嗯……看完之後有什麼感想嗎?

我自己是覺得表達的沒有很清楚(自首),如果有你有那裡感覺不太理解的可以提出來,我再來多看看Orz


上一篇
Day13 NLP發展的歷史與重大進展(上)
下一篇
Day15 情緒分析與意見探勘的介紹
系列文
認識AI與NLP的30日旅行團30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言