NLP基础知识
1、什么是NLP?
Natural Language Progress
AI 重要分支之一
分類:
NLP涉及知識(shí)
詞處理:分詞,詞性標(biāo)注,實(shí)體識(shí)別,詞義消岐
語句處理:句法分析(分析語法),語義分析(理解句子意思),機(jī)器翻譯,語音合成(文本轉(zhuǎn)為語音)
篇章處理:自動(dòng)文摘
語言模型
1.統(tǒng)計(jì)語言模型
N-Gram統(tǒng)計(jì)模型(第n個(gè)只與前n-1個(gè)詞有關(guān))
馬爾科夫模型(最成功的模型)
馬爾科夫鏈
隱馬爾科夫模型(評(píng)估問題、解碼問題、學(xué)習(xí)問題)(5個(gè)元素)
2. RNN
3. LSTM
4. CNN
5. Seq2Seq
輸入文本的序列長(zhǎng)度與輸出序列的長(zhǎng)度不等,屬于many2many
seq2seq應(yīng)用:圖像描述、代碼補(bǔ)全、聊天機(jī)器人
不足:1)對(duì)序列的長(zhǎng)度有要求,有論文證明:當(dāng)序列長(zhǎng)度在10-20的長(zhǎng)度時(shí)模型效果最好,序列再長(zhǎng)模型效果就開始下滑了。2)壓縮損失信息,在編碼時(shí),序列的最后一個(gè)詞(token)對(duì)編碼的影響較大(編碼受最后一個(gè)詞影響較大),這不合適。
Seq2Seq改進(jìn)
1.Attention
attention關(guān)注序列中的一些內(nèi)容
attention應(yīng)用:機(jī)器翻譯、語音識(shí)別、圖像描述
分類:Soft Attention
Hard Attention (Show Attend and Tell中提出的,圖像中應(yīng)用到的)
Global Attention
Local Attention
靜態(tài) Attention ( 閱讀理解中使用的)
Self Attention (Transformer中使用的,self
attention 也被稱為intra-attention,在沒有任何額外信息的情況下,我們?nèi)匀豢梢酝ㄟ^允許句子使用self attention機(jī)制來處理自己,從句子中提取關(guān)注信息,self attention機(jī)制在很多任務(wù)重都有十分出色的表現(xiàn),如:閱讀理解,文本繼承、自動(dòng)文本摘要)
Key-value Attention
2.Beam Search
Conda是什么?
Word2Vec
CBOW(連續(xù)詞袋,Continus )
Skip-Gram
Word2Vec改進(jìn)----Glove
TF-IDF
見文章:TF-IDF算法講解
貝葉斯分類
樸素貝葉斯分類原理在這里:樸素貝葉斯分類
Softmax
分布式假設(shè)
所謂分布式假設(shè),用一句話可以表達(dá):相同上下文語境的詞有相似含義。
seq2seq 中的 beam search 算法過程是怎樣的? **
1. 知乎用戶的回答 - 知乎
2.CS224N(1.31)Translation, Seq2Seq, Attention(需要使用外網(wǎng)才能看到圖片)
NMT相比于SMT的優(yōu)點(diǎn):
1.性能更好,表現(xiàn)在:翻譯更流程,RNN擅長(zhǎng)語言模型;能更好的利用上下文關(guān)系;能利用短語相似性
2.模型更簡(jiǎn)單,只需要一個(gè)神經(jīng)網(wǎng)絡(luò),端到端訓(xùn)練即可,簡(jiǎn)單方便
3.不需要很多的人工干預(yù)和特征工程,對(duì)于不同的語言,網(wǎng)絡(luò)結(jié)構(gòu)保持一樣,只需要換一下詞向量
NMT的不足:
1.難以解釋,表現(xiàn)在:難以調(diào)試,難以解釋出錯(cuò)原因
2.難以控制,比如難以加入一些人工的規(guī)則,難以控制NMT不輸出什么,由此可能會(huì)腦一些笑話甚至導(dǎo)致安全問題
BLEU的缺點(diǎn):
雖然BLEU為MT提供了一套自動(dòng)化的評(píng)價(jià)方法,但BLEU也不是完美的。因?yàn)樗趎-gram,假設(shè)機(jī)器翻譯出來的是另一種優(yōu)美的表達(dá)方法,但人給出的正確翻譯結(jié)果是常規(guī)翻譯,那么他們之間的n-gram的overlap可能不高,導(dǎo)致正確翻譯的打分反而得分低。參考
提升機(jī)器翻譯性能的一大利器——注意力機(jī)制Attention:
1.樸素的seq2seq模型的“信息”瓶頸:樸素的seq2seq模型,我們用Encoder RNN的最后一個(gè)神經(jīng)元的隱狀態(tài)作為Decoder RNN的初始隱狀態(tài),也就是說Encoder的最后一個(gè)隱狀態(tài)向量需要承載源句子的所有信息,成為整個(gè)模型的“信息”瓶頸。
2.Attention機(jī)制就是為了解決這個(gè)“信息”瓶頸而設(shè)計(jì)的。宏觀上來說,Attention把Decoder RNN的每個(gè)隱層和Encoder RNN的每個(gè)隱層直接連起來了,還是“減少中間商賺差價(jià)”的思路,由于有這個(gè)捷徑,Encoder RNN的最后一個(gè)隱狀態(tài)不再是“信息”瓶頸,信息還可以通過Attention的很多“直連”線路進(jìn)行傳輸。
Attention優(yōu)點(diǎn):
1.提高NMT性能,讓Decoder更多的關(guān)注于時(shí)刻需要翻譯的詞。
2.解決了NMT的“信息”瓶頸問題。
3.有助于緩解梯度消失問題,因?yàn)镈ecoder的每一時(shí)間步都和所有Encoder的隱狀態(tài)相連了,相當(dāng)于某種捷徑,減少了“中間商賺差價(jià)”。
4.有助于增加NMT的可解釋性,解釋為什么時(shí)刻翻譯輸出了某個(gè)詞,可以通過查看Attentioin distribution來解釋。免費(fèi)得到了一個(gè)soft alignment。
總結(jié)
- 上一篇: MySQL---第07章_单行函数
- 下一篇: show attend and tell