Auto Byte

专注未来出行及智能汽车科技

微信扫一扫获取更多资讯

Science AI

关注人工智能与其他前沿技术、基础学科的交叉研究与融合发展

微信扫一扫获取更多资讯

范雄雄作者

一文详解维基百科的开放性问答系统

文本由达观数据算法工程师范雄雄根据斯坦福计算机博士Danqi Chenhe和Facebook AI研究院Adam Fisch, Jason Weston 以及 Antoine Bordes撰写的文章编译而成,详细讲解了维基百科的开放性问答系统的原理,原文详见:《ReadingWikipedia to Answer Open-Domain Questions》

摘要

本文提出以Wikipedia作为唯一的知识源来解决开放领域的问答:任何事实型问题的答案都是在Wikipedia文章中的一段文本。这项海量机器阅读的任务,需要同时面对2个挑战,一是文本检索(找到相关的文章),二是对文本的理解(从文章中识别答案的范围)。我们的方法结合使用了基于bigram hashing以及tf-idf匹配检索模块以及用于在Wikipedia段落中挖掘答案的多层RNN模型。我们在多个已有的QA 数据集的实验表明:

1)相比以往的方法,这两个模块都是非常有竞争力的;

2)在这项具有挑战性任务中,使用distant supervision对他们的联系进行多任务学习是非常有效完整的办法。

1.简介

本文考虑的问题是如何使用Wikipedia作为唯一知识源回答开放领域的事实型问题,就像人们在百科全书中寻找答案一样。Wikipedia是一个持续不断发展并且包括各种详细信息的知识源,如果可以善加利用,可以很好的促进机器的智能。跟知识库(便于计算机处理,但是对开放领域的问答系统来说,太过稀疏,比如Freebase和DB-Pedia)不同的是,Wikipedia包括人们关心的最新的知识,并且是为人类的阅读(而不是为机器)设计的。

采用Wikipedia的文章作为知识源来做问答(QA),需要同时解决2个挑战:一个是大规模开放领域的问答,一个是机器对文本的理解。

为了能够回答任何问题,系统首先要从500万篇文章中找到少量相关的文章,然后仔细的扫描这几篇文章来找到答案。我们把这个定义为machine reading at scale(MRS)。我们的工作把Wikipedia视为文章的集合,而不考虑他们内在的图结构。这样,我们的方法可以更加通用化,可以用于一系列书、文档甚至是每天更新的报纸新闻。

像IBM的DeepQA这样大规模的问答系统,它的回答依赖于各种不同的知识源:除了Wikipedia,还用到KBs,字典甚至新的文章以及书等等。因此,系统回答的正确性严重依赖于在多个知识源中的信息冗余。只有一个知识源的条件下,迫使我们模型在扫描文章的时候,需要非常的精确仔细,因为有些答案的线索可能只出现一次。这样的挑战,也因此推动了机器阅读能力(机器理解的子领域)的研究以及诸如SQuAD、CNN/Daily Mail、CBT这样的数据集的建立。

然而,这些数据集都是假设已经有一小段的相关文本已经提供给模型了,这在构建开放领域的问题系统中是不现实的。与此形成鲜明对比的是,基于知识库或者在文档中采用信息检索的方法,必须将搜索的结果作为解法的一部分。而MRS是在海量开放知识源中检索的现实条件(并没有作非常理想化的假设)下来做机器理解(需要对文本的深度理解)。

在本文中,我们会展示如何使用多个现有的QA数据集来评估MRS(通过开放领域的系统在全部已有的QA数据集上回答问题)。我们开发了DrQA系统,它基于Wikipedia的强大的QA系统,其组成包括:

(1)Document Retriever,采用bigram hashing以及tf-idf匹配实现,该模块主要用于给定一个question之后,快速找到相关的文章的一个小集合;

(2)Document Reader,基于多层RNN的机器理解模型,用于挖掘Document Retriever的文章小集合中的答案范围。图1给出了DrQA系统的图示。

我们的实验表明,Document Retriever比Wikipedia内置的搜索引擎效果好,Document Reader可以达到目前最好的SQuAD水准。最后,我们整个系统是用多个benchmark来评估的。特别是,相比于单任务的训练,采用多任务以及distant supervision方法,其表现在所有数据集上都有所提高。 

图一

2.相关工作

根据每年举行的TREC比赛的设定,开放领域的QA最开始是被定义为在非结构化文档中寻找答案。随着KB的发展(比如WebQuestions,SimpleQuestions,又比如自动抽取的KBs,OpenIE triples 和 NELL),最近基于KB的QA有了许多新的改进。然而,KB固有的局限(不够完整以及固定的数据格式)促使研究人员回归到最初的设定,即从原始数据中去寻找答案。

重新审视这个问题的第二个动机,是因为随着最近新的深度学习框架的出现(比如attention-based and memory-augmented neural networks以及新的训练评测数据集的开放,这些数据集包括QuizBowl,包含新闻文章的CNN/Daily Mail,包含儿童书的CBT以及基于Wikipedia的WikiReading和SQuAD),机器的文本阅读理解(比如通过阅读一小段文本或者故事来回答问题)有了长足的进步。本文的目的是想测试下这些新方法在开放领域的QA中表现如何。

采用Wikipedia作为知识源的QA之前已经有过尝试。Ryu et al. (2014) 实验过只采用Wikipedia的模型,他们将文章内容和其他多个基于不同类型的半结构化知识(比如信息框,文章结构,类别结构,定义等)实现的答案匹配模块结合在一起使用。类似的,Ahn et al. (2004) 将Wikipedia和其他的文档一起检索来使用。Buscaldi and Rosso (2006)也尝试在Wikipedia中挖掘知识。他们没有将其作为寻找问题答案的知识源,而是用它来验证QA返回的结果的正确性。并使用Wikipedia分类来确定一组符合预期答案的模式。在我们的工作中,我们只考虑文本的理解,并且只用了Wikipedia作为唯一的知识源,以便将重点放在大规模的阅读理解上。

许多发展多年的完整的QA处理方法流不是用Web数据(QuASE),就是用Wikipedia的数据(Microsoft的AskMSR,IBM的 DeepQA,YodaQA),后者是开源,因此可以复现用于比较效果。AskMSR是一个基于搜索引擎的QA系统,它依赖于“数据冗余而不是对问题或候选答案进行复杂的语言学分析”,也就是说,它不像我们一样专注于机器理解。DeepQA是一个非常复杂的系统,它依赖于包括文本文档在内的非结构化信息以及诸如KB,数据库和本体的结构化数据来生成候选答案或对证据进行投票。YodaQA是以DeepQA为蓝本的开源系统,同样结合使用网站、信息提取、数据库和Wikipedia。相比于这些方法,我们的阅读理解由于使用的是单个知识源,因此更具挑战性。

机器学习以及NLP中,多任务学习以及任务迁移有着丰富的历史。有些工作试图通过多任务学习将多个QA训练集合并到一起,这样,

(1)通过task transfer实现跨数据集的提升;

(2)提供一个通用的系统,可以回答不同类型的问题,因为答案不可避免的分布在不同的数据集上。

Fader et al. (2014)用WebQuestions、TREC和WikiAnswers作为评测,以四个知识库作为知识来源,通过多任务学习在后两个数据集上获得了提升。Bordes et al. (2015)以Freebase作为知识源采用 distant supervision合并了WebQuestions和SimpleQuestions,结果显示在两个数据集上都是略微提升,但是只采用一个训练,另一个作为测试的话,结果却很差,这说明task transfer确实是非常有挑战性的任务。(Kadlec et al., 2016)也得到类似的结论。我们的工作也是类似的想法,不过做了特别的限制,必须先检索,再理解,而不是用KB直接取一个好的结果。

3.Facebook的DrQA系统

下面我们将介绍Facebook的系统DrQA,主要由两部分组成:

(1)Document Retriever模块,用于找到相关的文章

(2)Document Reader模块,机器理解模型,用于从单个或小集合的,文档中抽取答案

1

Document Retriever

参考传统的QA系统,我们采用非机器学习文本检索系统来缩小我们的检索范围,然后把注意力集中在这些可能相关的文章阅读理解来寻找答案。相比于内置的基于ElasticSearch的Wikipedia Search API,简单的倒排查询结合term vector model打分的效果在很多类型的问题上的效果要更好。文章和问题通过tf-idf作为权重的bag-of-word向量来衡量相关性。后来我们通过加入n-gram特征,把小范围的词序考虑进来,进一步改进系统。我们最好的系统是用bigram计数以及(Weinberger et al., 2009)提出的哈希方法(用murmur3 hash将bigram映射到224个bin中),同时保留了速度和内存的效率。

我们采用Document Retriever作为整个系统的第一部分,对任何问题,设定返回5篇Wikipedia的文章。这些文章在后续的Document Reader进行处理。

2

Document Reader

我们的Document Reader是受最近神经网络模型在机器阅读理解方面的优异表现而启发,其思想跟(Hermann et al., 2015;Chen et al., 2016)提出的AttentiveReader是非常相似的。

给定一个含有l个token的问题 q  和包含n个段落的文档集合,其中单个段落 包含m个token,我们开发了一个RNN模型,然后依次应用到每个段落上,最后聚合所有的预测结果。我们的方法是这样工作的:

段落编码

首先我们把段落中的所有token p表示成特征向量序列 ,然后作为RNN的输入,得到如下表示:

其中,pi希望是可以将token pi的上下文信息编码进去。我们采用多层双向LSTM,然后在每层的隐藏单元最后串联pi

特征向量包含以下几部分:

word embedding:

我们用840B网上爬来数据训练得到300维的Glove word embedding。大部分的训练完的word embedding保持不变,仅仅对最常用的1000个问题中包含的词进行优化,因为像what,how,which,many等这些词对QA系统来说非常重要。

完全匹配: 

我们用3个简单的二值特征,表示段落中的pi是否可以完全匹配question中的某个词q,不管是原始,小写或者lemma形式,这些简单的特征在实验中效果非常显著,在第五部分将会看到。

Token特征:

我们也增加了一些人工的特征,这些特征能够反映token的一些上下文信息,包括词性,命名实体名以及词频。

Aligned question embedding:

参考(Lee et al., 2016)以及其他最近的工作,最后一部分加入的是aligned question embedding: 建模了和每个问题中的词的相似度。特别的,的计算方式是word embedding的非线性映射的点乘:

是一个ReLU非线性的单稠密层。跟完全匹配的特征相比,这些特征给意思相似但不同的词加入了平滑的对齐。

问题编码

问题的encoding简单很多,我们只需要在所有词向量上应用RNN,然后把隐层单元合并到一个向量中去:,q的具体计算为,其中编码了每个词的重要性信息,我们用如下方式计算q:

其中,w是需要学习的权重向量。

预测
在段落层面,我们的目标是预测哪些范围里面的词很有可能是答案。以段落向量以及问题q作为输入,简单的训练2个独立的分类器来预测范围的两端。具体做法是,我们用双线性项来捕捉q的相似度并且计算每个词作为开始和结束的可能性:

在预测期间,我们选择最佳的范围限制在词之间(满足 ,并且使得最大)。为了使打分可以兼容多个检索文档的段落,我们采用非归一化的指数,然后在所有候选段落里拿使分数最大的token范围。

4 数据

我们的工作依赖于三种类型的数据:

(1)Wikipedia作为寻找答案的知识源;

(2)SQuAD数据集,作为训练Document Reader的主要数据源;

(3)除了SQuAD之外,还用了CuratedTREC, WebQuestions和WikiMovies三个数据集来测试我们整个问答系统的能力,以及评估我们模型对于多任务学习以及distant supervision的学习能力。数据集的统计数据见后面的表2。

1

Wikipedia

我们用的是2016-12-21版的Wikipedia全量英文数据作为回答问题的知识源。对每一页,我们仅抽取纯文本,列表以及图片信息会被过滤掉。在丢弃了了内部消歧、列表、索引和概要页面之后,我们保留了5,075,182篇文章,包含9,008,962个独特的未定义的token类型。

2

 SQuAD

SQuAD(The Stanford Question Answering Dataset)是一个基于Wikipedia的用于机器阅读理解的数据集。该数据集包含87000个训练样例以及10000个开发样例。每个样例包括从一篇Wikipedia文章中抽取的段落以及相关的人为编写的问题。答案永远是在段落中的某一部分,如果模型预测的答案匹配上了,就会给予肯定。目前用了2个评估指标:EM(字符完全匹配)和F1 score,衡量了token级别的加权平均后的准确和召回率。

接下来,在给定的相关段落中,(相关段落的定义可以参考Rajpurkar et al.,2016),我们用SQuAD来训练以及评估我们的Document Reader。对于基于Wikipedia的开放领域的问题,我们只用SQuAD数据集的开发集合中的QA对,我们要求系统在没有相关段落的情况下找到正确答案的范围,也就是模型的查找范围是整个Wikipedia,而不是标准SQuAD数据集中的相关段落。

3

 开放领域QA的评测资源

SQuAD是目前最大的通用QA数据集。SQuAD的问题收集过程是通过给人展现一个段落,然后人工编写的。这样这些问题的分布是非常特殊的。因此,我们计划在其他数据集上来训练和评估我们开放域的QA系统,这些数据集可以是不同的方式构建的(不一定是从维基百科寻找回答)。

CuratedTREC 

这个数据集是TREC QA任务中,Baudiˇs and ˇ Sediv`y (2015)定下的benchmark收集的。我们用的大的版本,包含从TREC1999, 2000, 2001 and 2002中抽取的2180个问题。

WebQuestions

在(Berant et al.,2013)有介绍。这个数据集是用于Freebase作为知识源来回答问题。它是用Google suggest API来爬取问题,然后用Amazon Mechanical Turk来回答问题。我们使用实体名称将每个答案转换为文本,以便数据集不需要引用Freebase ID,纯粹由纯文本问题答案对组成。

WikiMovies

在(Miller et al., 2016)有介绍。包含96,000个电影相关的问题答案对。最开始是从OMDb和MovieLens数据集中创建的,这些样例的构建是为了验证只采用Wikipedia中标题和第一部分包含电影的文章作为知识源的时候,也可以回答问题。

4

Distantly Supervised Data

上面提供的所有QA数据集都包含训练数据,但CuratedTREC,WebQuestions和WikiMovies只包含问答对,而不是像SQuAD中有关联文档或段落,因此不能用于直接训练Document Reader。借鉴(Mintz et al., 2009)之前的用distant supervision (DS)来抽取关系的工作,我们写了个方法,将段落自动关联到这些训练样例,然后将这些示例添加到我们的训练集中。 

表1

方法如下:

首先,我们运行Document Retriever检索得到跟question相关的top 5篇Wikipedia文章。文章的段落中没有完全包含答案的丢弃,字符少于25或者多于1500个字符的段落丢弃。问题中包含命名实体的,如果在段落中不包含该实体的,丢弃。对剩下的所有段落,我们对匹配到答案的所有位置,用一个大小为20个token的窗口来跟question做unigram和bigram计算重叠度来进行打分,保留分数最高的5个段落。如果都是非0重叠的段落,那么这个样例丢弃;否则就加到DS训练集中。表1给了一些例子,Table2给出了统计数据。

SQuAD生成额外的DS数据,寻找答案的范围,我们不仅可以是在已提供的段落中,也可以在该段落同一页或者不同页。我们观察到大约一半的DS样例都来自SQuAD中使用的文章以外的页面。 

表 2

5 实验

这部分,我们首先给出Document Retriever以及Document Reader单独的评测结果,然后再给出结合使用后,DrQA的评测结果。

表3

1

 找到相关的文章

我们首先测试了Document Retriever 模块在所有QA数据集上的表现。如表 3所示,我们对比了3.1章节中描述的另外两种办法(用Wikipedia Search Engine检索包含答案的文章)。具体而言,我们计算了系统返回top5个页面中至少有一个包含正确答案的比例,结果显示我们这个简单的方法在所有数据集上都要比Wikipedia Search的效果好,尤其是采用了bigram hashing之后。我们同样对比了Okapi BM 25以及采用bag-of-word词向量计算余弦距离的方法,两者的效果都比我们的方法差。

表 4

2

Reader在SQuAD上的评测

接下来,我们在标准SQuAD数据集上,对Document Reader模块进行评估。

评估细节:我们用3层128个隐层单元的双向LSTM对段落和问题encoding,用Stanford CoreNLP toolkit工具包进行分词,生成词根、词性、命名实体识别

最后,所有的训练样例根据段落长度排序,然后根据每组32个来分组。我们采用(Kingma and Ba,2014)提到Adamax来进行优化。将p = 0.3的应用于word embedding和LSTM的所有隐藏单元。

结果和分析:表 4展示了我们在开发集和测试集上的评测结果。SQuAD自创建以来一直是一个非常有竞争力的benchmark,表中我们仅罗列了系统的最佳表现的数据。我们的系统在测试集上可以达到70.0%完全匹配以及79.0% F1 scores。截止本文写作的时候,我们的系统超过所有公布的结果,并且可以跟SQUAD排行榜上的最佳算法匹敌。并且,我们觉得我们的模型比绝大多数的系统要简单。我们对段落token的特征向量进行断融分析。如表5所示,所有的特征对我们系统最终的效果都有帮助。去掉对齐的question embedding feature,我们系统依然能打到超过77%的F1 score。但是,如果同时去掉 ,系统的效果就会差很多。

所以我们得出这样的结论:这两个特征在问题的本质释义以及答案的上下文的特征表达上起到类似但相互补充的作用。 

表 5

3

全量FullWikipedia问答

最后,我们对整个系统DrQA(面向开放领域的QA系统)在第4章节中介绍的4个数据集上进行了评测。我们分别试了3个版本的DrQA来评估采用distant supervision以及跨训练集的多任务学习带来的影响:


多任务学习的影响】

1.SQuAD:Document Reader模型只用SQuAD作为训练集,其他的数据集用来评估测试

2.Fine-tune (DS):Document Reader模型先在SQuAD上训练,然后分别用其他数据集的distant supervision (DS)训练集来进行优化

3.Multitask (DS):同时用SQuAD以及其他DS的训练集了训练Document Reader模型

对于整个Wikipedia,我们用了streamlined模型(没有用CoreNLP解析的或者)。我们发现,虽然这些特征在SQuAD上提供了精确段落情况下的阅读有帮助,但是在整体系统中却没有实际的提升。此外,WebQuestions和WikiMovies提供了候选答案的列表(例如,用于WebQuestions的160万个Freebase实体字符串),并且我们在预测期间限制答案范围必须在此列表中。

结果: 表 6显示了评测结果。与机器理解(给定了正确的段落)和没有约束限制的QA(可以使用冗余资源)相比,我们的任务要困难许多,尽管如此,DrQA仍然在所有的四个数据集中给出了合理的表现。

表6

我们感兴趣的是,有一个系统,单纯使用Wikipedia作为知识源就可 以回答任何问题。仅使用SQuAD进行训练的单一模型在四个数据集上的表现均优于使用distant supervision的多任务模型。然而,单独在SQuAD上进行训练时的表现并不差,表明任务转移其实是有一定作用的。然而,从SQuAD到Multitask(DS)的大部分改进可能并非来自任务迁移,因为使用DS对每个数据集单独进行优化也有改进,表明这是在同一领域中引入额外数据是有帮助的。尽管如此,我们目前能找到的最佳模型就是多任务的DS系统。

我们跟之前已经在CuratedTREC以及WebQuestions上发表过结果的无约束多知识源(不局限于Wikipedia)的QA系统YodaQA进行比较。虽然我们的任务要困难许多,但是令人欣慰的是我们系统的表现并没有比CuratedTREC(31.3 vs 25.4)差太多。在WebQuestions上差距表现的明显一些,可能是因为YodaQA直接使用了WebQuestions基于的Freebase的结构信息。

DrQA在SQuAD上的表现与其在表4中Document Reader在机器理解上的表现相比,出现大幅下降(从69.5到27.1),因为我们现在给的查找范围是整个维基百科,而不是单个段落。如果给定正确的段落,我们的表现可以达到49.4,表明非常热门的句子会带来很多错误的候选段落。尽管Document Retriever表现得不错(77.8%检索到正确答案,参见表3)。 值得注意的是,大部分下降来自SQUAD问题本身。 它们是以特定的段落作为背景而写的,因此当去掉上下文后,它们的表述可能带有歧义。 除了SQuAD以外,专门为MRS设计的其他资源可能还需要进一步研究。

6 结论

我们研究了大规模数据的阅读理解问题——仅使用Wikipedia作为唯一知识源来回答开放领域的问题。 我们的研究结果表明,MRS是研究人员关注的一项非常具有挑战性的任务。 机器理解系统本身并不能解决整个问题。 为了提供了一个有效的完整系统,我们的方法集成了搜索、distant supervision和多任务学习多项技术。 并且通过在多个benchmark上评估个别组件以及的完整系统显示了我们方法的有效性。

未来的工作将主要集中在两块来提高我们的DrQA系统:

1)Document Reader目前的训练是基于单独的段落,未来在训练中,会直接多个相关段落或者文档。

2)训练端到端的Document Retriever和Document Reader管道流,而不是分开训练。

关于作者

范雄雄达观数据推荐算法工程师。复旦大学计算机技术专业硕士,曾在爱奇艺BI部门开发多款大数据产品;对推荐系统数据挖掘、用户画像、大数据处理有较深入的理解和实践经验。

达观数据
达观数据

达观数据是一家专注于文本智能处理技术的国家高新技术企业,获得2018年度中国人工智能领域最高奖项 “吴文俊人工智能科技奖”,也是本年度上海市唯一获奖企业。达观数据利用先进的自然语言理解、自然语言生成、知识图谱等技术,为大型企业和政府客户提供文本自动抽取、审核、纠错、搜索、推荐、写作等智能软件系统,让计算机代替人工完成业务流程自动化,大幅度提高企业效率。

入门问答系统文本理解文本检索机器学习多任务学习命名实体识别
2
相关数据
达观数据机构

达观数据是一家专注于文本智能处理技术的国家高新技术企业,先后获得中国人工智能领域最高奖 “吴文俊人工智能奖”、ACM CIKM算法竞赛全球冠军、EMI Hackathon数据竞赛全球冠军等荣誉。利用先进的自然语言处理(NLP)、光学字符识别(OCR)、知识图谱等技术,为大型企业和政府机构提供机器人流程自动化(RPA)、文档智能审阅、智能推荐等智能产品,让计算机协助人工完成业务流程自动化,大幅度提高企业效率。

https://www.datagrand.com/
深度学习技术

深度学习(deep learning)是机器学习的分支,是一种试图使用包含复杂结构或由多重非线性变换构成的多个处理层对数据进行高层抽象的算法。 深度学习是机器学习中一种基于对数据进行表征学习的算法,至今已有数种深度学习框架,如卷积神经网络和深度置信网络和递归神经网络等已被应用在计算机视觉、语音识别、自然语言处理、音频识别与生物信息学等领域并获取了极好的效果。

信息检索技术

信息检索(IR)是基于用于查询检索信息的任务。流行的信息检索模型包括布尔模型、向量空间模型、概率模型和语言模型。信息检索最典型和最常见的应用是搜索引擎。

权重技术

线性模型中特征的系数,或深度网络中的边。训练线性模型的目标是确定每个特征的理想权重。如果权重为 0,则相应的特征对模型来说没有任何贡献。

机器学习技术

机器学习是人工智能的一个分支,是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、计算复杂性理论等多门学科。机器学习理论主要是设计和分析一些让计算机可以自动“学习”的算法。因为学习算法中涉及了大量的统计学理论,机器学习与推断统计学联系尤为密切,也被称为统计学习理论。算法设计方面,机器学习理论关注可以实现的,行之有效的学习算法。

文本检索技术

文本检索(Text Retrieval)与图象检索、声音检索、图片检索等都是信息检索的一部分,是指根据文本内容,如关键字、语意等对文本集合进行检索、分类、过滤等。

知识库技术

知识库是用于知识管理的一种特殊的数据库,以便于有关领域知识的采集、整理以及提取。知识库中的知识源于领域专家,它是求解问题所需领域知识的集合,包括基本事实、规则和其它有关信息。

推荐系统技术

推荐系统(RS)主要是指应用协同智能(collaborative intelligence)做推荐的技术。推荐系统的两大主流类型是基于内容的推荐系统和协同过滤(Collaborative Filtering)。另外还有基于知识的推荐系统(包括基于本体和基于案例的推荐系统)是一类特殊的推荐系统,这类系统更加注重知识表征和推理。

数据库技术

数据库,简而言之可视为电子化的文件柜——存储电子文件的处所,用户可以对文件中的数据运行新增、截取、更新、删除等操作。 所谓“数据库”系以一定方式储存在一起、能予多个用户共享、具有尽可能小的冗余度、与应用程序彼此独立的数据集合。

神经网络技术

(人工)神经网络是一种起源于 20 世纪 50 年代的监督式机器学习模型,那时候研究者构想了「感知器(perceptron)」的想法。这一领域的研究者通常被称为「联结主义者(Connectionist)」,因为这种模型模拟了人脑的功能。神经网络模型通常是通过反向传播算法应用梯度下降训练的。目前神经网络有两大主要类型,它们都是前馈神经网络:卷积神经网络(CNN)和循环神经网络(RNN),其中 RNN 又包含长短期记忆(LSTM)、门控循环单元(GRU)等等。深度学习是一种主要应用于神经网络帮助其取得更好结果的技术。尽管神经网络主要用于监督学习,但也有一些为无监督学习设计的变体,比如自动编码器和生成对抗网络(GAN)。

数据挖掘技术

数据挖掘(英语:data mining)是一个跨学科的计算机科学分支 它是用人工智能、机器学习、统计学和数据库的交叉方法在相對較大型的数据集中发现模式的计算过程。 数据挖掘过程的总体目标是从一个数据集中提取信息,并将其转换成可理解的结构,以进一步使用。

映射技术

映射指的是具有某种特殊结构的函数,或泛指类函数思想的范畴论中的态射。 逻辑和图论中也有一些不太常规的用法。其数学定义为:两个非空集合A与B间存在着对应关系f,而且对于A中的每一个元素x,B中总有有唯一的一个元素y与它对应,就这种对应为从A到B的映射,记作f:A→B。其中,y称为元素x在映射f下的象,记作:y=f(x)。x称为y关于映射f的原象*。*集合A中所有元素的象的集合称为映射f的值域,记作f(A)。同样的,在机器学习中,映射就是输入与输出之间的对应关系。

命名实体识别技术

命名实体识别(NER)是信息提取(Information Extraction)的一个子任务,主要涉及如何从文本中提取命名实体并将其分类至事先划定好的类别,如在招聘信息中提取具体招聘公司、岗位和工作地点的信息,并将其分别归纳至公司、岗位和地点的类别下。命名实体识别往往先将整句拆解为词语并对每个词语进行此行标注,根据习得的规则对词语进行判别。这项任务的关键在于对未知实体的识别。基于此,命名实体识别的主要思想在于根据现有实例的特征总结识别和分类规则。这些方法可以被分为有监督(supervised)、半监督(semi-supervised)和无监督(unsupervised)三类。有监督学习包括隐形马科夫模型(HMM)、决策树、最大熵模型(ME)、支持向量机(SVM)和条件随机场(CRF)。这些方法主要是读取注释语料库,记忆实例并进行学习,根据这些例子的特征生成针对某一种实例的识别规则。

大数据技术技术

大数据,又称为巨量资料,指的是传统数据处理应用软件不足以处理它们的大或复杂的数据集的术语。

查询技术

一般来说,查询是询问的一种形式。它在不同的学科里涵义有所不同。在信息检索领域,查询指的是数据库和信息系统对信息检索的精确要求

多任务学习技术

问答系统技术

问答系统是未来自然语言处理的明日之星。问答系统外部的行为上来看,其与目前主流资讯检索技术有两点不同:首先是查询方式为完整而口语化的问句,再来则是其回传的为高精准度网页结果或明确的答案字串。以Ask Jeeves为例,使用者不需要思考该使用什么样的问法才能够得到理想的答案,只需要用口语化的方式直接提问如“请问谁是美国总统?”即可。而系统在了解使用者问句后,会非常清楚地回答“奥巴马是美国总统”。面对这种系统,使用者不需要费心去一一检视搜索引擎回传的网页,对于资讯检索的效率与资讯的普及都有很大帮助。从系统内部来看,问答系统使用了大量有别于传统资讯检索系统自然语言处理技术,如自然语言剖析(Natural Language Parsing)、问题分类(Question Classification)、专名辨识(Named Entity Recognition)等等。少数系统甚至会使用复杂的逻辑推理机制,来区隔出需要推理机制才能够区隔出来的答案。在系统所使用的资料上,除了传统资讯检索会使用到的资料外(如字典),问答系统还会使用本体论等语义资料,或者利用网页来增加资料的丰富性。

推荐文章
暂无评论
暂无评论~