论文部分内容阅读
近些年来,随着人工智能技术的爆发式发展,越来越多的公司开始了在人机对话领域的探索。目前很多企业已经将对话机器人投入到生产中,如百度的小度、天猫的天猫精灵、小米的小爱同学、京东JIMI等,应用在智能家居、机器人客服等领域。在对话处理的自然语言理解(NLU)过程中,大都使用规则的方式对用户的意图和词槽进行抽取。这种方式虽然简单且稳定,但是随着规则的增加,维护和扩展的成本将会剧增。本文提出使用深度学习技术,设计并实现一套提供汽车问答领域的中文自然语言理解模型训练及管理的子系统,提供数据管理、模型训练、服务配置和NLU解析服务。通过对国内外自然语言理解相关技术的研究,及对国内相关的产品体验和使用,结合具体的业务场景,对自然语言理解子系统进行了需求分析,将子系统划分为四大模块,分别为训练数据管理、模型训练、服务配置和NLU解析服务。训练数据管理模块包含训练语料管理、词典管理和规则管理两个子模块,提供网页可视化的训练数据的录入或者删除。模型训练模块包含意图识别模型训练和实体识别模型训练两个子模块,配置模型训练用到的可选超参数,启动业务模型训练。服务配置模块展示了所有已经训练好的意图识别模型和实体识别模型,根据需求选择意图识别模型和实体识别模型进行自然语言理解解析测试,启动NLU服务。NLU解析服务模块是一个Thrift服务,接收调用请求,提供解析功能。系统使用Python语言实现,模型设计使用Pytorch框架,远程服务调用使用Thrift框架,使用Flask框架构建Web应用。自然语言理解子系统实现屏蔽了模型训练的具体细节,为模型开发用户提供了简单易用的界面,为服务调用方提供了高效、精准的模型。