央金藏文分词系统
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1央金藏文分词系统
史晓东*2卢亚军**3
*厦门大学人工智能研究所 361005
E-mail:**************.cn
**西北民族大学科研处 730030
E-mail:*****************
摘要:藏文分词是藏文信息处理的一个基本步骤,本文描述了我们将一个基于HMM的汉语分词系统segtag移植到藏文的过程,取得了91%的准确率。又在错误分析的基础上,进行了训练词性的取舍、人名识别等处理,进一步提高了准确率。
关键字:藏文分词、自然语言处理、HMM
A Tibetan Segmentation System – Yangjin
Xiaodong Shi*, and Yajun Lu**
*Institute of Artificial Intelligence, Xiamen University, Xiamen 361005, China
**Northwest University for Nationalities, Lanzhou 730030, China
Abstract: We described the porting of a Chinese segmentation system to handle Tibetan. The F-measure of the new Yangjin system is above 91% over a test corpus although the training corpus is relatively small. We also described more processing upon error analysis which led to further improvement.
Keywords:Tibetan Segmentation, natural language processing, HMM
1 引言
随着少数民族语言(主要是藏、维、蒙)到汉语的机器翻译研究逐渐进入人们的视野实验,相关的少数民族语言基础法分析工具也亟待完善。藏文分词是藏语到其他语言的基础性工具。虽然研究的时间也不算短(2002年陈玉忠[1]是较早的一篇研究),已经有至少10年的历史,但是还没有公开可用的工具。第一作者在研究汉语分词方面有丰富的经验,从2005年就开发的segtag汉语分词系统,虽然没有发表相关的论文,但是在北京大学公开的1998年人民日报一个月的语料上的准确率约为98%。因此将其移植到藏文,并加以公开,是我们的一个想法。经过与第二作者密切合作,已经成功地开发出了藏文的分词标注系统,在一个测试集上的准确率约为93%,取得了较为令人满意的效果。本文描述该系统的基本算法,并对藏文所作的特殊改进。
本文下面的内容如下:首先综述一下国内外的相关工作,然后介绍了央金藏文分词系统的基本结构,然后再描述为了改进性能对藏文所作的特殊处理,最后得出结论,并指出了进一步的工作。
由于第一作者一点也不懂藏文,因此本文对想开发一个未知语种(如蒙语、泰语、彝语等)的分词系统的人,有一定的借鉴意义。
1基金项目:863项目2006AA010108,国家社科基金重点项目05AYY001
2史晓东,男,1966.12,教授,主要研究方向:自然语言处理
3卢亚军,男,1956.10,教授,主要研究方向:语料库语言学,藏汉机器翻译
2 相关工作
陈玉忠[1]在2002年提出了基于格助词和接续特征的藏文分词算法。从此文中作者得出,其实藏文和日语类似,有很多格助词,表示一定的句法语义功能。扎西加等[2]给出了藏文分词的词类划分。Huidan Li u等[3]研究了藏文分词中的数字识别问题。才智杰[4]描述了班智达藏文分词系统的设计和实现。苏峻峰[5]描述了一个基于HMM的藏文分词模型。刘智文[6]做过一个基于CRF的藏文分词系统。国内的藏文相关工作基本上集中在青海师大、西北民大、西藏大学等单位。
与采用机器学习为主的汉语分词相比,目前藏文分词系统显得落后一些。在汉语方面一般都采用HMM、ME、CRF等模型,很少采用相对原始的规则或最大匹配模型。
3 央金藏文分词系统介绍
HMM模型由于其简单高效已经成为了分词系统的基准模型,虽然ME或者CRF的准确率比HMM略高一些,但是其训练却相对复杂一些,而且当标注语料库比较小的时候,并不见得有优势。所以我们便用HMM模型来做藏文分词。
分词和标注一体化完成,Segtag的结构如下:
图1. segtag分词系统(其中词典为央金系统所加)
由于segtag本身已经是基于Unicode的,所以对Unicode的藏文处理毫无困难,主要是参照[7]4修改了词性表,并增加了对藏语Unicode的未登录词识别。因为,与汉语相比,在0平面内,一个汉字只需双字节表示码位,藏文很多字(有些文章称之为字丁[9],其实指一个可纵向叠加的书写单位,我们仍然称为字)是多个双字节构成的序列。此外,专门针对藏文数字修改替换了原汉字数字识别,使之能处理藏文数字。移植后的系统由第二作者命名为央金藏文分词系统。
如果纯粹用训练语料来生成分词词典,由于训练语料很小,得到的词条仅有13200余条,根本无法对藏文进行分词。所以我们又合并了几本藏文词典。大约有9万词。简单地把词典中的词条以频率1加到训练语料,从中训练出分词词典,一共97800余条。
4实际上我们参考的主要规范是青海师范大学才让加、吉太加、扎洛等起草的拟作为教育部标准的“信息处理用藏语词类标记规范”。
央金系统的性能如下(此处2.7M指UTF16编码的文件大小):
表1. 央金分词系统的性能
训练语料测试语料精确率召回率F值备注
92.215% 90.041% 91.115 分词
2.7M+词典25K
79.342% 79.647% 79.494% 标注
这些训练语料都是在央金系统的分词结果的基础上,由第二作者校对修正而滚雪球一样得到。
另外,虽然Unicode目前已经是国际标准,国内仍然存在着部分班智达和同元编码的文档,我们集成了编码识别和自动转换功能,以方便用户使用。
此外,我们还集成了鼠标藏汉词典,以方便作者校对分词结果。
由于第一作者一点也不懂藏文,所以很多央金分词系统的很多功能都是为了方便用户能够在系统内便于进行分词校对而设。
4 分词系统的错误分析和改进
2.1 分词系统错误
通过文件比较,对测试语料中的错误进行了分析。首先我们注意到,标注的准确率偏低。结果发现,训练出词典中的有些词的不同词性之间的频率差异很大,如ར gj 1 tt 1 nn 9 vi 20 gl 3413
其中gj 和 gl都是格助词,怀疑gj这个词性是训练语料中的标注错误而混进来的,因此在装入词典的时候做了一个简单的处理:如果某个词的频率低的词性与该词的频率最高的词性之频率比小于阈值β(目前取1%),则舍弃该词性。经过这样处理以后,分词的准确率没有任何变化,而标注的准确率有所提高:
表2. 舍弃低频词性以后央金分词系统的性能
训练语料测试语料精确率召回率F值备注
79.342% 79.647% 79.494% 原系统
2.7M+词典25K
82.632% 82.949% 82.790% 改进1
简单的分析表明:分词错误大部分是由于未登录词而造成的。而很多标注错误是因为训练生成的词典中根本没有测试答案中的词性造成的。其实这些错误大部分是训练语料的不一致性造成的。
2.2 汉语人名识别
藏文新闻中经常出现人名。相对于地名等其他专名,人名是最丰富并且变化的。因此,分词系统最好能自动识别人名。从来源分,人名基本上可以分为藏语人名、汉语人名、欧美人名等三大类。目前我们只考虑了汉语人名的自动识别。
汉语人名翻译成藏语,基本上都是采用音译。也就是说,“王东”和“王栋”翻译成藏语应该是一样的。当然,不同的译者可以选择不同的藏文字来对同一个汉字(或同音汉字)进行译音。目前我们已经收集了一个汉藏人名对照表TC(目前只有300条),我们可以把它改为藏音对照表(这里音指汉语拼音)。另外我们还有一个常用汉语人名表C,有20多万条。此外还有一个海量的汉语语料库。那么藏文中的汉语人名识别算法可简单地描述如下:假设藏文的音节序列ABC,其中每个音节都是一个可能的汉字译音A’B’C’,而且不是藏文单词,P(A’B’C’)作为汉语人名的概率大于一定的阈值,那么可把ABC识别为一个藏文中的汉字人名译音。