你好,我正在使用partial_fit函数连续生成主题。然而,在某些批次中,主题的数量可能比数据集中的文章数量少一些。我已经检查了partial_fit中的"labels"属性,它返回的确切主题与文章相同,但是当我在BERTopic之后调用model.topics_时,它返回的主题数量较少。这种情况是如何发生的?我该如何解决这个问题?或者至少,我可以知道哪些文章没有被分配到主题吗?我可以将它们直接删除,因为通常只有2或3篇文章缺少主题。谢谢!
partial_fit
model.topics_
bzzcjhmw1#
在没有看到你的代码的情况下,很难说。你能分享一个完整的示例吗?另外,你确保按照文档中提到的那样迭代更新 model.topics_ 吗?
mpgws1up2#
我正在使用River来持续生成新的主题。我还需要更新模型的topics_参数吗?
gupuwyp23#
当然可以!topics_ 只在每个 .partial_fit 调用中保存每个批次。因此,如果您想为迄今为止看过的每个文档保存每个主题,您需要按照以下方式更新它:
topics_
.partial_fit
yx2lnoni4#
但是这些主题不是已经保存在“topics”列表中了吗?目前,我正在每个批次内调用:df = pd.DataFrame({'Document': df['text'],'Topic': topics})来为该批次创建一个数据框和主题。然后我将模型和数据本地保存并清理内存。然后我再次使用新一批数据加载模型并运行之前的模型。这样可以吗?我认为对于大多数批次来说效果还不错,只是生成的主题数量比文章数量少2或3个。
falq053o5#
你应该按照上面图片中我描述的方式去做。如果你没有做,你能提供你的完整代码吗?这也可能是一个关于River的问题,但我并不完全确定。试着用增量kmeans方法,看看是否能解决你的问题。
eoigrqb66#
我明白了,我会尝试一下。谢谢!
6条答案
按热度按时间bzzcjhmw1#
在没有看到你的代码的情况下,很难说。你能分享一个完整的示例吗?另外,你确保按照文档中提到的那样迭代更新
model.topics_
吗?mpgws1up2#
我正在使用River来持续生成新的主题。我还需要更新模型的topics_参数吗?
gupuwyp23#
当然可以!
topics_
只在每个.partial_fit
调用中保存每个批次。因此,如果您想为迄今为止看过的每个文档保存每个主题,您需要按照以下方式更新它:yx2lnoni4#
但是这些主题不是已经保存在“topics”列表中了吗?目前,我正在每个批次内调用:
df = pd.DataFrame({'Document': df['text'],
'Topic': topics})
来为该批次创建一个数据框和主题。然后我将模型和数据本地保存并清理内存。然后我再次使用新一批数据加载模型并运行之前的模型。这样可以吗?我认为对于大多数批次来说效果还不错,只是生成的主题数量比文章数量少2或3个。
falq053o5#
你应该按照上面图片中我描述的方式去做。如果你没有做,你能提供你的完整代码吗?
这也可能是一个关于River的问题,但我并不完全确定。试着用增量kmeans方法,看看是否能解决你的问题。
eoigrqb66#
我明白了,我会尝试一下。谢谢!