SimCSE 如何独立进行两次 dropout
Posted
技术标签:
【中文标题】SimCSE 如何独立进行两次 dropout【英文标题】:How does SimCSE do dropout twice indepently 【发布时间】:2021-12-23 03:10:00 【问题描述】:如何将一个输入句子独立地传递给 bert 两次 dropout?
这是我到目前为止所尝试的,输出是相同的。
bert = AutoModel.from_pretrained('bert-base-cased')
tokenizer = AutoTokenizer.from_pretrained('bert-base-cased')
sent_dict = tokenizer('Some weights of the model checkpoint at bert-base-cased were not used when initializing BertModel', return_tensors='pt')
bert(**sent_dict).pooler_output == bert(**sent_dict).pooler_output
【问题讨论】:
【参考方案1】:我忘记了 model.train() :( Dropout 只在训练模式下有效
【讨论】:
以上是关于SimCSE 如何独立进行两次 dropout的主要内容,如果未能解决你的问题,请参考以下文章
EMNLP 2021SimCSE:句子嵌入的简单对比学习 && CVPR 2021理解对比学习损失函数及温度系数
恒源云_[SimCSE]:对比学习,只需要 Dropout?