LDA模型参数设置,训练效果较好

前言:写小论文用到lda主题模型,在网上找了一圈没有找到训练效果较好的模型参数示例。为了写出小论文做了很多次实验,达到了实验中最好的效果,故贴出
代码

from gensim.models import LdaModel

lda = LdaModel(corpus=corpus, id2word=dictionary, num_topics=size_lda, alpha="auto",eta='auto',passes=20)

其中,corpus,id2word,num_topics不多解释,主要是最后设置了alpha,eta,passes。
alpha是文档-主题分布的先验。默认是symmetric,此时可以显式地为它提供一个字母数组;将其设置为’auto’,它将从数据中学习优先级。
eta是主题-词分布的先验。同上
passes是训练过程中穿过语料库的次数。默认为1,穿过次数越多效果越好(当然,过多可能会过拟合?不造)前面两个设置为auto就好,这一个需要根据你的语料库自己实验一下,可能你的语料库设置passes=10就很好了

好的,以下是一段将gensimLDA模型参数保存到json文件中,并可以从该文件中读取参数来运行LDA模型的Python代码: ```python import json from gensim.models.ldamodel import LdaModel # 定义LDA模型参数 num_topics = 10 chunksize = 2000 passes = 20 iterations = 400 eval_every = None alpha = 'symmetric' eta = None decay = 0.5 offset = 1.0 gamma_threshold = 0.001 minimum_probability = 0.01 random_state = 42 # 创建LDA模型并训练 # ... # 将LDA模型参数保存到json文件中 lda_params = { 'num_topics': num_topics, 'chunksize': chunksize, 'passes': passes, 'iterations': iterations, 'eval_every': eval_every, 'alpha': alpha, 'eta': eta, 'decay': decay, 'offset': offset, 'gamma_threshold': gamma_threshold, 'minimum_probability': minimum_probability, 'random_state': random_state, } with open('lda_params.json', 'w') as f: json.dump(lda_params, f) # 从json文件中读取LDA模型参数并创建LDA模型 with open('lda_params.json', 'r') as f: lda_params = json.load(f) lda_model = LdaModel(**lda_params) # 使用LDA模型进行文本主题分析 # ... ``` 以上代码中,我们首先定义了LDA模型的各种参数。然后,我们创建了一个LDA模型并训练了它。接着,我们将LDA模型的参数保存到了一个json文件中。最后,我们从json文件中读取了LDA模型的参数,并使用这些参数创建了一个新的LDA模型。你可以根据需要修改这些参数,然后运行代码即可得到相应的LDA模型。
评论 14
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值