计算机识别藏文音节构件的方法研究
官却多杰 关白
摘 要: 藏文音节构件识别是藏文信息处理应当特别关注的一个问题,要实现藏文排序、藏文拉丁转写、藏文文本校对等工作就必须先识别出构成藏文音节的7大构件。针对符合藏文字性组织法构件组合规则的藏文音节,依据藏文字性组织法规定的音节组合规则和组合结构,提出先确定藏文音节中作为核心构件的基字,再依据基字判断出其他构件的算法,结合此算法对藏文中出现的其他特殊音节进行了特殊的构件识别处理。通过测试验证算法的可行性,测试结果表明,该算法能够正确识别符合组合规则和结构的藏文音节,对特殊音节也有较好的识别能力。
关键词: 藏文; 音节构件识别; 藏文信息处理; 基字判断算法
中图分类号: TN911?34; TP391 文献标识码: A 文章编号: 1004?373X(2017)10?0024?04
Abstract: Tibetan syllable component recognition should be one of the particular concerns in Tibetan information processing. To achieve the works of Tibetan sorting, Tibetan Latin transliteration and Tibetan text proofreading, the seven components forming the Tibetan syllables must be recognized first. Aiming at the Tibetan syllables conforming to the component combination rules in the Tibetan grammatical work, a method to determine the root as a core component in the Tibetan syllable is proposed in accordance with syllable composition rules and combined structures specified in the Tibetan grammatical work. The algorithm of the other components is judged according to the root. In combination with this algorithm, the specified component recognition processing is conducted for other special syllables occurring in Tibetan. The feasibility of the specified was verified in tests. The test results show that the algorithm can correctly recognize the Tibetan syllable conforming to combination rules and structures, and has good recognition capacity for special syllables.
Keywords: Tibetan; syllable component recognition; Tibetan information processing; root judgment algorithm
藏文音节构件识别是藏文信息处理领域中的一项基础研究工作,可应用于藏文字处理[1]、藏文词典排序、藏文拉丁转写、藏文文本校对[2]等多个领域。其中藏文拉丁转写以藏文的音节为基本单位,依据音节的组织结构,对音节的各个部分分别进行转写[3]。藏文排序软件设计的关键在于识别音节中的7个组成构件[4]。因此,藏文音节构件识别的研究能为其他研究工作奠定基础,有助于推动藏文信息处理技术的发展。本文通过分析藏文字性组织法规定的音节构件组合规则和据此形成的构件组合结构,以先确定基字后识别其他构件为思路,并考虑计算机处理的通用性设计出基于Unicode编码的藏文音节构件识别算法,为藏文信息处理研究者提供参考。
1 藏文音节构件及其组合规则
1.1 构件分类
藏文有30個辅音字母和4个元音符号,辅音字母又可划分为前加字、上加字、纯基字、下加字、后加字、又后加字。藏文以音节为单位构成一个藏文字,而一个藏文音节由1~7个藏文字母构成,即依次由前加字、上加字、基字、下加字、元音、后加字、又后加字这7个构件(每个构件有其相应的构件元素,如图1所示)严格按照藏文字性组织法规定的组合规则,基字与上、下加字及元音进行纵向叠加,并与其他构件进行横向排列组合形成一个藏文音节,每个构件所处位置如图2所示。除基字外其他构件可有可无,元音必定出现在基字位上方或下方,在基字位可纵向叠加至4个字母。因此,一个藏文音节至少由1个字符构成,最多由7个字符构成。
由图1可知,基字可分为纯基字和非纯基字,非纯基字的构件元素即为10个后加字,而后加字中又包含了前加字和又后加字。
1.2 构件组合规则
所有构件元素并非可任意添接在相应的构件位,构件之间有严格的组合规则。文献[5]中详细阐释了藏文字性组织法中藏文音节构件的组合规则,将其分类归纳如下:
基字组合规则:每一个辅音字母均可作为基字,基字顶部添接上加字,底部添接下加字,基字前后添接前加字和后加字。
上加字组合规则:上加字\u0f62和基字\u0f49组合时不变形之外,与其他可组合的基字组合时则会变形,并非所有基字都能与上、下加字组合,能与上加字组合的基字如图3所示。
元音组合规则:元音除了不与\u0f5d和添接有下加字\u0f5d的基字组合之外,与其他单独的基字或添接有上、下加字的基字均可组合。
后加字组合规则:在基字后可添接任意后加字。
又后加字组合规则:又后加字则添接在后加字之后,添接规则如图5所示。
纯基字则只能作为基字使用。依据藏文音节构件的类别及藏文字性组织法规定的构件组合规则不难判断某一藏文音节的构件。
2 基于Unicode的藏文音节构件识别
藏文音节构件围绕基字通过不同的组合形式构成一个藏文音节,依据藏文字性组织法,共有48种组合形式[6],能够评写可读的有17 532个,其中常用的音节[7]有8 000多。这48种不同的组合形式都以基字为中心,以单独的基字或在基字基础上添接其他构件,从而构成至少含1个字母或至多含7个字母的音节,如图7所示。因此,识别一个藏文音节具体是由哪些构件组合而成的,首先应确定该音节中哪个字母是基字,其次判断基字上、下是否添接上加字、下加字、元音等其他字母,并判断其前、后是否添接前加字、后加字和又后加字,从而判断出所有构件。
让计算机自动识别藏文音节构件除了要应用藏文字性组织法规定的音节构件组合规则,还必须考虑藏文编码问题。藏文编码有基于组合的方案和基于预组合的方案,基于组合方案的Unicode藏文国际标准编码具有简洁性、无遗漏涵盖等特点,发展前景广阔[7],且符合藏文音节由构件组合的特性。任意构件在Unicode藏文编码表中基本上都有其相应的编码,易于实现藏文音节构件识别算法。而基于预组合的方案则把纵向垂直叠加的字符作为一个字丁进行编码,不易于识别构件。
2.1 基字识别
依据藏文字性组织法规定的音节构件组合规则和Unicode藏文编码表,可以通过以下步骤识别出藏文音节中的基字:
S1:判定藏文音节中是否含有下加字,若有则其前一字符为基字,若无则进入下一步。
S2:判定藏文音节中是否含\u0f90~\u0fbc编码内的字符,由于Unicode藏文编码中未对上加字单独编码,因此无法直接依据藏文字性组织法中上加字的组合规则来判定基字,但Unicode藏文编码对字符顶部可添接其他字符的所有组合用辅音字符在\u0f90~\u0fbc区间进行了编码。因此,只需查找藏文音节中是否存在该编码区间内的字符,即可得知该字符为基字,从而也可判断出其前一字符为上加字;若无该区间内的字符则进入下一步。
S3:判定藏文音节中是否含有元音,若有则其前一字符为基字,若无则进入下一步。
S4:经过上述三步的判断筛查,剩下的音节构件组合中既无元音,也无上、下加字,则该音节由前加字、基字、后加字、又后加字4个构件遵从藏文音节组合规则组合成含1~4个字符的音节。其中,单个字符的它本身即为基字,两个字符的则其首字符即为基字,四个字符的则其第二个字符即为基字,若为三个字符则进入下一步继续判断。
S5:由S4得到的三个字符组成的音节,有三种组合形式,如图8所示(此表仅列出经过S1~S3筛查后得到的既无元音、也无上、下加字的三字符藏文音节)。由于所有辅音均可做基字使用,因此首字符为前加字和基字(非纯基字)的情况很容易混淆构件元素。图8中“\u0f42\u0f44\u0f66”的首字符既可作为前加字的构件元素也可作为基字(非纯基字),好在藏文字性组织法中严格规定了前加字的组合规则(见图6),依据此规则可以判定这类双重构件元素何时作为前加字,何时作为基字(非纯基字)。因此,这一步准确判断首字符是否为前加字尤为关键。首先判断其首字符是否为纯基字,若为纯基字则首字符即为基字,若不是纯基字则依据前加字的组合规则判断其首字符是否为前加字,若为前加字则第2个字符为基字,若不是前加字则首字符即为基字,该基字为非纯基字。
2.2 其他构件识别
4 结 语
本文仅对符合藏文音节组合规则的藏文音节进行构件识别,依据藏文字性组织法规定的藏文音节组合规则和Unicode藏文编码,设计出围绕基字识别藏文音节构件的算法,通过测试验证了算法的可行性。对梵音藏文转写的音节和汉藏翻译中形成的音节等不符合藏文音节组合规则的音节构件识别未作讨论。
参考文献
[1] 仁青卓么,祁坤钰,贡保扎西.藏文音节七元组类型分析研究[J].西北民族大學学报(自然科学版),2015,36(1):32?36.
[2] 关白,才科扎西.现代藏文音节字自动校对研究[J].计算机工程与应用,2012,48(29):151?156.
[3] 才让叁智,高定国,扎西加,等.基于基字识别的藏文音节字检错算法研究[J].中国科技博览,2014(42):260?262.
[4] 春燕.基于藏文音节特征的模式匹配算法的研究[J].计算机光盘软件与应用,2014(15):119?120.
[5] 华却才让,姜文斌,赵海兴,等.基于感知机模型藏文命名实体识别[J].计算机工程与应用,2014,50(15):172?176.
[6] 普布旦增,关白.基于统计的藏文音节字校对系统开发研究[J].西藏大学学报(自然科学版),2015(1):74?78.
[7] 珠杰,李天瑞,刘胜久.基于条件随机场的藏文人名识别技术研究[J].南京大学学报(自然科学版),2016,52(2):289?299.
[8] 吕丹桔.汉语连续语音识别之音素声学模型的改进[J].计算机仿真,2010,27(5):355?358.
[9] 卓嘎,边巴旺堆.基于Matlab的藏语语音基音检测算法研究[J].现代电子技术,2015,38(10):20?22.
摘 要: 藏文音节构件识别是藏文信息处理应当特别关注的一个问题,要实现藏文排序、藏文拉丁转写、藏文文本校对等工作就必须先识别出构成藏文音节的7大构件。针对符合藏文字性组织法构件组合规则的藏文音节,依据藏文字性组织法规定的音节组合规则和组合结构,提出先确定藏文音节中作为核心构件的基字,再依据基字判断出其他构件的算法,结合此算法对藏文中出现的其他特殊音节进行了特殊的构件识别处理。通过测试验证算法的可行性,测试结果表明,该算法能够正确识别符合组合规则和结构的藏文音节,对特殊音节也有较好的识别能力。
关键词: 藏文; 音节构件识别; 藏文信息处理; 基字判断算法
中图分类号: TN911?34; TP391 文献标识码: A 文章编号: 1004?373X(2017)10?0024?04
Abstract: Tibetan syllable component recognition should be one of the particular concerns in Tibetan information processing. To achieve the works of Tibetan sorting, Tibetan Latin transliteration and Tibetan text proofreading, the seven components forming the Tibetan syllables must be recognized first. Aiming at the Tibetan syllables conforming to the component combination rules in the Tibetan grammatical work, a method to determine the root as a core component in the Tibetan syllable is proposed in accordance with syllable composition rules and combined structures specified in the Tibetan grammatical work. The algorithm of the other components is judged according to the root. In combination with this algorithm, the specified component recognition processing is conducted for other special syllables occurring in Tibetan. The feasibility of the specified was verified in tests. The test results show that the algorithm can correctly recognize the Tibetan syllable conforming to combination rules and structures, and has good recognition capacity for special syllables.
Keywords: Tibetan; syllable component recognition; Tibetan information processing; root judgment algorithm
藏文音节构件识别是藏文信息处理领域中的一项基础研究工作,可应用于藏文字处理[1]、藏文词典排序、藏文拉丁转写、藏文文本校对[2]等多个领域。其中藏文拉丁转写以藏文的音节为基本单位,依据音节的组织结构,对音节的各个部分分别进行转写[3]。藏文排序软件设计的关键在于识别音节中的7个组成构件[4]。因此,藏文音节构件识别的研究能为其他研究工作奠定基础,有助于推动藏文信息处理技术的发展。本文通过分析藏文字性组织法规定的音节构件组合规则和据此形成的构件组合结构,以先确定基字后识别其他构件为思路,并考虑计算机处理的通用性设计出基于Unicode编码的藏文音节构件识别算法,为藏文信息处理研究者提供参考。
1 藏文音节构件及其组合规则
1.1 构件分类
藏文有30個辅音字母和4个元音符号,辅音字母又可划分为前加字、上加字、纯基字、下加字、后加字、又后加字。藏文以音节为单位构成一个藏文字,而一个藏文音节由1~7个藏文字母构成,即依次由前加字、上加字、基字、下加字、元音、后加字、又后加字这7个构件(每个构件有其相应的构件元素,如图1所示)严格按照藏文字性组织法规定的组合规则,基字与上、下加字及元音进行纵向叠加,并与其他构件进行横向排列组合形成一个藏文音节,每个构件所处位置如图2所示。除基字外其他构件可有可无,元音必定出现在基字位上方或下方,在基字位可纵向叠加至4个字母。因此,一个藏文音节至少由1个字符构成,最多由7个字符构成。
由图1可知,基字可分为纯基字和非纯基字,非纯基字的构件元素即为10个后加字,而后加字中又包含了前加字和又后加字。
1.2 构件组合规则
所有构件元素并非可任意添接在相应的构件位,构件之间有严格的组合规则。文献[5]中详细阐释了藏文字性组织法中藏文音节构件的组合规则,将其分类归纳如下:
基字组合规则:每一个辅音字母均可作为基字,基字顶部添接上加字,底部添接下加字,基字前后添接前加字和后加字。
上加字组合规则:上加字\u0f62和基字\u0f49组合时不变形之外,与其他可组合的基字组合时则会变形,并非所有基字都能与上、下加字组合,能与上加字组合的基字如图3所示。
元音组合规则:元音除了不与\u0f5d和添接有下加字\u0f5d的基字组合之外,与其他单独的基字或添接有上、下加字的基字均可组合。
后加字组合规则:在基字后可添接任意后加字。
又后加字组合规则:又后加字则添接在后加字之后,添接规则如图5所示。
纯基字则只能作为基字使用。依据藏文音节构件的类别及藏文字性组织法规定的构件组合规则不难判断某一藏文音节的构件。
2 基于Unicode的藏文音节构件识别
藏文音节构件围绕基字通过不同的组合形式构成一个藏文音节,依据藏文字性组织法,共有48种组合形式[6],能够评写可读的有17 532个,其中常用的音节[7]有8 000多。这48种不同的组合形式都以基字为中心,以单独的基字或在基字基础上添接其他构件,从而构成至少含1个字母或至多含7个字母的音节,如图7所示。因此,识别一个藏文音节具体是由哪些构件组合而成的,首先应确定该音节中哪个字母是基字,其次判断基字上、下是否添接上加字、下加字、元音等其他字母,并判断其前、后是否添接前加字、后加字和又后加字,从而判断出所有构件。
让计算机自动识别藏文音节构件除了要应用藏文字性组织法规定的音节构件组合规则,还必须考虑藏文编码问题。藏文编码有基于组合的方案和基于预组合的方案,基于组合方案的Unicode藏文国际标准编码具有简洁性、无遗漏涵盖等特点,发展前景广阔[7],且符合藏文音节由构件组合的特性。任意构件在Unicode藏文编码表中基本上都有其相应的编码,易于实现藏文音节构件识别算法。而基于预组合的方案则把纵向垂直叠加的字符作为一个字丁进行编码,不易于识别构件。
2.1 基字识别
依据藏文字性组织法规定的音节构件组合规则和Unicode藏文编码表,可以通过以下步骤识别出藏文音节中的基字:
S1:判定藏文音节中是否含有下加字,若有则其前一字符为基字,若无则进入下一步。
S2:判定藏文音节中是否含\u0f90~\u0fbc编码内的字符,由于Unicode藏文编码中未对上加字单独编码,因此无法直接依据藏文字性组织法中上加字的组合规则来判定基字,但Unicode藏文编码对字符顶部可添接其他字符的所有组合用辅音字符在\u0f90~\u0fbc区间进行了编码。因此,只需查找藏文音节中是否存在该编码区间内的字符,即可得知该字符为基字,从而也可判断出其前一字符为上加字;若无该区间内的字符则进入下一步。
S3:判定藏文音节中是否含有元音,若有则其前一字符为基字,若无则进入下一步。
S4:经过上述三步的判断筛查,剩下的音节构件组合中既无元音,也无上、下加字,则该音节由前加字、基字、后加字、又后加字4个构件遵从藏文音节组合规则组合成含1~4个字符的音节。其中,单个字符的它本身即为基字,两个字符的则其首字符即为基字,四个字符的则其第二个字符即为基字,若为三个字符则进入下一步继续判断。
S5:由S4得到的三个字符组成的音节,有三种组合形式,如图8所示(此表仅列出经过S1~S3筛查后得到的既无元音、也无上、下加字的三字符藏文音节)。由于所有辅音均可做基字使用,因此首字符为前加字和基字(非纯基字)的情况很容易混淆构件元素。图8中“\u0f42\u0f44\u0f66”的首字符既可作为前加字的构件元素也可作为基字(非纯基字),好在藏文字性组织法中严格规定了前加字的组合规则(见图6),依据此规则可以判定这类双重构件元素何时作为前加字,何时作为基字(非纯基字)。因此,这一步准确判断首字符是否为前加字尤为关键。首先判断其首字符是否为纯基字,若为纯基字则首字符即为基字,若不是纯基字则依据前加字的组合规则判断其首字符是否为前加字,若为前加字则第2个字符为基字,若不是前加字则首字符即为基字,该基字为非纯基字。
2.2 其他构件识别
4 结 语
本文仅对符合藏文音节组合规则的藏文音节进行构件识别,依据藏文字性组织法规定的藏文音节组合规则和Unicode藏文编码,设计出围绕基字识别藏文音节构件的算法,通过测试验证了算法的可行性。对梵音藏文转写的音节和汉藏翻译中形成的音节等不符合藏文音节组合规则的音节构件识别未作讨论。
参考文献
[1] 仁青卓么,祁坤钰,贡保扎西.藏文音节七元组类型分析研究[J].西北民族大學学报(自然科学版),2015,36(1):32?36.
[2] 关白,才科扎西.现代藏文音节字自动校对研究[J].计算机工程与应用,2012,48(29):151?156.
[3] 才让叁智,高定国,扎西加,等.基于基字识别的藏文音节字检错算法研究[J].中国科技博览,2014(42):260?262.
[4] 春燕.基于藏文音节特征的模式匹配算法的研究[J].计算机光盘软件与应用,2014(15):119?120.
[5] 华却才让,姜文斌,赵海兴,等.基于感知机模型藏文命名实体识别[J].计算机工程与应用,2014,50(15):172?176.
[6] 普布旦增,关白.基于统计的藏文音节字校对系统开发研究[J].西藏大学学报(自然科学版),2015(1):74?78.
[7] 珠杰,李天瑞,刘胜久.基于条件随机场的藏文人名识别技术研究[J].南京大学学报(自然科学版),2016,52(2):289?299.
[8] 吕丹桔.汉语连续语音识别之音素声学模型的改进[J].计算机仿真,2010,27(5):355?358.
[9] 卓嘎,边巴旺堆.基于Matlab的藏语语音基音检测算法研究[J].现代电子技术,2015,38(10):20?22.