簡體   English   中英

Gensim word2vec-從不同於0的索引開始詞匯表

[英]Gensim word2vec - start vocabulary from index different than 0

我正在使用gensim根據我的語料庫創建單詞向量,如下所示:

model = Word2Vec(sentences, size=100, window=5, min_count=5, workers=4)

我想知道是否可以在索引0和1處開始(或以某種方式避免使用)單詞? 我希望我的詞匯表從索引2開始,因為我需要執行其他操作,並且如果我將0和1保留為索引,則會有些混亂。

謝謝您的幫助!

它不是Word2Vec的本機功能。

這可能不是一個好主意,但是您可以通過以很高的頻率創建兩個偽單詞並以包含對它們的最小影響的方式,將包含它們的示例添加到您的訓練數據中, 粗略地偽造它。

例如,如果語料庫中最常見的單詞出現了5,000次,則創建一個僅包含單詞“ dummy000000000”和“ dummy000000001”的假文本,每個單詞重復1000次。 將此偽造的文字添加到您的語料庫6次。 然后,“ dummy000000000”和“ dummy000000001”將是語料庫中兩個最常見的詞,並因此獲得索引0和1(在通常情況下)。 他們的訓練將浪費時間,並且該模型將浪費其潛在狀態給這些單詞粗略的向量,但它們對其他單詞的影響應最小(因為它們從未與真實單詞共發)。 瞧,您有了0和1個索引,以后可以忽略(或將其視為錯誤)!

但是寫出來后,這絕對不是一個好主意。 它將使模型稍微變慢和惡化。 模型中的各種進度/統計數據都會產生誤導。

並且,使此類索引從0開始是非常典型的專業編程實踐。 如果您發現它令人困惑,無論是在一般情況下還是在您的特定項目中,這可能是一個習慣/理解上的障礙,那就是通讀起來比嘗試用非標准實踐打補丁要好。

暫無
暫無

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

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