1、第9章 中文和跨语言信息检索第9章 中文和跨语言信息检索9.1 中文预处理9.2 中文信息检索9.3 跨语言信息检索9.4 小结思考题第9章 中文和跨语言信息检索9.1 中文预处理中文预处理中文信息有其特殊性,它和英文信息有很大的差别,所以,中文信息检索和英文信息检索的基本原理虽然大同小异,但是针对中文信息的特别处理却是必不可少的,直接影响检索效果。中文网络信息检索和英文网络信息检索在机制和原理上基本一致,但由于中文本身的特点,必须引入针对中文的特殊处理技术,中文编码转换和中文分词是两个重要的中文处理技术。第9章 中文和跨语言信息检索9.1.1 中文编码及转换中文编码及转换网页的源代码以文本文
2、件的形式存放在Web服务器,在网页的HTML源码中通过“Content-Type”属性标注该网页所用的编码方式,下面给出一个以GB 2312编码的中文网的源代码的头部:html head titleContent-type的说明/title meta http-equiv=Content-Type content=text/html;charset=gb2312可以通过对charset设定不同的值,对网页的编码信息进行标注。第9章 中文和跨语言信息检索中国大陆主要采用的编码是GB 2312、GBK、GB 18030,其中GB 2312最常用,而中国台湾地区则长期采用BIG5 码。20世纪80年
3、代,国家质量技术监督局颁布GB 2132中文简体字集标准,收录了6763 个汉字及682个符号。1995年,国家补充制定了汉字扩展规范GBK,共收录了21 886 个汉字和符号。2000 年,国家质量技术监督局颁布GB 18030取代GBK,收录了27 484 个汉字,还收录了藏文、蒙文和维吾尔文等主要的少数民族文字。这3类编码方法是向下兼容的,即同一个字符总是有相同的编码。下面对这几种编码作个简单的介绍。第9章 中文和跨语言信息检索1.中文编码标准中文编码标准1)GB 2312 1981年我国国家标准总局颁布了信息交换用汉字字符集基本集,即汉字国标码GB 2312。GB 2312使用最普遍的
4、中文代码,该标准编码字符集共收录了6763个汉字和682个图形符号,共7445个符号。GB 2312提供了每个汉字的标准代码,收入汉字信息交换用的基本图形字符,采用一字一码的原则,具体包括:一般符号、序号、数字、拉丁字母、日文假名、希腊字母、俄文字母、汉语拼音符号、汉语注音字母及简化汉字6763个。除了基本字符集外,GB 231280还包括各种辅助集:GB 1234590、GB 758987、GB 131311991、GB 759087、GB 131321991。第9章 中文和跨语言信息检索2)GBK1995年,颁布GBK 编码标准,它完全兼容GB 2312,在全部采用了GB 2312的符号基
5、础上,共收录汉字21 003 个、符号883 个,并提供1894 个造字码位,将简、繁体字融于一库之中。GBK是中文编码扩展国家标准。3)GB 180302000年,颁布GB 18030标准,即信息技术 信息交换用汉字编码字符集基本集的扩充,是我国继GB 2312之后最重要的汉字编码标准,是我国计算机系统必须遵循的基础性标准之一。GB 18030共收录了27 484 个汉字,总编码空间超过150 万个码位,为解决人名、地名用字问题提供了方案,为汉字研究、古籍整理等领域提供了统一的信息平台基础。第9章 中文和跨语言信息检索4)BIG51984年,我国台湾地区财团法人资讯工业策进会和5家资讯公司共
6、同创立了五大码,其英文名称为“BIG5”,后称为大五码,是繁体中文的编码标准。我国台湾、香港等地区常用该码。BIG5包括440 个符号、5401个一级汉字、7652个二级汉字。第9章 中文和跨语言信息检索5)ISO/IEC 10646ISO/IEC 10646 是国际编码标准,也称信息技术 通用多八位编码字符集(GB 13000),是全新的编码体系,采用4 个“八位”(即4 个字节)编码方式,统一编码世界上的主要文字。这4个字节分别表示组、平面、行和字位,每个平面含65 536 个码位空间,其中00 组00 平面称为基本多文种平面(BMP),编码空间总共2 147 483 648 个码位(12
7、8 组256 平面256 行256 字位)。在基本多文种平面中包括27 484个汉字和我国少数民族文字(藏文、蒙文、彝文)等,其中藏文基本集194 个字符,蒙文基本集155 个字符,彝文1215 个字符。第9章 中文和跨语言信息检索6)Unicode对于采用了不同字符编码标准的系统,必须经过字符码转换。例如:中英文混合情况。为解决这个问题,国际标准组织于1984年4月成立ISO/IEC JTC1/SC2/WG2工作组,针对各国文字、符号进行统一编码,Unicode(统一码)被视为ISO 10646 国际编码标准的实践版。由 Unicode 学术学会制定的统一码 3.0 版本,与 ISO/IEC
8、 10646-1:2000 相对应,于2000 年2月正式推出。这个版本收纳了49 194 个来自世界各地不同语种的字符,其中包括 27 484 个东亚的表意文字(汉字,汉字是经过CJK 整合的,即将中日韩文中相近的汉字用单一的编码,称为统汉字Unihan,共2 万多个,但并不包含一些罕见的字,如康熙字典中的一些古字)。Unicode 编码有多种实现,常见的有UTF8、UTF16、UCS-2、UCS-4 等。第9章 中文和跨语言信息检索2.中文编码转换中文编码转换由于互联网上不同的中文编码方式共存,为了能以统一的过程对中文网页信息进行正确处理,必须对收集到的中文信息进行内码转换,在计算机内以统
9、一的编码方式存放中文信息。汉字内码的转换一般基于码表,码表提供了从一种字符编码到另一种字符编码的映射。以下以GBK码到BIG5码的转换为例介绍内码转换的算法。第9章 中文和跨语言信息检索1)码表首先需要一个码表:GBKtoBIG5。码表的作用在于记录了所有源编码字符在目标编码方案中的编码。GBKtoBIG5n中保存的就是GBK码表中第n个字符的BIG5编码。对于一个GBK码字符,只要知道它在GBK码表中的位置posit,就可以通过GBK2BIG5posit得到它的BIG5码表示。2)定位GBK是2字节编码,第一字节(ch1)编码范围是0 x81FE,第二字节(ch2)编码范围是0 x400 x
10、7E和0 x800 xFE。因此,整个GBK的编码空间可以按ch1进行分组,每组190个汉字,第一组(0 x80)GBK编码如表9-1所示。第9章 中文和跨语言信息检索表表9-1 第一组第一组(0 x80)GBK编码编码第9章 中文和跨语言信息检索因此,对于GBK(首字节ch1,第二字节ch2)字符可以进行如下定位:(9-1)posit=(ch1129)190+(ch264)1282ch第9章 中文和跨语言信息检索9.1.2 中文分词中文分词中文分词的含义是,把中文的汉字切分成有意义的词。中文信息检索系统中,在建立索引之前,必须对被索引的文档进行分析。文档由被称做特征项的索引词(词或者字)组成
11、,文档分析是将一个文档表示为特征项的过程。在提取特征项时,中文又面临与英文处理不同的问题。中文信息和英文信息有一个明显的差别:英语单词之间用空格分隔;而在中文文本中,词与词之间没有天然的分隔符,中文词汇大多是由两个或两个以上的汉字组成的,并且语句是连续书写的。这就要求在对中文文本进行自动分析前,先将整句切割成小的词汇单元,这就是中文分词的任务。第9章 中文和跨语言信息检索汉语词语虽然由不同的字数构成,但具有一定的规律。例如汉语中大部分的词都是双字组,根据北京现代汉语频率词典的数据,汉语词汇中26.7%是单字词(Unigram),69.8%是双字词(Bigram),2.7%是三字词(Trigra
12、m)。中文是以语句分隔开的,而语句是由有意义的字、词组成的,中文的词有双字的、三字的,或更多字的。中文分词的目的就是把中文中的字切分成有意义的词。中文网络信息检索系统中,在建立索引之前,对被索引的文档进行分析,将有助于检索效果的提升,避免得到错误的检索结果。文档分析是将一个文档表示为特征项的过程,特征项也即索引项。表9-2是对于一个字串,其所有单字词、双字词和三字词的切分的示例。第9章 中文和跨语言信息检索自动分词的基本方法有:基于统计的分词方法和基于字符串匹配的分词方法。第9章 中文和跨语言信息检索1 基于统计的分词方法基于统计的分词方法从形式上看,词是稳定的字的组合,因此在上下文中,相邻的
13、字同时出现的次数越多,就越有可能构成一个词。因此,字与字相邻共现的频率或概率能够较好地反映成词的可信度。可以对语料中相邻共现的各个字的组合的频度进行统计,计算它们的互现信息。计算汉字X和Y的互现信息(Concurrence Information)公式为(9-2)()(),(log),(YPXPYXPYXI其中,P(X,Y)是汉字X、Y的相邻共现概率,P(X)、P(Y)分别是X、Y在语料中出现的概率。互现信息体现了汉字之间结合关系的紧密程度。第9章 中文和跨语言信息检索当互现信息越大时,表示相关程度越高;当该值为0,则表示不相关;若该值为负,则表示负相关。Richard算法1是基于互现信息的一
14、种自动分词算法,其算法描述如下:1 计算短语中所有相邻的双字词的互信息量(只对短语中的单字或双字词进行识别);2 将短语中互信息量最大的双字词当作词从短语中提取,提取双字词后原来的短语将分裂成更短的短语;3 重复步骤2直到所有的短语都由一或两个汉字组成。【例例9-1】利用Richard的分词原理,试对语句S=“中国大陆新发现的油田”进行分词。以TREC-5 Chinese Collection为语料库,表9-3给出了中文分词的一个例子。第9章 中文和跨语言信息检索第9章 中文和跨语言信息检索根据表9-3的计算结果,对句子进行删除词操作,得到的分词结果如表9-4所示。第9章 中文和跨语言信息检索
15、这种方法只需对语料中的字组频度进行统计,不需要切分词典,因而又叫做无词典分词法或统计取词方法。但这种方法也有一定的局限性,会经常抽出一些共现频度高,但并不是词的常用字组,例如“这一”、“之一”、“有的”、“我的”、“许多的”等,并且对常用词的识别精度差,时空开销大。第9章 中文和跨语言信息检索2 基于字符串匹配的分词方法基于字符串匹配的分词方法基于字符串匹配的分词方法的基本思想是:截取一个字符串,把它与词典中的词条进行匹配,若在词典中找到对应的词,该字符串就被识别为一个词。这种方法又称为机械分词方法。按照扫描方向的不同,串匹配分词方法可以分为正向匹配和逆向匹配;按照不同长度优先匹配的情况,可以
16、分为最大(或最长)匹配和最小(或最短)匹配;按照是否与词性标注过程相结合,又可以分为单纯分词方法和分词与标注相结合的一体化方法。常用的几种机械分词方法如下:(1)正向最大匹配(Maximum Matching):从左到右的方向匹配;第9章 中文和跨语言信息检索(2)逆向最大匹配(Reverse Maximum Matching):从右到左的方向匹配;(3)最少切分:使每一句中切出的词数最小。还可以将上述各种方法相互组合,例如,可以将正向最大匹配方法和逆向最大匹配方法结合起来构成双向匹配法。由于汉语单字成词的特点,正向最小匹配和逆向最小匹配一般很少使用。一般说来,逆向匹配的切分精度略高于正向匹配
17、,遇到的歧义现象也较少。统计结果表明2,单纯使用正向最大匹配的错误率为1/169,单纯使用逆向最大匹配的错误率为1/245(这可能是因为汉语的中心语靠后的特点)。对于机械分词方法,可以建立一个一般的模型,形式地表示为ASM(d,a,m),即自动分析模型(Automatic Segmentation Model),其中,第9章 中文和跨语言信息检索d:匹配方向,+表示正向,-表示逆向;a:每次匹配失败后增加或减少字串长度(字符数),+为增字,为减字;m:最大或最小匹配标志,+为最大匹配,为最小匹配。例如,ASM(+,+)就是正向减字最大匹配法(Maximum Match based approa
18、ch,MM),ASM(,+)就是逆向减字最大匹配法(简记为RMM方法),等等。对于现代汉语来说,只有m=+是实用的方法。以下以正向减字最大匹配为例具体介绍分词算法。正向减字最大匹配法:切分的过程是从自然语言的中文语句中提取出设定的长度字串,与词典比较,如果在词典中,就算一个有意义的词串,并用分隔符分隔输出,否则缩短字串,在词典中重新查找(词典是预先定义好的)。图9-1所示为正向减字最大匹配法流程图。第9章 中文和跨语言信息检索图9-1 正向减字最大匹配法流程图第9章 中文和跨语言信息检索输入:中文词典,待切分的文本d,d中有若干被标点符号分割的句子S1,设定的最大词长MaxLen,即窗口宽度。
19、输出:每个句子S1被切为若干长度不超过MaxLen的字符串,并用分隔符分开,记为S2,所有S2的连接构成d切分之后的文本。该算法的思想:对于文档中的每个句子S1从左向右以MaxLen为界选出候选字串W,如果W在词典中,处理下一个长为MaxLen的候选字段;否则,将W最右边一个字去掉,继续与词典比较;S1切分完之后,构成词的字符串或者此时W已经为单字,用分隔符隔开输出给S2。从S1中减去W,继续处理后续的字串。S1处理结束,取T中的下一个句子赋给S1,重复前述步骤,直到整篇文本都切分完毕。下面给出正向减字最大匹配法算法的伪码:第9章 中文和跨语言信息检索第9章 中文和跨语言信息检索在正向减字最大
20、匹配法中,窗口宽度的大小设置可能直接影响分词的结果。如果窗口宽度设置得过短,将导致长词被切碎,比如当窗口宽度设为3时,词“中华人民共和国”将被切碎打散,与事实不符;如果窗口宽度设置得过长,又将导致效率低下,因为窗口宽度越长,每一次的W就愈长,小循环的次数就愈多。根据2005年Bakeoff评测语料库的统计,中文词长的分布如表9-5所示。第9章 中文和跨语言信息检索第9章 中文和跨语言信息检索可见,小于5个字的词在中文中超过了99%,占绝大多数,所以窗口宽度设置为5一般不会发生将词切碎的问题;如果需要提高分词速度,不妨将窗口宽度设置为2,因为小于2个字(包括2)的词超过90%。整个算法的时间复杂
21、度为O(mk logn)。【例例9-2】试用正向减字最大匹配法对这个中文语句进行分词。设字符串S1=“搜索引擎是上网工具”,窗口宽度MaxLen=5,所采用的词典包括如下这些词:搜索引擎、上网和工具等。试列出分词过程,回答分词结果S2是什么?解:解:第一步:(1)S1不为空,从S1的最左边开始截取MaxLen个字作候选字符串W=“搜索引擎是”;第9章 中文和跨语言信息检索(2)查词典,找不到匹配项,从W字串右边去掉一个字,W=“搜索引擎”;(3)查词典,找到匹配项,S2=“搜索引擎/”,S1=“是上网工具”。第二步:(1)S1不为空,从S1的最左边开始截取MaxLen个字作候选字符串W=“是上
22、网工具”;(2)查词典,找不到匹配项,从W字串右边去掉一个字,W不是单字,W=“是上网工”;(3)查词典,找不到匹配项,继续从W字串右边去掉一个字,W不是单字,W=“是上网”;查词典,仍然找不到匹配项,继续从W字串右边去掉一个字,W不是单字,W=“是上”;第9章 中文和跨语言信息检索(4)查词典,仍找不到匹配项,继续从W字串右边去掉一个字,W=“是”;(5)W是单字,S2=“搜索引擎/是”,S1=“上网工具”。第三步:(1)S1不为空,从S1的最左边开始截取剩下的4个字(小于MaxLen)作候选字符串,W=“上网工具”;(2)查词典,找不到匹配项,从W字串右边去掉一个字,W不是单字,W=“上网
23、工”;(3)查词典,找不到匹配项,从W字串右边去掉一个字,W不是单字,W=“上网”;(4)查字典,找到匹配项,S2=“搜索引擎/是/上网”,S1=“工具”。第9章 中文和跨语言信息检索第四步:(1)S1不为空,从S1的最左边开始截取剩下的2个字(小于MaxLen)作候选字符串,W=“工具”;(2)查字典,找到匹配项,S2=“搜索引擎/是/上网/工具”,S1=“”。第五步:S1为空,结束分词过程。所以,最后的分词结果是S2=“搜索引擎/是/上网/工具”,分出了单字、双字词和四字词共4个单词。另外一个问题就是最大匹配法分词掩盖了分词歧义。见下例。第9章 中文和跨语言信息检索【例例9-3】已知Sa=
24、“有意见分歧”,Sb=“结合成分子时”,请写出最大匹配法分词的结果。解:解:Sa=“有意见分歧”,分词结果是:正向最大匹配结果:有意/见/分歧/逆向最大匹配结果:有/意见/分歧/由此可以看出,正向最大匹配结果和逆向最大匹配结果不同。Sb=“结合成分子时”,分词结果是:正向最大匹配结果:结合/成分/子时 逆向最大匹配结果:结合/成分/子时 由此可以看出,正向最大匹配结果和逆向最大匹配结果相同。第9章 中文和跨语言信息检索3 基于理解的分词方法基于理解的分词方法 这种分词方法是通过让计算机模拟人对句子的理解,达到识别词的效果。其基本思想就是在分词的同时进行句法、语义分析,利用句法信息和语义信息来处
25、理歧义现象。它通常包括三个部分:分词子系统、句法语义子系统、总控部分。在总控部分的协调下,分词子系统可以获得有关词、句子等的句法和语义信息来对分词歧义进行判断,即它模拟了人对句子的理解过程。这种分词方法需要使用大量的语言知识和信息。由于汉语语言知识的笼统、复杂性,难以将各种语言信息组织成机器可直接读取的形式,因此目前基于理解的分词系统还处在试验阶段。在中文信息检索系统中,应用最大匹配法分词能检索大部分的中文词语,但由于中文本身的特点,仍然存在一些分词的难题,这就是歧义识别和新词识别。第9章 中文和跨语言信息检索1)歧义识别这是由中文本身的特性形成的,比如交叉歧义,“表面的”这个短语就可以分成“
26、表面 的”和“表面的”;组合歧义,如句子“这个门把手坏了”,“把手”是个词,但在句子“请把手拿开”中“把手”就不是一个词;真歧义,例如,对于句子“乒乓球拍卖完了”,可以切分成“乒乓/球拍/卖/完/了”,也可切分成“乒乓球/拍卖/完/了”。第9章 中文和跨语言信息检索2)新词识别由于中文信息检索系统中的索引项是基于一定的词库构建而成的,定期更新,那么对于一些没有收入词库而用户提交查询的新词,检索系统是无法按照用户的本意来识别这些新词的。比如在2003年非典发生之前,你若输入“非典”这个词,是无法找到你想要的信息的。解决这个问题的通用做法是尽可能多地收集词汇,以降低碰到未登录词的机会;通过构词规则
27、和上下文特征规则来识别;通过统计的方法来猜测经过一般的分词过程后剩下的“连续单字词碎片”是人名、地名等的可能性,从而识别出未登录词。第9章 中文和跨语言信息检索对于未定义词识别的一般解决方法,首先要为每一类未定义词都构造专门的识别算法;再就是根据内部构成规律(用字规律)、外部环境(上下文)和重复出现规律来识别一些新词。因而,目前新词识别准确率已经成为评价一个分词系统好坏的重要标志之一。实际应用的统计分词系统都要使用一部基本的分词词典(常用词词典)进行串匹配分词,同时使用统计方法识别一些新的词,即将串频统计和串匹配结合起来,既发挥匹配分词切分速度快、效率高的特点,又利用了无词典分词结合上下文识别
28、生词、自动消除歧义的优点。第9章 中文和跨语言信息检索9.2 中文信息检索中文信息检索对于计算机来说,中文文本就是由汉字和标点符号等最基本的语言符号组成的字符串,由字构成词,由词构成短语,进而形成句、段、节、章和篇等语言结构。用尽量简单并且准确的方法表示文档,是进行中文信息检索的前提。第9章 中文和跨语言信息检索9.2.1 中文检索模型中文检索模型与面向英语的信息检索不同,在中文信息检索中,词条之间并不以空格分隔。因此,各种基于词条的英文信息检索方法并不能直接应用到中文上。虽然有些索引技术,例如倒排文件、基于模型的签名、叠加编码签名、变长位块压缩签名等,可以通过修改应用于索引中文文档,但这些技
29、术只能影响到检索效率(即存储大小和检索速度),对检索的有效性(例如查准率和查全率)并没有明显影响。因此,在分词的基础上选择合适的索引项是建立中文信息检索的关键。目前常用的中文信息检索模型是向量空间模型和概率模型,而后者又包括2-Poisson模型、LR模型和Pircs模型等典型方法。第9章 中文和跨语言信息检索1 向量空间模型向量空间模型向量空间模型(VSM)3是在文本中提取其特征项组成特征向量,并以某种方式为特征项赋权,具体定义及公式在本书2.3节有详细描述。向量空间模型索引项的权重计算方法对检索的效果有很大的影响。除了第2章介绍的经典的TF-IDF权重方法外,有许多常用的变体计算公式,如表
30、9-6所示,可在中文检索应用中适当使用。第9章 中文和跨语言信息检索第9章 中文和跨语言信息检索2 概率模型概率模型概率模型通过计算查询q与文档dj相关的概率P(q,di)得到q和dj的相似度,应用于中文信息检索的概率模型有2-Poisson模型、LR模型和Pircs模型等。1)2-Poisson模型Robertson等人4提出了2-Poisson模型,这一模型有很多变体,其中应用于BM11系统5的一个是(9-3)lenlen5.05.0log),BMll(,ijijijjjjittnnNqdq式中:N是文档的总数;nj是所有含有索引项j的文档的总数;qj是查询项j的权重;ti,j是索引项j在
31、文档i中的词频;leni是文档i的长度;len是平均文档长度。第9章 中文和跨语言信息检索对于文档长度,有两种计算方法:(9-4)jjiitd)abs(,1(9-5)jjiitd2,2第9章 中文和跨语言信息检索2)LR(Logistic-Regression)模型LR模型6是另外一个应用在信息检索中的著名的概率模型,它通过回归的方法对数据的相关性进行建模,建模的结果是得到更复杂的表达式:(9-6),|(loge11),LR(qdrOiidq其中,logO(r|di,q)=3.51+37.4X1+0.33X20.1937X3+0.929X4jjqqNX351111jijidtNX80log11
32、1,2jjiittNXnmnm,3log11,X4=N第9章 中文和跨语言信息检索3)Pircs模型Pircs7是另外一个著名的基于概率的信息索引和检索模型,它常常参加各种公开的中文信息检索评测并有很好的表现。与其他的概率模型不同,Pircs考虑了查询项的匹配方向:(9-7)jijijjjjiidtSqqSwdqP1,1,)1(),(mjijmnmmjijminmjiijijittttdttdtw,1,1,lgmjmnmmjminmjijjittdttqq,1,1,lg(9-8)(9-9)第9章 中文和跨语言信息检索式中第i个文档的权重P(q,di)是查询项活性与文档的线性加权和,该加权和基于
33、式(9-7)、(9-8)和(9-9)所表示的由查询词、索引词和文档所构成的概念框架。该“混合模型”中的权重取决于匹配方向,这是与贝叶斯概率模型的一个重要区别。混合参数决定了查询项和索引项对权重的“贡献”,它的值对检索的效果影响很小。在上述模型中,查询词和文档的概率权重wi,j和i,j经信号转换函数S()处理后再被规范化的文档和查询项权重调整。信号转换函数可以采用S函数Ss(x)1/(1+ex)或线性斜坡函数Sr(x)max0.025+x,0.2。第9章 中文和跨语言信息检索9.2.2 中文索引中文索引有多种方式对中文文档进行索引:(1)按字索引:索引项为中文文档中单个的汉字;(2)按词索引:索
34、引项为中文文档中的词,要对文档进行按词的索引,首先要对文档进行分词;(3)按短词索引:索引项为中文文档中的14字词,可以通过互信息量从文章中提取;(4)按双字词索引:索引项为中文文档中的所有双字词;(5)混合索引:按词、字混合进行索引,按短词、字混合进行索引。第9章 中文和跨语言信息检索一般来说,基于字的索引方法具有较高的查全率,基于词和双字词的索引方法具有较高的查准率。与基于词的索引不同,基于双字词的索引方法没有“未登录词”的问题,但它所用的存储空间要比基于词的索引方法的大。此外,不同的索引方法,所需的存储空间如图9-2所示。第9章 中文和跨语言信息检索图9-2 几种中文索引方法和模型的比较
35、8第9章 中文和跨语言信息检索C代表按字索引,W代表按词索引,S代表按短词索引,WC代表词和字混合索引,SC代表短词和字混合索引,B代表按双字词索引,E代表偶数长度切分。检索速度取决于查询词的数量以及对每个查询词提交列表的大小。图9-3描述了不同检索模型对每一个TREC-5组合查询检索时间的散点图(使用Pircs索引方法)。每种方法的趋势拟合线为直线,而且对所有的检索模型来说相关系数都很高。第9章 中文和跨语言信息检索图9-3 几种中文索引方法和模型的比较8第9章 中文和跨语言信息检索表9-7比较了不同检索模型和索引策略的平均检索时间。第9章 中文和跨语言信息检索从表9-7可以看出,不管使用哪
36、种模型,每个查询以词为索引单位所需的时间都比其他索引方法的要短,其后依次是双字索引、短词索引和Pircs索引。VSM检索模型在各种索引策略下所需的时间是最短的,之后是2-Poisson模型、Pircs检索模型和LR模型。在表9-7中,S是每个查询的平均检索时间,单位为秒;R是对每个查询VSM模型平均检索时间的相对值;位次是按照检索时间对不同模型的排序,位次为1的模型最快,位次是5的最慢。第9章 中文和跨语言信息检索9.3 跨语言信息检索跨语言信息检索9.3.1 基本原理基本原理网络的普及使人们摆脱了地域的限制,但是语言的多样性却使这种自由受到限制,同时还影响了网络信息价值的充分发挥。图9-4给
37、出了全球几种主要语言的使用人数分布情况,图9-5给出了互联网上网站信息使用的语言的分布情况。从图中可以看出,尽管英语是网络信息所使用的主要语言(占80%),但相当多的一部分人(40%)不懂英语。于是人们提出了跨语言信息检索技术,即允许用户使用其熟悉的一种语言构造查询检索式,检索出以另外一种或几种语言表达的信息9。第9章 中文和跨语言信息检索图9-4 全球几种主要语言的使用人数分布第9章 中文和跨语言信息检索图9-5 互联网上网站信息使用的语言的分布第9章 中文和跨语言信息检索跨语言信息检索系统的目标是,在不同于用户查询条件语种的文档集中检索出与查询条件相关的文档。早期的跨语言信息检索可以追溯到
38、20世纪70年代Salton建立的关于英德和英法德跨语言检索研究10,经过相关领域科研人员几十年的不懈探索,跨语言信息检索领域已经取得了很大的进展,但还存在许多需要研究的问题及挑战。(1)查询与文档分属不同语言。这是跨语言信息检索主要的特征。在跨语言信息检索中,一般将用户所使用的构造检索提问语言称为源语言,而将文献信息所使用的语言称为目标语言。要实现跨语言的信息检索,就必须实现两种语言的翻译。第9章 中文和跨语言信息检索(2)查询中的词可能是多义。为消除歧义,人们往往采用以下的方式:选择词典中第一个词义。这种做法基于一个假设,就是词典中词的第一个定义往往是最常用的。选择词典中所有词义。既然无法
39、判断词的意义,为保证查全率,将所有意义都翻译出来作为检索词,相应地使检索词数量变得很大,导致查准率大幅度下降。任选N个意义,但基于上述方法造成的查准率急速下降,采用任选N个意义的方法以控制查询问句的任意膨胀。第9章 中文和跨语言信息检索 选择N 个最贴切意义。由于任选的方式随机性太大,根本无法控制查准率。因此人们利用语料库计算不同词义出现的频率,然后选择频率较高的N个作为检索用词。随着对统计语言学研究的深入,使用统计方法解决歧义问题越来越受到人们的重视。(3)查询通常很简短。查询处理不仅包括查询翻译,还包括查询扩展。查询扩展是在用户输入检索提问后,采取一定策略,对用户的检索要求进行扩充,前提是
40、添加的词汇必须是受控且与原检索词相关。通常,我们利用同义词典来进行查询扩展。第9章 中文和跨语言信息检索(4)跨语言信息检索中的索引项。一些语言,例如中文、日文和韩文等,词与词之间并没有明显的分隔符,分词在此也是个问题。在对文档进行检索之前,需要对其进行预处理,索引是其中的一部分工作。(5)文档的多语性。网络文档由不同的语言表达,语言识别(language identification)是检索的基本工作。识别文档的语言信息有助于提高索引质量,改善检索效果。(6)输出结果的呈现。检索所得的多语言文件,如何分辨彼此间的差异,以及合并不同语言文件检索结果并呈现给用户,也是跨语言信息检索必须面对的挑战
41、。下面简单说明跨语言信息检索的常用方法。第9章 中文和跨语言信息检索1 基于机器翻译的方法基于机器翻译的方法实现跨语言检索系统最直接的方法是将机器翻译系统应用于检索过程中。一种方法是将用户查询翻译为与文档相同的语种,另一种方法是将文档集中的文档翻译为与查询语言相同的语种,然后再用单语种的信息检索系统进行检索。基于机器翻译的方法基本上可以分为查询翻译(query translation)、文档翻译(document translation)和不翻译(no translation)三类。(1)查询翻译:将查询提问中的源语言翻译成目标语言,然后再利用由目标语言构成的检索表达式去查找相关信息。第9章
42、中文和跨语言信息检索(2)文档翻译:把数据库的文档翻译成与查询语言相同的语言,再进行检索。这种方法的优点是:语境比较宽,歧义性分析所能用的线索较多,缺点是实时性差,查准率差,不适合于大规模处理。(3)不翻译:主要是使用线性代数或统计的方法解决跨语言信息检索问题。目前通过不翻译实现跨语言信息检索的典型技术是广义向量空间模型(Generalized Vector Space Model,GVSM)和潜语义索引(Latent Semantic Indexing,LSI)。图9-6是一个基于翻译的中英文跨语言信息检索的标准模型。第9章 中文和跨语言信息检索图9-6 基于翻译的中英文跨语言信息检索模型第
43、9章 中文和跨语言信息检索2 基于本体基于本体(ontology-based)的方法的方法本体是源自哲学上的一个概念,用于描述事物的本质。本体定义了组成主体领域的词汇的基本术语和关系,以及把术语和关系组合在一起定义词汇外延的规则。利用本体来刻画不同语言中对应领域的知识,以解决从查询语言到检索语言之间转换过程中出现的语义损失和曲解等问题,从而保证在检索过程中能够有效地遵循用户的查询意图,获得预期的检索信息。基于本体的方法的基本原理是使用本体作为搜索引擎的语义核心,充分利用其在知识表示和语义描述上的特性和优点,将语义处理结合到模型中去。第9章 中文和跨语言信息检索3 基于语料基于语料(corpus
44、-based)的方法的方法由于在现实生活中不可能构建完备的双语词典或是手工构建复杂的主题词表,因此基于语料的方法从分析现有大规模的语料入手,从中抽取所需信息,自动构建与应用有关的翻译技术。这些语料分为平行语料和可比语料。(1)平行语料(parallel corpus):语料中包含文档及其相应的翻译文档,按照文档翻译的方式又分为文档对齐(document alignment)、语句对齐(sentence alignment)和语词对齐(word alignment)3种方式。第9章 中文和跨语言信息检索(2)可比语料(comparable corpus):语料中包含不同语种的涉及相似主题的文档,
45、不同语种的文档之间不存在一一对应的关系。前者是指同一文件,不同语言对译;后者为同一主题(或事件),不同语言的描述。后者的定义较前者宽松,因此更容易获得。根据平行或可比语料,就可以制作出虚拟的平行文件。然后从中抽取出翻译辞典,用来产生目标询问(target query)。第9章 中文和跨语言信息检索4 基于字典的方法基于字典的方法基于字典的方法的中心思想是在查询翻译后,每一个单词在检索语种中都会有一个以上的单词与之对应,它们能够形成不同的单词组合,对这些组合的出现情况在检索语种的语料库中进行统计后,根据常用词组和习惯用法的出现频率比较高的特点来净化翻译结果。同时,也可以直接使用这些单词组合来进行
46、检索,同理,得到的结果中常用词组和习惯用法将会构成检索结果中的主要部分。第9章 中文和跨语言信息检索9.3.2 基于基于GVSM的跨语言检索的跨语言检索广义向量空间模型GVSM13进行单语言信息检索的步骤包括查询转换、文档转换和转换后的查询与文档之间的相似性比较。检索标准定义为(9-10)sim(q,d)=cos(ATq,ATd)查询转换q=ATq相当于使用原始查询中的权重改变每个词条的分布模式,并将加权改变后的模式累加起来以得到新的查询表示。文档转换与词类似,d=ATd改变并累加文档中包含的词条分布模式的权重。转换后的查询与文档向量都是n维的,相应于矩阵A中的n个文档。A使用的文档集常被称为
47、训练集,而对文档和查询的转换则被称为包入(fold-in)过程。一般来说,待转换的文档不包含在训练集中。第9章 中文和跨语言信息检索通过对单语言GVSM方法进行扩展,可以将之应用于跨语言检索11。定义两个矩阵A和B,其中A是源语言(或称做查询语言)训练集的词条-文档矩阵,B是目标语言训练集的词条-文档矩阵,A和B中的对应列是两个训练集的匹配文档。如表9-8所示,这里的矩阵使用二值元素。第9章 中文和跨语言信息检索第9章 中文和跨语言信息检索这里Dn是英语和西班牙语训练集中的第n对匹配文档。源语言中的某个词,例如dog,被表示为它在源语言文档集中的分布,而目标语言中的某个词,例如perro,则被
48、表示为它在源语言文档集中的分布。两种语言中具有相同意义的词常常具有相同或相似的行,例如dog和perro。两种语言中并不是每个词都存在另一种语言中对应的词,而且并非所有的对应词都有完全相同的出现模式。例如,动词to lock一般翻译为cerrar con llave,这两个词具有非常相似的出现模式。令A和B分别表示源语言的查询转换和目标语言中的文档转换,则检索标准可以定义为sim(q,d)=cos(ATq,BTd)(9-11)第9章 中文和跨语言信息检索由于矩阵A和B存在于同一个双空间(dual space)中,因此ATq和BTd使查询和文档具有共同的基(词条在文档中的分布模式),从而可以进行
49、相似性比较。【例例9-4】设有以下中英文平行语料库(如表9-9所示)和待检索英文文档集(如表9-10所示),试用GVSM方法检索与中文查询词“保护法”相关的文档。第9章 中文和跨语言信息检索第9章 中文和跨语言信息检索第9章 中文和跨语言信息检索步骤一:对语料库进行预处理并建立相应的索引词-文档矩阵。对于英文文档,预处理过程主要包括提取词干和去除停止词;而中文文档的预处理步骤主要是分词。所得到的索引词-文档矩阵分别如表9-11(列E1E8)和表9-12(列C1C8)所示。第9章 中文和跨语言信息检索第9章 中文和跨语言信息检索第9章 中文和跨语言信息检索步骤二:对待索引文档和查询进行预处理并得
50、到相应的索引词-文档矩阵。预处理的方法与对语料库的预处理相同(包括词干提取方法、停止词表以及中文分词方法等)。英文待索引文档集的索引词-文档矩阵如表9-11(列D1D3)。对查询“保护法”进行分词,得到两个索引词“保护”和“法”,相应的查询向量如表9-12(列Q所示)。步骤三:相关度计算。对每一篇文档d,其与查询q的相关度,采用如下公式计算:sim(d,q)=cos(ATd,BTq)经计算得:BTq=(1.0,0.0,1.0,0.0,1.0,0.0,0.0,1.0)第9章 中文和跨语言信息检索ATd1=(1.0,0.0,2.0,0.0,1.0,1.0,0.0,2.0)ATd2=(1.0,0.0