第34卷总第92期西北民族大学学报(自然科学版)Vol.34,No.4 2013年12月Journal of Northwest University for Nationalities(Natural Science)Dec,2013藏文联想记忆输入法研究马金海1,贺胜1,卢亚军2(1.南京师范大学文学院,江苏南京210097;2.西北民族大学藏文机器翻译研究所,甘肃兰州730030)櫗櫗櫗櫗櫗櫗櫗櫗櫗櫗櫗櫗櫗櫗櫗櫗櫗櫗櫗櫗櫗櫗櫗櫗櫗櫗櫗櫗櫗櫗櫗櫗櫗櫗櫗櫗櫗櫗櫗櫗櫗櫗櫗櫗[摘要]文章就藏文联想记忆输入法,介绍了该输入法的联想模块和记忆模块.前者使用字词二级联想,后者使用临时记忆和永久记忆结合的方式,使得输入法能自动联想字词,并且候选列表中的字词排列顺序能够根据用户的输入习惯或风格自动进行调整,使常用字词前置,提高用户的输入效率.该输入法基于藏文编码国家暨国际标准基本集(ISO/IEC10646·1)和与之相一致的Unicode国际标准,使用央金藏文键盘布局,并在微软提供的TSF框架中进行开发,具有较广泛的应用前景.[关键词]藏文输入法;联想记忆;TSF;键盘布局[中图分类号]TP391[文献标识码]A[文章编号]1009-2102(2013)04-0052-050引言藏文是国内外使用人数较多的少数民族文字之一.利用先进的计算机技术和语言学理论的新成就及研究方法,是促进藏文信息化建设的重要途径.而藏文的计算机录入、排版是藏文信息化的基础工作,能否高效地输入藏文直接影响着藏文信息化的进程[1].藏文属于表音文字,但不像一般的拼音文字是一维的线性书写文字,而是由前加字、上加字、基字、下加字、后加字、又后加字以及4个元音等组成的二维书写文字,字形上有不同于一般拼音文字的语法、时态信息.因此,在输入法的设计上既要顾及其表音文字的性质,输入时符合藏语使用者的拼读习惯,又要顾及其二维的字形结构,而不宜与其他拼音文字一样单纯地按线性顺序输入.藏文文本中音节与音节之间以隔字符为界(相当于汉文文本中字与字之间的间隙).据卢亚军等(2003年)对约4千万个音节(70MB)的大型语料库的统计分析发现,隔字符的使用频率在所有字符中占到30%左右[2].如果不断地单独输入如此高频率但又缺乏语义功能的形式字符,不仅容易造成输入错误(如遗漏隔字符),而且还会使实际输入效率大大降低.卢亚军等的统计还发现:70MB语料库共5201个标准音节中的前1333个音节累计频率为95%.而另据王维兰等(2004)的统计显示,两千万字的语料库中共5334个标准音节,其中,覆盖文本音节90%的音节只有703个,覆盖文本音节95%的音节有1140个[3].这些统计数据说明藏文的单音节的构词能力非常强,因此单音节之间的同现(即由“二次构词”形成的词组)现象很普遍.若能实现词组级的输入,则既可以实现多个相关联音节字的快速输入,又可以在备选词组中自动嵌入隔字符,减少了输入隔字符的工作量,从而大大提高输入效率.由于字和词的联想输入可以成倍提高输入效率,尤其在大批量文本的输入过程中效果更为明显,所以藏文信息化研究者非常重视这一内容.另外,迄今为止,尚未实现“记忆”或“自学习”功能的藏文输入法,相比汉语来说还比较滞后.基于这两点考虑,本文提出了一种具有联想、记忆功能的藏文输入法.#[收稿日期]2013-11-08[基金项目]国家科技支撑计划项目子课题“汉藏机器翻译子系统开发”(2012BAH14F03-4).[作者简介]马金海(1986—),男,硕士研究生,从事自然语言处理方面的研究.1国内外研究现状目前,国内外的藏文输入法主要有桑布扎、同元、班智达、央金、藏大岗杰、琼迈、不丹宗喀、喜马拉雅等输入法.由于历史和现实条件限制,这些藏文输入法中只有班智达、藏大岗杰输入法实现了简单的词组联想功能.但是这两种输入法都不支持Unicode字符集,从而不能输入完全的现代藏文,有“缺字”现象,而且难以在Internet上进行交互.另外,它们都是以基字为中心进行联想的,输入编码串中第一个字母都被默认为是基字,这并不完全符合藏文的拼读或书写顺序规则.目前,支持Unicode字符集又具有联想功能的藏文输入法是央金藏文输入法,但它仅实现了字符级的联想,尚未实现词组级联想[4,5].另外,由于用户语言习惯或所从事的领域不同,常使用的字词也必然各自迥异.以上各输入法中所使用的都是基于静态统计的字表或词表,即同一输入串所形成的候选字词顺序总是固定不变的,不能根据个人输入风格或习惯进行实时动态的调整,这也就成为了提升输入效率的掣肘.因此,藏文输入法也必须要实现记忆功能.2藏文字词联想输入藏文联想输入的重点和难点在于两级联想:第一级为音节内联想,即由一个或几个字母联想到一个藏文整字;另一级为音节间联想,即在第一级联想的基础上,由一个藏文整字,联想到一个藏文词组.相同的一个输入编码串,有可能组合成字,也有可能组合成词,输入法中应该优先进行字级联想还是词级联想,这涉及到输入法对输入编码串自动切分的方式.2.1相关假设为此,本文提出了三点假设:1)如果输入码串中字母个数较少(如小于3个),则认为用户更倾向于输入字,而不是词组,即优先将该输入码串作为整体进行音节内联想,尽量不做自动切分.2)如果用户连续输入多个(如大于7个)字母,而中间不加任何的隔字符,则认为用户更倾向于输入一个词组,而不是输入多个频次都很高的独立的字.3)用户对藏文音节字的计算机输入顺序是按藏文的书写顺序进行的,即:前加字→上加字→基字→下加字→元音→后加字→又后加字.假设1)可以使输入过程中个数较少的输入字母编码集中于音节字级联想,而免去不必要的词组级联想.假设2)增加了长输入编码串中各字母之间的关联,更符合用户的输入心理,并因此,统一对输入编码串使用最大匹配法进行自动切分.假设3)保证了输入顺序与书写顺序的统一,符合藏文用户习惯,减少了纯粹将第一输入字母作为基字的输入法给用户带来的不便.2.2字词库2.2.1编码本输入法所使用的是藏文的Unicode编码字符集,与汉字的一字一码不同的是,字词表中所存储的各藏文音节字是由各字母编码叠加而成的,所以其编码是不定长的.考虑到隔字符的频繁出现,本输入法的字词表中在各字词的后面都统一加上了隔字符,如:藏文音节字蚢砱烞的编码是:0F40(畟)+0FB1(纚)+0F72(祑)+0F66(砱)+0F0B(烞);藏文词组竘眐烞眐砱烞的编码是:竘眐的编码+0F0B(烞)+眐砱的编码+0F0B(烞).2.2.2存储为了提升藏文音节字和词组在字表和词表中的查找速度,本输入法特别将字库和词库分别用索引表+顺序表的结构进行存储.而且在各索引块中,各元素都是按频次由大到小存放的,从而不必再进行排序操作.2.3核心实现1)生成候选字列表:采用最大匹配法,在字表中查找与输入编码串匹配2的音节字;查找成功后,输出候选字数组,若此时已经达到输入编码串末尾,则返回;否则,进行词表查找.2)生成候选词列表:根据已生成的候选字和尚未匹配成功的输入编码串在词表中查找相应的词,若完全匹配成功,则输出候选词组;否则,对尚未匹配成功的输入编码串重新按最大匹配法进行切分、查找.3)处理数字击键事件:若在生成候选字组或词组后捕捉到数字击键事件时输入编码串尚未完全匹配,则将输入编码框中已匹配的编码串替换成数字所选的候选字词,剩下的编码串继续按1)、2)进行.若在输入编码串中已经完全匹配成功后捕捉到数字击键事件,则将相匹配的候选字词上屏显示.4)处理其他击键事件:若捕捉到的不是数字或其他规定的有效击键事件,则将1)、2)步骤中候选列表的第一项上屏显示.3记忆模块设置记忆模块的目的是通过部分记录用户的输入历史来重新调整候选列表中各字词的排列顺序,将用户常用的字词放在候选列表的前面,以尽量适应用户的使用习惯.如果有输入编码串所对应确定的上屏字串未在原字表或词表中出现,则增加该字串.3.1数据结构本输入法使用临时记忆词表来存储当前应用程序中输入的字词,该词表用记忆编码结构数组MEMORY来存储,其声明如下:struct MEMPW{LPTSTRszPW;//输入编码所对应字或词组DWORD dwFreq;//特定应用程序中输入时被选中的频次};struct MEMORY{TCHARalpTab[14];//有效输入编码struct MEMPW Pw[9];//一个输入编码可能对应多个TCHARchAttrib;//其他属性};该结构中,同一有效编码串对应的字词Pw只记录有9个,原因是目前设计的候选列表框中每页的字词一般在9个左右,若超过该数目,则需要进行翻页,便也失去了记忆模块的必要性.3.2算法流程1)传入参数后,用有效输入编码数组compAlp与各记忆编码结构MEMORY中的alpTab字段进行匹配,若匹配成功,则将Pw数组中的字词根据所记录的当前频次放在候选列表前面,然后将由联想模块所确定的候选字词(去掉与记忆模块中重复的字词)追加在其后.若不能匹配成功,则按联想模块进行,然后将输入编码串和上屏字词信息存入记忆词表中.2)匹配成功的情况下,若上屏字词是临时记忆词表中的字词,则将该字或词频次加1;否则,若上屏字词不是记忆模块中的字词,则将该字词存入相应的Pw中,设置频次为1;若数组Pw中已有9个元素,则用该上屏字词将频次最低的一个元素覆盖.3)当关闭输入法时,将临时记忆词表中的字词写入字表或词表中,并且在原频次的基础上加上本次输入中的相应频次.由此可见,临时记忆词表中的频次可以使对应字词“一步到位”地适应用户当前输入,而将本次输入的字词的频次加到原来的字词表中,实现永久记忆,则可以使字词的频次更能体现用户长期输入的习惯.4输入法的实现本输入法使用了央金藏文输入法的键盘布局设计[7],该键盘布局是第一个利用德沃拉克英文键盘布局理论、基于藏文字符音节词汇等频度统计数据的藏文键盘布局,非常合理科学.例如,其根据藏文音节中各构件之间的配置概率将高频部件布置在了左右两侧,以实现左右手交替击键.另外,该键盘布局将隔字符设置在空格键上,可以使大多都会使用汉语输入法的藏文用户沿用汉语输入法中以空格键作为选择首选项上屏的习惯,并且正好呼应藏文音节字后添加隔字符的输入,而不必特意地再费时来熟悉使用其他键消息作为确定上屏的依据.本输入法使用的编程框架是微软公司提供的TSF(Text Service Framework)输入法框架,它基于COM组件,用于高级文本输入和自然语言处理,是一个设备无关、语言中立、可扩展的系统,提供了一个位于应用程序和输入法实现的间接层[8].应用程序可以从text service(Text service可以是键盘输入、手写识别或语音识别)接受文字输入,而不用考虑文本源的具体细节.对于本输入法,需要程序员自己编写的最重要的在Composition、CandidateList、KeyHandler等几个部分.另外,本输入法也可以利用央金藏文输入法已实现的造字功能新增一些未登录的字或词,即通过OPENTYPE字处理技术实现部件动态叠加的功能,解决藏文的“缺字”问题[9].5结语由于藏文信息化的相对滞后,基础建设上如语义、语法数据库等资源比较匮乏,所以本输入法仅基于字词频统计数据来作为候选列表中排序的依据,而未考虑字词的其他属性,如语义和语法功能等.像汉字输入法一样,随着藏文信息化的发展,未来的藏文输入也要实现云计算、在线词库同步、藏中英三语混合输入、表情输入、皮肤编辑等功能,满足用户多样的需求.另外,还可以充分利用TSF框架,在该输入法的基础上扩展实现手写识别和语音识别输入,进而实现翻译输入等其他文本服务功能.参考文献:[1]江荻,龙从军.藏文字符研究:字母、读音、编码、字频、排序、图形、拉丁字母转写规则研究[M].北京:社会科学文献出版社,2010.[2]卢亚军,马少平,张敏,罗广.基于大型藏文语料库的藏文字符、部件音节、词汇频度与通用度统计及其应用研究[J].西北民族大学学报(自然科学版),2003,24(2):32-42.[3]王维兰.现代藏文语言单位频率和频级关系的统计分析[J].科学技术与工程,2004,4(5):413-417.[4]贺胜,卢亚军,王正平.基于IMM-IME的藏文输入法研究[J].西北民族大学学报(自然科学版),2008,29(3):29-32.[5]贺胜,卢亚军.基于藏文编码(基本集)国家暨国际标准的藏文输入法研究[J].图书与情报,2007,6:45-49.[6]http://www.unicode.org/charts/PDF/U0F00.pdf.[7]卢亚军.藏文计算机通用键盘布局与输入法研究[J].中文信息学报,2006,20(2):78-86.[8]http://msdn.microsoft.com/en-us/library/ms629032(v=vs.85).aspx.[9]唐英敏.基于OpenType的藏文文字处理方法[A].第十届全国少数民族语言文字信息处理学术研讨会论文集[C].2005,243-248.Study on Tibetan Input Method withFunctions of Association and MemoryMA Jin-hai1,HE Sheng1,LU Ya-jun2(1.Department of Literature of Nanjing Normal University,Nanjing210097,China;2.Institute of Tibetan Machine Transla-tion,Northwest university For Nationalities,Lanzhou730030,China)[Abstract]The article proposes a Tibetan input method with functions of association and memory,and pres-ents an association algorithm and a memory algorithm thereof,in which the former adopts double-stage associ-ation,i.e.alphabet-to-word and word-to-phase association,and the latter uses ways of temporary andpermanent memory.By these,the input method can convert an input composition string into any possible relat-ed Tibetan words or phrases.Besides,words or phrases in the candidate list can be adjusted dynamically ac-cording to the inputting habit of a specific user in such a manner that the frequently-used terms are displayed in order of descending frequency at the beginning of the list,whereby improving the input efficiency.[Key words]Tibetan;input method;association;memory;TSF;Tibetan keyboard layout(上接第24页)[9]Deng,S.B.,Bai,R.B.,Hu,X.M.,&Luo,Q.Characteristics of a bioflocculant produced by Bacillus mucilaginosus and its use in starch wastewater treatment[J].Applied Microbiology and Biotechnology,2003,60,588-593.[10]邱忠平,茆灿泉,刘源月等.微生物絮凝剂生产菌的筛选及其絮凝特性[J].环境工程学报,2009,3(7):1185-1188.[11]you y,ren n q,wang a j,et e of waste fermenting liquor to produce bioflocculants with isolated strains[J].International Journal of Hydrogen Energy,2008,33(13):3295-3301.[12]刘军,刘彬彬.微生物絮凝剂的最新研究进展[J].广州化工,2009,37(9):39-42.[13]曾玉彬,黄锋,刘世海等.微生物絮凝剂的研究现状与发展趋势[J].江苏环境科技,2007,20(2):114-117.[14]刘洋,王浩绮,胡永红.微生物絮凝剂研究进展[J].金陵科技学院学报,2006,22(2):75-79.[15]容锵桃,张鸿郭,周少奇.微生物絮凝剂研究进展[J].环保技术,2005,(4):43-46.Screening of Flocculants-producing Strains andOptimization of Culture Conditions in Potato WastewaterYE Yong-li,YU Mei-ling,CHEN Shi-en(College of Life Science and Engineering of Northwest for Nationalities,Lanzhou730030,China)[Abstract]In order to screen out the strains for producing flocculants in potato wastewater,the bacterium,mould and saccharomycetes were screened by using the beef extract peptone medium,potato extract glucose medium and malt extract medium from the potato wastwater.Through preliminary screening and secondary screening,19strains were found with flocculating activity from soil and activated sludge.The flocculating rate from the strain N-3and N-4on kaolin suspension was the highest.The flocculating activity of N-3strains was higher than(90.23%)than that of N-4strains(77.60%).After the culture conditions of N-3strain was optimized,the flocculation efficiency reached93.71%under the condition of initial pH4.5 7.0,30ħ,rotation speed of150r/min and culture time of2days.[Key words]Microbial flocculant;Screen;Culture condition;Flocculating rate。