最近進行的專案,前期要求利用word2vec做相關的向量化處理,於是作為小白從頭開始學習word2vec的基本原理,然後開始實驗練手。在這裡po一些學習和實驗過程中的資料、注意點和經驗點。
基本原理篇
原理上讀了mikolov 2023年的 efficient estimation of word representations in vector space,裡面提出兩種模型cbow和skip-gram,具體實現方法和原理我還沒有看**,有空的時候會review一下。
準備工作篇
因為後期要用到linux下的python環境,之前偷懶一直沒有給ubuntu裝python環境,這次借機會好好裝了一次。
我是ubuntu16.04,因為ubuntu系統都會預裝python環境,所以原來的版本是python2.7。我選擇直接裝乙個集大成的anaconda。在這裡遇到乙個小問題阻礙了我很久,導致重灌了好幾次- -
情況是,用官網的安裝包解壓安裝好anaconda以後,雖然python –version可以顯示正確的python版本號(我裝的是3.5.2),但是直接python命令或用python命令執行程式都會報錯說少乙個package。
所以在這裡要注意了!因為新裝的python版本和系統預裝的python版本不一致,命令列中的python實際上執行的仍然是系統預裝的2.7版本!一定一定要去 /usr/bin 下面把原來指向舊版本的軟鏈結mv掉,然後為我們新裝的3.5版本建立軟鏈結到python。完成後再次命令列執行python~問題解決!
wiki資料集處理
實驗過程基本參考52nlp上的步驟:
word2vec模型訓練
實踐中。。。
Word2Vec知識總結
word2vec是乙個產生詞向量的模型,是乙個雙層的神經網路 非常善於找出詞彙的相似度,同時可用於處理之前的技術 像one hot編碼和wordnet 處理不了的語義關係。它可以利用神經網路從大量的無標註的文字中提取有用資訊。我們也可以將它看成是乙個工具,它裡面包含了三種重要的模型 1 nnlm 神...
與word2vec 原來word2vec那麼簡單
說到word2vec,它可謂非結構化資料裡面的佼佼者,尤其是在推薦和nlp當中,足以體現它的優勢所在,並且多年一直備受工業界喜愛.那麼word2vec到底是怎麼個原理的,發現身邊總是有很多人問,確不能準確的說出為什麼是兩個矩陣,到底是怎麼自動反向傳播的,以及對於softmax之後那麼大的維度資料,是...
word2vec學習參考
最近看nlp的東西比較多。就拿現在google 基於神經網路做的 word2vec 作為部落格的開始吧,今後會陸陸續續補充內容。基本是分4塊內容 1.神經網路語言模型 2.語言模型分層優化 3.word2vec 原理 4.google word2vec 看一點寫一點,先扔些參考資料鏈接上去。附上在研...