问题标签 [allennlp]

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.

0 投票
1 回答
186 浏览

python - AllenNLP Reading Comprehension results are different in UI Demo and Python Library

I am trying AllenNLP reading comprehension with the Transformer QA Model to get the answer to question "Who is CEO of ABB?" from the passage "ABB opened its first dedicated global healthcare research center for robotics in October 2019.".

As expected, the UI demo shows no answer returned. The API response in network tab also shows that. In the json response, best_span_str is empty, but best_span_scores is 9.9. Screenshot of demo UI and API response in network tab.

When I execute the similar code via python library, I get a different result.

provides following json output

Here I see best_span_str coming up, and best_span_scores as -10.418445587158203. Attaching python code and output snippet.

Why is this difference in output in the UI demo vs library? Also, what is the range of best_span_scores and where can I decide a threshold to discard false results?

0 投票
1 回答
104 浏览

maxlength - AllenNLP 问答的段落长度限制

我对 AllenNLP 很陌生,我目前正在使用它的预训练问答模型。我想知道它是否有通道长度限制以确保其性能?我知道 BERT 的最大长度为 512,并且会截断更长的段落。

我在 AllenNLP 上尝试过更长的段落,它似乎有效,但我只是想确认一下。谢谢你。

0 投票
1 回答
1190 浏览

python - 如何在 AllenNLP 中加载微调的 sciBERT 模型?

我已经在 SciIE 数据集上微调了 SciBERT 模型。存储库使用 AllenNLP 来微调模型。训练执行如下:

成功训练后,我有一个 model.tar.gz 文件作为输出,其中包含 weights.th、config.json 和词汇文件夹。我试图将它加载到 allenlp 预测器中:

但我收到以下错误:

配置错误:bert-pretrained 不在 dataset_reader.token_indexers.bert.type 可接受的选择中:['single_id'、'characters'、'elmo_characters'、'spacy'、'pretrained_transformer'、'pretrained_transformer_mismatched']。您应该使用 --include-package 标志来确保加载了正确的模块,或者在配置文件中使用完全限定的类名,例如 {"model": "my_module.models.MyModel"} 让它自动导入.

我从未与 allenNLP 合作过,所以我不知道该怎么做。

作为参考,这是描述令牌索引器的配置的一部分

我正在使用 allenlp 版本

名称:allennlp 版本:1.2.1

编辑:

我想我已经取得了很大的进步,我必须使用用于训练模型的相同版本,并且我可以像这样导入模块:

现在我得到一个错误:

没有模型类型 bert_crf_tagger 的默认预测器。\n请明确指定预测器

我知道我可以使用predictor_name来明确指定一个预测器,但我不知道选择哪个名称会起作用

0 投票
1 回答
139 浏览

pip - AllenNLP Torch 版本不可用

我正在尝试通过 pip 在最新版本的 macOS Catalina 上安装 allennlp。Python 版本是 3.9.0。pip 版本是 20.2.4。

几周前我只能安装,但现在我在运行命令时收到以下错误:

pip3 install allennlp allennlp-models

这真的很糟糕,因为我现在正在进行的一个时间敏感的项目完全依赖于 allennlp 的工作。由于一些 git 问题,我需要重新安装,并且我的虚拟环境已重置。我可以做些什么来解决这个问题?

谢谢。

编辑:不知何故,我最终在自制软件中卸载了 3.9,现在我被困在 jsonnet 中。它出错了。我看到了一些关于这个问题的帖子,但没有一个建议有效。

EDIT2:我尝试重新安装 brew 的 python 3.9。jsonnet Standalone 再次工作,但后来我又遇到了 pytorch 问题。

我陷入了一个循环。系统 macOS 3.8 python 和最新的 3.9 home-brew python 都不起作用。我宁愿让自制的python工作,但显然没有可用的有效版本的火炬。

0 投票
1 回答
172 浏览

python - AllenNLP 在“成为”句子上失败。途中发生了一些事情

通过演示页面或在 Python3.8 中使用 AllenNLP 和最新的 11 月 Bert 基本模型,涉及动词“is”的简单句子不会返回语义角色标签的结果。

例如,“我在这里”。什么都不返回。

简而言之:

  • 简单的“A is B”句子的实例不返回任何结果。
  • 我相信应该有某种输出,因为其他 SRL 引擎确实会返回结果。
  • “我是”也是如此。预期结果是“I”的 ARG1 和谓词“am”。

这曾经适用于早期版本:

相关问题或可能的重复

  • 没有任何

环境

操作系统:macOS 10.15.7 (Catalina)

Python 版本:3.8.6(通过自制)

重现步骤

访问 SRL 的演示网站

例子:

输入几乎任何变体:“我在这里。” “我们是人。” “我是。”

编辑:我尝试安装我曾经拥有的确切库版本(即 AllenNLP 1.0),但问题仍然存在。坦率地说,我不知道发生了什么。

编辑2:

安装脚本:

0 投票
1 回答
117 浏览

allennlp - 使用“Predictor.from_path”加载“decomposable-attention-elmo”时出现问题

我正在尝试加载本文提出的可分解注意力模型 The decomposable attention model (Parikh et al, 2017) 与在 SNLI 上训练的 ELMo 嵌入相结合。,并使用建议的代码作为演示网站描述:

我从日志中找到了这个:

并且预测也与我在演示网站上得到的不同(我打算看到的)。我在这里错过了什么吗?

此外,我尝试了其他两个版本的预训练模型,decomposable-attention-elmo-2018.02.19.tar.gz以及decomposable-attention-elmo-2020.02.10.tar.gz. 它们都不起作用,我收到了这个错误:

我需要做什么才能获得演示网站中显示的确切输出?

0 投票
1 回答
480 浏览

python - 从 AllenNLP Open IE 模型中提取后处理三元组

我想从 Allen NLP Open IE 预测器模型中提取(主题、关系、对象)的元组形式的干净三元组。

目前,我看到步骤如下

srl_output 在打印时会在句子中给出标签,例如:

[ARG0:雷神技术公司研究]、开发和[V:制造] [ARG1:先进技术产品] [ARGM-LOC:在航空航天和国防工业中],[C-ARG1:包括飞机发动机、航空电子设备、航空结构、网络安全] [ARGM-ADV:导弹、防空系统和无人机]。

问题是,我找不到任何代码来将这样的例句转换为形式的多个元组(主题、关系、对象)。特别是 ARGM-LOC 和 ARGM-ADV 等特殊类型的标签使事情变得更加困难。

我已经查看过过时的 Github 存储库https://github.com/gabrielStanovsky/supervised_oie_wrapper(它并不完全生成这些类型的元组),我在 AllenNLP 中找到的最接近的函数是make_srl_string方法,但输出仍然需要进行后处理以创建元组。

是否有任何代码可以从 AllenNLP Open IE 模型创建元组?如果没有,您可以将其添加为功能吗?

github issue中的详细解释https://github.com/allenai/allennlp/issues/4857

0 投票
1 回答
47 浏览

allennlp - 为情绪分类器提供预标记输入

根据这个演示,我在 python 中使用情感分类器。

是否可以将预先标记的文本作为预测器的输入?我希望能够使用我自己的自定义标记器。

0 投票
1 回答
128 浏览

allennlp - Allennlp 命令或 token_embedders 中没有 Fine-Tune/ Bert_token_embedder 模块

我一直在从这里开始一个 github 项目: https ://github.com/jiacheng-xu/DiscoBERT 根据作者的说法,它需要 Allennlp 0.9.0。我使用 pip 创建了一个虚拟环境并尝试安装 0.9,但它给出了错误。因此,我尝试了安装良好的 Allennlp 1.2,但在以下两行中出现错误:

看来,至少在 1.2 版本中,没有fine_tune 和bert_token_embedder 模块。有没有快速克服这些错误的方法?

0 投票
0 回答
41 浏览

nlp - AllenNLP SRL:是否可以获得引理的意义信息?

我将 AllenNLP 用于 SRL,但输出不提供动词的角色信息/框架信息/引理。所有这些都会有所帮助。

我看到此信息似乎存在于此处:在模型 github 上,但我不确定它是否可用于我认为使用 BERT 的最新/最佳 SRL 模型。

是否有可能使用最先进的技术在 SRL 解析的同时获得意义、框架和引理信息?如果是这样,它是如何完成的?