有沒有一種方法可以在線學習的方式來訓練LDA模型,加載以前的火車模型,並用新文檔更新它?在線學習Spark中的LDA模型
9
A
回答
4
回答我自己:這是不可能的。
實際上,Spark有2個LDA模型訓練的實現,其中一個是OnlineLDAOptimizer。這種方法專門用於通過小批量文檔逐步更新模型。
優化器實現了在線變分貝葉斯LDA算法,該算法在每次迭代中處理語料庫的一個子集,並自適應地更新術語 - 主題分佈。
Original Online LDA paper:Hoffman, Blei and Bach, "Online Learning for Latent Dirichlet Allocation." NIPS, 2010。
不幸的是,當前的mllib API不允許加載先前訓練過的LDA模型,並向其添加批處理。
某些mllib模型支持initialModel
作爲增量更新的起點(請參閱KMeans或GMM),但LDA當前不支持該更新。我爲它填充了一個JIRA:SPARK-20082。請給予好評;-)
爲了記錄在案,也是一個JIRA的流LDA SPARK-8696
2
我不認爲這樣的事情會存在。 LDA是概率性參數估計算法(對這個過程的簡單解釋,這裏是LDA explained),並且添加一個文件或幾個文件會改變所有以前計算出的概率,因此從字面上重新計算模型。
我不知道你的用例,但是如果你的模型在合理的時間內收斂並且在每次重新計算時丟棄一些最早的文檔以加快估計,你可以考慮批量更新。
相關問題
- 1. python LDA scikit學習拋出ValueError
- 2. 在scikit中學習LDA中的主題詞分佈
- 3. 如何分辨機器學習模型的學習型
- 4. 在線學習DBMS
- 5. Spark從web應用程序學習設計模型
- 6. 主題建模與機器學習與LDA
- 7. 閱讀和學習Spark API?
- 8. 帶火花的LDA模型
- 9. (fluxus)學習曲線
- 10. 什麼是機器學習中的學習曲線?
- 11. 我如何解讀scikit學習LDA方法的轉換結果?
- 12. 如何在asp.net中學習線程?
- 13. scikit學習決策樹模型評估
- 14. 將python scikit學習模型導入pmml
- 15. Keras深度學習模型到android
- 16. AWS機器學習Retrain模型
- 17. 如何在Azure機器學習上應用學習曲線
- 18. LDA和主題模型
- 19. 在keras中保存穩定的模型(深度學習)
- 20. 如何學習在Django模型中表示覆雜的關係?
- 21. 用於學習內存模型的資源和java中的線程安全性
- 22. Kafka Streaming + Spark Streaming +機器學習
- 23. 蟒蛇scikit學習,讓每個主題文檔LDA
- 24. Grok學習中的額外拖尾線
- 25. REST API學習曲線
- 26. 關於學習曲線
- 27. OpenGL/Java學習曲線
- 28. Magento開發學習曲線
- 29. Eclipse IDE學習曲線
- 30. PHP學習路線圖?
計算器通常鼓勵加入自己的方式來解決該問題的一些代碼。有時候比賞金更有幫助。 –