基于预训练和对比学习的新意图发现

news2024/9/20 6:37:17

前言

从对话人的语句中发现新意图是一个研究方向

alt

一般来说就是对句子通过聚类来解决这一问题,所以这里通常会涉及到两个问题:

(1)怎么表征好一个句子

(2)怎么更好的聚类

今天就给大家介绍本篇~,对了,关于新意图类的相关的paper,笔者之前也介绍过一篇进行了汇总,感兴趣的小伙伴可以穿梭:

《新类识别/领域自适应-聚类》:https://mp.weixin.qq.com/s/A8QVahx__K_GN1xTXjlaHg

本次介绍的:

paper:https://aclanthology.org/2022.acl-long.21.pdf

代码:https://github.com/fanolabs/NID_ACLARR2022

方法

总体框架如下:

alt
  • 首先我们来看怎么表征好一个句子?

对应的就是上图左边的部分,其实也比较常规,主要就是去搜集一些相关领域的公开标注数据集先去进行监督学习预训练一把预训练模型(比如bert),然后再用领域内的数据进行MLM训练,当然了,如果领域内有一些已经标注的样本,那就更好了,可以进行fintune一下。

这就是框图左边做的事情即用领域内外数据预训练模型,也即paper中说的MTP方法:利用external和internal数据进行预训练。

为了更好的表征句子,作者进一步把对比学习套用了进来即paper Stage 2中的CLNN(Contrastive Learning with Nearest Neighbors)方法

具体的就是先给每一个样本 找到其topk个相似的句子或者说相邻的句子 集合,这里可以采用向量内积作为相似度,大家看看代码后就会发现这里具体采用的是Faiss检索。

每当来一个样本 时,会从其 集合中均匀的采样出一个 相似样本,然后利用数据增强为 分别生成一个新的样本 ,所以 就可以看作是样本 两个不同视角下的相似样本,是一对正样本。

假设训练的时候batch大小是M,那么依据上面会形成一个2M*2M邻接矩阵,其中当两个样本是相似的时候也即是一对正样本对的时候,邻接矩阵对应的元素是1,否则是0。

然后进行对比学习:

alt
alt

其中 经过上面讲的预训练模型后的表征向量, 对应的所有正样本

可以看到,相比于一般的对比学习来说,这里的公式对了一步红框的求和部分,也即每个样本有多个正例,这也是为啥作者说是方法是Contrastive Learning with Nearest Neighbors

  • 聚类

经过上面的过程后,句子能够很好的被表征了,接下来就可以聚类啦,具体这里就是简单的使用了很常规的聚类算法kmeans

总结

总的来说,整个过程很常规也很好理解,并且还给出了代码,大家没事可以充电学习一下啦。看看代码,哪怕学习一下对比学习的loss实际怎么实现也算是有收获哦~

关注

欢迎关注,下期再见啦~

知乎,csdn,github,微信公众号

本文由 mdnice 多平台发布

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/99851.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

通信技术对自动驾驶发展的关键作用

【摘 要】随着自动驾驶的快速发展,新技术逐渐涌现,通信技术被产业认为是未来网联化自动驾驶发展的关键技术。从通信角度出发,分析通信技术为自动驾驶在技术及可靠性、成本控制、以及社会效益方面带来的提升,详细介绍了3GPP R16 5G-V2X在自动驾驶业务方面带来的技术优化,并…

Spring Boot整合分布式搜索引擎ElasticSearch 实现相关基本操作

文章目录一、ElasticSearch 介绍二、环境准备三、创建Spring Boot项目导入依赖四、创建高级客户端五、基本操作索引操作文档操作批量插入数据其他操作六、总结一、ElasticSearch 介绍 Elasticsearch 是一个分布式、高扩展、高实时的搜索与数据分析引擎。它能很方便的使大量数据…

【MySQL】史上最全的MySQL高性能优化总结

【MySQL】史上最全的MySQL高性能优化总结 【1】深入理解MySQL索引底层数据结构与算法 1. 为什么不使用二叉树、红黑树、B树来作为索引? 2. MyISAM 与 Innodb存储引擎有什么区别? 3. MySQL 的索引按照功能分类可以分几种? 4. MySQL 的的聚…

《领导力就是不装》——读书摘要

最近阅读的这本领导力就是不装–游戏化思维引领管理变革,分析问题的视角有新意,值得一看。以下是我的一点读书摘要。 领导力的三个关键点 具备进行管理变革、引领大家去解决难题的能力。具备成就他人、成就团队,让人才涌现,引领…

100天精通Python(数据分析篇)——第69天:Pandas常用数据筛选方法(between、isin、loc、iloc)

文章目录每篇前言一、布尔索引二、between()三、isin()1. 单列筛选2. 多列筛选3. 通过字典的形式传递多个条件4. 删除异常值所在行5. isnotin实现四、loc、iloc(重要)0. 创建DataFrame1. 提取行数据2. 提取列数据3. 提取多列数据4. 提取指定行、指定列数…

vmware16安装windows server 2008 VMware Tools

vmware16安装windows server 2008,安装完成后不会自动安装VMware Tools。而是出现如下提示: 简易安装正在安装Windows Server 2008 R2 x64。安装完操作系统后,需要手动安装VMware Tools。请参阅 https://kb.vmware.com/s/article/78708 附件下载 本文…

FPGA时序优化技术之重定时(Retiming)

介绍 重定时(Retiming)是一个智能过程,通过组合延迟路径向后和/或向前移动和平衡寄存器以获得最佳定时,同时保持电路的功能行为。重定时算法可以在不考虑互连延迟的情 况下,在同一边沿上由一个时钟对电路进行定时时找到…

【Linux vim】vim的基本使用,命令模式的指令集

目录 1.yum相当于手机的应用商店 2.vim的3种常用的模式 3.vim的基本使用(写出一个hello vim的代码) 4. 命令模式的指令集 1.yum相当于手机的应用商店 1.1查找 [rootVM-24-5-centos ~]# yum list #查找所有的安装包 但是查找结果太多了,可…

神州战神笔记本清灰+换硅脂-记录

文章目录Introduction拆清灰涂抹硅脂安装开机测试Introduction 笔记本购买于2020年4月份左右,至今已使用2年半时间。CPU是i7-9750H,基准频率是2.6GHz, 用control center 3.0开静音模式CPU会自动降频到1.5~2.6之间,日常办公都有些卡顿&#x…

docker配置阿里云镜像加速

一、快速使用-docker配置阿里云镜像 1、安装/升级Docker客户端 推荐安装1.10.0以上版本的Docker客户端,参考文档docker-ce 2. 配置镜像加速器 针对Docker客户端版本大于 1.10.0 的用户 您可以通过修改daemon配置文件/etc/docker/daemon.json来使用加…

架构师必读 —— 逻辑模型(2)

用三角逻辑阐明观点: 通常用三角逻辑来表示逻辑的三大要素之间的关系。所谓三角逻辑,就是“观点” “论据” “数据”之间保持协调一致。观 点是指,话题的结论、提案或意见、推论。论据是指,佐证观点 的原理、原则、规律、普遍倾向…

阿里云-数据仓库-数据分析开发神器-ODPS

一、 ODPS 基本面-F10 1、什么是ODPS? 1、开发数据处理服务(Open Data Processing Service,简称ODPS),2016年后更名MaxComputer。ODPS是一种由阿里云自主研发,针对TB/PB级数据、实时性要求不高的分布式处理服务。主要服务于批量结…

NoSQL数据库原理与应用综合项目——MongoDB篇

NoSQL数据库原理与应用综合项目——MongoDB篇 文章目录NoSQL数据库原理与应用综合项目——MongoDB篇0、 写在前面1、本地数据或HDFS数据导入到MongoDB2、MongoDB数据库表操作2.1 Java API 连接MongoDB2.2 查询数据2.3 插入数据2.4 修改数据2.5 删除数据3、MongoDB数据库表进行数…

Prettier系列之配置

文章の目录一、在文件目录中创建一个.prettierrc文件二、添加规则1、Print Width2、Tab Width3、Tabs4、Semicolons4.1、true----在每个语句的末尾添加一个分号。4.2、false----只在可能导致ASI失败的行开头添加分号。5、Quotes6、Quote Props6.1、as-needed6.2、consistent6.3…

Compose挑灯夜看 - 照亮手机屏幕里面的书本内容

一、前言 上一篇文章 Compose回忆童年 - 手拉灯绳-开灯/关灯里面82年钨丝灯,让我又有了新的想法,我们怎么照亮手机里面的文本内容呢? 我们会在上一篇文章的基础上来实现“挑灯夜看”的功能,怎么下手呢?往下看&#x…

小程序01/小程序 全局配置 tabBar 介绍、小程序模板语法数据绑定 wxml渲染

一.全局配置 tabBar 介绍 tabBar说明: tabBar是配置全局 页面底部导航 tabBar内包含 页面底部导航 背景 按钮 文字 文字颜色 注意: tabBar内list 最多是 5 项 ,最少是 2 项 二.小程序模板语法数据绑定 说明: index.js文件data内定义属性 在index.wxml内渲染 in…

靠steam搬砖项目,傻瓜式操作单日500+,可放大操作

在分享干货之前,作为一个从15年开始创业的过来人,先教大家怎么分辨网络上的项目靠不靠谱,以后擦亮眼睛再做,切记!!!!! 1、回本周期性我这个人比较俗,创业就是…

我的世界(MC) forge 1.19.3 开服教程

Debian系统使用MCSManager9面板搭建Minecraft Java版MOD服务器的教程,本教程用的forge1.19.3服务端,用其他服务端的也可以参考一下。 其他版本我的世界服务器搭建教程:https://blog.zeruns.tech/tag/mc/各种Minecraft服务端介绍和下载&#…

双线性变换法MATLAB实现巴特沃斯低通滤波器

实验名称 数字信号处理实验4 实验(实习)日期 12.13 得分 指导老师 学院 电信院 专业 电子信息工程 年级 2020 班次 姓名 学号 20208327 1.实验目的 掌握利用MATLAB求滤波器阶数和自然截至频率&#…

手把手带你理解TPS趋势分析

在性能分析中,前端的性能工具,我们只需要关注几条曲线就够了:TPS、响应时间和错误率。这是我经常强调的。 但是关注 TPS 到底应该关注什么内容,如何判断趋势,判断了趋势之后,又该如何做出调整,调整之后如何定位原因,这才是我们关注 TPS 的一系列动作。 今天,我们就通…