我试图获得伯特的句子嵌入,但我不太确定我是否做得好。是的,我知道,已经存在这样的工具,如伯特作为服务,但我想自己做,并了解它如何运作。
假设我想从下面的句子"I am“中提取一个从单词嵌入中嵌入的句子。据我所知,伯特以(12,seq_lenght,768)的形式输出。我以(1,768)的形式从最后一个编码器层提取了每个单词嵌入。我现在怀疑的是从这两个字向量中提取句子。如果我有(2,768),我应该把dim=1和得到一个向量(1,768)吗?或者将两个单词(1,1536)连在一起,并应用一个(平均值)池,得到(1,768)形状的句子向量。我不确定什么是正确的方法是获得这个给定的例子的句子向量。
发布于 2019-10-31 04:44:04
据我所知,伯特在其源代码中有一个注释行:
用于分类任务时,使用第一个向量(对应于
[CLS])作为“句子向量”。请注意,这只是有意义的,因为整个模型是微调的。
由[CLS]提供的句子嵌入,没有任何组合或处理从所有的词向量在句子中。
希望能帮上忙。
https://stackoverflow.com/questions/58168936
复制相似问题