问题标签 [bert-language-model]
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.
python - 如何从 Tensorflow 检查点(ckpt)文件中预测基于 BERT 的句子中的掩码词?
我有基于 BERT 的模型检查点,这些检查点是在 Tensorflow 中从头开始训练的。如何使用这些检查点来预测给定句子中的掩码单词?
比如,假设句子是“[CLS] abc pqr [MASK] xyz [SEP]”,我想预测 [MASK] 位置的单词。
我该怎么做?我在网上搜索了很多,但每个人都在使用 BERT 来完成特定于任务的分类任务。不使用 BERT 来预测掩码词。
请帮助我解决这个预测问题。
我使用官方 BERT 存储库(https://github.com/google-research/bert)create_pretraining_data.py
从头开始使用和训练模型创建数据run_pretraining.py
我在官方 bert repo 中搜索了问题。但没有找到任何解决方案。
还查看了该仓库中的代码。他们正在使用他们正在训练的 Estimator,而不是使用检查点权重。
没有找到任何方法来使用基于 BERT 模型(从头开始训练)的 Tensorflow 检查点来预测单词掩码标记(即 [MASK])。
python-3.x - BERT:如何在 BioBERT 中使用 bert-as-service?
bioBERT
正在抛出下面提到的错误:
但我可以使用以下语句运行其他 BERT 版本uncased_L-12_H-768_A-12
和BERT:sciBERT
科学伯特
但同样的声明不适用于bioBERT
:
生物BERT
错误:
tensorflow - 如何使用 Transformers 进行文本分类?
关于如何使用 Transformers 的 Tensorflow 实现进行文本分类,我有两个问题。
- 首先,似乎人们大多只使用编码器层来完成文本分类任务。然而,编码器层为每个输入单词生成一个预测。根据我对转换器的理解,每次输入到编码器的都是输入句子中的一个单词。然后,使用当前输入词计算注意力权重和输出。我们可以对输入句子中的所有单词重复这个过程。结果,我们最终会得到输入句子中每个单词的成对(注意力权重,输出)。那是对的吗?那么你将如何使用这些对来执行文本分类呢?
- 其次,基于这里Transformer 的 Tensorflow 实现,他们将整个输入句子嵌入到一个向量中,并将这些向量中的一批输入到 Transformer 中。但是,根据我从The Illustrated Transformer中学到的知识,我希望输入是一批单词而不是句子
谢谢!
tensorflow - 使用 TensorFlow Hub 模型重新创建 BERT extract_features.py 输出
我通过克隆 BERT 存储库、下载“BERT-Base, Uncased”预训练模型并运行extract_features.py生成了一个我非常满意的特征向量,如下所示:
注意--layers=-2
arg,它指定我想要倒数第二层的特征。
我现在正在尝试使用这个 TensorFlow Hub 模型重现相同的功能,我相信它是相同的模型。我使用TF Hub GitHub 上建议的这个 hack来访问所需的层,因为只暴露了输出层。我得到的特征向量非常接近,但并不完全相同(各个浮点数彼此相差约 1%)。我已经确认我的输入标记在这两种情况下都是相同的。希望对 BERT 配置和内部有更多了解的人可以发现我忽略的一些明显的东西,或者提出一种继续调试的方法?我很茫然,因为界面非常不同。
nlp - 如何在 NER 任务中使用 BERT 仅用于从没有分类的序列中提取实体?
我在这里的要求是给定一个句子(序列),我想只提取序列中存在的实体,而不将它们分类到 NER 任务中的类型。我看到 NER 的 BertForTokenClassification 进行了分类。这可以仅适用于提取吗?
BERT 可以仅用于进行实体提取/识别吗?
python - Bert 嵌入层使用 BiLSTM 引发“类型错误:+: 'None Type' 和 'int' 不支持的操作数类型”
我在将 Bert 嵌入层集成到 BiLSTM 模型中以进行词义消歧任务时遇到问题,
整个剧本
该层BertEmbeddingLayer()
是从strongio/keras-bert导入的,并按照文件中的方法来集成我的工作但是我总是有这个错误,请检查下面的回溯(构建模型时引发异常)
nlp - 如何使用 Bert 进行长文本分类?
我们知道 BERT 的最大长度限制为 tokens = 512,那么如果一篇文章的长度远大于 512,比如 text 中有 10000 个 token,那么如何使用 BERT?
deep-learning - 是否可以使用 Google BERT 对文档进行矢量化?
我想使用 BERT 将我的文档转换为向量,每个文档一个向量。可能吗?如何使用标准或流行的库对其进行编程?