Salesforce开发设计了一个可以处理大量不同NLP任务的通用模型
2018年06月21日 由 浅浅 发表
507525
0
自然语言处理(NLP)的技术可以帮助计算机解释人类语言,能够带来令人惊讶的细微差别。其中一个例子就是Facebook新推出的页面NLP集成,它可以自动从企业的Facebook页面中提取文本,并为客户回答常见问题。但即使是尖端的NLP算法也存在一个问题:它们针对特定任务进行了高度优化。
Salesforce的研究科学家Bryan McCann表示,“深度学习模型通常非常脆弱,你可以有一个适用于翻译的模型,但是在情感分析或概述上可能不会很好。”
Salesforce Research首席科学家Richard Socher领导团队双管齐下地解决了这个问题。他们在PyTorch中开发了10种任务的自然语言处理挑战:自然语言十项全能(decaNLP)和一种可以解决它的模型,多任务问题应答网络(MQAN),一个用于Python编程的开源机器学习库语言。
McCann说:“我们设计了一个可以处理大量不同自然语言处理任务的通用模型。”
DecaNLP通过了语言测试的挑战,包括问答(在这个测试中,模型接收到一个问题和情境,其中包含了到达答案所必需的信息)和机器翻译(其中模型翻译输入从一种语言到另一种语言的文档)。有文档摘要测试,自然语言推理测试,情感分析测试,语义角色标注测试,关系提取测试,面向目标的对话测试,查询生成测试和代词解析测试。
MQAN训练图
为了判断模型的性能,研究人员对每个测试的结果进行了标准化,并将它们加在一起,得出一个数字在0到1000之间的decaScore。
研究人员发现,在没有任何特定于任务的模块或参数的情况下,MQAN在所有10个测试中联合训练,则至少可以执行10个单独测试。在某些领域,特别是机器翻译和命名实体识别的转移学习,情感分析和自然语言推理的领域适应,以及文本分类的能力,与单任务模型相比改进了很多。
McCann指出,“一项训练任务涉及将自然语言问题翻译成数据库查询语言,我们没有明确优化,但我们实际上拥有最先进的性能。我们已经降低了解决NLP问题的难度。”
Socher表示,该模型在未经过训练的任务中表现良好的能力可以为更强大,更自然的聊天机器人铺平道路,更好地从人类用户的问题中推断出意义。
获取数据集和培训的代码将于今天发布,同时还有顶级decaScores排行榜。据该团队介绍,在GPU上训练模型需要几天的时间。
论文网址:einstein.ai/static/images/pages/research/decaNLP/decaNLP.pdf