意义计算的实现
This presentation is the property of its rightful owner.
Sponsored Links
1 / 54

意义计算的实现 PowerPoint PPT Presentation


  • 69 Views
  • Uploaded on
  • Presentation posted in: General

意义计算的实现. 董强 董振东 dongqiang @keenage.com [email protected] www.keenage.com 第一届全国知网研讨会 2008.05.18. 提纲. 相似度的计算 相关概念的计算 知网英汉翻译系统 在意义计算中,一些常用的函数. 容易混淆的两个概念. 词语相关性——反映的是两个词语互相关联的程度,即词语之间的组合特点,它可以用词语在同一个语境中共现的可能性来衡量。 词语相似性——反映的是词语之间的聚合特点。. 什么是概念的相似度.

Download Presentation

意义计算的实现

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


4464344

意义计算的实现

董强 董振东

[email protected]@keenage.com

www.keenage.com

第一届全国知网研讨会

2008.05.18


4464344

提纲

  • 相似度的计算

  • 相关概念的计算

  • 知网英汉翻译系统

  • 在意义计算中,一些常用的函数


4464344

容易混淆的两个概念

  • 词语相关性——反映的是两个词语互相关联的程度,即词语之间的组合特点,它可以用词语在同一个语境中共现的可能性来衡量。

  • 词语相似性——反映的是词语之间的聚合特点。


4464344

什么是概念的相似度

概念相似度是一个主观性很强的概念,会根据不同的应用而产生不同的定义。


4464344

实现方法

  • 同义词

  • 同类词

  • 反义或对义词

  • 抽取参与计算的DEF片段

  • 概念计算


4464344

实现方法—特殊情况

在符合下列情况是直接得出相似度值,无需其他计算:

  • 同义词相似度为1.000000。

  • 同类词相似度为0.950000。

  • 反义或对义词 (仅限于单个义原)

    相似度为0.000000。


4464344

实现方法—抽取DEF

不是所有的概念都是直接拿到DEF就进行计算的,有些概念中存在特殊的动态角色,需要特别的处理。对于动态角色CoEvent,需要用CoEvent 后面的KDML部分作为这个词语的DEF来参与计算,用以建立不同类别词语之间的关系。如:

旅程(名词):

DEF={fact|事情:CoEvent={tour|旅游}}。

旅行(动词):

DEF={tour|旅游}


4464344

实现方法—四个部分

公式:Sim(D1,D2) = (P1*β1+P2*β2+P3*β3+P4*β4)* γ概念相似度的计算分为4个部分来进行。β是每一个部分计算结果的权值。β1+β2+β3+β4 =1,目前我们指定:β1=0.1,β2=0.1,β3=0.7,β4=0.1。γ为惩罚因子。


4464344

实现方法—包含关系的计算(部分1)

两个DEF相互包含关系的计算公式:P1 = 1/LL:包含关系存在的层次


4464344

实现方法—包含关系的计算(部分1)

  • “心理医生”:DEF={human|人:HostOf={Occupation|职位},domain={medical|医},{doctor|医治:agent={~},content={disease|疾病:cause={mental|精神}}}}

  • “医生”:DEF={human|人:HostOf={Occupation|职位},domain={medical|医},{doctor|医治:agent={~}}}

  • “手指”: {part|部件:whole={part|部件:PartPosition={hand|手},whole={human|人}}}

  • “手”:{part|部件:PartPosition={hand|手},whole={human|人}}


4464344

实现方法—概念主类相似度的计算(部分2)

  • 两个概念主类之间的相似度的计算公式:P2 = α / ( d +α ) d为两个主类义原在Taxonomy树上的距离。

    α= 1。

    距离与相似度为反比关系,即距离越近相似度越高。


4464344

实现方法—概念主类相似度的计算(部分2)

“tree|树” :

entity|实体

=> thing|万物

=> physical|物质

=> animate|生物

=> plant|植物

=> tree|树

“human|人” :

entity|实体

=> thing|万物

=> physical|物质

=> animate|生物

=> AnimalHuman|动物

=> human|人


4464344

实现方法—节点相似性的计算(部分3)

DEF的各个节点相似性的计算,这一部分的计算是在整个相似度计算中最复杂,也是权值比例最大的一部分。

具体包含如下三个方面的计算:

  • 同层相同节点的计算;

  • 对于动态角色domain的进一步处理;

  • 两个DEF相同节点数与总节点数的计算


4464344

实现方法—节点相似性的计算(部分3)

  • “患儿”:DEF={human|人:domain={medical|医},modifier={child|少儿}, {SufferFrom|罹患:experiencer={~}},{doctor|医治:patient={~}}}

  • “儿科医生”:DEF={human|人:HostOf={Occupation|职位},domain={medical|医}, {doctor|医治:agent={~},patient={human|人:modifier={child|少儿}}}}


4464344

实现方法—节点相似性的计算(部分3)


4464344

实现方法—节点相似性的计算(部分3)

同层相同节点的计算公式:S1 = Nsim / Nmax / 2x Nsim :同层相同节点数Nmax:同层最大节点数2x :x是层次数那么以上我们所举的例子的计算结果为:S1=1/21 + 0.5/22 + 0/23 + 0/24=0.5 + 0.125 + 0 + 0=0.625


4464344

实现方法—节点相似性的计算(部分3)

对于动态角色domain的进一步处理。

如果两个DEF中都存在domain,并且domain的值也相同,那么不论这两个domain是否在同一个层次,都要再一次对domain 进行计算。公式: S2 = a/ 2xa:相同domain节点个数x:指定为两个DEF的最深层数。上面例子通过计算这部分的相似度值为:S2= 1/24= 0.0625


4464344

实现方法—节点相似性的计算(部分3)

两个DEF相同节点数与总节点数的计算公式:S = a*2/(d1+d2)a:相同节点个数d1 :第一个DEF的节点总数d2 :第二个DEF的节点总数本例中相同节点数为3,总节点数为14。S3= 3*2/14= 0.428571


4464344

实现方法—节点相似性的计算(部分3)

公式:P3 = (S1+S2)*0.7 + S3*0.3根据上面的例子P3 = (0.625+0.0625)*0.7 + 0.428571*0.3

= 0.48125+0.128571

= 0.609821


4464344

实现方法—主类义原框架的计算(部分4)

两个DEF主类义原框架的计算,其计算方法与部分3相同。

├ {ActGeneral|泛动} {act|行动:agent={*}}

│ ├ {start|开始} {ActGeneral|泛动:agent={*},content={*}}

│ ├ {do|做} {ActGeneral|泛动:agent={*},content={*},manner={*}}

│ │ ├ {try|尝试} {do|做:agent={*},content={*}}


4464344

实现方法—惩罚因子

在下列情况下需要对计算结果进行惩罚性修订:

  • 存在否定关系。惩罚因子为0.3。

  • 存在下列指定关系。惩罚因子为0.35。agentpatientexperiencertargetrelevantcontentexistentpartnerpossessorPatientProductPatientContentpossession


4464344

什么是相关概念场

  • 相关是指不同的概念在某种语境中共现的可能性。

  • 相关概念是指词语所代表的概念与哪些概念相关。

  • 相关概念场是一个相关概念的集合,是与一个词语的某个概念相关的所有概念的集合。


4464344

相关概念场的特点

  • 基于概念词语的相关性最终应归结于词语所代表的概念的相关性。

  • 大范围中英文词语各9万多,概念各11万多。

  • 跨语种(cross-language)中文与英文双语的系统。


4464344

相关概念场的应用

  • 语义排歧

  • 文本聚类


4464344

实现方法

  • 从查询步骤来看,可以分为共性查询和个性查询

  • 在查询范围上,共有三个级别


4464344

实现方法—共性查询

共性查询包括同类、反义或对义以及高度相关的动态角色项:domain 、MaterialOf、RelateTo 共性查询在三个级别的查询范围和所有义原类都适合,并且查询范围为第一级时只进行共性查询。


4464344

实现方法—共性查询

动态角色:domain的特殊性


4464344

实现方法—个性查询

个性查询是根据概念主类划分的,共分为:事件、实体、属性、属性值


4464344

实现方法—个性查询(事件类)

第二级查询:

  • 根据DEF主类的节点深度决定查询方式,目前定义为节点深度大于4时进行查询。

  • 抽取DEF中第一层的概念片段进行查询。

    如:“煲汤”


4464344

实现方法—个性查询(事件类)

第三级查询:

  • 根据DEF主类的义原框架进行模糊查询。如:“出阁”

  • 遍历实体类每一个义原的框架,找出包含DEF主类的义原,并以这个义原作为DEF进行精确查询。如:“吃”


4464344

实现方法—个性查询(实体类)

第二级查询:

  • 根据DEF主类进行First方式的查询。如:“禾苗”

  • 抽取DEF中第一层的概念片段进行查询,如果是实体类进行模糊查询,如果是事件类,调用事件类函数进行处理。

    如:“大春作物”


4464344

实现方法—个性查询(实体类)

第三级查询:

  • 抽取DEF中深层的事件类概念片段进行查询。

  • 抽取DEF主类义原的框架的概念片段进行查询。

    如:“天空”


4464344

实现方法—个性查询(属性类)

  • 找出所有属于这个属性的属性值,根据这些属性值进行查询

  • 特别处理“scope”如:“饭量”


4464344

实现方法—个性查询(属性值类)

  • 找出这个属性值所属的属性,根据这一属性进行查询

  • 特别处理“scope”如:“长篇”


4464344

知网英汉翻译系统

知网英汉翻译系统是一个基于规则的翻译系统

三大组成部分:

  • 程序部分

  • 知网知识词典

  • 规则

    程序的三个组成部分:

  • 词法处理

  • 语法和语义分析

  • 译文生成


4464344

词法处理

  • 分词

  • 组词

  • 查单词

  • 短语匹配

  • 信息提取

  • 生词处理


4464344

词法处理—分词

英文分词需要注意的几个问题:

  • 标点符号:“,” “-” “'”

  • 数字:可能是时间

  • 英文句号:“.”


4464344

词法处理—组词

英文中有大量由“-”和“'”构成的词语,如:Al-Qa'ida(“基地”组织)、T-shirt

特例:brother’s


4464344

词法处理—查单词

在真实文本中,英文单词会根据时态、数量、人称的不同而产生不同的变体。

I amreading.He has two books.


4464344

词法处理—查单词

还会因英文语法的需要加上不同的前后缀而产生词性的变体,如:tion、less、ness。


4464344

词法处理—查单词

因词义的需要加上前后缀而产生的变体,如:un、re、mini、micro。


4464344

词法处理—短语匹配

一般情况下词典中保存的短语往往不能直接与真实文本中的相匹配,由于在查单词时已经做了一定的工作,我们可以在此基础上通过排列组合,使词典中的短语和文本中的相匹配。


4464344

词法处理—信息提取

  • 保留词尾信息

  • 保留大小写信息

  • 判定是否为同形


4464344

词法处理—生词处理

  • 普通数字

  • 序数词

  • 时间

  • 未收录名词


4464344

语法和语义分析

组成部分:

  • 主控程序

  • 规则解释器

    特点:

  • 充分利用了知网丰富的词汇信息和强大的语义系统

  • 规则描述语言可以直接引用KDML


4464344

语法和语义分析

在规则中可以对每一个词语的每一个概念做出如下的提问:

  • 指定的词语是否存在或包含某个概念,如:DEF={human|人:{SufferFrom|罹患:experiencer={~}}}DEF>{human|人:{SufferFrom|罹患:experiencer={~}}}

  • 指定词语的概念主类是什么

  • 指定词语的概念主类的上位为某个概念

  • 指定词语的概念主类的父节点为某个概念

  • 概念A是否为概念B的整体


4464344

译文生成

经过语法和语义分析,已得到了句子各成分间的逻辑语义关系,在此基础上,把上述逻辑语义关系,依照汉语的语法和语言习惯,进行适当的添加和调整,最后得出汉语译文。


4464344

在意义计算中,一些常用的函数

  • DEF的存储结构

  • 包含关系

  • 比较关系

  • 片段提取


4464344

在意义计算中,一些常用的函数

DEF的存储结构如下:structS_DEF_NODE

{

WORDDomai;//域

WORDClass;//类

charFathe;//父节点

charExten;//扩展标记,记录从哪个节点扩展出来的

charLayer;//层次;

charS_Off;//子节点起始位置

};

structS_DEF

{

BYTENodeNum;//节点个数

BYTESemeNum;//义元个数

S_DEF_NODENode[Max_Seme_Num];//

};


4464344

在意义计算中,一些常用的函数

包含关系的计算:

  • 用法:int Def_Match( const S_DEF* ApsA , const S_DEF* ApsB , int AiNodeA = 0 , int AiNodeB = 0 )bool Def_Match_Recursion( const S_DEF* ApsA , const S_DEF* ApsB , int AiNodeA , int AiNodeB )

  • 功能:判断DEF_A是否包含DEF_B;判断DEF_A是否从指定节点开始包含DEF_B

  • 参数:

  • 返回值:N>= 0:DEF_A从第N个节点开始包含DEF_B;N < 0:DEF_A不包含DEF_B


4464344

在意义计算中,一些常用的函数

比较关系:

  • 用法:int Def_Compare( const S_DEF* ApsA , const S_DEF* ApsB , int AiNodeA = 0 , int AiNodeB = 0 )

  • 功能:从指定节点开始比较,判断DEF_A 与 DEF_B的大小;

  • 参数:const S_DEF* ApsA:const S_DEF* ApsB:int AiNodeA:int AiNodeB:

  • 返回值:>0: A>B;< 0: A<B ;== 0: A == B;


4464344

在意义计算中,一些常用的函数

片段提取:

  • 用法:void Capture_Def( const S_DEF* ApsDef , S_DEF* ApsRlt , int AiCurNode );

  • 功能:从指定的节点开始提取一个DEF片段

  • 参数:const S_DEF* ApsDef :源DEF; S_DEF* ApsRlt:提取结果 ;int AiCurNode :指定的节点;

  • 返回值:无


4464344

在意义计算中,一些常用的函数

  • 实例一:提取一个部件的整体部分{part|部件:whole={part|部件:PartPosition={hand|手},whole={human|人}}}提取结果:{part|部件:PartPosition={hand|手},whole={human|人}}

  • 实例二:{InstitutePlace|场所:domain={medical|医},{doctor|医治:content={disease|疾病},location={~}}}提取结果: {doctor|医治:content={disease|疾病}}


4464344

谢谢大家欢迎提出宝贵的意见与建议!


  • Login