APP下载

基于自然语义的词句含义分析系统综述

2015-08-08石磊张燕平黄燕孙晓濛

电脑知识与技术 2015年15期

石磊 张燕平 黄燕 孙晓濛

摘要:随着互联网的迅速发展,网络资源的海量增长,传统的搜索引擎已不能满足提供用户满意的结果界面,与用户关心的自然语义的词句含义分析系统应运而生。该文研究了基于自然语义的词句含义系统的基本架构以及基本实现方法,并在此基础上设计了系统的各个模块。

关键词:自然语义处理,中文分词,词句含义分析,

中图分类号:TP391 文献标识码:A 文章编号:1009-3044(2015)15-0128-02

Abstract: With the booming development of the Internet, the resource of the Internet increased rapidly. The traditionally search engine are not able to satisfy the needs of the users, as a result, the expressions-analysis system system based Natural Language Processing appears. This article describes the basic architecture and the method to achieve it. Furthermore, we designed every part of this system.

Key words: natural language processing, Chinese word segmentation, expressions analysis

随着网络技术的发展,互联网上的资源也以指数形式增长,如何从海里的信息中提取用户想要的信息是传统搜索引擎最关心的事情,然而传统搜索引擎由于自身采用的关键字匹配,模糊匹配等算法已不能满足用户的需求,所以基于用户的自然语义处理系统应运而生。此系统旨在通过用户输入的语句,通过分词、同义词扩展等技术实现语句的含义分析,从而改进传统搜索引擎只能通过关键词匹配返回用户所求的不足。

1 词句含义分析系统研究原理

1.1 词句含义系统的原理

词句含义分析系统包含语句处理、信息检索、结果显示、数据挖掘等模块。其主要模块是语句处理模块,其中涉及的技术有关键词提取,同义词匹配两个步骤,基本体系结构如图1。

语句处理系统是指对用户提出的语句进行处理,得到语句的含义分析结果,其中包含关键词提取,同义词扩展,相似度比较三个子模块。关键词提取是指对用户提出的语句中的关键词进行提取,包括分出其中的主语,宾语,谓语等关键词语;同义词扩展是将分词得到的结果进行扩展,使得用户关心的问题得到扩展;相似度比较是将所得结果与原语句进行比较,去除相似度较低结果,使得语句处理的结果更加准确。

1.2 关键词的提取

关键词的提取时词句含义系统最重要的环节之一,在这一环节中,我们将给定的一句话通过分词程序分成若干个关键词,同时将其进行词性标注,部分用于后续的同义词扩展,部分不需要的舍弃。

中文文本的分词和词性标注是自然语义处理中一个基础性问题,因为中文文本不同于英文文本,英文中直接采用空格切分,所以在词句含义系统中将等间距排列的汉字序列切分开来就是中文分词问题[1]。

中文分词的主要方法可以总结为:基于规则的分词方法、基于统计的分词方法、基于规则和基于统计相结合的方法等等。

自然语言的自动分析是指计算机接收到自然语言文本后,自动将文本的“意思”表示出来的过程。纯粹从形式上看,就是将输入的自然语言文本,变换为另一种表示形式输出的过程。对于自动分析而言,其输入为自然语言的句子,这一点是没有争议的,明确的;其输出则是对于输入的自然语言文本的一种解释。而如何来解释自然语言,则有许多不同的看法,这些不同的看法的背后实际上都联系着不同的语法理论。大致说来,当代为数众多的语法理论可以做如下粗略的划分

其中NLU的基本方法有以下两种:

1) 构建语言模型:这部分工作的理论基础主要是上下文无关文法(context free grammar),即以文法的形式给出语言成分之间可能存在的组合模式的描述。

2)搜索符合文法要求的语言结构树:依据给定的文法,判断一个具体句子中的语言成分(词语和词组)符合该文法的哪些组合模式。

例1:汉字序列:×××打人弟子被刑拘词序列:××× 打人弟子被刑拘词性序列: ×××/n 打人/v 弟子/n 被/p 刑拘/v在词性序列的基础上,计算机就可以按照语言模型中规则的约束,从左至右,逐词扫描,进行分析,在众多的候选树结构中,搜索得到“正确”的结构,来解释句子的意思。以下就是计算机根据语言模型分析例1的过程:

1.3 同义词的扩展

同义词的扩展时自然语义处理中一个最重要的环节,在这一环节,我们将分词所得的结果通过同义词扩展找到一系列的结果,使得语义理解成为可能。

同义词扩展就是指用人工构造同义词库、蕴含词库等辅助词库,或是从语料库中自动取得同义词关系,使得检索系统能自动“联想”到与其同义或名一意思相近的词,提高信息匹配的准确度,从而提高检索系统的整体性能[2]。

本系统依据《哈工大信息检索研究室同义词词林扩展版》进行手工建立同义词词典,使得当用户输入预想的关键字时,检索系统会自动检索同义词词典,然后得到一系列同义词,此为同义词的扩展。此阶段主要分为两个步骤,一个是同义词词典的建立,另一个是同义词扩展的实现。

在同义词词典的建立阶段,《哈工大信息检索研究室同义词词林扩展版》将所有收录的词条按照树状的层次结构组织在一起,将词汇分为大,中,小三类,每个小类中都有很多词汇,这些词又根据词义的远近及相关性分为若干段落,每一段落又分为若干行,同一行的词汇的词义或者相关性都很相近。因此词汇的关系分为三种情况:=,#,@,分别表示相等,同义,不等。

同义词扩展的实现阶段的核心代码是编写一个动态链接库文件(dll)文件,通过代码调用同义词词典。

1.4信息检索

在信息检索阶段,我们将同义词扩展阶段所得的结果通过本地数据库搜索,接口调用,搜索引擎等方法显示出来,实现信息的检索。

在这一阶段,首先考虑本地数据库搜索方式,通过数据库结构优化,建立索引等方式,加快数据库的搜索,从而提高返回结果速率。如果在数据库中搜索不到相关结果,将考虑调用接口的方式,返回相关结果,如用户输入“今天该穿什么衣服?”,本地搜索失败,将自动调用墨迹天气接口,将相关结果返回给用户;又如用户输入“到安徽大学应该怎么走?”本地搜索失败,将自动调用百度地图接口,将相关结果返回给用户。最后,如果前两个方法都得不到用户需要的结果,将自动调用搜索引擎,将同义词扩展得到的结果利用搜索引擎搜索得到相关结果,返回给用户。

2 结束语

自然语义的处理的基础是关键词的提取以及同义词的扩展两个部分,用户通过输入一句话,通过分词提取语句中相关的词汇,然后进行扩展,体现语义理解。在这两个阶段都解决的情况下,将相关结果进行信息检索,从而将相关结果返回给用户,实现自然语义词句含义分析。

但是,在此系统中同样存在一些问题,如返回结果可能会延迟,部分搜索结果可能不准确等问题。就像用户输入“我的心里很温暖”等语句系统可能会根据温暖一次返回相关天气情况,与用户所指有所不同,这就是机器的自然意义理解与人的差距。因此在未来的自然语义理解的研究方向中,如何让机器像人一样思考还是我们研究的方向和重点,亟待我们积极探索。

参考文献:

[1] 王恒.中文问答系统的研究与实现[D].哈尔滨:哈尔滨工业大学, 2008.

[2] 赵医娟, 潘来奇. 基于同义词扩展的文本检索改进研究[J]. 技术在线, 2011, 20(12):65-68.

[3] 梁晓诚,岳晓光,麦范金, 等. 基于NLP技术和相似度计算的智能搜索引擎研究[J]. 昆明理工大学学报,2010,35(4):76-79.

[4] 刘里,曾庆田. 自动问答系统研究综述[J],山东科技大学学报,2007,26(4):73-76.

[5] 陈周娟,续海峰,钮王杰.基于静态知识库的领域内自然语言理解的语义处理研究[J].机床与液压, 2007,35(7):37-40.

[6] 谢正文. 中文问答系统关键技术研究[D]. 宁波: 宁波大学, 2012.