日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

DNN模型训练词向量原理

發(fā)布時(shí)間:2023/12/13 编程问答 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 DNN模型训练词向量原理 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

轉(zhuǎn)自:https://blog.csdn.net/fendouaini/article/details/79821852

1 詞向量

在NLP里,最細(xì)的粒度是詞語,由詞語再組成句子,段落,文章。所以處理NLP問題時(shí),怎么合理的表示詞語就成了NLP領(lǐng)域中最先需要解決的問題。

因?yàn)檎Z言模型的輸入詞語必須是數(shù)值化的,所以必須想到一種方式將字符串形式的輸入詞語轉(zhuǎn)變成數(shù)值型。由此,人們想到了用一個(gè)向量來表示詞組。在很久以前,人們常用one-hot對詞組進(jìn)行編碼,這種編碼的特點(diǎn)是,對于用來表示每個(gè)詞組的向量長度是一定的,這個(gè)長度就是對應(yīng)的整個(gè)詞匯表的大小,對應(yīng)每個(gè)具體的詞匯表中的詞,將該詞的對應(yīng)的位置置為1,向量其他位置置為0。舉個(gè)例子,假設(shè)我們現(xiàn)有5個(gè)詞組組成的詞匯表,詞’Queen’對應(yīng)的序號是2,那么它的詞向量就是(0,1,0,0,0)。其他的詞也都是一個(gè)長度為5的向量,對應(yīng)位置是1,其余位置為0。

?

?

One-hot code非常簡單,但是存在很大的問題,當(dāng)詞匯表很大,比如數(shù)百萬個(gè)詞組成了詞匯表時(shí),每個(gè)詞的向量都是數(shù)百萬維,會造成維度災(zāi)難。并且,one-hot 編碼的向量會過于稀疏,這樣的稀疏向量表達(dá)一個(gè)詞效率并不高。

而dristributed representation(通常叫做詞向量)可以很好的解決one-hot code的問題,它是通過訓(xùn)練,將每個(gè)詞都映射到一個(gè)較短的詞向量上(這樣就解決了每個(gè)詞向量的維度過大問題),所有的詞向量構(gòu)成了詞匯表的每個(gè)詞。并且更重要的是,dristributed representation表示的較短詞向量還具有衡量不同詞的相似性的作用。比如‘忐’,‘忑’兩個(gè)字如果作為兩個(gè)詞,那么在dristributed representation表示下,這兩個(gè)詞的向量應(yīng)該會非常相似。不僅如此,dristributed representation表示的詞向量還能表示不同詞組間組合的關(guān)系,比如假設(shè)現(xiàn)在由訓(xùn)練好的詞向量,現(xiàn)在拿出King,Queen,Man,Woman四個(gè)詞的詞向量,則:

?

?

?

?

2.DNN訓(xùn)練詞向量

詞向量怎么得到呢,這里得先說語言模型:

f(x)=y

在NLP中,我們把x看作是一個(gè)句子里的一個(gè)詞,y是這個(gè)詞的上下文。這里的f就是語言模型,通過它判斷(x,y)這個(gè)樣本,是否符合自然語言的邏輯法則。直白的說,語言模型判斷樣本(x,y)是不是人話。

而詞向量正是從這個(gè)訓(xùn)練好的語言模型中的副產(chǎn)物模型參數(shù)(也就是神經(jīng)網(wǎng)絡(luò)的權(quán)重)得來的。這些參數(shù)是作為輸入x的某種向量化表示,這個(gè)向量就叫做詞向量。

注意我們訓(xùn)練詞向量的邏輯,我們是為了得到一個(gè)語言模型的副產(chǎn)物-詞向量,去訓(xùn)練這個(gè)模型。所以我們的目的不是關(guān)注在怎么優(yōu)化該模型,而是為了獲取該模型的參數(shù)構(gòu)造詞向量。

在Word2vec出現(xiàn)之前,已經(jīng)有用神經(jīng)網(wǎng)絡(luò)DNN來訓(xùn)練出詞向量了。一般采用三層神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),分為輸入層,隱藏層,和輸出層(softmax層)。

?

?

該模型中V代表詞匯表的大小,N代表隱藏層神經(jīng)元個(gè)數(shù)(即想要的詞向量維度)。輸入是某個(gè)詞,一般用one-hot表示該詞(長度為詞匯表長度),隱藏層有N個(gè)神經(jīng)元,代表我們想要的詞向量的維度,輸入層與隱藏層全連接。輸出層的神經(jīng)元個(gè)數(shù)和輸入相同,隱藏層再到輸出層時(shí)最后需要計(jì)算每個(gè)位置的概率,使用softmax計(jì)算,每個(gè)位置代表不同的單詞。該模型中我們想要的就是經(jīng)過訓(xùn)練以后,輸入層到隱藏層的權(quán)重作為詞向量。

假設(shè)詞匯表有10000個(gè),詞向量維度設(shè)定為300。

輸入層:

為詞匯表中某一個(gè)詞,采用one-hot編碼 長度為1X10000

隱藏層:

從輸入層到隱藏層的權(quán)重矩陣W_v*n就是10000行300列的矩陣,其中每一行就代表一個(gè)詞向量。這樣詞匯表中所有的詞都會從10000維的one-hot code轉(zhuǎn)變成為300維的詞向量。

?

?

輸出層:

經(jīng)過神經(jīng)網(wǎng)絡(luò)隱層的計(jì)算,這個(gè)輸入的詞就會變?yōu)?X300的向量,再被輸入到輸出層。輸出層就是一個(gè)sotfmax回歸分類器。它的每個(gè)結(jié)點(diǎn)將會輸出一個(gè)0-1的概率,所有結(jié)點(diǎn)的值之和為1,我們就會取最大概率位置檢測是否為輸入樣本x對應(yīng)的y。

?

在此補(bǔ)充一下,有沒有考慮過一個(gè)問題,采用one-hot編碼時(shí),輸入維度是10000,如果我們將1X10000 向量與10000X300的矩陣相乘,它會消耗大量的計(jì)算資源。

?

?

我們發(fā)現(xiàn),one-hot編碼時(shí),由于只有一個(gè)位置是1,將該向量與隱藏層權(quán)重矩陣相乘會發(fā)現(xiàn),one-hot編碼向量中對應(yīng)1的index,詞向量中這個(gè)下標(biāo)對應(yīng)的一行詞向量正式輸出結(jié)果。所以,在真正的從輸入到隱藏層的計(jì)算中,并不會真正的進(jìn)行矩陣相乘計(jì)算,而是通過one-hot向量1的index取直接查找隱藏層的權(quán)重矩陣對應(yīng)的行,這樣極大的簡化了計(jì)算。

?

3.CBOW與Skip-gram模型:

該模型更一般情況是使用CBOW(Continuous Bag-of-Words)或Skip-gram兩種模型來定義數(shù)據(jù)的輸入和輸出。CBOW的訓(xùn)練輸入的是某一個(gè)特征詞的上下文相關(guān)的詞對應(yīng)的詞向量,輸出是這個(gè)特定詞的詞向量。而Skip-gram剛好相反,輸入一個(gè)特征詞,輸出是這個(gè)特征詞。上下文相關(guān)的詞。

?

?

這里我們以CBOW模型為例

假設(shè)我們有一句話,people make progress every day。輸入的是4個(gè)詞向量,’people’ , ‘make‘ , ‘every’ , ‘day’, 輸出是詞匯表中所有詞的softmax概率,我們的目標(biāo)是期望progress詞對應(yīng)的softmax概率最大。

?

?

開始時(shí)輸入層到隱藏層的權(quán)重矩陣和隱藏層到輸出層的權(quán)重矩陣隨機(jī)初始化,然后one-hot編碼四個(gè)輸入的詞向量’people’ ‘make’ ‘every’ ‘day’,并通過各自向量1的位置查詢輸入到隱藏層的權(quán)重矩陣行數(shù),找尋其對應(yīng)的詞向量。將4個(gè)詞向量與隱藏層到輸出層的權(quán)重相乘通過激活函數(shù)激活后再求平均,最后進(jìn)行softmax計(jì)算輸出的每個(gè)位置的概率。再通過DNN反向傳播算法,我們就可以更新DNN的隱藏層的權(quán)重參數(shù),也就得到了更新后詞向量。通過不斷的訓(xùn)練,我們得到的模型參數(shù)就會越來越準(zhǔn)確,詞向量也會變得越來越好。

?

通過這樣的訓(xùn)練,為什么詞向量會具有衡量不同詞語義相似性的功能呢?

以CBOW模型為例,這里我們可以看到,通過one-hot編碼的輸入樣本,每次只會在隱藏層中輸出與它對應(yīng)的權(quán)重矩陣的行。也就是說在本次訓(xùn)練中,隱藏層只會調(diào)用與輸入樣本相關(guān)的某一行的權(quán)重參數(shù),然后反向傳播后每次都是局部更新隱藏層的權(quán)重矩陣。

?

?

根據(jù)語言學(xué),同義詞的上下文很相似,這樣在訓(xùn)練模型中,相似輸入值都是對應(yīng)相似的輸出值,每次就會更偏向于局部更新對應(yīng)這些詞的詞向量的參數(shù),那么久而久之意思有關(guān)聯(lián)且相近的詞就會在詞向量上很接近。模型的輸出只是每個(gè)位置一一對應(yīng)了詞向量,本身沒有太大的意義。我的理解訓(xùn)練詞向量的模型就像在做聚類一樣,每次把上下文的詞與中心詞對應(yīng)的詞向量通過訓(xùn)練關(guān)聯(lián)在一起并彼此影響,這樣意思相近的詞對應(yīng)的詞向量也會越來越像近。

轉(zhuǎn)載于:https://www.cnblogs.com/coshaho/p/9571000.html

總結(jié)

以上是生活随笔為你收集整理的DNN模型训练词向量原理的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 中文字幕系列 | 97欧美| 美女黄免费 | 日本xxx高清| 天天做天天躁天天躁 | 色狠狠一区 | 福利网站在线 | 日韩美女国产精品 | 一区二区三区四区在线视频 | 国产男女无遮挡猛进猛出 | 动漫同人高h啪啪爽文 | www.久久久久久久久久 | 香蕉视频成人在线 | 黄色片hd | 欧美日韩三级视频 | www.香蕉视频 | 欧美日韩国产三区 | 看一级黄色大片 | 天天干夜夜想 | 国产精品制服丝袜 | 欧美视频直播网站 | 色就色欧美 | 久久91久久| 美女高潮网站 | www.av欧美 | 自拍av在线| 北条麻妃av在线播放 | 丰满人妻一区二区三区53视频 | 色综合久久久久综合体桃花网 | 久久久久一区二区 | 国产又爽又猛又粗的视频a片 | www.亚洲色图.com | 五月婷婷七月丁香 | 午夜精品一区二区三区在线 | 精品国产三级a∨在线 | 天天爽天天干 | av美女在线 | 牛人盗摄一区二区三区视频 | 久久精品视频国产 | 国产成人精品在线 | 香蕉国产在线视频 | 天堂中文在线资 | 波多野结衣av在线播放 | 岛国免费视频 | 操操操操操操 | 日韩制服诱惑 | 99久久精品国产成人一区二区 | 久久久久久国产精品免费 | 天天做天天操 | 色草在线| 91黄色免费| 日本在线不卡一区二区 | 玖玖伊人 | 99热这里精品 | 岳奶大又白下面又肥又黑水多 | 国产精品久久久久久久久久久久久久久久久 | 久久久久久国产免费a片 | 成人日韩| 欧美日韩一级二级 | 欧美人妖乱大交 | 色吧在线视频 | 蜜桃久久av | www伊人| 国产日产欧美一区二区三区 | 亚洲男人天堂2022 | www.欧美精品| 一本色道久久综合亚洲精品小说 | 91网站免费视频 | 1级黄色大片儿 | 无套爆插 | 久久久久玖玖 | 懂色av蜜臀av粉嫩av分享吧 | 一级视频在线播放 | 一卡二卡三卡在线视频 | 亚洲精品电影院 | 日日日网站| 国产精品亚洲成在人线 | 我爱av好色 | 在线黄色av | 久久久久久无码精品大片 | 日本成人激情视频 | 亚洲啊v| 欧美色炮 | 国产免费视频一区二区三区 | 久久撸视频 | 免费观看黄色网 | 69视频网址| 欧美日韩在线观看视频 | 一级片在线免费观看视频 | 99色国产 | 中文字幕色哟哟 | 男人久久天堂 | 成人18网站 | 天堂va欧美ⅴa亚洲va一国产 | 色噜噜色综合 | 精品资源成人 | 一吻定情2013日剧 | 无码人妻精品一区二区三 | 久久精品国产久精国产 |