李沐第十六課《詞向量word2vec》

2021-08-15 22:10:58 字數 1638 閱讀 2929

首先word2vec只是乙個工具,然後word2vec主要包含兩個模型:skip-gram(跳字模型)和cbow模型(continuous bag of words 連續詞袋模型),然後還包括兩種高效的訓練方法:負取樣(negative sampling)和層序softmax(hierarchical softmax)。word2vec可以較好的表達不同詞之間的相似和模擬關係。

skip-gram模型:

在skip模型中,我們用乙個詞(叫做中心詞)來**它周圍的詞。例如給定文字序列」the」,」man」,」hit」,」his」,」son」,那麼skip-gram模型所做的就是,給定」hit」來生成它鄰近詞」the」,」man」,」his」,」son」的概率。那麼」hit」叫做中心詞,其他的四個詞叫做背景詞。

具體計算流程如下:

對於上述計算過程,理解即可,偶爾再次手推就行,並且最終的該詞的詞向量選用的是背景詞的詞向量

cbow模型:

它與skip-gram模型可以理解為是相反的,因為cbow模型是用中心詞旁邊的詞來**該中心詞。比如在上例中則是用」the」,」man」,」his」,」son」來一起**生成」hit」的概率。

其計算具體過程如下:

比較cbow與skip-gram的計算過程,會發現其實他們兩個的計算過程其實最主要的區別就是剛開始時聯合概率的生成的不同,乙個是2m個p(w(t+j) | w(t)),乙個是p(w(t) | w(t-m),…w(t+m)).

近似訓練法:由於無論是skip-gram、還是cbow模型,他們每一步梯度的計算的開銷與詞典v的大小相關,所以時間複雜度均為o(v),顯然這種開銷太大。所以我們將使用近似的方法來計算這些梯度,來減小計算開銷。常用的近視訓練方法包括負取樣和層序softmax。

負取樣具體分析如圖:

層序softmax:

第十六課 QuickHit分析

第十六課 quickhit分析 乙個簡單的輸入闖關遊戲 一 問題1 發現類和物件 1.遊戲類game 方法 生成當前關卡字串 結果判斷和輸出 2.玩家類player 屬性 當前級別 當前的積分 當前級別開始時間 當前級別已用時間 玩遊戲3.等級類level 級別編號 當前等級需要輸入的次數 當前等級...

NeHe OpenGL第十六課 霧

nehe opengl第十六課 霧 霧 這一課是基於第7課的 的,你將學會三種不同的霧的計算方法,以及怎樣設定霧的顏色和霧的範圍。這篇教程由chris aliotta編寫。你想給你的opengl程式新增霧效?我將在這篇教程中教你如何去做。這是我第一次寫教程,我也只是opengl c 程式設計的新手,...

Android第十六課筆記

1 資料儲存 2 序列化 序列化是將物件狀態可轉換為可保持或傳輸的過程。在序列化物件時需要使用xmlserialize序列器,他可以將i o流中傳輸的物件變得像基本資料一樣,實現資料傳遞的功能序列化後的物件以xml形式儲存。3 sqlite資料庫簡介 sqlit是乙個輕量級資料庫,第乙個版本誕生於2...