问题标签 [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.
windows - windows spyder 运行 py 文件时出现无效语法错误
我正在尝试从页面运行最后一个示例。我已经克隆了目录中的存储库C:/Users/nn/Desktop/BERT/transformers-master
。我在 Windows 机器上并使用 spyder IDE。为什么我会得到以下错误,我该如何解决?如何输入诗歌的开头部分?
我去了命令提示符并在下面尝试
什么都没发生 :(
当我尝试使用 python 命令执行相同操作时,出现如下错误:(
####更新2 ------------------
我遵循了评论中的建议,它奏效了。代码似乎下载了3个文件。
- 我可以手动复制这些文件,这样我就不必每次都依赖于在临时文件夹中下载它们吗?
- 我应该在哪里存储这些文件?哪个文件夹位置?它会
C:\Users\nnn\Desktop\BERT\transformers-master\examples
- 与run_generation.py
文件相同吗?
abc
machine-learning - 使用 huggingface 的 distilbert 模型生成文本
一段时间以来,我一直在为 huggingface 的 DistilBERT 模型苦苦挣扎,因为文档似乎非常不清楚及其示例(例如https://github.com/huggingface/transformers/blob/master/notebooks/Comparing-TF-and-PT -models-MLM-NSP.ipynb和https://github.com/huggingface/transformers/tree/master/examples/distillation)非常厚,他们展示的东西似乎没有很好的记录。
我想知道这里是否有人有任何经验并且知道一些很好的代码示例,用于他们模型的基本 in-python 使用。即:
如何正确地将模型的输出解码为实际文本(无论我如何改变它的形状,标记器似乎都愿意对其进行解码并且总是产生一些
[UNK]
标记序列)如何实际使用他们的调度器+优化器来训练一个简单的文本到文本任务的模型。
nlp - 如何使用 Transformers 库从 XLNet 的输出中获取单词
我正在使用 Hugging Face 的 Transformer 库来处理不同的 NLP 模型。以下代码使用 XLNet 进行屏蔽。它输出一个带有数字的张量。如何再次将输出转换为单词?
我得到的当前输出是:
张量([[[ -5.1466, -17.3758, -17.3392, ..., -12.2839, -12.6421, -12.4505]]], grad_fn=AddBackward0)
python - 获取 MASK 位置的多标记词的概率
根据语言模型获得令牌的概率相对容易,如下面的片段所示。您可以获取模型的输出,将自己限制在掩码标记的输出中,然后在输出向量中找到您请求的标记的概率。然而,这只适用于单标记词,例如,它们本身就在标记器的词汇表中。当词汇表中不存在一个词时,分词器会将其分块成它确实知道的部分(参见示例的底部)。但是由于输入句子只包含一个被掩蔽的位置,而请求的 token 有更多的 token,我们如何才能得到它的概率呢?最终,我正在寻找一种不管单词有多少子词单元都可以工作的解决方案。
在下面的代码中,我添加了许多注释来解释发生了什么,以及打印出打印语句的给定输出。您会看到预测诸如“爱”和“恨”之类的标记很简单,因为它们在标记器的词汇表中。但是,'reprimand' 不是,所以它不能在单个掩码位置被预测——它由三个子词单元组成。那么我们如何预测蒙面位置的“谴责”呢?
transformer - Huggingface 变形金刚 - AttributeError:“MrpcProcessor”对象没有属性“tfds_map”
在 GLUE 任务上使用 Hugginface Transformers 时,出现错误AttributeError: 'MrpcProcessor' object has no attribute 'tfds_map'
我怀疑兼容性问题。
python - 为什么要在虚拟环境中安装(拥抱脸)Transformers 库?
在拥抱脸 github上写着:
您应该在虚拟环境中安装 Transformers。如果您不熟悉 Python 虚拟环境,请查看用户指南。
使用您要使用的 Python 版本创建一个虚拟环境并激活它。
现在,如果你想使用 Transformers,你可以用 pip 安装它。如果您想使用这些示例,则必须从源代码安装它。
为什么要安装在虚拟python环境中?这样做而不是按原样将其安装在 python 上有什么好处?
python - 使用 Bert(拥抱脸)分类器保存 tf.keras 模型时遇到问题
我正在训练一个使用 Bert(拥抱脸)的二元分类器。该模型如下所示:
在对我的分类任务进行微调之后,我想保存模型。
然而,这会引发 NotImplementedError:
我知道 huggingface 为 TFBertModel 提供了一个 model.save_pretrained() 方法,但我更喜欢将它包装在 tf.keras.Model 中,因为我计划向这个网络添加其他组件/功能。任何人都可以提出保存当前模型的解决方案吗?
python - BERT 标记器和模型下载
我是初学者..我正在和伯特一起工作。但是由于公司网络的安全问题,下面的代码并没有直接接收到bert模型。
所以我想我必须下载这些文件并手动输入位置。但我是新手,我想知道从 github 下载 .py 之类的格式并将其放在某个位置是否简单。
我目前使用的是抱脸的pytorch实现的bert模型,找到的源文件地址是:
https://github.com/huggingface/transformers
请让我知道我认为的方法是否正确,如果正确,要获取什么文件。
提前感谢您的评论。
pytorch - torch.distributed.barrier() 是如何工作的
我已经阅读了我能找到的关于 torch.distributed.barrier() 的所有文档,但仍然无法理解它是如何在这个脚本中使用的,并且非常感谢一些帮助。
因此,torch.distributed.barrier 的官方文档说它“同步所有进程。这个集体阻止进程,直到整个组进入这个函数,如果 async_op 为 False,或者如果在 wait() 上调用异步工作句柄。”
它在脚本中的两个地方使用:
我无法将代码中的注释与官方文档中所述的此函数的功能联系起来。它如何确保只有第一个进程在两次调用 torch.distributed.barrier() 之间执行代码,为什么它只在第二次调用之前检查本地排名是否为 0?
提前致谢!
google-cloud-platform - Huggingface Bert TPU 微调适用于 Colab,但不适用于 GCP
我正在尝试在 TPU 上微调 Huggingface 转换器 BERT 模型。它在 Colab 中工作,但当我在 GCP 上切换到付费 TPU 时失败。Jupyter notebook 代码如下:
这是错误消息:
我在 Huggingface github ( https://github.com/huggingface/transformers/issues/2572 ) 上发布了这个,他们建议 TPU 服务器版本可能与 TPU 客户端版本不匹配,但是 a) 我不知道如何检查为此,也不 b) 该怎么做。建议表示赞赏。