首页 > 科技启迪 > 内容

搜狗开源了业界最全的“阅读理解工具合集”,帮助开发者快速构建高效模型

发布于:2024-06-17 编辑:匿名 来源:网络

机器阅读理解是当前智能问答领域的热门研究问题。

其目标是根据给定的问题和文章(段落)对文本进行分析和分析。

、从文章(段落)中提取或重写文本片段作为问题的答案。

例如,目前大多数搜索引擎,当用户输入的搜索关键词是问题时,会尝试从搜索结果网页中寻找答案,并以最高优先级呈现给用户。

例如,如果您搜索“搜狗的吉祥物是什么?”搜索引擎会做出如下反应:所使用的技术是“机器阅读理解”。

近年来,由于神经网络的复兴和大规模数据集的可访问性,阅读理解研究取得了长足的进步,许多优秀的机器阅读理解模型层出不穷。

例如,SQuAD 1.0排名中已经有80多个提交模型,其中相当一部分的性能已经超越了人类的性能。

这里有一个问题。

作为研究人员或开发人员,有必要重现这些模型,以便比较它们的优缺点并利用它们。

然而,许多现有模型并未提供官方实现;而目前开源的一些模型,由于所使用的深度学习框架和实现思路的差异,很多人很难理解、比较和改进。

复制这些模型存在很大困难。

针对这一问题,搜狗搜索近期提出并开源了“搜狗机器阅读理解工具合集”(以下简称“SMRC”)。

SMRC主要针对抽取式机器阅读理解任务,提供了一套全面的数据集读取、预处理、神经网络模型库组件、训练和评估的完整框架。

它还复现并集成了数十个已发布的机器阅读理解模型,帮助用户快速高效地复现现有模型或开发自己的阅读理解模型。

该工具集也是业界最全面的TensorFlow版本阅读理解工具集。

目前,与 SMRC 类似的工具集包括 Allen AI 的 AllenNLP 和 UCL 机器阅读理解组的 Jack The Reader。

和 Jack The Reader 更多的是提供一个适合多种自然语言处理任务的框架,该框架只包含少量阅读理解模型(例如 AllenNLP 中 SQuAD 数据集的模型只有 BiDAF 和 QANet,而 SMRC 则挖掘了更深)。

针对阅读理解任务,在建立一套模型构建和训练框架的同时,提供了10+个模型的实现。

项目链接:(请点击此处) 论文链接:(请点击此处)我们来看看SMRC的具体内容 - 1.刀具采集框架 如上图所示,刀具采集将基于机器的流程阅读和理解。

该工具包分为四个模块:数据集读取器、数据预处理、模型构建和模型训练。

这四个模块被设计为管道流程,可用于大多数机器阅读理解任务。

Dataset Reader 机器阅读理解快速进步的一个重要原因是各种大规模、高质量问答数据集的发布。

为了避免重复开发读取数据集的代码,SMRC提供了SQuAD1.0、SQuAD2.0、CoQA等一些典型数据集的读取模块;同时,为了增强语言多样性,SMRC还提供了对中文数据集的支持。

CMRC 模块。

另一方面,用户也可以通过继承base_dataset来开发其他数据集的自定义阅读器。

数据处理为了准备用于训练模型的数据,我们需要构建词汇表、提取语言特征并将离散特征映射到索引中。

该工具包提供了满足这些要求的模块:词汇生成器、特征提取器、批量生成器。

模型构建机器阅读理解任务的核心部分是构建有效且高效的模型。

除了提供内置模型(我们稍后会介绍)之外,SMRC 还提供了机器阅读理解任务中常用的神经网络组件,方便用户构建定制模型。

遵循“功能性 API”的思想,SMRC 将它们包装为 Tensorflow 层中 MRC 特定的附加内容: Embedding:包括 Vanilla Embedding、PartiallyTrainableEmbedding、CoVeEmbedding、ElmoEmbedding 和 BertEmbedding 等。

Recurrent:BiSTM 和 BiGRU 是基本的循环层。

此外,SMRC还提供了他们的CUDNN版本——CudnnBiSTM和CudnnBiGRU。

相似度函数:SMRC提供了一系列计算文本之间词级相似度的函数,例如DotProduct、TriLinear、MLP等。

Attention:注意力层通常与 BiAttention、UniAttention 和 SelfAttention 等相似函数一起使用。

基础层:一些基础层用于机器阅读理解模型,例如 VaritionDropout 和 Highway、ReduceSequence。

基本操作:主要是屏蔽操作,例如屏蔽softmax、屏蔽logits。

通过继承基础模型类并结合上述组件,开发者基本上可以快速构建出最主流的机器阅读理解模型。

模型训练 在训练模型时,我们通常关心指标如何随训练/开发集变化、何时执行提前停止、模型需要多少个 epoch 才能收敛等。

由于大多数模型采用类似的训练策略,SMRC 提供了训练模块,主要功能包括维持训练、评估和推理处理、保存最优权重、与指数移动平均线配合以及记录训练摘要。

每个模型还提供用于保存和加载模型权重的接口。

2.内置模型:提供丰富的内置模型是SMRC的一大特色。

这些内置模型是现有优秀模型的复制品。

其中包括: BiDAF:与之前工作中的注意力机制不同,BiDAF的核心思想是双向注意力,它模拟查询到上下文和上下文到查询的注意力。

(机器理解的双向注意力流(ICLR)) DrQA:旨在解决开放域问答。

搜狗开源了业界最全的“阅读理解工具合集”,帮助开发者快速构建高效模型

DrQA利用文本嵌入、基本语言特征和简单的注意力机制来证明,无需复杂结构设计的简单模型也能在机器阅读理解中取得良好的效果。

(阅读维基百科回答开放域问题(ACL)) FusionNet:基于之前工作中注意力方法的分析,Huang 等人。

提出了FusionNet,从三个方面延伸关注。

他们建议使用单词历史和完全意识的注意力,这使得模型能够结合来自不同语义层的信息流。

此外,这个想法也适用于自然语言推理。

(通过全感知注意力与机器理解应用(ICLR)进行融合) R-Net:R-Net 的主要贡献是自匹配注意力机制。

在上下文和问题的门控匹配之后,引入段落自匹配来聚合整个段落的证据并提高段落表示。

(用于阅读理解和问答(ACL)的门控自匹配网络) QANet:QANet 的架构改编自 Transformer,仅包含卷积和自注意力。

通过不使用循环层,QANet 的训练时间加快了 2 倍,推理时间加快了 49 倍。

(结合局部卷积与全局自注意力进行阅读理解(ICLR)) IARNN:SMRC 中实现了两个内部基于注意力的 RNN(IARNN),有利于句子表示,并且在答案选择任务中有效。

IARNN-word 在将问题上下文的单词表示输入 RNN 模型之前对其进行加权。

与仅实现输入词嵌入的 IARNN-word 不同,IARNN-hidden 可以通过向计算的注意力权重添加额外的上下文信息来捕获多个词之间的关系。

(Inner Attention based Recurrent Neural Networks for Answer Selection (ACL)) BiDAF++:基于BiDAF,引入多段机器阅读理解模型。

BiDAF++在BiDAF的基础上增加了self-attention层来增加模型容量。

(简单有效的多段落阅读理解(ACL)) BERT&ELMo:BERT 和 ELMo 等预训练模型在许多自然语言处理任务中表现非常出色。

在 SMRC 中,BERT、ELMo 和 Cove 被用作嵌入层,以提供强大的上下文表示。

同时,SMRC还包括用于机器阅读理解的BERT模型,以及修改版本。

3.快速构建和测试 SMRC提供简单的界面,易于用户使用,并且具有可扩展性。

对于主流的阅读理解模型来说,只需要十几行代码就可以完成训练和测试。

以SquAD1.0为例,我们可以快速构建和训练内置模型(DrQA): 1. 下载数据集 $ wget wget wget #used in DrQA $ unzip glove.B.d.zip 2. 准备数据集读取器和判别器 train_file = data_folder + "train-v1.1.json"dev_file = data_folder + "dev-v1.1.json"reader = SquadReader()train_data = reader.read(train_file)eval_data = reader.read(dev_file)evaluator = SquadEvaluator(dev_file) 3. 构建词汇表并加载预训练的嵌入词汇 = Vocabulary(do_lowercase=False)vocab.build_vocab(train_data + eval_data, min_word_count=3, min_char_count=10)word_embedding = vocab.make_word_embedding(embedding_folder+"glove .B.d.txt”)4。

使用特征提取器。

仅在使用语言特征时才需要特征提取器: feature_transformer = FeatureExtractor(features=['match_lemma','match_lower','pos','ner','context_tf'],build_vocab_feature_names=set(['pos',' ner' ]), word_counter=vocab.get_word_counter())train_data = feature_transformer.fit_transform(dataset=train_data)eval_data = feature_transformer.transform(dataset=eval_data) 5. 构建用于训练和评估的批量生成器,其中附加特征和特征词汇表为语言特性所必需的。

train_batch_generator = BatchGenerator(vocab,train_data,训练=True,batch_size=32,\additional_fields = feature_transformer.features,feature_vocab=feature_transformer.vocab) eval_batch_generator = BatchGenerator(vocab,eval_data,batch_size=32,\additional_fields = feature_transformer.features,feature_vocab= feature_transformer.vocab) 6.导入内置模型并编译训练操作,调用train_and_evaluate等函数进行训练和评估。

model = DrQA(vocab, word_embedding, features=feature_transformer.features,\ feature_vocab=feature_transformer.vocab)model.compile()model.train_and_evaluate(train_batch_generator, eval_batch_generator, evaluator, epochs=40, eposides=2) 以上代码适用于所有内置模型以及示例中的所有数据集。

您可以按照上面的代码在不同的数据集上尝试不同的模型,看看它是如何工作的。

SMRC在Github上提供的对比结果如下: 表1是SQuAD1.0的模型结果。

可以看出,复刻模型的性能与原模型基本相同。

另一方面,当模型加入BERT或ELMo等预训练时,其结果往往会有很大的提升,因此它们也是NLP的新趋势。

SQuAD 2.0和CoQA的任务与SQuAD1.0不一样,因此某些模型无法直接应用于这两个数据集。

通过对BiDAF、BiADF++等模型的测试可以看出,内置模型有时甚至比原始模型还要好。

此外,BiDAF还可以应用于CMRC数据集。

搜狗搜索提供的测试结果F1/EM为57.01/35.0,提供了新的基线。

4.总结搜狗搜索开源的《搜狗阅读理解工具合集》提供了TensorFlow版数据集读取、预处理、神经网络模型基础件、训练与评估等完整的阅读理解任务框架,让开发者能够快速构建定制化的阅读理解任务框架。

机器阅读模型。

此外,SMRC还在统一框架内提供了十余种机器阅读理解模型,方便开发者复现和测试现有模型。

这些努力将极大地加速相关的学术研究。

同时,SMRC也为所有想要评估并尝试实现机器阅读理解技术的算法从业者提供了入门的捷径和产品化的初始动力。

据了解,搜狗搜索已经将相关技术应用到其产品和业务中。

在法律领域,搜狗律师的问答机器人具备逻辑分析和推理能力。

在渐进式询问过程中,挖掘判断中的结构化数据,帮助用户澄清已经发生的事实,全面准确地了解用户的规律。

根据上诉,给出可能的判决结果、法律意见或类似案件;在医疗领域,搜狗搜索的智能分诊功能率先推出基于人工智能技术的智能诊断助手,模拟医生与患者的对话模式。

用户交流自己的病情,并根据用户的实际症状帮助确定用户可能患有的疾病。

参考文献:[1] SMRCToolkit[2] 搜狗机器阅读理解工具包[3] 原始论文《基于文档门控制器的开放域问答》[4] 搜狗在国际顶级挑战CoQA中获得第一名[5] CoQA: A Conversational Question Answering Challenge[6] SQuAD2 .0:斯坦福问答数据集雷锋网版权文章,未经授权禁止转载。

详情请参阅转载说明。

搜狗开源了业界最全的“阅读理解工具合集”,帮助开发者快速构建高效模型

站长声明

版权声明:本文内容由互联网用户自发贡献,本站不拥有所有权,不承担相关法律责任。如果发现本站有涉嫌抄袭的内容,欢迎发送邮件 举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。

标签:

相关文章

  • 劳力士在二手市场“跳水”

    劳力士在二手市场“跳水”

    以劳力士、百达翡丽为代表的高端品牌在二手市场日益“失宠”,引发二手表商和杠杆炒家叫苦不迭。 来自上海的制表师商奢和小主制表师创始人沈正奇向时代财经透露,“我们年底回收的一只爱彼橡树系列5的价格高达1万元。 今年7月,以1万元的价格出售。 他直接损失了1万元。 “这

    06-17

  • 共享床位关闭现场调查:不合规床位依然存在,专业VC上门检查

    共享床位关闭现场调查:不合规床位依然存在,专业VC上门检查

    才流行不到两周的共享床位因存在“安全隐患”这两天就“封城”了。 新闻话题。 据报道,北京、上海、成都等城市出现了长约2米、宽约1米、形似太空舱的“共享床”,并因火灾隐患相继被关闭。   真相是什么?   猎云网进行了现场调查,并致电拥有“共享床”的公司北京睡眠科

    06-18

  • 中芯国际与ASML签订12亿美元订单

    中芯国际与ASML签订12亿美元订单

    相关消息:中芯国际成熟工艺设备供货许可证获批。 中芯国际宣布,公司已完成2020年3月16日至2020年3月的批量采购协议,2日12个月期间与ASML集团签署采购订单,用于采购ASML产品,订单总金额1 美元,,,.中芯国际目前提供0.35微米至14纳米不同技术节点的晶圆代工和技术服务。 其

    06-06

  • 对外投资合作指南(澳大利亚)——中资企业在澳大利亚开展投资合作应注意的问题及对策

    对外投资合作指南(澳大利亚)——中资企业在澳大利亚开展投资合作应注意的问题及对策

    8.中资企业在澳大利亚开展投资合作应注意的问题及对策 8.1 对澳大利亚投资合作的主要风险 合作面临以下风险: (一)疫情 目前,澳大利亚新冠肺炎(COVID-19)疫情依然严峻。 截至今年7月,澳大利亚仍未完成接近覆盖全体人口的疫苗接种。 澳大利亚于 2018 年 12 月 1 日开放边

    06-18

  • 又一位车企老板濒临破产:匆匆交棒95后孙女

    又一位车企老板濒临破产:匆匆交棒95后孙女

    又一位汽车公司老板濒临破产:1995年出生的孙女匆忙交出大权。 在重庆首富造车的梦想破灭了。 8月27日晚间,力帆股份发布半年报。 上半年,力帆不仅亏损26亿元,净资产降幅也扩大至96.12%,只剩下1亿元。 第二天开盘,力帆的股价就跌停。 这家成立20多年的老牌国产车企濒临破

    06-18

  • 据河北新闻网报道,石家庄市将设立两大产业发展基金,总规模达200亿元

    据河北新闻网报道,石家庄市将设立两大产业发展基金,总规模达200亿元

    投资界(ID:pedaily)9月13日消息,为深入贯彻落实石家庄市第十一次党代会精神石家庄市按照市两会精神,充分发挥政府产业基金促投资、扩投资、稳增长的关键作用,推动新一代电子信息两大产业发展生物医药率先取得突破。 石家庄市将设立石家庄市主导产业发展基金(以下简称“

    06-18

  • 投资界新闻 - SI集团与上海医药集团联合设立500亿生物医药产业基金

    投资界新闻 - SI集团与上海医药集团联合设立500亿生物医药产业基金

    投资界消息(ID:pedaily),上海医药与上海医药集团将联合设立上海生物医药产业基金,规模达1亿第一期1亿多元,最终规模1亿左右。   据财联社报道,上海医药董事长周军表示,产业基金不是简单的投资基金,而是一个平台。 “两家公司未来将打造几个大平台,推动上海医药生物

    06-17

  • 1800亿巨头低价卖,只卖36亿

    1800亿巨头低价卖,只卖36亿

    为什么低价卖? 出奇。 一家市值1亿美元的公司最近被以5亿美元的低价出售。 其股东包括但不限于阿里巴巴、京东、腾讯。 它就是Farfetch,一家成立于2008年的英国奢侈品电商平台,2009年在纽约证券交易所上市。 这次的买家是韩国公司Coupang。 官网显示,其成立于2007年,总部

    06-17

  • 同性恋社交应用Zank是如何冲出红海并获得B轮融资的?

    同性恋社交应用Zank是如何冲出红海并获得B轮融资的?

    就在昨天,同性恋社交软件Zank宣布获得上市公司昆仑万维的数千万元B轮融资。 赞克创始人和首席执行官凌绝顶表示,融资资金将用于完善同志电子商务平台的建设和直播产品的开发。 资本看好“粉色经济” 互联网进入移动时代以来,社交软件层出不穷,充斥着人们的手机。 在以微信

    06-18

  • OpenAI与微软成立1亿美元AI创业基金

    OpenAI与微软成立1亿美元AI创业基金

    》5月27日,OpenAI正式宣布成立OpenAI创投基金,将通过该基金向AI公司投资1亿美元。 OpenAI正在寻找少量早期初创公司,这些公司所在的领域人工智能可以产生变革性影响,例如医疗保健、气候变化和教育,以及基于生产力的人工智能工具。

    06-17

  • B轮融资3180万美元, 2年内已获得4轮融资,营收超15亿元,这家售油公司已经实现全面盈利!

    B轮融资3180万美元, 2年内已获得4轮融资,营收超15亿元,这家售油公司已经实现全面盈利!

    据投资界8月24日消息,找游网宣布公司已完成1万美元B轮融资,由DCM领投,Wagonbang跟投,SIG耀明亚洲、云九等A轮投资方本轮融资,云启资本、GGV纪源资本、Venture Partners均继续跟投。 冲盈资本担任本轮融资独家募资方。   找油网创始人与CEO吕健表示:“未来,找油网将在

    06-18

  • 存储芯片需求放缓,三星电子高管表示没有减产计划

    存储芯片需求放缓,三星电子高管表示没有减产计划

    TechWeb 据报道,目前存储芯片市场形势并不乐观。 由于对全球经济衰退的担忧而导致的需求放缓已经影响了终端产品的开发。 需求反过来又影响存储芯片的需求。 有研究机构预测,NAND闪存和DRAM的价格正在下降,明年市场供过于求的情况将加剧。 存储芯片需求放缓和价格下降将不

    06-06