簡體   English   中英

如何結合兩個預先訓練的Word2Vec模型?

[英]How to combine two pre-trained Word2Vec models?

我成功地遵循了Word2Vec上的deeplearning4j.org教程,因此我能夠加載已訓練的模型或基於一些原始文本來訓練新模型(更具體地說,我正在使用GoogleNews-vectors-negative300Emoji2Vec預先訓練的模型)。

但是,由於以下原因,我想將上述兩個模型結合起來:擁有一個句子(例如,來自表情符號的Instagram或Twitter的評論),我想識別句子中的表情符號,然后將其映射到與之相關的詞。 為了做到這一點,我打算遍歷句子中的所有單詞並計算緊密度(表情符號和單詞在向量空間中的距離)。

找到了如何訓練現有模型的代碼 但是,要提到的是在這種情況下不添加新單詞,並且將基於新的文本語料庫更新現有單詞的權重。

對於我遇到的問題,我將不勝感激。 提前致謝!

在我最熟悉的word2vec庫中,將不同語料庫訓練的兩個模型結合起來並不是一個簡單的受支持的操作。

特別是,即使在兩個語料庫中都出現相同的單詞,甚至在相似的上下文中,該算法在初始化和訓練期間使用的隨機化,以及多線程訓練注入的額外隨機化都意味着該單詞可能出現在極為不同的位置。 相對於其他單詞的相對距離/方向應該大致相似,而不是特定的坐標/旋轉。

因此,合並兩個模型需要將一個坐標轉換為另一個坐標。 這本身通常將涉及到從一個空間到另一個空間學習投影,然后將唯一的單詞從源空間移動到生存空間。 我不知道DL4J是否為此內置了例程。 Python gensim庫在最新版本中有一個TranslationMatrix示例類,可以實現此目的,這是由於在語言到語言的翻譯中使用詞向量而引起的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM