zoukankan      html  css  js  c++  java
  • TSQA: Tabular Scenario Based Question Answering 翻译

    原文

    介绍

    Scenario-based question answering(SQA)回答的是基于场景的问题,它的输入既有文本信息也有结构化数据,应用场景之一就是在高校的地理考试中,从图表中回答问题,这种情况普通的阅读理解任务做不了,也需要从自然语言中进行推理。因此,一个研究方向就是:能否让SQA自动进行?

    任务和挑战。确切的来说,我们关注于从一系列的文本和表格中推断答案的问答任务,称其为TSQA(Tabular Scenario based Question Answering)。我们构建了一个名为GeoTSQA的数据集。它包含1k条从中国高校地理考试中收集来的真实的地理问题。与已有的基于表格的问答数据集相比,它需要不同的阅读和推理技巧,也表现出了很多挑战。

    如图是我们数据中的一个实例,要想正确解答,必须要意识到2000-2003之间的变化,要从文本中注意到到ELP和工作者的平均教育水平的联系,还要有2000年农村人口流入城市的背景知识。总的来说,TSQA要求适当的操作表格,以及理解融合文本的信息。

    我们的方法。为了解决这个问题,引入阅读理解领域的一些比较成功的模型和方法,用一个表格到文本的生成器来扩展它,称其为TTGen。核心思想是TTGen是一个可以用许多预定义的模板来编码句子,然而,生成的句子可能很多,会给阅读理解模型带来噪声,也无法处理,为了解决这个问题,TTGen整合了一个句子排名模型,该模型融合了场景、问题和领域知识中的信息,从而有效地选择对回答问题最有用的句子。在GeoTSQA上的大量实验中,它优于各种强基线方法。

    关键贡献:

    • 构建并公开了数据集GeoTSQA,这是第一个用于TSQA的数据集
    • 我们扩展了MRC方法来解决TSQA,TTGen表现效果很好。

    任务与数据集

    任务与数据集

    TSQA数据集由(<P, T>)构成,(P)是文章passage,(T)是表格Table,(Q)代表问题,(O)代表备选答案。目标是从选项(O)中选择一个作为(Q)的答案。

    数据集构建

    GeoTQSA,据我们所知,这是一个针对TQSA的数据集。

    • 收集问题。
    • 识别表。
    • 提取表格。
    • 过滤问题。(删掉不通过表格就能回答的问题)

    数据集统计

    方法

    我们提出了一个两阶段的方法来解决TQSA问题。

    1. TTGen生成器为(<P, T>)(Q)生成备选的top-k句子。
    2. 基于K-BERT的阅读理解方法,融合文章(P)中的信息、句子(S)、问题(Q)、域知识(K),最后为选项中的句子排名。

    域知识的阅读理解

    K-BERT在阅读理解领域表现很好,能够充分利用领域知识来增强能力。

    MRC with KBERT

    [I_i^{MRC} = ext{[CLS]}P s_1 dots s_k Q ext{[SEP]} o_i ext{[SEP]} NUMS_i ext{[SEP]} ]

    其中,(P, s_i, Q, o_i, NUMS_i)表示文章、第(i)个候选句子、问题、第(i)个备选句子和前面所有部分的数值型的字符。原来的所有数字位置都用[NUM]来替代。

    我们使用K-BERT来获取(I_i^{MRC})中的每个词的向量表达,捕捉他们的语义特征:

    [<h_{i1}^{MRC}, h_{i2}^{MRC}, dots> = ext{K-BERT}(I_i^{MRC}, K) ]

    其中(K)是知识基础。

    [w_i = mathrm{w}_2^T anh ( extrm{W}_1 extrm{h}_{i1}^{MRC} + extrm{b}_1) + b2,\ Omega = [hat{w}_1;hat{w}_2;dots] = ext{softmax}([w_1;w_2;dots])]

    训练目标是让(Omega)和二分类标签接近,测试阶段选择二分类分数最高的一项。

    K-BERT通过外部知识库k扩展了BERT。它有助于融合P、S、Q、O和k中的信息。简单地说,K中的每个条目都是一对<实体、事实句>或三元组<实体、属性、值>,可以通过将属性和值连接到事实句中来转换成一对。K- bert使用K将输入序列展开为一棵单词树: 从K中检索关于实体的事实句子,并在输入序列中每次提到实体后作为分支插入。在我们的实现中,对于每个实体,我们找到与输入序列中最相似的(epsilon)个事实句子,相似度用预训练bert进行衡量。

    域知识

    域知识选择的是Clinga,一个很大的中国地理知识库。

    (Table-to-Text)TTGen

    下面我们将描述从表格中生成的句子,并将其输入到我们的MRC方法中。

    句子生成

    我们定义了融合表格中的元素的六种计算模板:

    • 最值
    • 特殊值
    • 与平均值相比较
    • 单调性
    • 整体趋势
    • 范围比较

    句子排序

    句子排序分成两部分,一部分是计算句子级别,一部分是计算模板级别,如图所示。

    句子级别:

    [I_{j}^{SR} = ext{[CLS]} PQ ext{[SEP]} s_j ext{[SEP]} NUMS_j ext{[SEP]} ]

    模板级别:

    [I_{j}^{TR} = ext{[CLS]} PQ ext{[SEP]} ]

    这两部分都是用K-BERT来得到表示,一个得到句子级别的表示,一个得到模板级别的表示,规定每个模板中只要有大于等于一个句子被判定为有用,则这个模板就是有用的,目标是模板级别的输出逼近句子级别的有用程度计算的输出,句子级别有用程度的输出逼近最终的有用分数。每个句子的分数表示:

    [s_j = hat{phi}_j cdot hat{psi}_{ au_j} ]

    其中,(hat{phi_j})表示句子级别的K-BERT输出的每个句子的重要程度,(hat{psi}_{ au_j})表示生成句子(s_j)的模板被模板级别的K-BERT表示的是否有用。

    一个人没有梦想,和咸鱼有什么区别!
  • 相关阅读:
    线程池知识点详解
    redis实现用户登录
    php导出csv文件
    thinkphp5 内置接口开发与使用
    checkbox选择框
    简单权限管理开发设计 php
    ThinkPHP接入log4php日志监控系统
    mysql查询优化
    PHP读写文件高并发处理实例-转
    进程、线程、同步、异步
  • 原文地址:https://www.cnblogs.com/TABball/p/15507161.html
Copyright © 2011-2022 走看看