依不拉音·吾斯曼,張紹武,于 凱
1.新疆財(cái)經(jīng)大學(xué) 計(jì)算機(jī)科學(xué)與工程學(xué)院,烏魯木齊 830012
2.大連理工大學(xué) 電子信息與電氣工程學(xué)部,遼寧 大連 116000
隨著互聯(lián)網(wǎng)技術(shù)在新疆區(qū)域的發(fā)展和普及,新疆網(wǎng)民的數(shù)量急劇膨脹。據(jù)2016年7月的統(tǒng)計(jì),新疆網(wǎng)民數(shù)量超過1 200萬,通過網(wǎng)絡(luò)交流逐漸地成為維吾爾族日常交流的主要形式,從中小學(xué)生到老年人,從農(nóng)民到國家干部人際交流上都離不開微信、微博、論壇、QQ等現(xiàn)代化的網(wǎng)絡(luò)交流工具。
目前,在國內(nèi)維吾爾族網(wǎng)絡(luò)平臺(tái)上使用的文字,有以阿拉伯字母為基礎(chǔ)的傳統(tǒng)維文和拉丁字母為基礎(chǔ)的拉丁維文(ULY)兩種文字同存現(xiàn)象。新疆接壤中亞區(qū)域的哈薩克斯坦、吉爾吉斯斯坦、烏茲別克斯坦等中亞國家,解放之前由于歷史原因一部分維吾爾族人移民到部分中亞國家。以上中亞三國的維吾爾族人口有54萬多,占國外維吾爾族人口的一半以上[1],而這些國家的維吾爾人采用西里爾字母(斯拉夫語字母)為基礎(chǔ)的西里爾維文。在國家“一帶一路”戰(zhàn)略的推動(dòng)下,新疆與中亞及歐洲國家間的貿(mào)易往來越來越頻繁,隨著新疆地區(qū)維族人與歐洲以及中亞國家的維族人間通過互聯(lián)網(wǎng)交流的加深,當(dāng)前維文的使用呈現(xiàn)了三種文字(即傳統(tǒng)維文、拉丁維文及西里爾維文)共存的特有現(xiàn)象。這些文字由于缺乏科學(xué)的對(duì)應(yīng)標(biāo)準(zhǔn)、轉(zhuǎn)寫規(guī)則、轉(zhuǎn)換工具等多種原因,目前維吾爾族的網(wǎng)絡(luò)交流上存在著嚴(yán)重的文字混亂現(xiàn)象。此外,現(xiàn)有的維吾爾語網(wǎng)站搜索引擎系統(tǒng)不支持拉丁維文和西里爾維文,這為國內(nèi)外維吾爾族人群正常的網(wǎng)絡(luò)交流和互聯(lián)網(wǎng)使用帶來了極大的不便。
隨著近年來拉丁維文和西里爾維文使用人數(shù)的增長并引發(fā)越來越多學(xué)者的關(guān)注,傳統(tǒng)維文、拉丁維文和西里爾維文之間的轉(zhuǎn)寫規(guī)則和轉(zhuǎn)換算法研究也有了長足的進(jìn)步。文獻(xiàn)[2-4]中介紹了維文字符和拉丁字符的對(duì)應(yīng)關(guān)系和轉(zhuǎn)寫規(guī)則,并提出了維文與拉丁維文之間的相互映射關(guān)系和詞性標(biāo)注區(qū)別;文獻(xiàn)[5]和[6]介紹了傳統(tǒng)維文與西里爾維文編碼字符之間的對(duì)應(yīng)關(guān)系、組詞特點(diǎn)和書寫規(guī)則,提出了現(xiàn)代維吾爾文與西里爾維文之間的轉(zhuǎn)換規(guī)則;文獻(xiàn)[7]和[8]中介紹了Office環(huán)境下不同傳統(tǒng)維文Unicode編碼之間的轉(zhuǎn)換和傳統(tǒng)維文與拉丁維文之間的轉(zhuǎn)換方式;文獻(xiàn)[9]和[10]分別介紹了傳統(tǒng)維文手寫簽名數(shù)據(jù)庫的創(chuàng)建和拉丁維文、傳統(tǒng)維文的信息化過程;文獻(xiàn)[11-14]中介紹了傳統(tǒng)維文、拉丁維文和西里爾維文在搜索引擎系統(tǒng)中的轉(zhuǎn)換方法。
這些文章中提出了傳統(tǒng)維文、拉丁維文、西里爾維文之間的映射關(guān)系和轉(zhuǎn)寫規(guī)則,但針對(duì)這些文字之間的轉(zhuǎn)換算法設(shè)計(jì)和實(shí)現(xiàn)方面的研究幾乎是空白。雖然維軟(Uighur Soft)公司2010年就開發(fā)了傳統(tǒng)維文和拉丁維文之間的轉(zhuǎn)換工具,但它只能在Office平臺(tái)下工作,不適合互聯(lián)網(wǎng)和移動(dòng)網(wǎng)絡(luò)平臺(tái)使用,并且轉(zhuǎn)換速度較慢,造成使用受限。當(dāng)前拉丁維文以及西里爾維文的互聯(lián)網(wǎng)用戶日益增多,國內(nèi)外網(wǎng)民的相關(guān)需求也日益劇增。
近年來,維文網(wǎng)站在數(shù)量、內(nèi)容、結(jié)構(gòu)、技術(shù)等方面有了很大的發(fā)展并形成了一定的規(guī)模。隨著維文網(wǎng)站技術(shù)的發(fā)展,維文搜索引擎技術(shù)也有了進(jìn)步,目前較為通用的有:IZDA、ULINIX和新疆大學(xué)開發(fā)的多語種搜索引擎系統(tǒng)等。這些維文搜索引擎系統(tǒng)只支持傳統(tǒng)維文,不支持拉丁維文和西里爾維文。當(dāng)前拉丁維文和西里爾維文的互聯(lián)網(wǎng)用戶日益增多,但目前為止還沒有基于拉丁維文和西里爾維文來實(shí)現(xiàn)維文搜索引擎的技術(shù)和相關(guān)的研究。目前現(xiàn)實(shí)需求和技術(shù)發(fā)展之間存在較大差距,此方面的研究就顯得尤為迫切。由此,本文設(shè)計(jì)一套維文多文轉(zhuǎn)換機(jī)制來嘗試解決國內(nèi)外維吾爾人中的互聯(lián)網(wǎng)文字交流困難問題。本文主要完成的工作如下:
(1)研究傳統(tǒng)維文、拉丁維文和西里爾維文各自淵源、目前的使用情況和使用中存在的一些問題,找出傳統(tǒng)維文與拉丁維文對(duì)應(yīng)標(biāo)準(zhǔn)上的一些不科學(xué)因素,在此基礎(chǔ)上給傳統(tǒng)維文與拉丁維文對(duì)應(yīng)標(biāo)準(zhǔn)提出幾項(xiàng)建議。
(2)研究傳統(tǒng)維文、拉丁維文的語法特征和Unicode編碼特征,提出傳統(tǒng)維文與拉丁維文的轉(zhuǎn)換規(guī)則,在此基礎(chǔ)上設(shè)計(jì)出LUTC(Latin Uyghur Traditional Conversion)模型完成傳統(tǒng)維文和拉丁維文間的文字轉(zhuǎn)換,實(shí)現(xiàn)維吾爾網(wǎng)民不改變自身維文使用習(xí)慣,可以進(jìn)行正常的互聯(lián)網(wǎng)文字交流。
(3)研究西里爾文的語法特征,提出傳統(tǒng)維文與西里爾維文的轉(zhuǎn)換規(guī)則,在此基礎(chǔ)上設(shè)計(jì)出傳統(tǒng)維文與西里爾維文間的文字轉(zhuǎn)換模型CUTC(Cyrillic Uyghur Traditional Conversion),實(shí)現(xiàn)新疆與中亞國家維吾爾人間的正?;ヂ?lián)網(wǎng)文字交流提供方便快捷的工具。
(4)現(xiàn)有的維文搜索引擎基礎(chǔ)上,設(shè)計(jì)出傳統(tǒng)維文、拉丁維文、西里爾維文之間的轉(zhuǎn)換模型LCCU(Latin Cyrillic Conversion to Uyghur),通過LCCU模型,在現(xiàn)有的維文搜素引擎系統(tǒng)中實(shí)現(xiàn)拉丁維文和西里爾維文的信息檢索。
現(xiàn)在所使用的阿拉伯字母為基礎(chǔ)的維吾爾文(簡稱傳統(tǒng)維文)是維吾爾族進(jìn)入伊斯蘭教后開始使用的文字,是屬于阿勒泰語系中的阿拉伯文系統(tǒng),8個(gè)原音24個(gè)輔音字母組成,自右向左書寫,是新疆維吾爾人的公務(wù)活動(dòng)、社會(huì)交際、廣播影視、新聞出版、文學(xué)藝術(shù)、民族教育、科學(xué)技術(shù)等各個(gè)領(lǐng)域普遍使用的文字。
維吾爾文雖然有32個(gè)字母,但每個(gè)字母在詞首、詞中及詞尾形式的不同,其可能的字形超過120多種,這使得維文的輸入法系統(tǒng)擁有復(fù)雜的鍵盤布局設(shè)定,維文自右向左書寫,和現(xiàn)代中英文的自左向右書寫有很大區(qū)別,因此和中英文字母混合使用很不方便,在網(wǎng)絡(luò)環(huán)境中使用維文必須借助特定的維文字體和輸入法才能正確顯示和輸入,大部分應(yīng)用軟件需經(jīng)轉(zhuǎn)碼后才能正常顯示維吾爾文字,不利于維吾爾語信息傳播和交流,由于以上原因傳統(tǒng)維文在微信、論壇、微薄、QQ等網(wǎng)絡(luò)交流環(huán)境上的使用率比較低,微信和QQ上的使用率不到60%。
(1)拉丁維文的淵源和使用現(xiàn)狀
拉丁維文是由拉丁字母來拼寫維吾爾語的文字,拉丁文在新疆地區(qū)有一定的歷史基礎(chǔ),解放后拉丁化的大范圍推廣之下新疆的維吾爾、哈薩克等少數(shù)民族,1953年至1985年之間使用拉丁字母為基礎(chǔ)的維吾爾文字叫做維吾爾新文字,1985年的文字改革后開始使用現(xiàn)在的阿拉伯字母為基礎(chǔ)的傳統(tǒng)維文。新疆雙語教育的深化,80年代后出生的維吾爾群大部分是雙語生,他們對(duì)漢語拼音字母和英文字母的印象和傳統(tǒng)維文預(yù)裝輸入法,鍵盤布局復(fù)雜和中英文一起使用不方便等多種原因,從而網(wǎng)絡(luò)語言文字上習(xí)慣使用拉丁維文。歐洲國家的維吾爾人在網(wǎng)絡(luò)交流上基本上使用拉丁維文。網(wǎng)絡(luò)環(huán)境下使用拉丁維文人數(shù)的增長,2000年新疆大學(xué)和新疆維吾爾自治區(qū)語言文字工作委員會(huì)一起公布了維吾爾文與拉丁文的對(duì)應(yīng)標(biāo)準(zhǔn),如表1[2]所示,把拉丁維文叫做維吾爾族的計(jì)算機(jī)網(wǎng)絡(luò)文字(Uyghur Computer Yeziki,UCY),現(xiàn)在QQ、微信等網(wǎng)絡(luò)交流媒體上使用拉丁維文人數(shù)不少于傳統(tǒng)維文人數(shù)。因此,在下文中通過LUTC轉(zhuǎn)換模型來解決傳統(tǒng)維文與拉丁維文用戶在Internet上的文字交流困難問題。
表1 傳統(tǒng)維文與拉丁維文對(duì)照表
(2)拉丁維文使用特征分析
拉丁文和維吾爾文是完全不同的兩種文字,拉丁維文是拉丁字母來拼寫維吾爾語的文字,維吾爾語有32個(gè)音節(jié),而拉丁文有26個(gè)字母,因此維吾爾文與拉丁維文對(duì)應(yīng)標(biāo)準(zhǔn)上除了使用鍵盤上的24個(gè)拉丁字母(不采用讀音重復(fù)的c和v字母)外,增加了ch、ng、zh、sh、gh等5個(gè)雙字母和ü、ě、ǒ等3個(gè)拉丁文擴(kuò)展區(qū)字母。維吾爾文和拉丁維文書寫和語法方面有一些區(qū)別總結(jié)為如下幾種:
①拉丁文是自左向右讀寫,維吾爾文自右向左讀寫。
②拉丁文區(qū)分大小寫,維文不區(qū)分大小寫,傳統(tǒng)維文字母在詞中出現(xiàn)的位置不同有詞首,詞中和詞尾等2~4種不同字形,共有126種字形。
③拉丁文句首字母和縮略字母大寫,維文中所有詞首字母由特殊的詞首字形來拼寫,縮略字由獨(dú)立字形來拼寫。
④維吾爾文單詞之間必須加空格來隔開,而拉丁維文不是。
拉丁維文比現(xiàn)在的傳統(tǒng)維文具有在網(wǎng)絡(luò)環(huán)境上直接輸入,形體美觀,簡單清楚,便于認(rèn)讀書寫及中英文等其他語言文字混合使用方便等優(yōu)點(diǎn),是目前越來越多的維吾爾網(wǎng)民的首要選擇,逐漸成為維吾爾人的計(jì)算機(jī)網(wǎng)絡(luò)文字,但實(shí)際使用中存在很多的問題。雖然維吾爾文與拉丁維文的對(duì)應(yīng)標(biāo)準(zhǔn)早已公布,但實(shí)際使用中部分字母的使用用戶與標(biāo)準(zhǔn)之間的差距比較大,下面是在網(wǎng)絡(luò)媒體上常見的拉丁維文書寫不一致性現(xiàn)象。
①傳統(tǒng)維文與拉丁維文對(duì)應(yīng)標(biāo)準(zhǔn)上的Ch、Sh兩個(gè)拉丁維文字母組合分別對(duì)應(yīng)傳統(tǒng)維文中的“”“”字母,這完全按照漢語拼音字母讀音習(xí)慣來制定的,忽視了維吾爾網(wǎng)民對(duì)這些字母的國內(nèi)使用習(xí)慣,其實(shí)拉丁文中的Q、X單字母的讀音和維文字母“”“”的讀音是一樣的,QQ和微信的聊天室里單字母Q、X來拼寫維文字母“”“”的頻率遠(yuǎn)遠(yuǎn)高于字母組合Ch和Sh,例如:(好)(烏魯木齊)所有媒體和網(wǎng)絡(luò)平臺(tái)上寫Urumqi、Yahxi幾乎看不到 Urumchi、Yahshi。新疆的縮略字是“XJ”而不是“SHJ”,如:新疆電視臺(tái)的縮略字是XJTV。維吾爾著名的商標(biāo)名稱“QINNURI”“QINDIL”“SOYUNQA”“DI LQIN”中的“Q”字母對(duì)應(yīng)的是維文字母中的“,而不是傳統(tǒng)維文、拉丁維文對(duì)應(yīng)標(biāo)準(zhǔn)中的字母組合“CH”。
③?、ü、Ё字母的使用率非常低,因?yàn)檫@3個(gè)字母不能從鍵盤直接輸入,所以大部分網(wǎng)民在鍵盤上可以直接輸入的O、U、E字母來替代這3個(gè)字母。例如:(葡萄)—uzum(鴨子)—odak等。
④網(wǎng)絡(luò)信息檢索是網(wǎng)絡(luò)操作中不可缺少的一部分,目前維文網(wǎng)站的搜索引擎系統(tǒng)僅支持維吾爾文不支持拉丁維文,因此國內(nèi)外廣大習(xí)慣使用拉丁維文的網(wǎng)民無法使用維吾爾語網(wǎng)站的搜素引擎系統(tǒng),這是目前維吾爾語網(wǎng)站搜索引擎系統(tǒng)的空白之處。
(3)傳統(tǒng)維文/拉丁維文對(duì)應(yīng)標(biāo)準(zhǔn)的幾項(xiàng)建議
分析前面所說的拉丁維文書寫不一致性現(xiàn)象,可以發(fā)現(xiàn)維吾爾文與拉丁維文對(duì)應(yīng)標(biāo)準(zhǔn)上的一些不科學(xué)因素,總結(jié)為如下幾種:
①過于強(qiáng)調(diào)漢語拼音的讀音而忽視維吾爾人國內(nèi)使用習(xí)慣。
②過于強(qiáng)調(diào)一對(duì)一的對(duì)應(yīng)關(guān)系,而有些字母強(qiáng)迫性的對(duì)應(yīng)讀音上毫無關(guān)系的字母,忽視了字母原讀音上的自然對(duì)應(yīng)關(guān)系。
③忽視了拉丁文擴(kuò)展區(qū)字母的輸入難問題。
由此給維吾爾文與拉丁維文對(duì)應(yīng)標(biāo)準(zhǔn)提出了如下幾項(xiàng)建議,希望拉丁維文的規(guī)范化有所幫助。
①進(jìn)一步完善維吾爾文與拉丁維文的對(duì)應(yīng)標(biāo)準(zhǔn),重新考慮實(shí)際使用中差距比較大的X、Q、H、E、Sh、Ch等字母的對(duì)應(yīng)關(guān)系,設(shè)定對(duì)應(yīng)標(biāo)準(zhǔn)時(shí)盡量遵守原讀音上的自然對(duì)應(yīng)關(guān)系和用戶的國內(nèi)使用習(xí)慣。
②考慮各類用戶的計(jì)算機(jī)水平,降低文字輸入難度,標(biāo)準(zhǔn)中盡量避免或減少拉丁文擴(kuò)展區(qū)字符(如、的使用。設(shè)置標(biāo)準(zhǔn)時(shí)不要過于強(qiáng)調(diào)一對(duì)一的對(duì)應(yīng)關(guān)系,有些字母上可以考慮一對(duì)多的對(duì)應(yīng)關(guān)系,如 維吾爾文中的和和等字母讀音和字形上非常相似,讀音上只區(qū)別于聲調(diào)的軟硬度,這類的字符可以考慮一對(duì)多的對(duì)應(yīng)關(guān)系,這樣就可以減少或避免拉丁維文中拉丁文擴(kuò)展區(qū)字符的使用率。
(1)西里爾維文的淵源和使用現(xiàn)狀
西里爾文又叫基利爾文就是現(xiàn)在的餓文,1930年前后,蘇聯(lián)為蘇聯(lián)境內(nèi)的許多少數(shù)民族進(jìn)行文字改革,用西里爾字母替代原有的少數(shù)民族文字字母,所以中亞國家的維吾爾人也采用西里爾字母拼寫的西里爾維文作為維語主要的書寫文字。西里爾維文是西里爾文的40個(gè)字母來表示維吾爾語32個(gè)字母的中亞地區(qū)的維吾爾人在日常交流上普遍使用的文字,西里爾維文與傳統(tǒng)維文的對(duì)應(yīng)標(biāo)準(zhǔn)如表2所示[5]。國家利用新疆與中亞國家的區(qū)域優(yōu)勢,大力發(fā)展了與中亞5國的經(jīng)濟(jì)貿(mào)易,已經(jīng)開放了阿拉山口、霍爾果斯等16個(gè)一類通商口岸,和11個(gè)二類口岸,這就為對(duì)外經(jīng)貿(mào)往來打開了方便之門。特別是隨著第二條“歐亞大陸橋”鐵路的開通和習(xí)近平總書記提出的“一帶一路”政策的推行下,新疆與中亞國家之間的貿(mào)易往來越來越繁華,新疆和中亞國家的維吾爾人之間的網(wǎng)絡(luò)交流越來越多,新疆的維吾爾人在網(wǎng)絡(luò)交流上使用傳統(tǒng)維文和拉丁維文而中亞國家的維吾爾人在網(wǎng)絡(luò)交流上使用西里爾維文,這種文字上的差異給國內(nèi)外維吾爾族的網(wǎng)絡(luò)交流帶來了極大的不便。因此,通過CUTC轉(zhuǎn)換算法來解決國內(nèi)與中亞區(qū)域的維吾爾人在Internet上的文字交流困難問題。
表2 維吾爾文與西里爾文對(duì)照表
(2)西里爾維文的特征分析
維吾爾文和西里爾維文是完全不同的兩種文字,語法和書寫方面有著顯著區(qū)別,主要包括如下幾個(gè)方面:
①西里爾維文區(qū)分大小寫,而維吾爾文不區(qū)分大小寫。
②維吾爾文雖然有32個(gè)字母,但每一個(gè)字母在詞中出現(xiàn)的位置不同有詞首,詞中和詞尾等2~4種不同字形,共有126種字形。西里爾維文有40個(gè)字母,區(qū)分大小寫。
③西里爾維文中句首字母和縮略詞中的每一個(gè)字母必須大寫,維吾爾文中的詞首字母必須用特殊的詞首字形來寫,縮略詞由詞首字形或獨(dú)立字形中間加控字符來拼寫,例如:阿力木—(維文),Aлим(西里爾維文);BDT(聯(lián)合國)—(維吾爾文),BДT(西里爾文)。
維吾爾多文轉(zhuǎn)換算法是傳統(tǒng)維文和拉丁維文、傳統(tǒng)維文和西里爾維文之間雙向文字轉(zhuǎn)換功能的文字編碼轉(zhuǎn)換模型,該模型由兩個(gè)子模塊組成,分別是LUTC(Latin/Uyghur Traditional Conversion)拉丁維文/傳統(tǒng)維文轉(zhuǎn)換模塊和CUTC(Cyrillic/Uyghur Traditional Conversion)西里爾維文/傳統(tǒng)維文轉(zhuǎn)換模塊。
LUTC轉(zhuǎn)換器是傳統(tǒng)維文和拉丁維文間的雙向的文字編碼轉(zhuǎn)換(傳統(tǒng)維文轉(zhuǎn)換拉丁維文,拉丁維文轉(zhuǎn)換傳統(tǒng)維文)。拉丁文和傳統(tǒng)維文是完全不同的兩種文字,各有各的語法和編碼特征,為了避免轉(zhuǎn)換后的語法錯(cuò)誤,根據(jù)它們的語法特征,設(shè)定了如下轉(zhuǎn)換規(guī)則。
4.1.1 轉(zhuǎn)換規(guī)則
(1)傳統(tǒng)維文沒有大小寫,縮略語由詞首字母來拼寫,詞首字母只遇到空格后才能出現(xiàn),因此轉(zhuǎn)換拉丁文縮略語時(shí)每個(gè)字母后自動(dòng)添加空格來處理,否則轉(zhuǎn)換時(shí)出現(xiàn)錯(cuò)誤。如JKP(錯(cuò));JK P(對(duì))。
(2)拉丁文的8個(gè)元音字母A、E、O、U、I、?、ü、Ё在詞首出現(xiàn)時(shí)對(duì)應(yīng)的8個(gè)維文元音字母的詞首字形“”來特殊對(duì)應(yīng)處理。
(3)用戶輸入的維文或拉丁文語句中可能出現(xiàn)漢字、英文單詞、數(shù)字和標(biāo)點(diǎn)符號(hào),因此不是拉丁文或維文的都不要經(jīng)過編碼轉(zhuǎn)換而直接顯示。
(4)維文字母在詞中出現(xiàn)的位置不同有2~4種不同字形,32個(gè)字母共有120多個(gè)字形,所以拉丁文轉(zhuǎn)換維文時(shí),編碼轉(zhuǎn)換后還要進(jìn)行自動(dòng)選型。
4.1.2 LUTC轉(zhuǎn)換模型
維文字母編碼分散到阿拉伯基本區(qū)和阿拉伯?dāng)U展區(qū)中,詞首字母和部分單字母在0627—06AD范圍上,維文不同字形在FA8C—FEEE范圍上,維文字母編碼的這種分配對(duì)維文字母的排序,自動(dòng)選型,數(shù)據(jù)庫操作非常不利,而拉丁文在Unicode基本區(qū)中順序排列的,拉丁文與維文編碼間有不連續(xù)的現(xiàn)象,所以不能用線性函數(shù)來設(shè)計(jì)拉丁文與維文字母間的編碼轉(zhuǎn)換。因此為了提高查詢速度,預(yù)先編制一個(gè)查詢表,查詢表的第一列是按順序排列的拉丁維文字符編碼,第二列是對(duì)應(yīng)的維文單字符編碼,因?yàn)榫S文的32個(gè)字母總有120多種字形,所以還要建立一個(gè)維文字庫表,先從查詢表中找到拉丁維文對(duì)應(yīng)的維文Unicode編碼,自動(dòng)選型模塊根據(jù)該拉丁維文在詞中的位置參數(shù)和對(duì)應(yīng)的維文Unicode編碼[15],從維文字庫中找到相應(yīng)的維文字形。如:拉丁字母A對(duì)應(yīng)的維文字母中的一個(gè),如圖1所示。
圖1 LUTC模型中的查詢表關(guān)系圖
LUTC模型首先從用戶輸入的字符串中讀取第一個(gè)字符,根據(jù)拉丁文和傳統(tǒng)維文的編碼范圍(拉丁文在Unicode基本去,編碼從00開頭;傳統(tǒng)維文在Unicode第六區(qū),編碼從06開頭)[16]來判斷讀取的字母是傳統(tǒng)維文或拉丁文,讀取的字母是傳統(tǒng)維文,再轉(zhuǎn)給傳統(tǒng)維文轉(zhuǎn)換模塊,該模塊做相應(yīng)的編碼轉(zhuǎn)換后產(chǎn)生目標(biāo)字符并保存到目標(biāo)字符串中。如果讀取的字母是拉丁文,轉(zhuǎn)給拉丁文轉(zhuǎn)換模塊,該模塊做相應(yīng)的編碼轉(zhuǎn)換和自動(dòng)選型后產(chǎn)生目標(biāo)字符并保存到目標(biāo)字符串中。再讀取字符串中的下一個(gè)字符,具體算法步驟如下所示。
LUTC算法步驟:
1.Public Latin Uyghurchar[2,36],Uighur CharBase[3,36]as string /*定義拉丁文與維文對(duì)照數(shù)組和維文字庫*/
2.根據(jù)表2輸入內(nèi)容,創(chuàng)建拉丁文與維文對(duì)照表。
3.由不同維文字形創(chuàng)建維文字庫UighurCharacterBase[17]。
4.用戶輸入的字符串中讀取第一個(gè)字符的編碼。
5.根據(jù)字符編碼判斷讀取的字符是拉丁維文或是傳統(tǒng)維文。
6.如果是拉丁文,把字符編碼傳給拉丁文轉(zhuǎn)換器,如果是傳統(tǒng)維文,字符編碼傳給傳統(tǒng)維文轉(zhuǎn)換器。
7.轉(zhuǎn)換器從查詢表中獲取對(duì)應(yīng)的拉丁文編碼返回第9步。
8.拉丁文轉(zhuǎn)換器從LatinUighurchar中查找對(duì)應(yīng)的行數(shù)。
9.讀取第二字段的維文編碼和位置參數(shù)轉(zhuǎn)給自動(dòng)選型模塊。
10.自動(dòng)選型模塊根據(jù)字符編碼和位置參數(shù)從維文字庫中讀取相應(yīng)的維文字形來生成維文目標(biāo)查詢語句[17]。
11.檢查循環(huán)是否結(jié)束(循環(huán)變量是否大于字符串長度),如果是生成的維文查詢語句傳給搜索引擎檢索器,如果否返回第4步驟繼續(xù)循環(huán)。
LUTC模型流程如圖2所示,圖中n是字符串長度。
圖2 LUTC算法流程圖
CUTC模型是西里爾維文與傳統(tǒng)維文之間的文字編碼轉(zhuǎn)換器,可以解決國內(nèi)和中亞維吾爾人間的文字交流困難問題。西里爾維文有40個(gè)字符,而傳統(tǒng)維文有32個(gè)字母,所以部分字母之間存在一對(duì)多的對(duì)應(yīng)關(guān)系,根據(jù)西里爾維文和傳統(tǒng)維文的語法特征,設(shè)定如下的轉(zhuǎn)換規(guī)則。
4.2.1 轉(zhuǎn)換規(guī)則
(2)西里爾維文單詞中的“Я、ю”字母轉(zhuǎn)換為維文中的雙字母“”來處理。
(3)西里爾維文分大小寫字母,句首字母和縮略語中的字母是大寫字母,例如:“Aлим”(阿里木)、“ШУA(chǔ)P”(新疆維吾爾自治區(qū)),轉(zhuǎn)換時(shí)維文的詞首字形或獨(dú)立字形來轉(zhuǎn)換。
4.2.2 CUTC編碼轉(zhuǎn)換模型設(shè)計(jì)
同樣的方式,由西里爾維文與傳統(tǒng)維文字母創(chuàng)建一個(gè)查詢表Cyrillic Uyghur Character Base,查詢表按照西里爾文的字母順序排列,因?yàn)槲骼餇柧S文與傳統(tǒng)維文的部分字母之間存在一對(duì)多的對(duì)應(yīng)關(guān)系,重復(fù)輸入傳統(tǒng)維文字母來表示一對(duì)多的對(duì)應(yīng)關(guān)系,查詢表的第一字節(jié)是西里爾文字母,第二字節(jié)是傳統(tǒng)維文字母,當(dāng)然還有維文字庫表,如圖3所示。
圖3 西里爾維文傳統(tǒng)維文查詢表關(guān)系圖
用戶輸入的關(guān)鍵詞首先按照傳統(tǒng)維文與西里爾文的編碼范圍來判斷(西里爾文編碼在Unicode第四區(qū),字符編碼04開頭,而傳統(tǒng)維文在Unicode第六區(qū),編碼06開頭),讀取的是西里爾維文,轉(zhuǎn)到西里爾維文轉(zhuǎn)換模塊,該模塊從查詢表找到對(duì)應(yīng)的傳統(tǒng)維文字符編碼,根據(jù)獲取的傳統(tǒng)維文字符編碼和詞中的位置參數(shù),自動(dòng)選型模塊選出準(zhǔn)確的字形來產(chǎn)生目標(biāo)字符并保存到目標(biāo)字符串中。如果讀取的是傳統(tǒng)維文直接從查詢表中讀取對(duì)應(yīng)的西里爾維文編碼就可,具體算法流程如圖4所示。
圖4 CUTC算法流程
針對(duì)現(xiàn)有維文搜索引擎缺點(diǎn),在前面所介紹的LUTC和CUTC轉(zhuǎn)換算法的基礎(chǔ)上,設(shè)計(jì)了LCCU(Latin Cyrillic Conversion to Uyghur)轉(zhuǎn)換器,由插件的方式掛到維文搜索引擎系統(tǒng)上,LCCU轉(zhuǎn)換器把用戶輸入的拉丁維文和西里爾維文查詢語句轉(zhuǎn)換成傳統(tǒng)維文查詢語句并交給搜索引擎的檢索器。LCCU轉(zhuǎn)換器的工作原理,是把用戶輸入的查詢語句根據(jù)它的Unicode編碼范圍來判斷是傳統(tǒng)維文、拉丁維文或西里爾維文,然后把它們統(tǒng)一轉(zhuǎn)換成傳統(tǒng)維文查詢語句,并傳給維文搜索引擎的檢索器,在此現(xiàn)有的維文搜索引擎系統(tǒng)上實(shí)現(xiàn)拉丁維文和西里爾維文的信息檢索,如圖5所示。
圖5 LCCU轉(zhuǎn)換器的工作流程
LCCU轉(zhuǎn)換器的具體算法步驟如下所示。
LCCU算法步驟:
1.Public LatinUighur[2,36],UighurCharBase[3,36],rillicUyghur[2,40],Nixan[n]as string /*定義拉丁文,西里爾維文與維文對(duì)照數(shù)組和維文字庫*/
2.根據(jù)表2輸入內(nèi)容,創(chuàng)建拉丁文與維文對(duì)照表。
3.根據(jù)表3內(nèi)容創(chuàng)建西里爾維文與傳統(tǒng)維文對(duì)照表。
4.由不同維文字形創(chuàng)建維文字庫UighurCharacterBase。
5.用戶輸入的字符串中讀取第一個(gè)字符的編碼。
6.根據(jù)字符編碼范圍判斷讀取的字符是拉丁維文、西里爾維文或是傳統(tǒng)維文。
7.是傳統(tǒng)維文,字符編碼交給Nixan字符串,返回第9步。
8.如果是拉丁文,從LatinUyghur中找到對(duì)應(yīng)維文字符編碼,經(jīng)過自動(dòng)選型后交給nixan字符串。
9.如果是西里爾文,從crillcUyghur中找到對(duì)應(yīng)的維文字符編碼,經(jīng)過自動(dòng)選型后交給nixan字符串。
10.讀取第二字段的維文編碼和位置參數(shù)一起轉(zhuǎn)給自動(dòng)選型模塊。
11.自動(dòng)選型模塊根據(jù)字符編碼和位置參數(shù)從維文字庫中讀取相應(yīng)的維文字形來生成維文目標(biāo)查詢語句。
12.檢查循環(huán)是否結(jié)束(循環(huán)變量是否大于字符串長度),如果是生成的維文查詢語句傳給搜索引擎檢索器,如果否返回第4步驟繼續(xù)循環(huán)。
本章對(duì)傳統(tǒng)維文/拉丁維文轉(zhuǎn)換器LUTC,傳統(tǒng)維文/西里爾維文轉(zhuǎn)換器CUTC進(jìn)行了文字轉(zhuǎn)換的實(shí)驗(yàn)研究與測試,并對(duì)實(shí)驗(yàn)結(jié)果進(jìn)行了分析。實(shí)驗(yàn)由三步來進(jìn)行:(1)傳統(tǒng)維文/拉丁維文轉(zhuǎn)換器LUTC的實(shí)驗(yàn);(2)傳統(tǒng)維文/西里爾維文轉(zhuǎn)換器CUTC的實(shí)驗(yàn);(3)LCCU轉(zhuǎn)換器的轉(zhuǎn)換效率測試,通過LCCU在維文搜索引擎系統(tǒng)中實(shí)現(xiàn)拉丁維文和西里爾維文的信息檢索的實(shí)驗(yàn)。
(1)硬件環(huán)境
所有的實(shí)驗(yàn)均在一臺(tái)處理器為Intel?Pentium CPU B940@2.40 GHz,內(nèi)存為4 GB的筆記本PC上完成。
(2)實(shí)驗(yàn)數(shù)據(jù)
實(shí)驗(yàn)數(shù)據(jù)采用新疆人民出版社出版的“維漢日常用語”書中的80條語句和新疆地名、新疆旅游景區(qū)、少數(shù)民族文化等方面的20個(gè)關(guān)鍵詞,作為實(shí)驗(yàn)數(shù)據(jù)。
(3)評(píng)價(jià)方式
LUTC和CUTC轉(zhuǎn)換器的準(zhǔn)確率,采用人工方式和維軟公司開發(fā)的ALKORICTOR(專門檢查維吾爾詞語的拼寫和語法)軟件來評(píng)價(jià)轉(zhuǎn)換準(zhǔn)確率。
預(yù)先準(zhǔn)備的100個(gè)語句進(jìn)行測試,測試結(jié)果由人工方式和AlKORICTOR軟件相結(jié)合的方式統(tǒng)計(jì)準(zhǔn)確率,實(shí)驗(yàn)分兩步進(jìn)行:(1)測試?yán)【S文轉(zhuǎn)換傳統(tǒng)維文;(2)測試傳統(tǒng)維文轉(zhuǎn)換拉丁維文。實(shí)驗(yàn)結(jié)果表明LUTC的轉(zhuǎn)換準(zhǔn)確率已達(dá)到100%。
(1)拉丁維文轉(zhuǎn)換傳統(tǒng)維文測試結(jié)果
測試當(dāng)中特別注意轉(zhuǎn)換器的雙字母和單字母的分辨能力,維吾爾字母的詞首,詞中,詞尾字符的自動(dòng)選型能力。實(shí)驗(yàn)結(jié)果表明LUTC轉(zhuǎn)換器的拉丁維文轉(zhuǎn)換傳統(tǒng)維文的轉(zhuǎn)換準(zhǔn)確率已達(dá)到100%,如表3所示。
(2)傳統(tǒng)維文轉(zhuǎn)換拉丁維文測試結(jié)果
測試當(dāng)中,特別注意了拉丁維文當(dāng)中的單雙字母的識(shí)別能力及音節(jié)符和各種標(biāo)點(diǎn)符號(hào)的轉(zhuǎn)換準(zhǔn)確率,測試結(jié)果如表4所示。
同樣的方式輸入100個(gè)不同的關(guān)鍵詞來測試CUTC轉(zhuǎn)換器的準(zhǔn)確率,測試當(dāng)中特別注意傳統(tǒng)維文與西里爾文中的部分一對(duì)多對(duì)應(yīng)關(guān)系的轉(zhuǎn)換效果,測試結(jié)果表明轉(zhuǎn)換準(zhǔn)確率已達(dá)到100%。
(1)傳統(tǒng)維文轉(zhuǎn)換西里爾維文測試結(jié)果
(2)西里爾維文轉(zhuǎn)換傳統(tǒng)維文測試結(jié)果
以同樣的方式輸入預(yù)先準(zhǔn)備的100個(gè)不同的關(guān)鍵詞進(jìn)行測試,測試當(dāng)中認(rèn)真觀察了維文自動(dòng)選型的準(zhǔn)確率,實(shí)驗(yàn)結(jié)果表明西里爾維文轉(zhuǎn)換傳統(tǒng)維文的準(zhǔn)確率已達(dá)到100%,實(shí)驗(yàn)結(jié)果如表6所示。
最常用的維吾爾搜索引擎系統(tǒng)www.izda.com下,使用拉丁維文、西里爾維文和傳統(tǒng)維文等不同的輸入方式對(duì)關(guān)鍵詞“喀什”進(jìn)行信息檢索搜索,實(shí)驗(yàn)結(jié)果表明輸入拉丁維文和西里爾維文來檢索的相關(guān)文檔數(shù)量,查找結(jié)果數(shù)量等各參數(shù)指標(biāo)跟輸入傳統(tǒng)維文來檢索的各種參數(shù)基本一樣,如表7所示,LCCU轉(zhuǎn)換器中采用的是LUTC和CUTC算法中的相應(yīng)算法,因此轉(zhuǎn)換效率完全一樣,不需要再次做實(shí)驗(yàn)。LCCU轉(zhuǎn)換器把用戶輸入的拉丁維文和西里爾維文查詢語句轉(zhuǎn)換成傳統(tǒng)維文查詢語句,傳給檢索器,搜索引擎系統(tǒng)對(duì)轉(zhuǎn)換出來的傳統(tǒng)維文查詢語句進(jìn)行信息檢索。因此拉丁維文和西里爾維文的信息檢索結(jié)果就是傳統(tǒng)維文的信息檢索結(jié)果,維文搜索引擎的檢索效率不是本文的研究目的。
表3 拉丁維文轉(zhuǎn)換傳統(tǒng)維文
表4 傳統(tǒng)維文轉(zhuǎn)換拉丁維文
表5 傳統(tǒng)維文轉(zhuǎn)換西里爾維文測試結(jié)果
表6 西里爾維文轉(zhuǎn)換傳統(tǒng)維文測試結(jié)果
表7 維文搜索引擎的檢索結(jié)果
傳統(tǒng)維文、拉丁維文和西里爾維文間的對(duì)應(yīng)標(biāo)準(zhǔn)和文字轉(zhuǎn)換算法研究,對(duì)維吾爾族的正?;ヂ?lián)網(wǎng)文字交流,新疆的政治、經(jīng)濟(jì)、社會(huì)穩(wěn)定、教育等多個(gè)方面的發(fā)展有著重要意義。本文所設(shè)計(jì)的維吾爾多文轉(zhuǎn)換器,實(shí)現(xiàn)了傳統(tǒng)維文、拉丁維文和西里爾維文之間的準(zhǔn)確轉(zhuǎn)換,這使國內(nèi)外維吾爾網(wǎng)民不改變自身維文使用習(xí)慣,可以進(jìn)行正常的文字交流以及使用現(xiàn)有的維文搜素引擎系統(tǒng),由此本文的研究成果對(duì)國內(nèi)外維吾爾族互聯(lián)網(wǎng)使用有著重要意義。今后的研究工作包括:進(jìn)一步提高系統(tǒng)的穩(wěn)定性和兼容性,開發(fā)一個(gè)完整的維吾爾語多文搜索引擎系統(tǒng),為廣大維吾爾族網(wǎng)民服務(wù)。