使用knowledge-based方法提升词向量的生成质量

最近看了清华大学刘知远老师团队在2017年顶会ACL上发表的最新成果《Improved Word Representation Learning with Sememes》。之所以题目叫做knowledge-based的方法来提升词向量的生成质量,是因为在这篇论文中利用了Hownet词典所关于现实世界中所有实体之间的关系信息,下面首先来介绍一下Hownet词典。

Hownet
在《Hownet》有三个主要的概念,即sememe(义元),sense(词义)和word(词语)。三者的关系可以从下图的例子看出
这里写图片描述
word(苹果)包含了两个sense,sense1是水果,sense2是电脑。对于每一个sense来说是由sememe来描述其属性,这些属性通过比价复杂的层级结构来对目标sense进行说明。在这篇paper中,为了简化,省去了这些复杂的层级结构,将每个sense对应的sememe看成是一个集合。从中我们可以知道,在hownet的描述体系中,sememe是最小的描述单元,相似的sense会包含相同的sememe,这些sememe就相当于是整个世界所有事物最基本的单元(个人感觉和中学化学中学到的元素有些类似,世界上所有的事物都由元素组成)。而且sememe的数量相对词语的数量来说是非常有限的,在hownet中大概就是几百个。

既然引入了sememe的概念,下一步就要把这些信息引入到词向量的生成过程中去,而所谓的knowledge-based方法指的就是sememe和其对应的sense之间的描述关系。需要注意的是,作者是根据word2vec的skip-gram架构进行改造的,下面就先来简要的介绍一下skip-gram语言模型的原理,该模型的整体需要优化的函数如下所示:
nKi=KlogPr(wik,....wi+K|wi)
其中K代表了滑动窗口的大小,它定义了target词语所对应的上下文的范围,也就是说它的整体目标是利用当前词语target,来最大化的预测其上下文的信息,skip-gram对于上下文的信息做了简化处理,即从K大小的窗口内随机抽取一个词语来作为其上下文的替代,故上面的最优化式子简化如下:
Pr(wik,.wi+K|wi)=wcC(wi)Pr(wc|wi)=wcC(wi)exp(wc.wi)wjDictionaryexp(wi.wj)
在介绍完了传统的skip-gram框架之后,就开始介绍这篇paper提出的框架。
这篇paper一共提出了三种融入了sememe的框架结构,需要注意的是在任意一种框架之中都会有word embedding 和sememe embedding两种向量,两种向量都会随着模型的训练进行微调,最后有用的只是word embedding,而sememe embedding只是在训练过程中起到了辅助的作用:

1 Simple Sememe Aggregation Model (SSA)
从名字上可以看出,这种模型比较简单。在传统的skip-gram模型基础之上,对target word部分进行改造,使用target word 由对应的所有sense包含的所有的sememe embedding相加求均值得到,target word w的sememe生成方式如下:
w=1ms(w)ixsijswixsij
其中 s(w)i 代表了词语w的sense集合中的第i个元素, xsij 代表了sense si 中的第j个sememe。
和传统的skip-gram相比,这种方式里sememe向量会被一些词语共享,模型可以利用sememe之间的共享信息来表征词语之间的某些语义关联关系。在这种模式之下,拥有相同sememe的词语最终会有比较相似的向量表征形式。

2 Sememe Attention over Context Model (SAC)
从名字可以看出,在这部分应用了attention机制,而且是在context内容上进行应用的。因为在上面的SSA模型中,target word直接由对应的所有sense包含的所有的sememe embedding相加求均值得到,就没有考虑到这个词语所对应的sense之间重要关系。因为对于一个词语的表征,在不同的语境中其对应的sense集合中的元素之间的重要性也是不同的,这里很好的应用了attentin机制来对于重要性进行标识,模型如下所示:
这里写图片描述
从图中可以看出,一个词语的sense向量是由其对应的sememe向量直接相加求均值得到。然后三个不同的sense向量s1,s2,s3通过attention机制相加得到最终context的word 级别的embedding形式,具体三种权值的大小的选取由这三种sense向量和target 向量的相似程度得到,计算公式如下:
wc=|S(wc)|j=1att(swcj).swcj
att(swcj)=exp(w.swcj)|S(wc)|k=1exp(w.swck)
其中, |S(wc)| 代表了 wc 包含的sense数量, w 代表了target word对应的word embedding。

3 Sememe Attention over Target Model (SAT)
从名字可以看出,这部分同样应用了attention机制,而且是在target上应用的。和SAC不同的是,这里是应用context去对target word的sememe 形式的生成进行挑选,模型如下:
这里写图片描述
从图中可以看出,SAT和SAC模型正好是互相对称的,但是需要注意的是,这里作者在应用context信息的时候,不是从上下文随机挑选了一个词,而是应用了一定窗口内的词,这样的context可以更好的去生成target word 的向量表征形式,公式如下:
w=|S(w)|j=1att(swj).swj
att(swj)=exp(w.swcj)|S(w)|k=1exp(wc.swk)
其中, |S(w)| 代表了 w 包含的sense数量,wc代表了 w的context信息,由下式生成:
wc=12Kj=i+Kj=iKwj ji
其中i是当前target 词语的位置

上面就是提出的所有模型,经过试验的反复验证,确实引入了hownet信息的词向量质量相对于传统的方法来说更好一些,特别是对于词频比较低的词语,因为它们会和一些词频高的词语共享一部分sememe,故模型对于低频词来说会有比较好的适应性。
(ps:刘老师团队的人都非常nice,中间因为论文的内容和他的团队有过多次的邮件交流,刘老师总是耐心的解答,感觉真是获益良多。)

回答1: 知识库系统(Knowledge-based systems)是一种基于人工智能的计算机应用程序,它利用事先编写好的知识库(knowledge base)和推理机(inference engine)来解决特定领域内的问题。 知识库系统通常由三个部分组成:知识库、推理机和用户界面。知识库包含了一个特定领域内的知识和规则,这些知识和规则是由专家或知识工程师编写的。推理机根据用户提供的问题或情况,在知识库中搜索相关的知识和规则,并基于推理机中的推理规则进行推理和推断。用户界面允许用户与知识库系统交互,提供问题或情况,并获取系统的解决方案或建议。 知识库系统被广泛应用于各种领域,如医学诊断、金融分析、法律咨询、工程设计等,它可以帮助专业人员快速准确地解决特定领域内的问题。 回答2: 知识基础系统(Knowledge-based Systems)是一种使用先前获得的知识或经验来解决问题的人工智能技术。开发这样的系统需要使用专门的编程语言和工具来模拟人类的思维过程和决策过程。 知识基础系统是在人工智能领域非常重要的一部分。这种系统通过规则库,数据库和推理机构来模拟人类的推理过程,将专家的知识与计算机的处理能力结合起来,使计算机具备一定的“智能”。 知识基础系统具有以下几个方面的特点: 1. 高度可定制化:系统能根据不同问题的需求灵活更改动作、规则、知识库等内容,满足特定需求。 2. 可扩展性强:知识库中的知识是可以被不断丰富的,因为知识库可以从更多的域中吸收新的知识。 3. 可解释性强:该系统的决策过程是通过规则库和知识库进行的,因此可以经过一个透明的过程来解释系统的决策。 4. 面向任务:知识库中的知识都是与任务相关的,因此系统能够快速地回应用户的具体需求。 知识基础系统可以应用于许多不同的领域,如医疗、制造业、金融服务、交通、能源等。在这些应用领域中,知识基础系统可以为用户提供更加准确和高效的服务,提高工作效率,减少错误率。 未来,知识基础系统将会面临更多的挑战,例如技术应用越来越复杂,不断涌现的新技术需要不断升级、更新和迭代。但是,随着技术的不断发展和人工智能的普及,知识基础系统将在各个行业得到更广泛的应用,成为解决问题的重要手段。 回答3: 知识库系统是一种基于机器学习技术和知识表示方式的计算机程序,可以通过存储和使用专家的知识,自动地解决那些需要专业知识的问题,并为普通用户提供相应的决策支持。 在知识库系统中,专家知识被捕捉并表示为一些规则、框架、图形、网络或其他形式,这些知识与专家文献、判例、实验数据等有关。在该系统中,专家知识被存储、管理和使用,以便在需要时自动解决所涉及的特定领域的问题。 知识库系统常常应用于诊断领域、规划领域和控制领域等,它们能够在实时解决重要的问题,提高生产效率,减少人为的误差,提高产品质量,满足客户的需求。 此外,知识库系统在社交网络、人工智能等领域也有广泛的应用。例如,在社交网络中,许多企业和人们都利用知识库系统来推广产品,提高用户体验,从而达到更好的销售目标。在人工智能领域,知识库系统被广泛用于智能家居、机器人等领域,它们利用已有的专家知识,实现自主决策、规划和控制,帮助人们更好地完成任务,提高生活质量。 综上所述,知识库系统是一种基于专家知识的计算机程序,它们可以在需求时自动解决相关领域的问题,提供有效的决策支持,并在现代社会中扮演着重要的角色。
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值