问题标签 [huggingface-transformers]
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.
apex - 为什么 huggingface bert pooler hack 让混合精度训练稳定?
Huggigface BERT 实现有一个技巧,可以从优化器中删除池化器。
我们正在尝试在 huggingface bert 模型上运行 pretrining。如果不应用此 pooler hack,则代码在训练后期总是会发散。我还看到在分类过程中使用了池化层。
池化层是一个带有 tanh 激活的 FFN
我的问题是为什么这个 pooler hack 解决了数字不稳定性?
池化器出现的问题
huggingface-transformers - 为什么在蒸馏 roBERTa 时冻结位置嵌入?
我对 huggingface 的 distillBERT 工作很感兴趣,通过查看他们的代码 ( https://github.com/huggingface/transformers/blob/master/examples/distillation/train.py ),我发现如果使用 roBERTa 作为学生模型,他们会冻结位置嵌入,我想知道这是为了什么?
我理解冻结 token_type_embeddings 的原因,因为 roBERTa 从未使用过段嵌入,但为什么要定位嵌入呢?
非常感谢您的帮助!
python - 访问几层预训练 DistilBERT 模型的输出
我正在尝试从预训练的“DistilBERT”模型的几个不同层访问输出嵌入。(“distilbert-base-uncased”)
bert_output 似乎只返回输入标记的最后一层的嵌入值。
huggingface-transformers - GPT2 huggingface 的 Transformer 预处理
在 GPT2 的预处理步骤中,我们究竟应该做什么?有什么指导方针吗?
这对于预处理步骤是否合适?
去掉多余的标点符号或任何非英文字符不是更好吗?
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
我看到交叉熵正在计算,但没有转化为困惑。损失最终在哪里转化?还是已经有我不理解的转变?
python - 从头开始训练拥抱脸的 GPT2:断言 n_state % config.n_head == 0 错误
我正在尝试将 GPT2 架构用于音乐应用程序,因此需要从头开始对其进行训练。经过一番谷歌搜索后,我发现来自拥抱脸的 github 的问题 #1714 已经“解决”了这个问题。当我尝试运行建议的解决方案时:
我收到以下错误:
这是什么意思,我该如何解决?
更一般地说,是否有关于如何使用 GPT2 进行转发呼叫的文档?我可以定义自己的train()
函数还是必须使用模型的内置函数?我是被迫使用 aDataset
来进行训练还是可以给它单独的张量?我找了它,但在文档上找不到这些的答案,但也许我错过了一些东西。
PS:我已经阅读了来自 huggingface.co 的博文,但它省略了太多信息和细节,对我的应用程序有用。
tensorflow - BERT 调用函数中的关键字参数
在 HuggingFace TensorFlow 2.0 BERT 库中,文档指出:
TF 2.0 模型接受两种格式作为输入:
将所有输入作为关键字参数(如 PyTorch 模型),或
在第一个位置参数中将所有输入作为列表、元组或字典。
我正在尝试使用这两个中的第一个来调用我创建的 BERT 模型:
但是当我执行最后一行时,我得到一个错误:
有人可以解释如何正确使用输入的关键字参数样式吗?
pytorch - 如何定义带有拥抱面变压器管道的摘要配给?
我正在使用下面的代码来总结一篇使用huggingface-transformer的管道的文章。使用此代码:
如何定义摘要和原始文章之间的比率?比如20%的原创文章?
编辑1:我实施了您建议的解决方案,但出现以下错误。这是我使用的代码:
我得到的错误:
nlp - 从 Transformers 库中理解 BERTforTokenClassification 类的输出的困惑
这是变压器 pytorch 库文档中给出的示例
这hidden_states
是一个长度为 13 的元组,包含模型在每层输出的隐藏状态以及初始嵌入输出。我想知道hidden_states[0] 或 hidden_states[12] 是否代表最终的隐藏状态向量?
python - Pycharm interperter 使用了错误的路径
我正在尝试遵循此说明。我下载了 Glue 数据集,并尝试运行此命令
我从 pycharm 运行命令,所以我使用这个配置。
当我按下运行命令时:
但我收到此错误:
通过错误,我看到 interperter 试图在 (C:\Program Files (x86)\Microsoft Visual Studio\Shared\Python37_64\lib\site-packages\transformers__init__.py.
我究竟做错了什么?我相应地设置了配置