FlagEmbedding icon indicating copy to clipboard operation
FlagEmbedding copied to clipboard

关于CLS和MEAN_POOLING的问题

Open blue-vision0 opened this issue 1 year ago • 3 comments

请问在使用embedding模型作为向量召回的场景中,为什么大家都默认是使用CLS作为最后的返回结果,而不是使用MEAN_POOLING或者FIRST_LAST_AVG等其它呢? 有数据表明CLS是大多数场景的最优吗?作者是怎样看待这个问题的呢?

blue-vision0 avatar Jan 23 '24 07:01 blue-vision0

CLS 和MEAN_POOLING都是常用的做法。实际上,在经过训练后,各种方式差距并不大,选择一种简单的方式即可。不过要注意训练和测试使用同样的pooling方法。

staoxiao avatar Jan 23 '24 09:01 staoxiao

那请问bge-embedding的finetune训练脚本中默认使用的是CLS吗?

blue-vision0 avatar Jan 23 '24 09:01 blue-vision0

是的

staoxiao avatar Jan 23 '24 09:01 staoxiao