问题标签 [perplexity]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
lda - 如何测量使用 R 中的 textmineR 包制作的 LDA 模型的困惑度分数?
我在 R 中制作了一个 LDA 主题模型,使用 textmineR 包,如下所示。
那么问题是: 1. 我应该应用哪个函数来获得 textmineR 包中的困惑分数?我似乎找不到一个。
2. 我如何衡量不同主题数量(k)的复杂度分数?
machine-learning - Huggingface gpt2语言模型代码中的perplexity在哪里计算?
我看到一些 github 评论说 model() 调用的损失的输出是困惑的形式: https ://github.com/huggingface/transformers/issues/473
但是当我查看相关代码时...... https://huggingface.co/transformers/_modules/transformers/modeling_openai.html#OpenAIGPTLMHeadModel.forward
我看到交叉熵正在计算,但没有转化为困惑。损失最终在哪里转化?还是已经有我不理解的转变?
machine-learning - Gensim 的潜在狄利克雷分配实现
我正在做关于 LDA 主题建模的项目,我使用 gensim (python) 来做到这一点。我阅读了一些参考资料,它说要获得最佳模型主题,我们需要确定两个参数,即通过次数和主题数量。真的吗?对于传递的数量,我们将看到传递稳定的点,对于主题的数量,我们将看到哪个主题具有最低值。
是否有必要使用 gensim 库中的所有参数?
deep-learning - NLP 中好的困惑度值是否有特定范围?
我正在微调语言模型,并计算训练和验证损失以及训练和验证的困惑。在我的程序中,它是通过采用损失的指数来计算的。我知道较低的困惑代表更好的语言模型,并且想知道一个好的模型的值范围是多少。任何帮助表示赞赏。谢谢你。
r - 在 R 中使用 textmineR 评估 LDA 预测 - 计算困惑度?
我正在研究一个 LDA 模型textmineR
,计算了相干性、对数似然度量并优化了我的模型。
作为最后一步,我想看看模型对看不见的数据的主题预测效果如何。因此,我predict()
将 textminer 包中的函数与我的测试集样本上的 GIBBS 采样结合使用。这导致我的测试集样本中每个文档的预测“Theta”值。
虽然我在另一篇文章中读到该软件包不提供perplexity-calculationstexminer
(请参阅此处的这篇文章:如何在使用 R 中的 textmineR 软件包制作的 LDA 模型上测量困惑度分数?),我现在想知道目的是什么那么预测函数是为什么呢?尤其是对于超过 100,000 个文档的大型数据集,很难仅直观地评估预测是否表现良好。
我不想在模型选择中使用困惑(我使用的是连贯性/对数似然),但据我了解,困惑将帮助我理解预测的好坏以及模型对新模型的“惊讶”程度,以前看不见的数据。
由于这似乎不适用于 textmineR,我不确定如何评估模型预测。还有什么可以用来衡量我的textminer
模型的预测质量的吗?
谢谢!
gensim - Gensim lda 给出负对数困惑值 - 它是否正常,我该如何解释它?
我目前正在使用 Gensim LDA 进行主题建模。
在调整超参数时,我发现该模型总是给出负对数困惑
模型的行为这样正常吗?(甚至可能吗?)
如果是,较小的困惑是否比较大的困惑更好?(-100 比 -20 好??)
python - Gensim 困惑分数增加
我正在尝试为不同数量的主题计算 Spyder 中的困惑度分数,以便使用 gensim 找到最佳模型参数。
然而,困惑度分数并没有像预期的那样降低 [1]。此外,似乎有更多的人遇到这个确切的问题,但据我所知没有解决方案。
有谁知道如何解决这个问题?
代码:
python - 为什么我会随机获得超高的困惑?
几天前,我完成了一个单词预测程序,该程序在给定数据集上测试 LSTM 和 GRU 模型。我测试了 4 个模型——2 个 LSTM 模型和 2 个 GRU 模型。我在 Google Colab 上编写了程序。
我使用两个验证集来看看它如何影响他们的困惑。我对我得到的结果非常满意。现在,几天后,当我回来运行它时,我发现在第一个 epoch 中,至少有一个验证集随机出现了极大的困惑,而当我这样做时,所有 4 个模型的最后一个。但是,当我在第一个 epoch 之后停止程序并立即再次运行它时,它有时会修复第一个 epoch(以及整个程序)的困惑问题。这可以一次又一次地完成,直到所有 3 个数据集都给出正常结果。
是否有任何 google colab 问题导致这些随机失败?我在问我是否可以无缘无故地阻止挖掘我的代码,因为有时它工作得很好。
谢谢!
编辑:经过多次测试后,我注意到在我重新启动运行时后的第一个时期总是发生以下情况:
- 训练困惑是正常的(一如既往),两个验证集都不是。我停止并再次运行。
- 训练困惑是正常的(一如既往),验证集 1 是正常的,验证集 2 不是。我停止并再次运行。
- 训练困惑是正常的(一如既往),两个验证集都是正常的。我停止并再次运行。
- 与 3 相同。
nlp - Vocab 大小为 20 的语言模型可接受的困惑度分数是多少
我正在训练一个用于文本分类的语言模型作为下游任务。据我所知,在给定词汇量为 20 的无偏预测的情况下,这种模型的熵可以为 20,困惑度为 2**20。
在训练时,我的模型输出约 2 的交叉熵损失和 4 (2**2) 的困惑度。我想知道他的权利以及给定 20 作为 Vocab 大小的困惑度的可接受值是多少。如果不是这样,那么计算它的正确方法是什么。