问题标签 [question-answering]
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.
tensorflow - 如何从 Tensorflow Keras 中的堆叠 BiLSTM 层中获取隐藏状态矩阵?
我正在尝试为此架构编写代码(问答模型:论文https://www.hindawi.com/journals/cin/2019/9543490/)并寻求帮助如何从堆叠的 BiLSTM 中获取隐藏状态矩阵 Hq 和 Ha层。有人可以请教。
python - AttributeError:“NoneType”对象没有属性“strip”jupyter notebook
question-answering - BERT 在 SQuAD 的 QA 答案中出现的特殊字符是什么意思?
我正在运行一个微调的 BERT 和 ALBERT 模型来进行问答。而且,我正在评估这些模型在SQuAD v2.0的一部分问题上的表现。我使用SQuAD 的官方评估脚本进行评估。
我使用 Huggingface transformers
,在下面您可以找到我正在运行的实际代码和示例(可能对一些尝试在 SQuAD v2.0 上运行 ALBERT 微调模型的人也有帮助):
输出如下:
如您所见,答案中有 BERT 的特殊标记,包括[CLS]
和[SEP]
。
我知道在答案只是[CLS]
(有两个tensor(0)
forstart_scores
和end_scores
)的情况下,这基本上意味着模型认为在上下文中没有对问题的答案是有意义的。在这些情况下,我只是在运行评估脚本时将该问题的答案设置为空字符串。
但我想知道在上面的例子中,我是否应该再次假设模型找不到答案并将答案设置为空字符串?或者我应该在评估模型性能时留下这样的答案?
我问这个问题是因为据我了解,如果我有这样的案例作为答案,使用评估脚本计算的性能可能会发生变化(如果我错了,请纠正我)并且我可能无法真正了解这些模型。
python - Tensorflow - Keras 断开连接图
张量流版本:2.x
蟒蛇:3.7.4
断开连接图:我正在尝试复制以下模型架构,但是当我尝试在 Keras 中绘制模型时,右侧部分似乎断开连接。我已经通过隐藏矩阵 HQ(For question) 和 HA(For answer) 作为注意力层的输入(我们可以在下面总结 Coattention 层的输入 - 输入形状是 (512,600) 和 (512, 600) 和 Coattention矩阵 CQ 和 CA) 的输出形状也相同。请帮助我理解这种断开连接。这需要纠正还是可以忽略?
最终模型:
模型生成图:为什么右侧断开?请帮我理解。我没有在双向问答层之后使用连接层,但我只是将两个双向层的输出矩阵作为输入传递给了注意力层,如上所述。
使用 Coattention 层的代码更新的问题如下:
这里 HQ 和 HA 是我们在模型架构中看到的两个独立双向层的隐藏状态矩阵/输出。
问题上下文向量的形状 (CQ):(512, 600)
答案 (CA) 的上下文向量的形状:(512, 600)
nlp - 对问答系统 NLP 的建议
我正在尝试构建一个问答系统,其中我有一组预定义的问题及其答案。对于来自用户的任何给定问题,我必须查找类似问题是否已存在于预定义问题中并发送答案。如果它不存在,它必须回复一个通用响应。关于如何使用 NLP 实现这一点的任何想法都会非常有帮助。
提前致谢!!
tensorflow - KeyError:使用 Huggingface Transformers 使用 BioASQ 数据集时出现“答案”错误
我正在使用 Huggingface Transformers 的 run_squad.py https://github.com/huggingface/transformers/blob/master/examples/run_squad.py对 BioASQ 问答数据集进行微调。
我已将 BioBERT https://github.com/dmis-lab/bioasq-biobert的作者提供的张量流权重转换为 Pytorch ,如此处讨论的https://github.com/huggingface/transformers/issues/312。
此外,我正在使用 BioASQ https://github.com/dmis-lab/bioasq-biobert的预处理数据,该数据已转换为 SQuAD 形式。但是,当我使用以下参数运行 run_squad.py 脚本时
非常感谢您的帮助。
非常感谢您的指导。
评估数据集如下所示:
python - 如何为大文本添加池化层到 BERT QA
我正在尝试实现一个处理大型输入文本的问答系统:所以想法是将大型输入文本拆分为 510 个标记的子序列,之后我将独立生成每个序列的表示并使用池化层生成输入序列的最终表示。
我将 CamemBERT 模型用于法语。
我尝试了以下代码:
由于我是 pyTorch 的初学者,我不确定代码是否应该是这样的。
如果您有任何建议或需要更多信息,请与我联系。
python - 是否可以将变量分配为字典中的值(对于 Python)?
对于字典'dict1'中的变量'a'和'b',以后是否可以使用'dict1'中给出的键调用变量'a'来为其赋值?
python - 模块“numpy”没有属性“arrange”的错误一直在该消息中
我试过了,但错误信息一直是:
“错误模块'numpy'没有属性'arrange'”
什么是问题?
text - RASA 响应选择器:如何回复多行文本?
我想将RASA 响应选择器用于 QnA 系统,其中答案是多行文本,而不仅仅是单行。假设允许答案的常见问题解答系统是文档段落。
以这个 Q/A 示例为例,其中问题是单行的:
相应的答案(来自 twitter FAQ 的真实示例)是一段:
如何使用data/responses.md
响应选择器降价格式管理此复合/多行答案?
据我所知(请告诉我我错了),现在在 RASA 我只能用 1 行来回答。如果这是真的,我发现的唯一解决方案是\n
在文本中显式插入一个换行符。所以上面提到的例子可以这样翻译:
很不可读,不是吗?它“有效”,但我不喜欢它有很多原因:
- 文件上的答案
data/responses.md
变得不可读 - 我需要编写一个脚本,以降价格式转换常见问题解答,用
\n
s 替换每个换行符。 - 使用 RASA cli 命令(例如
rasa shell
)对话测试,我得到了不可读的单行压缩文本:/
两个问题:
我可以在response.md 中有由多行文本组成的FAQ 答案吗(在markdown 文件中写的WTSIWYG “as”,可能没有插入
'\n'
)?如果是长文本(~一页/段落)的答案,管理 RASA 响应选择器答案的建议方法是什么?
更新
我打开了问题/更改请求:https ://github.com/RasaHQ/rasa/issues/5800
谢谢你的帮助
乔治