Discovering Word Senses from Text

2023-10-24 01:40
文章标签 word text discovering senses

本文主要是介绍Discovering Word Senses from Text,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Discovering Word Senses from Text

第一章  简介

    使用词形的词义在很多应用中具有重要的作用,这些应用包含信息检索、机器翻译、问答系统。在之前的方法中,词义通常使用人工构建的词典建立。这种做法使词义有一些不利之处。首先,人工建立的词典通常包含罕见的词义。第二,这些词典缺失许多领域限定的词义。

    一个未知词的意思通常可以从它的上下文中推断出来,这种想法是源于不同的词出现在相同的上下文中更趋向于具有相似的词义。这就是Distributional Hypothesis。

本论文介绍一种叫做CBC(Clustering By Committee)的聚类算法。在这种聚类算法中,聚类的几何中心是聚类成员的子集的特征向量的平均数。这个子集被看作是committee,committee其他的元素是否属于这个聚集。通过仔细选择committee成员,几何中心的特征趋向于成为典型的目标类的特征。

    论文中也提出一种自动评估词义发现的聚类算法。使用WordNet来度量准确率和召回率。

第二章  相关工作

    聚类算法通常被划分为两类:层次聚类和划分聚类。在层次聚类算法中,聚类是通过反复合并最相似的聚类建立的。这类算法根据度量聚类相似度的不同又分为不同的算法。在单链路聚类(single-link clustering)算法中,两个聚类的相似度是它们最相似成员的相似度。在完整的链路聚类(complete-link clustering)算法中,两个聚类的相似度是它们最不相似成员的相似度。在平均链路聚类(average-link clustering)算法中,两个聚类的相似度是两个聚类中所有pair相似度的平均数。这些算法的复杂度是O(n2logn),n是待聚类元素的个数。

    Chameleon是采用动态模型(dynamic modeling)的层次聚类算法。当合并两个聚类时,需要考虑两个聚类的所有pair相似度的和(类似平均链路聚类)。这种方法的一个缺点是非常相似的单pair元素可能造成两个聚类的不恰当合并。一种代替的想法是考虑考虑pair相似度数量超过一个阈值。然而,当有很多相似度恰好超过阈值一点点的时候,这种方法可能造成不可取的合并。Chameleon结合两种方法。

    K-means聚类通常使用在大量的数据集合上,因为它的复杂度是n的线性函数,n是待聚类的元素数量。K-means是划分聚类的一种。K-means算法迭代过程:1.计算每个元素到K个聚类几何中心的相似度,选择相似度最高的作为它的类别,2.重新计算各个聚类的几何中心。K-means算法的复杂度是O(K×T×n),因为初始的几何中心是随机选择的,聚类结果可能在质量上不同。一些初始几何中心可能导致慢的收敛速度或者差的聚类质量。二等分K-means,是K-means的一个变种。初始时只有一个包含所有元素的聚类,迭代选择最大的聚类,并把它划分为两个聚类。二等分聚类算法可以看做是对数据使用α次K=2的K-means。

    混合聚类(Hybrid clustering)算法集合层次聚类和划分聚类。试图得到具有层次聚类的高质量和划分聚类的高效率。

CBC是UNICON的一个派生。

第三章  词的相似度

    使用特征向量来表示每个词。每个特征关联到一个该词出现的上下文。特征的值是点式互信息(pointwise mutual information,PMI)。点式互信息是一种广泛用于分析事件相关的方法,具有针对离散随机变量中相对稀疏的数据分布进行分析的特点。PMI的定义公式如下:

    公式体现了二元关系,反应了x和y的共现频度。

    令c是一个context,Fc(w)是词w出现在上下文c中的频次。上下文c和词w的点式互信息miw,c定义为:

    其中,是所有词和它上下文出现频次的和。显然,mi越大,说明w和c共现的可能性越大。互信息的一个出名的问题是它偏袒出现频次少的词和特征。这里给mi乘一个折扣因子。

    计算两个词wi和wj的相似性使用互信息向量的余弦协同系数(cosine coefficient):

第四章  算法

    CBC由3个阶段组成。在阶段1,计算每个元素的最相似的k个元素。在本论文的实验中,采用k=10。在阶段2,构建一些紧密的聚类,每个聚类的元素构成一个committee。算法试图构建尽可能多的committee,满足的条件是新构建的committee和已经存在的committee不是很相似。如果不满足这个条件,新committee简单的被抛弃。在阶段3,每个元素e被分配给和它最相似的聚类。

4.1  阶段1:寻找最相似的元素

    计算为每对元素计算相似度,构建完全的相似度矩阵明显是二次方的。然而,事实上特征向量是稀疏的,通过索引特征,可以通过特征检索到具有这个特征的元素。为了计算元素e的最相似的K个元素,首先,对元素e的特征按照点式互信息排序,其次,只考虑特征的一个子集,子集中的特征具有最高的互信息,最后,计算元素e和具有子集中特征的其他元素的相似度。因为,大的互信息特征趋向于不在很多元素中出现,我们只需要计算元素对组合的一小部分。使用这种启发,相似词具有低互信息的特征才会被忽略。然而,在实验中,这个并没有对聚类质量造成显著影响。

4.2  阶段2:寻找committees

    在阶段2中,递归寻找紧密的聚类,这些聚类在相似空间中是分散的。在每个递归的步骤中,算法寻找一个紧密聚类集,叫做committee,并且识别没有被任何committee覆盖的剩余元素。这里的覆盖(cover)是指,一个元素到一个committee的几何中心的相似度超过一个阈值。算法递归的在剩余元素寻找更多的committee。算法的输出是所有递归步骤中寻找到的committee的并集。算法的详细步骤如图。

输入:待聚类元素的列表E,通过阶段1计算得到的数据库S,阈值θ1和θ2

Step1:对每个元素e∈E

 

    使用平均链路聚类算法对在S中与e最相似的元素聚类。

    对每个被发现的聚类c,计算得分函数:|c|×avgsim(c),其中|c|是聚类c中元素的数量,avgsim(c)是c中每对元素相似度的平均数。

 

    保存具有最高得分的聚类到列表L中。

Step2:对L中的聚类根据得分降序排列。

Step3:令C是

    对每个聚类c∈L按照排序的顺序

    计算c的几何中心,几何中心的计算方法是对元素的频次向量取平均数,并计算几何中心的互信息向量,计算方法和计算单个元素的相同。

    如果c的几何中心的相似度和已经加入到C中的committee的几何中心的相似度低于一个阈值θ1,那么把c加入到C中。

Step4:如果C为空,完成,返回C。          //为了递归的终止

Step5:对每个元素e∈E

    如果e和在C中的每个committee的相似度低于阈值θ2,把e加到剩余列表R中

Step6:如果R为空,完成,返回C。

    否则,返回C和递归调用阶段2返回值的并集。递归调用使用的参数是R,S,θ12

输出:committee的列表。

 

 

    在步骤1中,得分函数反应更大更紧凑的聚类。步骤2为步骤3提供高质量的聚类。步骤3中,只有和其他committee相似度低于θ1的聚类才被加入到committee中,我们把θ1设置为0.35,步骤4结束递归当在之前的步骤中没有发现committee。步骤5中发现剩余元素,如果没有发现剩余元素那么结束算法,否则进行递归。

4.3  阶段3:把元素分配到聚类

    在阶段3,每个元素e被分配到和它最相似的聚类中(有多个),使用下面的步骤:

C是聚类的列表,初始为空。

S是和元素e相似度排前200的聚类。

While S 不为空{

  令c∈S是和e最相似的聚类

  如果similarity(e,c)<σ

        退出循环

  如果c和C中的其他聚类不相似{

        把e分配给c

        删除e的和c重叠的特征

  }

  从S中删除c。

}

    当计算聚类和元素(或者其他聚类)的相似度,使用committee成员的几何中心(觉得计算方法应该和阶段2中一样)。这个阶段类似于K-means,每个元素被分配给和它最近的中心。与K-means不同的是,聚类的数量不是固定的,聚类中心不变。

    这个算法发现词义的关键是,当一个元素分配到一个聚类c时,e和c特征的交集将从e中删除。这使得CBC发现低频的词义并避免发现重叠词义。

4.4  和UNICON对比

    UNICON也是使用相似元素的小集合构建中心,与CBC中的committee相似。

    CBC和UNICON第一个不同点是UNICON只保证committee之间没有重叠的成员,committee之间的中心可能仍然很近。UNICON通过合并这样的聚类来解决这个问题。

    CBC和UNICON另一个主要的不同点是CBC的阶段3。当某个词有主要词义时,UNICON难发现词的其他词义。

第五章  评价方法

5.1  WordNet

    WordNet是组织成图的电子词典。每个节点称为一个同义词集(synset),表示一个同义词的集合。在synset之间的边表达下位词/上位词关系。如图,为一个synset分配的数,代表,随机选择一个名词,名词属于这个synset或者这个synset之下的synset的概率。这个概率并不在WordNet中,需要使用语料来构建。在统计synset频次时,在WordNet低层的频次很稀疏。使用平滑的方法是,假设给定父节点,兄弟节点时等可能的。

    Lin定义的在WordNet中,两个synset的相似性。

    其中s是s1和s2的共同最近祖先。

5.2  准确率

 

    对每个词,CBC输出一个聚类的列表。每个聚类应当关联到一个词义。准确率是输出聚类实际表征词义的比例。

    为了计算准确率,需要定义怎么聚类才算关联到词义。为了自动决策,把聚类映射到WordNet词义。

    令S(w)是词w在WordNet中的词义(每个词义是包含w的synset)。定义simW(s,u)为一个synset和词u的相似度。

    令ck是聚类c的前k个成员,排名是按照和committee中心的相似度。定义s和c的相似度。

    假设聚类算法把一个词w分配到一个聚类c,我们说c关联到一个正确的词义当

    在实验中,取k=4,θ为变量。词w在WordNet中的关联到c词义是:

    多个聚类可能分配到同一个词义,这种情况只计算他们其中的一个作为正确的。

5.3  Recall

    Recall表述的是正确的词义和实际正确词义的比例。显然,没有方法知道词的全部词义。为了解决这问题,集合了多个算法的结果作为目标词义集。对于一个词w,对有所算法得到的正确词义取并集作为w的词义。

    总Recall是计算每个词的recall的平均数得到的。

5.4  F-值

    F值为:

转载于:https://www.cnblogs.com/Dream-Fish/p/3966096.html

这篇关于Discovering Word Senses from Text的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/271854

相关文章

使用Python实现在Word中添加或删除超链接

《使用Python实现在Word中添加或删除超链接》在Word文档中,超链接是一种将文本或图像连接到其他文档、网页或同一文档中不同部分的功能,本文将为大家介绍一下Python如何实现在Word中添加或... 在Word文档中,超链接是一种将文本或图像连接到其他文档、网页或同一文档中不同部分的功能。通过添加超

python实现pdf转word和excel的示例代码

《python实现pdf转word和excel的示例代码》本文主要介绍了python实现pdf转word和excel的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价... 目录一、引言二、python编程1,PDF转Word2,PDF转Excel三、前端页面效果展示总结一

基于Java实现模板填充Word

《基于Java实现模板填充Word》这篇文章主要为大家详细介绍了如何用Java实现按产品经理提供的Word模板填充数据,并以word或pdf形式导出,有需要的小伙伴可以参考一下... Java实现按模板填充wor编程d本文讲解的需求是:我们需要把数据库中的某些数据按照 产品经理提供的 word模板,把数据

C - Word Ladder题解

C - Word Ladder 题解 解题思路: 先输入两个字符串S 和t 然后在S和T中寻找有多少个字符不同的个数(也就是需要变换多少次) 开始替换时: tips: 字符串下标以0开始 我们定义两个变量a和b,用于记录当前遍历到的字符 首先是判断:如果这时a已经==b了,那么就跳过,不用管; 如果a大于b的话:那么我们就让s中的第i项替换成b,接着就直接输出S就行了。 这样

解决Office Word不能切换中文输入

我们在使用WORD的时可能会经常碰到WORD中无法输入中文的情况。因为,虽然我们安装了搜狗输入法,但是到我们在WORD中使用搜狗的输入法的切换中英文的按键的时候会发现根本没有效果,无法将输入法切换成中文的。下面我就介绍一下如何在WORD中把搜狗输入法切换到中文。

【Python报错已解决】AttributeError: ‘list‘ object has no attribute ‘text‘

🎬 鸽芷咕:个人主页  🔥 个人专栏: 《C++干货基地》《粉丝福利》 ⛺️生活的理想,就是为了理想的生活! 文章目录 前言一、问题描述1.1 报错示例1.2 报错分析1.3 解决思路 二、解决方法2.1 方法一:检查属性名2.2 步骤二:访问列表元素的属性 三、其他解决方法四、总结 前言 在Python编程中,属性错误(At

Excel和Word日常使用记录:

Excel使用总结 表格颜色填充: 合并单元格: 选中你要合并的单元格区域。按下快捷键 Alt + H,然后松开这些键。再按下 M,接着按 C。这个组合键执行的操作是:Alt + H:打开“主页”选项卡。M:选择“合并单元格”选项。C:执行“合并并居中”操作。 插入行: 在Excel中,插入一行的快捷键是:Windows:选择整行(可以点击行号)。按下 Ctrl + Sh

word转PDF后mathtype公式乱码以及图片分辨率降低等一系列问题|完美解决

word转PDF后mathtype公式乱码以及图片分辨率降低等一系列问题|完美解决 问题描述 最近在投一篇期刊论文,直接提交word文档,当时没有查看提交预览,一审审稿意见全是:公式乱码、公式乱码、乱码啊!!!是我大意了,第二次提交,我就决定将word文档转成PDF后再提交,避免再次出现公式乱码的问题。接着问题又来了,我利用‘文件/导出’或‘文件/另存为’的方式将word转成PDF后,发现公式

【信创建设】信息系统信创建设整体技方案(word原件完整版)

信创,即“信息技术应用创新”。我国自主信息产业聚焦信息技术应用创新,旨在通过对IT硬件、软件等各个环节的重构,基于我国自有IT底层架构和标准,形成自有开放生态,从根本上解决本质安全问题,实现信息技术可掌控、可研究、可发展、可生产。信创发展是一项国家战略,也是当今形势下国家经济发展的新功能。信创产业发展已经成为各行各业数字化转型、提升产业链发展的关键。 软件全套资料部分文档清单: 工作安排任

.net MVC 导出Word--思路详解

序言:          一般在项目的开发过程中,总会接收到一个个需求,其中将数据转换成Work来下载,是一个很常见的需求;          那么,我们改如何处理这种需求,并输出实现呢?          在做的过程中,去思考 1、第一步:首先确认,Work的存在位置,并创建字符输出路:             //在的项目中创建一个存储work的文件夹             string