0%

论文概要

论文地址,发表于 2016 年。

语义分析的目的是将自然语言映射到机器可解释的有意义表示。传统的方法依赖于高质量的词汇、人工构建的模板以及特定领域或特定表示的语言特征,本文提出了一种注意力增强的 encoder-decoder 通用模型。将输入的话表示为向量形式,并通过调节输出序列或者树生成逻辑形式(总结来说,就是将话语转为逻辑形式,详情请看图 1)。 下图将一句话转为了逻辑形式,不同于以前的方法,它是通过神经网络生成的,而以前的方法依赖于手写的规则。图片取自 Tang and Mooney200语句转为逻辑形式

基于 RNN 的 encoder-decoder 已成功应用于各种 NLP 任务,图 1 中使用了 LSTM,我们的做法是提出了两个变体模型。第一个模型将语义解析视为普通的序列转换任务,第二个模型配备了层次树解码器,该解码器明确地捕获逻辑形式的组合结构。我们还引入了注意力机制,并提出一个识别步骤来识别很少提到的实体数字。 对四个数据集的实验结果表明,我们的方法在不使用人工设计特征的情况下具有竞争力,并且易于迁移。 我们的工作综合了两种标准研究,即语义分析encoder-decoder 架构的神经网络

阅读全文 »

论文概要

论文地址,发表于 2015 年。 开放域问答系统的目的是在不受域限制的情况下,为用自然语言表达的问题提供准确的答案。问答系统有很长的历史,它们搜索文本文档或在网络上提取答案(see e.g.(Voorhees and Tice, 2000; Dumais et al., 2002))。最近在公开的大型知识库(KBS)方面也取得了进展,如 Freebase 知识库。然而,尽管最近大家都在关注设计一个具有推理能力的系统,它可以检索并使用 KB 中的多重事实进行问答。但是其实只涉及 KB 中单个事实的简单问答都还没被解决,本论文中将其称为 Simple Question Answering。 KBQA 现存的方法:1)将 question 转为结构化的 KB 查询语句(Berant et al. 2013);或者 2)学习将 question 以及 facts 嵌入到低维向量空间中,然后在这些向量中通过计算相似度检索答案(Bordes et al., 2014a)。 本文贡献有二: - 其一,为了研究现有系统以及通过多任务学习在不同数据源上同时训练成为可能,我们收集了第一个基于知识库的大规模的问答数据集,称为 SimpleQuestions。包含了人类编写和 Freebase facts 相关的超过 10 万个问题,另外现有的基准数据集 WebQuestions 包含的问题少于 6 千个,这些问题是使用 google suggest api 自动创建的。 - 其二,提出了一种基于词嵌入的问答系统,在 Memory Networks (MemNNs)(Weston et al., 2015;Sukhbaatar et al., 2015) 框架下开发而成。

虽然我们的模型与之前的 QA 嵌入模型(Bordes et al., 2014a;Bordes et al., 2014b)相似,但使用 MemNNs 的框架为未来工作中更复杂的推理方案提供了思路,因为 MemNNs 在复杂的推理问答任务上表现了很好的性能(Weston et al., 2015)。

阅读全文 »

论文概要

论文地址,发表于 2017 年。

随着知识库数量的增加,人们越来越希望寻找到一些有效的方法来获取这些资源。现在有几种专门为查询 KBs 设计的语言:SPARQL(rudhommeaux and Seaborne, 2008)。但要使用这些语言,用户不仅需要熟悉它们,还要了解 KBs 的体系结构。相比之下,以自然语言为查询语言的 KB-QA 是一种更友好的方案,近年来已成为研究热点。这项任务以前有两个主流的研究方向: 1. 基于语义解析(semantic parsing-base, SP-based) 2. 基于信息检索(information retrieval-based, IR-based)

现在随着神经网络方法的发展,基于神经网络的 KB-QA 已经取得了令人瞩目的成果。其中至关重要的步骤就是计算问题和候选答案之间的相似性分数,这一步骤的关键一点就是学习它们的表示。然而以往的研究更注重答案的学习表示。例如,Bordes et al. 2014a 考虑候选答案子图的重要性,Dong et al. 2015利用上下文和答案的类型。无论如何,问题的表示终究还是表达不全。现有的方法 Bordes et al., 2014a, b 使用 bag-of-word 模型将问题表示为一个向量,但是这样问题与答案的关联性还是被忽视了。我们认为一个问题应该根据回答时不同的侧重面来表示(注:其实就是想用注意力机制,回答的侧重面可以是答案实体本身、答案类型、答案上下文等)。 因此本文提出了一个端到端的神经网络模型,通过 cross-attention 机制,根据不同的候选答案动态地表示问题及对应的分数。此外还利用了 KB 中的全部知识,旨在将 KB 中丰富的知识集成到答案中,以此缓解 out-of-vocabulary(OOV) 的问题,从而帮助 cross-attention 更精确地表示问题。最后实验结果表明了该方法确实有效。 论文论文笔记地址)中的方法很有启发性,但是由于简单地选择三个独立的 CNN ,因此过于机械化。所以我们使用了基于 cross-attention 的神经网络模型。 模型架构如下,步骤与之前的论文的步骤类似。1)先找到问题的主题(main entity/topic entity);2)然后在知识库中找到主题相连的结点作为候选答案,3)最后送入 score layer 进行评分,排序分数选出分数最高的候选答案作为正确答案。 MCCNN总览

为了方便描述,我们将任何一种基本元素称为资源(resource),无论是实体还是关系。比如 (/m/0f8l9c,location.country.capital,/m/05qtj) 的描述是法国的首都是巴黎,其中的 /m/0f8l9c/m/05qtj 分别代表法国和巴黎,location.country.capital 是一种关系。

阅读全文 »

论文概要

论文地址,发表于 2015 年。 大多数现有的系统通常依靠人工制作的特性和规则来进行问题理解以及答案排序。此外,一些方法(Bordes et al., 2014a; Bordeset al., 2014b)使用问题的词嵌入的总和来表示问题,但是这忽略了词序信息,无法处理复杂问题,例如 who killed A 和 who A killed 两个问题的表示是一样的。本文介绍了 multi-column convolutional neural networks (MCCNNs),从三个方面(回答路径(Answer Type),回答上下文(Answer Context),回答类型(Answer Path))理解问题。使用 Freebase 作为知识库,在 WebQuestions 数据集上进行了广泛的实验。最终表明,此方法拥有更好的性能。 神经网络训练步骤: 1. MCCNNs 从输入的问题中使用不同 column networks 去提取回答路径,回答上下文,回答类型。跟 Bordes 的论文一样,该论文知识库(本文就是 FreeBase)中的实体和关系也由向量表示。 2. 然后评分层(score layer)根据问题和候选答案的表示进行排序(点积)。

处理步骤

给定一个自然语言问题 \(q = w_1 \dots w_n\),从 FreeBase 中检索相应的实体和属性,然后将它们作为候选答案 \(C_q\)。比如,问题 when did Avatar release in UK (阿凡达在英国的发行时间)的答案是 2009-12-17。需要注意的是对于该问题也许有一系列的正确答案。以下数据将被使用到:WebQuestionsFreeBaseWikiAnswers。 MCCNN 概览如图 1 所示: MCCNN概览

阅读全文 »

论文概要

论文地址,发表于 2014 年。 将自然语言(natural language,NL)问题转换为对应的逻辑形式(logical form,LF)是基于知识库问答(KB-QA)任务的核心任务,转换问题也被称作语义分析。在 KB-QA 任务领域,与以往(Mooney, 2007; Liang et al., 2011;Cai and Yates, 2013; Fader et al., 2013; Berant etal., 2013; Bao et al., 2014)基于词汇化短语(lexicalized phrases)和逻辑谓语(logical predicates)之间的映射作为词汇触发器(lexical trigger)来执行语义分析中的转换任务不同(其中 Fader 2013 提出的论文在论文笔记1论文笔记2中具有提及,ctrl f 之后搜索 Paraphrase-Driven Learning for Open Question Answering 或者 Fader 即可找到对应位置),本论文进一步提出了一种将 NL 问题映射到 LFs 中的新的嵌入式方法,其利用词汇表达KB 中的属性在隐含空间中的语义关联来实现。实验表明,在两个公开的 QA 数据集上,该方法优于其他三种 KB-QA 的基线方法。 先前工作必须处理以下两种限制: 1. 由于逻辑谓语的含义通常具有不同的自然语言表达(natural language expression,NLE)形式,因此从谓语提取的词汇触发器可能有时会受到大小限制; 2. 由于命名体识别(named entity recognition,NER)组件检测到的实体将用于与逻辑谓语一起组成逻辑形式,因此它们的类型也应该与谓语一致。然而,现有的 KB-QA 系统使用的 NER 组件大都独立于 NLE 到谓语的映射步骤。

阅读全文 »

论文概要

论文地址,发表于 2014 年。 本文的作者在同年发表了另一篇论文,将上一篇论文称为 A,此论文称为 B,对于 A 论文我也做了论文笔记,本论文是上一篇论文的改进版。A 只是对简单问题进行研究,B 研究如何改进模型并回答更复杂的问题。 开放域问答中的一流技术大致可以分为两大类:1)基于信息检索;2)基于语义解析。信息检索系统首先通过 KBs 的搜索 API(转换方式估计是手写模版,论文中未细说) 将问题转换为有效的查询语句(比如 neo4j 数据库的 CQL)以此检索到大量的候选答案,然后再仔细地识别准确的答案(Kolomiyets O 等 2011Unger C 等 2012Yao X 等 2014)。语义解析旨在通过语义分析系统正确解释问题的含义,解释步骤的做法是把问题转换为数据库查询语句(这里的查询语句应该是逻辑形式,比如组合范畴法),以此查询到正确的答案。尽管这两种方法有能力去处理大规模知识库,但是需要专家手动的创建词汇、语法以及 KB 协议才能有所成效。且没有通用性无法方便地扩展到具有其他模式、更广泛词汇或英语以外语言的新数据库。 相反,Paraphrase-Driven Learning for Open Question Answering 提出了一个几乎不需要人工注释的开放域 QA 框架,虽然这是一种有趣的方法,但是它被其他方法超越了。即第二段提到的论文 A。 相比于论文 A,作者作出了以下几点改进:1)对于候选答案,考虑更多更长的路径(之前只考虑了 main entity 周围的结点);2)对候选答案进行更有意义的表示:答案的表示包含问答路径以及周围的子图。

任务定义

假设所有潜在的答案都是 KB 中的实体,当 KB 中不存在该实体时,可以使用一些方法解决(论文中具体没说,只是说了一种极简单的方式:When this entity is not given, plain string matching is used to perform entity resolution)。

阅读全文 »

论文概要

论文地址,论文发表于 2014 年。 建立一个能够回答任何问题的计算机是人工智能的一个长期目标。这一领域一个重要的发展时大规模知识库的建立,如 FreebaseDBPedia,它们存储了大量的通用信息。它们由三元组的形式构成一个数据库,通过各种关系和格式连接成实体对。那么回答问题被定义为给定一个用自然语言表达的查询语句(一个查询语句的例子:中国的首都在哪?)从知识库中检索正确的实体或实体集的任务。 最近,通过将问题映射为逻辑形式或者类似数据库查询的方法取得了富有希望的进展。虽然这种方法可能有效,但是缺点是要采用大量的人为标记的数据或者需要工作人员定义词汇表和语法。 本文采用一种激进的学习方式,将问题映射为向量(无法人为解释)的特征表示。并且将重点放在回答一些基于比较宽泛的主题的简单事实性问题。这项任务的难点来自词汇的多样性,而不是句法的复杂性。 该方法采用随机梯度下降,然后使用 fine-tuning 进行训练。经验表明该模型能够捕获一些有意义的信号,且这是唯一一种能够在弱标记数据上训练的方法。

论文内容介绍

  1. Section 2:讨论了之前的工作;
  2. Section 3:介绍了开放域问答的问题;
  3. Section 4:给出了模型;
  4. Section 5:实验结果。
    阅读全文 »

写在前面

此论文为 2015 年的论文。 本文会出现一个名为谓语序列(predicate sequence)的名词,论文中没有详细说明。但是估计就是:一个实体至另一个实体的有向路径上的所有谓语的连接形式。如下文第一张图 Family Guy->cvt1->Mila Kunis 的谓语序列就是 cast-actor。

论文概要

论文地址 节选自摘要部分: > 论文提出了一个基于知识库问答的新的语义解析(semantic parsing)框架。首先定义一个类似于知识库的子图(subgraph)的查询图(query graph),可以直接映射到一个语义的逻辑形式(如\(\lambda\)-calculus)。所以语义分析简化为查询图的生成,并将其表示为一个阶段性搜索问题。然后通过使用先进的实体链接系统(Yang and Chang, 2015)以及深度卷积网络来实现问题与谓语序列之间的匹配。在 WEBQUESTIONS 的数据集上,F1 指标达到了 52.5% 的水平,高于以前的方法。

以下大型知识库已经成为支持开放领域问答的重要资源: - DBPedia - Freebase

最先进的 KB-QA 方法都是基于语义解析的,在语义解析中一个问题或者一种表达被映射到它具有一定意义的表示上(如逻辑形式,具体来说可以是 \(\lambda\)-calculus),即将自然语言映射为表达式,然后被翻译为一个 KB 查询。最后,只需要执行查询就可以检索问题的答案。但是大多数传统的语义解析方法在很大程度上都脱离知识库。由于没有前人的贡献累积,因此 QA 问题面临着一系列的挑战。例如: - 当在逻辑形式中使用与知识库中的谓语不同的谓语时,可能需要用到本体匹配(ontology matching)的问题(Kwiatkowski et al., 2013)。 - 即使表示语言与知识库的模式接近,从知识库中的大量词汇表中寻找正确的谓语与语句的描述相关联仍然是一个难题(Berant and Liang, 2014)。

阅读全文 »

概念

K-NN 算法采用测量不同特征值之间的距离的方法进行分类。 工作原理: 存在一个样本数据集,也称作训练样本集,并且样本集中每个数据都存在标签。输入没有标签的新数据后,将新数据的每个特征与样本集中的数据对应特征进行比较,然后算法提取样本集中特征最相似的数据(最邻近)的分类标签。一般来说,只选择样本数据集中前 k 个最相似的数据,这就是 k-NN 算法中 k 的出处,通常 k 是不大于 20 的整数。 最后选择在 k 个最相似的数据中出现次数最多的分类,作为新数据的分类。

简单来说,K-NN 算法使用了一种计算特征之间的距离的公式,然后选择距离前 k 近的数据,获取这些数据的标签。通过一个简单的统计,获取这 k 项数据中最多的类别。最后我们将新数据看作是这个类别。

阅读全文 »

问答系统

知识图谱问答系统概述

现在的搜索引擎工作流程是输入要搜索的内容,搜索引擎返回一大堆内容,供你自己选择。 问答系统是下一代的搜索引擎的基本形态。 > 以直接而准确的方式回答用户自然语言提问的自动问答系统将构成下一代搜索引擎的基本形态。

下图展示问答系统在近几十年的发展历史。 1. 1960 年的问答系统属于专家系统(模版系统) 2. 1990 - 2000 年的问答系统属于基于信息检索的 QA 系统 3. 2000 - 2010 年的问答系统属于社区 QA 系统 4. 2011 年之后的问答系统属于基于知识图谱的 QA 系统

问答系统的历史

阅读全文 »