中文抽象语义表示(AMR)简介
语义分析是自然语言处理领域亟待突破的瓶颈。想要做到更加精准的语义分析,一个功能完善的语义表示方法是不可或缺的。而AMR(Abstract Meaning Representation)这一新型的句子语义表示方法,基本具备较完整、较准确地表示一个句子语义的能力,因此成为语义研究界的一匹黑马,备受关注。
在我们了解AMR之前,必须先搞清楚下面几个问题,句法表示和语义表示有什么不同?语义是复杂的,AMR真的能做到语义的完整表示么?对于第一个问题,事实上,很多时候,句法和语义表示是具备相似或相通的地方的,如依存语法,既可以表示出一个句子中不同句法成分之间的关系,也可以表示出不同语义角色之间的关系。
AMR介绍
1 “我吃过饭了”这个句子,其依存分析下的句法和语义结构几乎是完全一致的,只不过不同词之间的关系采用了句法和语义的不同标注体系。句法上,“我”是主语,“饭”是宾语。语上,“我”是“吃”的施事,“饭”是“吃”的受事。但是,这绝不意味着语义表示可以直接套用现有的句法表示方法,事实上,很多时候,语义表示比句法表示需要更加精细地考量。从某种角度看,我们可以把句法表示说成辅助语义理解的过渡工具。这一点,在下面介绍AMR表示方法的特性及个例中大家可以体会到。
文章图片
image 句法依存
文章图片
image 语义依存
2 下面是第二个问题,AMR真的能做到“完整”的语义表示么?答案当然是否定的。首先,说话人想要表达特定的意思,在头脑中构思并通过遣词造句表达出来,然后传递给听者,听者去解析这个句子的意义,这个过程中存在太多的不确定性。女孩子说“讨厌!”未必是真的讨厌,可能是“喜欢”,因为语言毕竟是交际工具,不是独立存在的体系,具有人文色彩,我们不可能把它作为单独的系统拎出来研究。这就使得我们的语义表示只能“相对”完整。
好了,回答完这两个问题后,我们知道了,AMR是一种“语义”表示方法,正在努力“更加”完整地表示句子的语义的道路上探索着,并且这条道路可能是没有尽头的。下面我们来更加具体地认识一下AMR。
3 AMR的基本结构是“单根有向无环图”。将实词抽象为概念作为图上的“节点”,将没有实在意义的虚词抽象为“边”。
我们知道依存句法下的抽象结构是单根有向无环树。“单根”的目的是保证句子语义(句法)的整体性;“有向”是为了保证语义(句法)传递;“无环”是为了避免语义(句法)传递陷入死循环。也就是说,结构上来看,AMR与依存句法的最大区别在于,其突破了树结构。这种结构的突破有必要么?我们以下面这个例子来体会AMR处理方式的原因所在。
文章图片
image “男孩想去学校。在AMR的语义表示方法下,通过“男孩”和“去”之间的一条回边,将二者之间的语义关系表示了出来。所以,我们知道了,AMR结构基于“图”的目的其实是为了保证句子中各个成分之间的语义关系的完整表达。除了突破树结构以外,AMR还有一个巧妙的特性——允许增补概念节点。
文章图片
image 【中文抽象语义表示(AMR)简介】“我画的是一顶帽子”这个句子的语义表示中我们可以看到,通过增加一个虚节点“thing”使得该句的语义更加准确地得到了表达。这也正是句法表示中所不会涉及的。到了这里我们大概知道了AMR的基本结构是单根有向无环“图”,操作上允许增补概念节点,这些特性保证了其在表示句子“语义”时具有“相对“完整性及灵活性。
推荐阅读
- JAVA(抽象类与接口的区别&重载与重写&内存泄漏)
- 《机器学习实战》高清中文版PDF英文版PDF+源代码下载
- Java数据抽象
- EdgeDB 架构简析
- 内存管理
- BLAS|BLAS API 中文文档(2)(待续)
- Maven|Maven test命令 中文乱码
- 歪词解释(老公)
- 教员法则
- C#|10、接口、抽象、密封、开放封闭原则