论文阅读《zero-shot word sense disambiguation using sense definition embedding》

LawsonAbs的阅读与思考,还请各位读者批判阅读。

总结

  • 分成三部分,part1先谈背景知识,part2谈论文内容,part3再谈个人思考
  • 一句话总结本文:将KG知识结合到词义消歧(WSD)的任务中,从而可以让单词离散的释义标注信息更改成连续的embedding表示;同时使用监督学习的方法训练模型,从而得到更好的泛化效果
  • 原文出处:csdn+lawsonabs

part1 背景知识

在谈这篇文章之前,为了更好的理解文章内容,先说几个简单但重要的概念。

1 词义消歧

这一部分可以参考我的博客

2 知识图谱

A Knowledge Graph is typically comprised of a set K of N triples (h; l; t), where head h and tail t are entities, and l denotes a relation.

简单的说:知识图谱是一个由实体+关系集。那么怎么将知识图谱中的信息表示出来呢?

传统的知识图谱表示方法是采用OWL、RDF等本体语言进行描述;随着深度学习的发展与应用,我们期望采用一种更为简单的方式表示,那就是【向量】,采用向量形式可以方便我们进行之后的各种工作,比如:推理,所以,我们现在的目标就是把每条简单的三元组< subject, relation, object > 编码为一个低维分布式向量。(什么是分布式向量?)

3 表示学习

表示学习: 表示学习旨在将研究对象的语义信息表示为稠密低维实值向量,知识表示学习主要是面向知识图谱中的实体和关系进行表示学习。使用建模方法将实体和关系表示在低维稠密向量空间中,然后进行计算和推理。简单来说,就是将三元组表示成向量的这个过程就称为表示学习。【TransE模型】就是【Trans系列】中的一个经典方法。

4 MFS

这是WSD 任务中一个常用的算法名,其全称是(Most-Frequent-sense)。
MFS这种策略就是用训练集中某个word最常用的sense来作为测试集中这些word的sense。这个算法的好处就是简单直接,但显而易见算法存在明显的不足。

5.lexical sample / all-words task

这两个术语是对wsd任务的一个应用范围的描述。

5.1 lexical sample

在Adam Kilgarriff 的论文《English Lexical Sample Task Description》中,对这个任务进行了一个描述:
在这里插入图片描述在这里插入图片描述

5.2 all-words task

指的就是对应需要消歧的单词全部做一下消歧(听起来别扭),通常就是处理名词,副词,形容词,动词。

概括两个任务,主要有两个小点:

  • 这两个概念应该都是来自于semeval
  • 二者应该只是在消歧词语的数据范围上有差别

6 discrete label


part2 论文内容

0 摘要

首先需要明白WSD的任务。上面已经叙述过,不再赘述。
为什么提出EWISE方法? 因为当前的WSD算法都是基于 discrete label,为了提高效率,所以引出了这个基于word sense embdding 的算法,从而解决只在测试集中出现的sense无法被准确预测的难题。

1 介绍

1.1 wsd

不再介绍~

1.2 传统方法

  • 传统的监督算法
    在这里插入图片描述
    discrete label是针对wsd任务中的传统监督、半监督算法而言的,我查阅相关资料,得出的结论是:discrete label指的就是one-hot向量。

  • 半监督算法
    从

但无论是之前的哪种算法,只要是使用了discrete label,那么就存在问题(This leads to poor performance on rare and unseen senses.)。为了解决这个问题,从而引入了当前的这个EWISE方法。该方法的创新点是:使用word sense definition 的embedding 作为target,从而达到一个比较好的泛化效果。

2.相关工作

分成监督WSD,半监督WSD,但是这些算法都依赖于 释义标注 的数据,同时使用没有标注的语料库。

2.1 Lexical resources

lexical resource 为words以及它们的含义提供重要的支持,所以 EWISE 就是利用了字典定义去捕获单词的含义。但是这并非字典释义第一次用于WSD任务上,早在Lesk算法,字典定义就已经被使用在WSD上了。那么EWISE 和这些方法有什么区别呢?主要有两点:

  • EWISE 使用定义的embedding 作为target embedding,这是一个监督学习训练过程。
  • 不依赖于任何重叠假设(指:某个单词的释义与其上下文有很大的重叠),而是仅靠WordNet 提供的单个释义

当然也有其它的一些方法用于获取这个 continuous representations for definition。文中会评判这些方法(包括像elmo,bert等)的效果

2.2 Structural Knowledge

我不清楚这是指什么样的知识。

文中先说有数种方法使用 structural knowledge 来做WSD。基于图的技术被用于匹配word 成最相关的sense。但是EWISE 与其不同的点是:

  • use structural knowledge to learn better representations of definitions

2.3 主要贡献

  • predicting in an embedding space(key claim)
  • allowing generalized zero shot learning capability【因为没有再使用标注的数据了,而是直接是用wordnet中的释义信息】
  • incorporating definitions and structural knowledge

3.算法

3.1 主要框架

每篇论文中最主要的就是算法框架了,那么我们来看看这个框架。
在这里插入图片描述
这个框架主要分成两部分:

  • Attentive Context Encoder
  • Definition Encoder

3.2 Attentive Context Encoder

也就是获取某个单词带有上下文的表示(也就是融合了上下文的信息),用的是 BiLSTM + self-Attention 方法。

3.3 Definition Encoder

获取某个word sense definition 的embedding表示,作为一个target embedding。

3.4 训练

3.4.1 KG部分啥作用?

根据上述的输入数据,就可以开始训练整个模型。那么问题来了:Knowledge Graph Embedding 这个部分是干什么的?我们在得到target embedding 的时候,不一定能够得到自己满意的embedding,所以需要结合KG来获取这个embedding。这个KG 也就是WordNet。具体的交互细节是什么?下面慢慢说。

TransEConvE 方法,可以借鉴博文学习。简要说一下这些算法那就是:二者都是在三元组<h,l,t>上定义了一个打分函数,用于表示hl的某种操作到t的距离。然后二者使用不同的距离函数和损失函数,在训练的过程中来减小损失,从而达到一个比较好的效果。从而能够将一个知识图谱降维表示成带有强关系的向量。

3.4.2 训练步骤

整个训练过程可以用下面的一段话来描述:

  • 有一句文本,使用BiLSTM 得到需要消歧词(假设这个词是A)的embedding表示
  • 把这个embedding做一系列的处理(依次是:同其他词做self-attention => 拼接 => 线性投影),然后就得到了最终的一个向量 u i u^i ui,也就是图中的 sense embedding prediction,我们记其为x。
    在这里插入图片描述
  • 通过wordNet 获取某个单词的sense inventory,通过训练好的Definition Encoder 将这些sense 分别转换成sense embedding,这个sense embedding就是文中说到的target embedding,也就是模型中数据的“标签”,记其为y
    在这里插入图片描述
  • 将x和y做一个点乘操作,对结果取softmax操作,然后使用交叉熵损失函数计算损失,从而迭代更新参数

4.数据&实验

这部分没啥好说的,主要是围绕EWISE的 key claim — the abilitiy of disambiguate unseen and rare words来设计实验。

  • WSD on Rare Words【如果测试集中出现的单词没有在训练集中出现该怎么处理?】
  • WSD on Rare Senses【如果测试集中出现的单词的含义没有在训练集中出现该怎么处理?】
    因为本算法的特性,所以可以直接处理上述两种情况而不用使用其他算法(如MFS)来处理特殊情况。

part3 思考

5.个人思考

  • 数据越多,训练效果越好。这句话仿佛就是黄金准则。但是数据并不一定要完全靠标注而来,能否依靠其它的资源呢?比如:词典,语句自身的结构信息?
    可以看到有很多工作都是在充分利用这些信息从而达到一个较好的效果。

7.参考资料

  • https://blog.csdn.net/weixin_40871455/article/details/83341561 【用于介绍TransE算法,不错的入门资料】
  • https://www.aclweb.org/anthology/P19-1568/ 【论文地址】
  • https://www.aclweb.org/anthology/S01-1004.pdf 【lexical sample task的介绍】
  • https://zhuanlan.zhihu.com/p/54657158 【介绍lexical sample task 和 wordNet中常见的一些概念】

猜你喜欢

转载自blog.csdn.net/liu16659/article/details/109730175