BERTopic 确定一些技术(如异常值减少或零样本CLF)中阈值的最佳范围

koaltpgm  于 2个月前  发布在  其他
关注(0)|答案(1)|浏览(119)

在BERTopic中有很多好的技术可用,这很有帮助。然而,如果我们能对这些非常关键的参数值进行优化,那将是非常棒的。

例如,我们在异常值减少中使用threshold。我使用BERTopic处理各种数据集,它们在文档数量和每个文档的大小上都有很大差异。我有一个包含34K文档的数据集,另一个大约有1K。我观察到,对于第一个数据集,我需要设置threshold=0.03,而对于另一个数据集,它是threshold=0.30

如何找到这些参数的大致良好值或范围?

我也对Zero shot CLF中的threshold有同样的问题。默认情况下,它的值为0.8,但我不得不将其设置为0.4才能看到一些分类发生。

https://maartengr.github.io/BERTopic/api/representation/zeroshot.html
我知道,如果设置了calculate_probabilities=True,我们可以得到主题-文档概率矩阵,但不确定它在这里有什么用处。是否有任何中位概率或其他类似的东西,我们可以用作threshold值的近似范围参考点?

0tdrvxhp

0tdrvxhp1#

好问题!但也是一个非常困难的问题。
如何找到这些参数的大致良好价值或范围?
这要从确定如何在BERTopic上下文中定义“最优”和“良好”的短语开始。该模型在各种不同的用例中被广泛使用,并且往往具有非常不同的目标来实现。例如,我见过许多用户希望减少离群值的数量,但对于某些人来说,如果它们影响主题表示,那么可能无关紧要;但对于其他人来说,可能会有影响。
传统上,当我们谈论“最优”和“良好”时,我们需要有一种能够判断解决方案“良好程度”的功能。在主题建模中,这很快就变得相当复杂。原因是评估主题模型往往是主观的。以主题连贯性度量为例,当某事物在某种程度上是一致的时候,就取决于观察者的主观看法。
此外,还有大量的指标可以优化,包括主题连贯性、主题多样性、簇密度、离群值数量、主题表示、关键词数量等。参数值的高度依赖于你的评估指标将是什么。例如,如果你正在优化一致的主题表示,那么减少离群值可能不是最好的方法。
然而,如果我们能得到一些关于优化这些非常关键的参数值的概念性想法,那将会非常好。
所有这些都是说,这取决于你正在优化你的BERTopic模型的目的!因为这些技术(如离群值减少)可以用于多种目的和多种评估指标,所以很难给出一种适用于所有用例的优化方法。
为了不让你无所作为,你提到的零样本模型有自己的一套指南。你选择的底层模型往往具有一定的概率分布。这意味着零样本示例不能有一个默认的 threshold ,因为它取决于底层的零样本分类模型。因此,了解你正在使用的模型以及为什么使用它将对选择阈值有很大帮助。
关于离群值减少,这确实取决于你正在使用的数据集,因为更多的主题会创建更分散的阈值。尝试针对特定数据集找出最佳效果也会让你对所建模的内容有更深入的理解,但我知道一个优化技巧会有帮助。
我一直在考虑创建一个BERTopic的评估模块的想法,但它需要高度可定制化以适应自定义的目标评估指标。

相关问题