SMRC机器阅读理解工具包
Sogou Machine Reading Comprehension (SMRC) 是搜狗开源的机器阅读理解工具包,旨在帮助 NLP 从业人员快速实现已有的机器理解模型,从而更高效地开发新模型。
工具包架构
搜狗将机器阅读理解任务的流水线分解为4个步骤:数据集读取、预处理、模型构建、训练和评估,对每步都进行了抽象和模块化,以简洁的接口呈现。
在搜狗开源的 SMRC 工具包中,以上每个步骤都可以单独拿来使用,嵌入开发者自己的流程中,保证了整套工具的易用性和可扩展性。
同时,SMRC 对已发表的多种机器阅读理解数据集、模型进行了整合或复现。
代码主要分为以下几个模块:
1.数据集读取模块(dataset_reader)
该模块集成了对 SQuAD 1.0/2.0、CoQA 以及中文数据集 CMRC 的读取和预处理功能。
2.数据预处理(data、utils)
data 部分包含词表构建模块和负责特征变换和数据流的 batch 生成器。utils 用于提取语言学特征。
3.模型构建(nn、models)
nn(神经网络)由机器阅读理解中的常用组件组成,可以快速构建和训练原型模型,避免部分重复工作。model 中集成了常见的机器理解模型,如 BiDAF、DrQA、FusionNet、QANet 等等。
4.模型训练与评估(examples)
这一部分是运行不同模型的示例。
评论