【PolyAI】【EMNLP 2020 Findings】ConveRT
2023-04-18 12:57:02 时间
介绍
论文《ConveRT: Efficient and Accurate Conversational Representations from Transformers》地址:https://arxiv.org/abs/1911.03688
作者在pretrain(Reddit 数据)+fine-tune 的方式的基础上提出了一个更轻量级的预训练回复选择模型 ConveRT,并且模型还可以引入了更多的对话历史信息。另外,模型学习的句子编码可以 transfer 到其他对话任务(eg.意图识别)。
这篇文章是基于目前预训练模型参数量过大,训练和运行都消耗巨大的计算资源,导致其实际应用受阻的问题提出的。在现实应用场景中,我们需要一个“更小”的模型。ConveRT 是一个轻量级的双编码器预训练结构,它综合利用了多种方式来降低模型的复杂度,包括:子词表示(subword representation)、单头注意力机制(single-headed attention)、量化感知训练(quantization-aware training)等,该模型与其他模型相比,参数更少、训练时间更短、且具有更好的性能,如下表所示:
模型架构
单轮对话结构
- 其中Transformer Layers网络是共享的。
- 双塔的结构,response可以预先计算好表示。在推测时,只用进行一次input部分,得出表示h_x 。然后和候选的各个h_y 进行点积,大大加快推测速度。
- input部分的输出可以接意图识别、实体识别,进行多任务。
- 目标函数为最大化正样本对分数,最小化负样本对分数:
多轮对话结构
- 同样的,response可以预先计算好表示。而且。历史计算过的input表示可以保存下来,用于后续对话。
相关文章
- 用AngleSharp & LINQPad抓取分析博客园排行榜
- 一次生产环境CPU占用高的排查
- Netty Protobuf处理粘包分析
- Redis 异步客户端选型及落地实践
- 快速实现一个简单阉割版的HashMap
- 从 Cloud-Native Relational DB 看数据库设计
- 单线程架构的Redis如此之快的 4 个原因
- 什么是计算机中的高速公路-总线?
- RocketMQ Streams 1.1.0: 轻量级流处理再出发
- ClickHouse(12)ClickHouse合并树MergeTree家族表引擎之AggregatingMergeTree详细解析
- 屏幕图像渲染原理
- 图解B树及C#实现(3)数据的删除
- 图解B树及C#实现(1)
- 【大型软件开发】浅谈大型Qt软件开发(一)开发前的准备——在着手开发之前,我们要做些什么?
- 随机高并发查询结果一致性设计实践
- 微软外服札记④——Spark中的那些坑...
- 如何在es中查询null值
- 电脑本地安装不同版本MySQL
- 自从学习了MongoDB高可用,慢慢的喜欢上了它,之前确实冷落了
- liunx系统安装Redis详细步骤