Knowledge Base Completion Meets Transfer Learning

  • 来源:EMNLP21
  • 机构:牛津
  • 任务:KBC
  • 动机:kbc 都是 dataset-specific,这篇文章希望在一个大的 general dataset 上预训练,然后迁移到各个任务(KBC,OKBC)(finetune 或 0-shot)
  • 方法:比较简朴
    • 要在 OKBC 数据集上 pre train 的 encoder 有两种:
      • noencoder:给每个实体和关系都随机初始化一个 embedding
      • GloVe 组成 word embedding,接一层 GRU 作为 a mapping from entity and relation names to their KB embeddings,后面再接现有的 KGC 方法
      • 原先直接 KB embedding 的参数量是跟图上节点数量正相关的,加 GRU 之后,参数量跟词表大小正相关,这在大图里能节省很多内存
    • 迁移的时候都还得有 GRU 结构,对于以上两种 encoder:
      • 用预训练的 GRU 生成一组 embedding
      • 整体 finetune GRU
  • 实验
    • 预训练得到的模型在 OKBC 效果就很好,并且比原先那种用 MLM objective 预训练的效果好
    • 迁移表现:
      • 对比不 pre train 的,尽管 lr 更小,但收敛更快
      • mlm pretrain 的太慢了,无法满足 KBC 的要求
    • 0-shot 感觉都是几乎不可用的状态

发表评论