首页 > 解决方案 > 如何保存 LDA 模型 - Python 中的 LatentDirichletAllocation

问题描述

我已经使用以下命令训练了一个 LDA 模型,需要了解如何保存它。

lda_model = LatentDirichletAllocation(n_components=25, random_state=100)

我试过下面的方法,但它说

AttributeError:“LatentDirichletAllocation”对象没有属性“保存”

lda_model.save("xyz.model")

训练模型花了 16 个小时。重新创建它将非常耗时。任何建议将不胜感激!

标签: pythonldatopic-modeling

解决方案


模型在 scikit-learn 中是可序列化的,因此您可以使用以下方式保存它:

import pickle

pickle.dump(lda_model, 'lda_model.pk')
# then reload it with
lda_model = pickle.load('lda_model.pk')

请注意,根据文档,您可能希望joblib模型包含大估计量时更喜欢

import joblib

joblib.dump(lda_model, 'lda_model.jl')
# then reload it with
lda_model = joblib.load('lda_model.jl')

正如 Michael Silverstein 所提到的,它被记录在这里


推荐阅读