word2vec多執行緒優化時不加鎖的做法合理麼?

時間 2021-06-01 07:31:50

1樓:田晗

反正只要跑到乙個大概的終點就可以了,一群人是一擁而上來的快,還是前後怕磕著碰著來的快呢?反正evaluation說話,數學上的嚴格,機器學習家都是糊弄糊弄能說得過去就行。

2樓:T-mac

答: 十分合理

原因:1. 高效是word2vec 的乙個特色,如果加鎖的話,效率必然降低。

2. 加鎖之後雖然能從理論上提公升詞向量的準確性,但是提公升的程度非常非常小,假設乙個單詞經過N次迭代得到最終的vector,並且假設迭代衝突的次數為n, n一定遠遠小於N, 也就是說由於衝突造成的詞向量精確性的損失非常非常小,幾乎可以忽略不計。

因此,加鎖只會提高很小程度的精確性,卻會大大低效率,所以不加鎖是合理的。

3樓:張大帥

因為詞是稀疏的啊,衝突率不高。而且本來就是隨機梯度下降,即使衝突,因為都是同一時間算的,雖然位置不同,在優化的角度來講,其實還是在向正確方向前進。

4樓:Yuyu Xing

我個人覺得還是合理的,類似於神經網路的分布式實現,更新引數只是近似的去做,因為不加鎖肯定會衝突,但這並不會太影響最後的收斂結果,反而還會明顯地加速訓練過程。

word2vec有什麼應用?

Edward word2vec的應用極為廣泛。首先,只要是nlp的相關應用就可以使用word2vec進行詞向量的初始化,通過初始化進一步的fine tuning能夠進一步的提公升模型效果。其次針對表示學習也有很多應用比如類似deepwalk之類的,感覺也都是受word2vec啟發。另外值得說的一點是...

GloVe以及Word2vec能稱為deep learning麼?這倆模型的層次其實很淺的

乙個是歷史原因,word2vec的方法原型,是Bengio在03年提出的神經語言模型,這個網路的確是非常淺的網路,只有1個hidden層,但是建模方法算是神經網路 現代的說法是深度學習 Good Fellow的花書裡面也把word2vec方法歸在了神經語言模型的章節。另外乙個原因,word2vec曾...

word2vec 訓練好的詞彙向量檔案是否可以動態增加?如果可以,如何實現動態訓練增加?

江飛燕 gensim train sentences,total words None,word count 0,total examples None,queue factor 2,report delay 1.0 gensim models.word2vec Deep learning with...