当前位置: 首页 > news >正文

文本匹配实战系列

引言

本系列文章开始介绍深度学习在文本匹配领域的应用,并且会尝试得到各种模型在给定的数据集上的表现。

深度文本匹配发展比较久,积累了很多文本匹配方法。也有很多的分类方式,一种分类方式是表示型和交互型。

表示型方法

表示型(representation-based method)方法,也称为双塔型方法,主要思路是计算一段文本的表示向量。对于要匹配的两段文本,分别计算出两个表示向量,然后通过匹配度函数计算两端文本的匹配程度。匹配度函数可以是固定参数的相似度度量函数或可学习的匹配度打分模型。

image-20230830222927766

比如对同一个编码器,分别计算文本a和文本b的表示向量,可以把它们合并起来再喂给一个分类器进行打分。

代表方法:

  • DSSM
  • SiamCNN
  • SiamLSTM
  • SkipThought
  • FastSent
  • SDAE
  • Joint-many
  • InferSent
  • SSE
  • GenSen
  • Quick-Thought
  • USE
  • MT-DAN(USE)
  • Cross-thought
  • Sentence-BERT
  • R-Drop
  • BERT-flow
  • Bert-whitenting
  • SimBERT
  • SimBERT v2
  • SimCSE
  • PromCSE

交互型方法

而交互型(interaction-based)方法主要思路是计算两段文本之间的交互,做法是首先计算两段文本单词级的词向量,然后对两段文本的单词表示进行交互,构建两段文本之间的匹配模式,可以捕获到更细致、更局部的文本交互信息。最后使用DNN来提取更高层的匹配模式,计算匹配得分。

强调的是待匹配的两段文本之间的充分交互,以及交互后的匹配。

image-20230830223356888

代表方法:

  • DecAtt
  • PWIM
  • MatchPyramid
  • ESIM
  • BERT
  • HCAN
  • RE2

那么这两种方式有什么区别呢?什么情况下用哪种方式呢?

  • 表示型方法侧重于表示层的构建和相似度的计算,可以预先李离线计算好文本表示,推断效率高,适合于对实时性要求高的场景,比如检索式聊天机器人。
  • 交互型方法建模更细致、充分,一般效果也更好。一般以Attention为代表的方式对文本进行不同粒度的交互,然后融合不同粒度交互的结果作为一个特征向量,进而得到最终的匹配结果。但是这种交互方式计算成本(时间)较高,适合于对于匹配精度要求高但非实时的场景。

相关文章:

文本匹配实战系列

引言 本系列文章开始介绍深度学习在文本匹配领域的应用,并且会尝试得到各种模型在给定的数据集上的表现。 深度文本匹配发展比较久,积累了很多文本匹配方法。也有很多的分类方式,一种分类方式是表示型和交互型。 表示型方法 表示型(repre…...

【Kafka】Kafka Stream简单使用

一、实时流式计算 1. 概念 一般流式计算会与批量计算相比较。在流式计算模型中,输入是持续的,可以认为在时间上是无界的,也就意味着,永远拿不到全量数据去做计算。同时,计算结果是持续输出的,也即计算结果…...

在Linux服务器上,查看系统最近的重启记录

在Linux服务器上,您可以查看系统的重启记录以了解系统何时进行了重启。系统的重启记录通常被记录在系统日志文件中。以下是在不同Linux发行版上查看系统重启记录的方法: 1. 使用 last 命令: 打开终端,并输入以下命令来查看系统的…...

Vue2023 面试归纳及复习

1. Vue 3中的Composition API(Hooks)是什么?它与Options API有何不同? 答:Composition API是Vue 3中引入的一种新的API风格, 用于组织和重用组件逻辑。它与Options API相比, 提供了更灵活和可…...

Android动态可编辑长度列表

概述 在界面实现一个列表,用户可以随意给列表新增或者删除项目,在开发中比较常用,但是真正做起来又有点花时间,今天花时间做一个,以便在以后的开发中用到。 详细 运行效果: 二、实现思路: 1…...

合并对象在 Typescript 中的实现与应用

合并对象在 Typescript 中的实现与应用 文章目录 合并对象在 Typescript 中的实现与应用一、简介二、实现1、函数实现2、参数说明3、返回值 三、使用示例四、实际应用场景五、拓展:使用 lodash-es 的 assign 函数进行对象合并1、简介2、安装与导入3、基础用法4、注意…...

antd upload组件beforeUpload返回promise之后,获取的文件不是file类型导致上传失败

之前的beforeUpload直接返回一个false值 ,文件是可以正常与服务端进行传输的 beforeUpload: (file) > {return false},但是这样并不能阻止文件上传,看了官方文档后,改用返回promise对象上传 beforeUpload: (file) > {console.log(-befo…...

创建ffmpeg vs2019工程

0 写在前面 本文主要参考链接:https://www.cnblogs.com/suiyek/p/15669562.html 感谢作者的付出; 1 目录结构 2 下载yasm和nasm 如果自己在安装VS2019等IDE的时候已经安装了它们,则不用再单独进行安装,比如我这边已经安装了&a…...

无涯教程-机器学习 - Jupyter Notebook函数

Jupyter笔记本基本上为开发基于Python的数据科学应用程序提供了一个交互式计算环境。它们以前称为ipython笔记本。以下是Jupyter笔记本的一些功能,使其成为Python ML生态系统的最佳组件之一- Jupyter笔记本可以逐步排列代码,图像,文本,输出等内容,从而逐步说明分析过程。 它有…...

ubuntu安装单机的Consul

文章目录 场景解决启动方式 场景 公司使用Consul做注册发现中心以及管理配置,之前没有用过consul, 现在记录下ubuntu部署的过程 解决 apt 安装 wget -O- https://apt.releases.hashicorp.com/gpg | sudo gpg --dearmor -o /usr/share/keyrings/hashicorp-archive-…...

聊聊mybatis-plus的sql加载顺序

序 本文主要研究一下如果mybatis mapper定义了多个同名方法会不会有问题 MybatisConfiguration com/baomidou/mybatisplus/core/MybatisConfiguration.java /*** MybatisPlus 加载 SQL 顺序&#xff1a;* <p> 1、加载 XML中的 SQL </p>* <p> 2、加载 SqlP…...

基于jeecg-boot的flowable流程审批时增加下一个审批人设置

更多nbcio-boot功能请看演示系统 gitee源代码地址 后端代码&#xff1a; https://gitee.com/nbacheng/nbcio-boot 前端代码&#xff1a;https://gitee.com/nbacheng/nbcio-vue.git 在线演示&#xff08;包括H5&#xff09; &#xff1a; http://122.227.135.243:9888 因为有时…...

HTML 与 CSS 有什么区别?

HTML&#xff08;超文本标记语言&#xff09;和 CSS&#xff08;层叠样式表&#xff09;是构建网页的两个核心技术。HTML负责定义网页的结构和内容&#xff0c;而CSS则用于控制网页的样式和布局。虽然它们在构建网页时密切相关&#xff0c;但它们在功能和用途上有明显的区别。 …...

服务器数据恢复-vmware ESXI虚拟机数据恢复案例

服务器数据恢复环境&#xff1a; 从物理机迁移一台虚拟机到ESXI&#xff0c;迁移后做了一个快照。该虚拟机上部署了一个SQLServer数据库&#xff0c;存放了5年左右的数据。ESXI上有数十台虚拟机&#xff0c;EXSI连接了一台EVA存储&#xff0c;所有的虚拟机都在EVA存储上。 服务…...

Rabbitmq的Shovel

Federation 具备的数据转发功能类似&#xff0c; Shovel 够可靠、持续地从一个 Broker 中的队列 ( 作为源端&#xff0c;即source)拉取数据并转发至另一个 Broker 中的交换器 ( 作为目的端&#xff0c;即 destination) 。作为源端的队列和作为目的端的交换器可以同时位于…...

华为手机实用功能介绍

一、内置app介绍 分四块介绍&#xff0c;包括出门款、规划款、工作款和生活款。 出门款&#xff1a;红色框框部分&#xff0c;照镜子化妆/看天气 规划款&#xff1a;黄色框框部分&#xff0c;日程表/计划表/番茄时间/计时 工作款&#xff1a;蓝色框框部分&#xff0c;便笺/录…...

算法题打卡day50-动态规划 | 123.买卖股票的最佳时机III、188.买卖股票的最佳时机IV

123. 买卖股票的最佳时机 III - 力扣&#xff08;LeetCode&#xff09; 状态&#xff1a;查看索引含义和初始化思路后AC。 增加了两次的限制&#xff0c;相应的就是需要考虑的状态改变&#xff0c;具体的索引含义在代码中&#xff1a; class Solution { public:int maxProfit(…...

jvm与锁

今天是《面霸的自我修养》的第二弹&#xff0c;内容是Java并发编程中关于Java内存模型&#xff08;Java Memory Model&#xff09;和锁的基础理论相关的问题。这两块内容的八股文倒是不多&#xff0c;但是难度较大&#xff0c;接下来我们就一起一探究竟吧。 数据来源&#xff…...

零基础安装pycuda

零基础安装pycuda 前言安装Visual Studio安装C/C环境添加环境变量 安装pycuda查看系统位数查看python版本下载whl文件 前言 最近开始学习基于python的cuda编程&#xff0c;记录一下pycuda的安装。 在安装pycuda之前&#xff0c;首先需要有NVIDIA的独立显卡并且要安装CUDA和CUD…...

Streamlit 讲解专栏(十一):数据可视化-图表绘制详解(中)

文章目录 1 前言2 绘制交互式散点图3 定制图表主题4 增强数据可视化的交互性与注释步骤1步骤二 5 结语 1 前言 在上一篇博文《 Streamlit 讲解专栏&#xff08;十&#xff09;&#xff1a;数据可视化-图表绘制详解&#xff08;上&#xff09;》中&#xff0c;我们学习了一些关…...

TDOA定位算法在工业4.0中的关键应用解析(2025年更新)

1. TDOA定位算法如何重塑工业4.0生产线 想象一下&#xff0c;在一个现代化的汽车工厂里&#xff0c;几十台焊接机器人正在流水线上精准作业&#xff0c;数百辆AGV小车穿梭运送零件&#xff0c;而它们之间始终保持5厘米的安全距离——这种零碰撞、高效率的协作背后&#xff0c;正…...

STM32开发环境搭建:Keil5 MDK安装与驱动配置全指南

1. Keil5 MDK安装前的准备工作 第一次接触STM32开发的朋友&#xff0c;往往会在环境搭建这一步卡住。我刚开始玩STM32的时候&#xff0c;光是安装Keil就折腾了大半天。现在回想起来&#xff0c;其实只要提前做好这几项准备&#xff0c;整个过程会顺利很多。 首先说说硬件准备。…...

ChatGPT:解锁高级生产力工具的全方位指南

ChatGPT&#xff1a;功能强大的多面手ChatGPT 本质上是一个强大的搜索引擎&#xff0c;同时具备多种实用功能。它能回答问题、总结文本、撰写新内容、编写代码以及进行语言翻译等。不同版本的 ChatGPT&#xff0c;有的可浏览互联网&#xff0c;有的能提供截至最后训练模型日期的…...

电子工程师必看:MOS管、三极管、IGBT选型指南(附实际电路设计案例)

电子工程师必看&#xff1a;MOS管、三极管、IGBT选型指南&#xff08;附实际电路设计案例&#xff09; 在电子设计的世界里&#xff0c;选择合适的功率开关器件往往决定着整个电路的成败。作为一名电子工程师&#xff0c;我曾在多个项目中因为选型不当而付出惨痛代价——从简单…...

router.push(‘/‘)跳转不触发重定向

我来帮你分析为什么 router.push(/) 没有按照预期跳转到 /fenlei 路径。 首先让我查看相关的代码文件&#xff1a; router/index.js{path: /,component: Layout,redirect: /fenlei},已查看文件 index.vue 225-240 已查看文件 index.js 65-85 现在让我查看更多上下文&#xff0c…...

5步搞定Jimeng LoRA测试台:Streamlit界面,LoRA版本智能排序

5步搞定Jimeng LoRA测试台&#xff1a;Streamlit界面&#xff0c;LoRA版本智能排序 1. 项目概述&#xff1a;轻量级LoRA测试系统 Jimeng LoRA测试台是一款专为模型开发者设计的轻量化文本生成图像系统。它基于Z-Image-Turbo文生图底座&#xff0c;实现了动态多版本LoRA热切换…...

Golang怎么用Task替代Makefile_Golang如何用go-task编写跨平台的任务脚本文件【教程】

go-task 是用 Go 编写的跨平台任务编排工具&#xff0c;本质区别于 Makefile&#xff1a;它用 YAML 定义任务、不依赖 shell 缩进、默认不继承父环境变量、无增量构建、支持变量注入与平台条件判断&#xff0c;且单文件分发。go-task 是什么&#xff0c;和 Makefile 有什么本质…...

如何快速恢复华硕笔记本色彩配置文件:G-Helper智能修复方案

如何快速恢复华硕笔记本色彩配置文件&#xff1a;G-Helper智能修复方案 【免费下载链接】g-helper Lightweight, open-source control tool for ASUS laptops and ROG Ally. Manage performance modes, fans, GPU, battery, and RGB lighting across Zephyrus, Flow, TUF, Stri…...

如何用3分钟搭建深度学习的漫画翻译流水线?BallonsTranslator深度解析

如何用3分钟搭建深度学习的漫画翻译流水线&#xff1f;BallonsTranslator深度解析 【免费下载链接】BallonsTranslator 深度学习辅助漫画翻译工具, 支持一键机翻和简单的图像/文本编辑 | Yet another computer-aided comic/manga translation tool powered by deeplearning 项…...

SAP MM进阶:解密DESADV IDoc如何打通公司间STO的‘任督二脉’

SAP MM进阶&#xff1a;DESADV IDoc在公司间STO流程中的核心作用解析 在集团化企业的供应链管理中&#xff0c;公司间库存转储订单&#xff08;STO&#xff09;的高效执行往往决定着整个供应链的响应速度。当货物从发货方仓库运出时&#xff0c;如何确保收货方能实时获取发货信…...