推进语义文本相似性建模:一个具有平移ReLU和平滑 K2损失的回归框架

论文:

2024.emnlp-main.663.pdf

发布于 EMNLP 2024

代码:GitHub - ZBWpro/STS-Regression · GitHub

  1. 现有问题

(1)以 SimCSE 为代表的对比学习,通过将相似句子拉近、不相似句子推远来训练模型。它简单有效,但存在两个根本问题:

  • 对比学习本质上只区分"相似"和"不相似"。如果标注数据包含"高度相关、中度相关、有点相关、不相关"等多档信息,它只能利用最相似和最不相似的两端,中间档位被白白浪费。

  • 为了防止模型坍塌,SimCSE 需要极大的 batch size(如 512),导致显存消耗惊人。

(2)Sentence-BERT 的局限

Sentence-BERT 采用双塔结构,效率高,但它同样从分类视角 处理 STS 任务。假设一个任务有 5 个相似度类别(标为 1 到 5),一个真实标签为 2 的样本,预测成 3 还是 4,分类损失是一样的。然而,从语义上看,预测成 3 显然比 4 更接近 2。分类视角忽略了类别之间的渐进关系,导致性能次优。

  1. 网络架构

本文将将原始的离散类别标签,按照语义相似度顺序映射成一串等距的数值。例如,对于"矛盾、中立、蕴含"三类,分别映射为 0、1、2,从最不相似到最相似。然后,模型不再使用分类损失,而是使用回归损失来拟合这些数值。

采用经典的 Siamese 双塔结构 ,两个 BERT 共享参数,分别编码句子 A 和 B,得到向量 u 和 v。不仅拼接了两个句向量,还拼接了它们的逐元素绝对差 |u-v|。

论文做了消融实验,拼接(u,v,|u-v|)之后,Spearman涨到76

3.损失函数

真实的标签是离散的,而预测值是连续的,只要预测值与真实值的差距骄傲与类别间距的一半,就可以正确分类。为此引入了零梯度缓冲区,当预测误差小于某个阈值是,损失为0.

(1)Translated ReLU

对于噪声较大的数据,可以使用Translated ReLU

(2)Smooth K2 Loss

对于高质量、可信数据,可以使用Smooth K2 Loss

相关推荐
Alluxio9 分钟前
Alluxio + OCI:为 AI 工作负载实现亚毫秒访问延迟与可扩展吞吐
运维·数据库·人工智能·分布式·缓存·ai·语言模型
johnsong31 分钟前
Claude Fable 5.2 登顶:65 分、单发做游戏,和一份 $26.54 一单的账单
人工智能·游戏
凌杰38 分钟前
AI 学习笔记:Transformer 架构详解
人工智能
硅谷秋水1 小时前
扩展机器人智能体的在线探索能力
人工智能·语言模型·机器人
Eyfcom1 小时前
〖高级算法实战 04〗物流定价博弈论:动态定价算法如何平衡运力供需与利润?
人工智能·物流管理系统·高级算法实战·众包物流
锋行天下1 小时前
服务器 Python 2.7 装不了 langgraph-cli?用本地生成 Dockerfile 曲线救国
人工智能·后端·python
一条大祥脚1 小时前
深入理解 PyTorch FlexAttention:从 Score Mod 到 Mask Mod 的稀疏加速之道
人工智能·pytorch·python·注意力机制·flex attention·可编程注意力
机 _ 长1 小时前
03 智算运维|丢 0.1% 的包,8 卡训练为什么会崩
人工智能·模型部署·智算运维
汤姆宝库2 小时前
权重量化的实现:从absmax到GPTQ与AWQ
人工智能
硅谷秋水2 小时前
PhysicalWords:一种用于构建机器人操作中潜推理过程的词汇体系
人工智能·机器学习·计算机视觉·语言模型·机器人