paper: KBGAN: Adversarial Learning for Knowledge Graph Embeddings
本文是清华大学的一名同学发表在 NAACL(虽然是 C,但是是北美的 ACL) 2018 上的一篇文章,提出了 KBGAN,首次使用生成对抗网的思想做 KGE,效果一般,但是想法很新颖。具体是用两个 KGE 模型,一个作为生成器,生成高质量的负样本,用于第二个模型的训练。
普通的负采样方法,对正样本三元组的头实体或尾实体从实体集中随机采样替换,生成的负样本是很明显的错误样本,很容易通过实体的类型区分开来,比较“高级”的负样本是尽量“替换同类型实体”的负样本三元组。
Trans 系列 KGE 模型的 loss 是 margin-based 的,训练时候正负样本是一对一的,不好的负采样方法会使它们性能差;而双线性模型(如 ComplEx 和 DistMult)训练时一个正样本对应多个负样本,负样本的好坏对其没有太大的影响。
生成对抗网(Generative Adversarial Network, GAN)最初提出被用于图像领域。一个 GAN 包括两部分:生成器(generator)和判别器(discriminator),生成器接受噪声输入,尽量生成看起来 real 的图像来欺骗判别器,判别器的作用是对生成器给出的样本做分类,尽量