【发布时间】:2021-03-26 19:00:46
【问题描述】:
虽然迁移学习/微调最近的语言模型(例如 BERT 和 XLNET)是一种非常普遍的做法,但这对 GloVe 来说如何?
基本上,当使用 GloVe 获得可供下游 NN 使用的密集向量表示时,我看到了两个选项。
1) 微调 GloVe 嵌入(在 pytorch 术语中,启用渐变)
2) 只使用没有梯度的嵌入。
例如,给定 GloVe 的嵌入矩阵,我会这样做
embed = nn.Embedding.from_pretrained(torch.tensor(embedding_matrix, dtype=torch.float))
...
dense = nn.Linear(...)
最好的做法是单独使用 GloVe 来获得向量表示(并且只训练密集层和可能的其他层)还是也可以微调嵌入矩阵?
【问题讨论】: