我已經下載1000億字谷歌新聞預訓矢量文件。最重要的是,我還培訓我自己的3GB數據產生另一個預訓練矢量文件。兩者都有300個特徵尺寸和1GB以上的尺寸。在Word2Vec中合併預訓練模型?
我如何合併這兩個巨大的預先訓練的載體?或者我如何訓練一個新模型並更新另一個模型的載體?我看到基於C的word2vec不支持批量訓練。
我期待從計算這兩種模式字比喻。我相信從這兩個來源獲得的載體將產生相當好的結果。
我已經下載1000億字谷歌新聞預訓矢量文件。最重要的是,我還培訓我自己的3GB數據產生另一個預訓練矢量文件。兩者都有300個特徵尺寸和1GB以上的尺寸。在Word2Vec中合併預訓練模型?
我如何合併這兩個巨大的預先訓練的載體?或者我如何訓練一個新模型並更新另一個模型的載體?我看到基於C的word2vec不支持批量訓練。
我期待從計算這兩種模式字比喻。我相信從這兩個來源獲得的載體將產生相當好的結果。
有合併的單獨訓練課結束,結果沒有直接的方法。
即使對於完全相同的數據,從初始接種或線程調度抖動輕微隨機化將導致不同的結束狀態,使得僅矢量在同一會話內完全可比。
這是因爲每個會話都會找到一個向量的有用配置......但有許多同樣有用的配置,而不是一個最好的配置。
例如,你達到什麼最終狀態有許多轉/反射,可以正好在訓練預測任務一樣好,或者一些其他任務(如類比解決)執行完全一樣好。但是,大多數這些可能的替代方案都沒有可以混合匹配的座標,以便進行有用的比較。
預加載您的模型與來自之前訓練運行的數據可能在用新數據進行更多訓練之後改進結果,但是我不知道對這種可能性進行任何嚴格測試。效果可能取決於您的特定目標,參數選擇以及新舊數據的相似程度,或代表將使用這些載體的最終數據。例如,如果Google新聞語料庫與您自己的訓練數據不同,或者您將使用單詞向量來理解的文本,那麼將其用作起點可能會減慢或偏向您的訓練。另一方面,如果你對新數據進行足夠長時間的訓練,最終預加載值的任何影響都可能被稀釋爲虛無。 (如果您確實需要「混合」結果,則可能需要同時訓練新數據,並使用交錯目標將向量微調回前面的數據集值。)
將獨立會話結果合併的方法可能會做出一個好的研究項目。也許在word2vec語言翻譯項目中使用的方法 - 學習詞彙空間之間的投影 - 也可以在不同運行的不同座標之間「翻譯」。也許鎖定一些載體,或者對「預測新文本」和「接近老載體」這兩個雙重目標進行培訓,可以有效改善綜合結果。
我的理解是,矢量質量提高了很多,它被訓練的數據越多。我如何融合所有的數據源(谷歌新聞,維基百科,古騰堡),然後訓練生成一個大的矢量文件?我似乎無法理解爲什麼在另一個語料庫上訓練時矢量質量會被稀釋? – pbu
GoogleNews文本語料庫(「約1000億字」)不可用:只有最終的向量。如果你加載它們,然後繼續對其他數據進行培訓,那麼你對新數據的每一次傳遞都會使向量更好地預測你的新文本,但對未曾見過的GN文本卻不太好。有了足夠的新訓練,任何來自GN來源的起始值的影響將變得非常小。更多的模型適應更新的文本會使矢量質量「更好」還是「更差」?不清楚/這取決於。 (GN文本對於您的特定任務已經很理想,或者更新的文本更好?) – gojomo
我不確定「任意小」是否正確。我的感覺是影響力保持着重要性。 –