计算句子向量相似度:SentenceBert和SimCSE

Sentence-BERT:利用对比学习优化句子表示

SentenceBert

Sentence-BERT: 如何通过对比学习得到更好的句子向量表示 - 哔哩哔哩 (bilibili.com)

(229条消息) Sentence-BERT详解_数学家是我理想的博客-优快云博客_sentence-bert

动机:

直接把2个句子串联起来输入Bert做分类(即Cross-Encoder方式),当需要找N个句子里相似度最大的2个句子时,要经过Bert的次数是N*(N-1)/2次;计算量太大了;

把每个句子单独经过Bert,得到各自的句子向量后,再计算相似度,即Bi-Encoder方式,节省计算量;

孪生网络:

将句子对输入到参数共享的两个Bert模型中,然后Bert输出句子的所有字向量传入pooling层进行平均池化(在句子长度这个维度上对所有字向量求均值)(经实验,Mean Pooling比Max Pooling和[CLS]效果都好些)获取到每个句子的句向量表示。

文中损失函数用的均方误差MSE(Mean-Square Error):

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值