读SBERT论文的一些报告
其次,在计算上,有与BERT是做NSP任务上是两个句子投入到BERT里面算,那么总共需要计算次数就是n*(n-1)/2次,1w的句子需要49995000次运算,作者用V100GPU上花了65h。原文是这样描述:
而作者在文章中夹带用SBERT计算1w个句子向量只需要5s,然后就散cosine相似度约0.01秒,原文描述如下:
从bert和Sbert结构上看
原生bert的计算句子向量结构图:
而SBERT分开两个网络,彼此独立计算句子向量,也就是它的复杂度是O((lenA)2 +(lenB)2),计算完后句子向量,可以直接计算cosine相似度。
而这种结构就是使用孪生的网络,下图两个bert网络共享权重,即这两个编码器都是一样的。
关于孪生网络和sentence bert这个介绍,老师您可以看