Salesforce 最近提出了一种通用模型 decaNLP,可以处理多种自然语言处理任务,如机器翻译、文本分类等。
我们介绍了一种全新的概念——自然语言十项全能(decaNLP),旨在通过一个模型同时解决十个关键的自然语言处理任务:问答、机器翻译、文档总结、语义解析、情感分析、自然语言推理、语义角色标注、关系抽取、目标驱动对话和指代消解。
为了实现这一目标,我们设计了一种名为多任务问答网络(MQAN)的新型模型。MQAN可以同时处理所有这些任务,而无需为每个任务专门设计模块或参数。我们发现,通过采用正确的逆向训练策略,可以大幅提升模型的整体性能。此外,MQAN不仅在多任务环境中表现出色,还在单任务设置下的某些任务上取得了最新的成果。
decaNLP 包含了十个公开可用的数据集,每个示例都被转换为(问题、上下文、回答)三元组。这些数据集包括:
通过一系列实验,我们发现 MQAN 模型在各个任务上都表现出色,特别是在机器翻译、命名实体识别、情感分析、自然语言推理、文本分类等领域。此外,MQAN 还在单任务设置下取得了最新的成果,例如在 WikiSQL 上实现了最先进的结果。
通过多任务学习,MQAN 在零样本学习和跨领域适应方面表现出显著的优势。例如,在新任务(如英语到捷克语的翻译和命名实体识别)中,MQAN 的表现优于随机初始化模型。此外,MQAN 在文本分类的零样本域适应方面也显示出强大的能力。
通过引入 decaNLP 和 MQAN 模型,我们展示了多任务学习在自然语言处理中的巨大潜力。这些模型不仅在现有任务上表现出色,还能在新任务和跨领域场景中取得良好的泛化能力。我们期待这些研究成果能推动更多相关的研究和发展。
所有代码和数据集都可以在 GitHub 上找到,便于研究人员获取和复现实验结果。