依不拉音·吾斯曼,郭文強(qiáng),于 凱
新疆財經(jīng)大學(xué) 計算機(jī)科學(xué)與工程學(xué)院,烏魯木齊 830012
在歷史上維吾爾人使用過很多文字,如察哈臺文、古突厥文、阿拉伯維文、拉丁維文等。最后一次文字改革是1985年,1985年前使用拉丁維文,1985年開始使用現(xiàn)在的傳統(tǒng)維文,因此拉丁維文在維吾爾社會上有一定的影響力。隨著互聯(lián)網(wǎng)技術(shù)在新疆地區(qū)的發(fā)展和普及,維吾爾族網(wǎng)民的數(shù)量急劇增長,近十幾年來新疆地區(qū)雙語教育的加深,漢語拼音字母和英文字母的影響,加上傳統(tǒng)維文由32 個字母組成,有120 多個字形,具有復(fù)雜的鍵盤布置,必須預(yù)裝維文輸入法,書寫方向?yàn)樽杂蚁蜃蠛同F(xiàn)代中英文混合使用非常不便等原因,互聯(lián)網(wǎng)和移動網(wǎng)絡(luò)上的維文使用呈現(xiàn)傳統(tǒng)維文和拉丁維文共存的“一語雙文”特點(diǎn)?,F(xiàn)在互聯(lián)網(wǎng)上使用拉丁維文人數(shù)不少于傳統(tǒng)維文人數(shù)。多種維文文字共存的網(wǎng)絡(luò)環(huán)境下,保證網(wǎng)絡(luò)安全對新疆的社會穩(wěn)定至關(guān)重要。暴力恐怖活動是當(dāng)前國際社會普遍面臨的國家安全威脅。2018年4 月20 日習(xí)近平總書記在全國網(wǎng)絡(luò)安全和信息化工作會議中指出“系統(tǒng)部署和全面推進(jìn)網(wǎng)絡(luò)安全和信息化工作”。新疆是反暴力恐怖活動的主戰(zhàn)場,網(wǎng)絡(luò)中信息內(nèi)容安全監(jiān)控十分必要。對海量網(wǎng)絡(luò)文本信息進(jìn)行多形式維文(傳統(tǒng)維文和拉丁維文)敏感信息檢測,從而集中處理高關(guān)注的文本內(nèi)容,為快速情報獲取提供相應(yīng)技術(shù)支撐,從而提高政府對網(wǎng)絡(luò)信息的事控能力以及處置突發(fā)事件能力,提升維穩(wěn)決策和響應(yīng)能力是區(qū)域重大需求。
目前維文敏感信息檢測與過濾研究僅限于傳統(tǒng)維文,缺乏拉丁維文敏感信息語料庫和決策樹的研究,分別使用傳統(tǒng)維文和拉丁維文的敏感信息進(jìn)行檢測,工作量大,效率很低,主要原因是互聯(lián)網(wǎng)上有些人習(xí)慣使用拉丁文,有些人習(xí)慣使用傳統(tǒng)維文,一部分人還混合使用。分別兩次進(jìn)行敏感信息檢測,不但效率低,而且時間很長。因此本文構(gòu)建傳統(tǒng)維文和拉丁維文敏感信息語料庫,在此基礎(chǔ)上提出拉丁維文和傳統(tǒng)維文一體化的多形式維文敏感信息決策樹,實(shí)現(xiàn)傳統(tǒng)維文和拉丁維文的敏感信息檢測與過濾,不但提高了效率,而且縮短了時間,對新疆的社會安全和長治久安總目標(biāo)的實(shí)現(xiàn)有重大意義。本文主要完成的工作有:
(1)研究傳統(tǒng)維文和拉丁維文的語法特征、編碼特征和映射關(guān)系,提出拉丁維文和傳統(tǒng)維文間的編碼轉(zhuǎn)換算法 ULTC(Uyghur Latin Traditional Conversion),實(shí)現(xiàn)傳統(tǒng)維文與拉丁維文之間的編碼轉(zhuǎn)換。
(2)使用ULTC 轉(zhuǎn)換算法,在現(xiàn)有的傳統(tǒng)維文敏感信息語料庫中增加對應(yīng)的拉丁維文敏感語料信息,實(shí)現(xiàn)多形式維文敏感語料庫ULSC(Uyghur Latin Sensitive Corpus)的構(gòu)建,在此基礎(chǔ)上提出多形式維文文檔敏感值的計算方法。
(3)針對現(xiàn)有的維文敏感信息決策樹只包含傳統(tǒng)維文敏感信息不包含拉丁維文敏感信息問題,在ULSC的基礎(chǔ)上構(gòu)建傳統(tǒng)維文與拉丁維文敏感信息一體化的多形式維文敏感信息決策樹LUDT(Latin Uyghur Decision Tree),在LUDT 基礎(chǔ)上提出多形式維文敏感信息過濾算法USF(Uyghur Sensitive Information Filter)。
(4)通過翔實(shí)的實(shí)驗(yàn)來驗(yàn)證ULTC、USF算法的實(shí)際效率。
傳統(tǒng)維文的語法特征:傳統(tǒng)維文是新疆的維吾爾人從1985 年開始使用的以阿拉伯字母為基礎(chǔ)的文字,傳統(tǒng)維文屬于阿勒泰語系中的阿拉伯文系統(tǒng),其文字書寫自右向左,和現(xiàn)代中英文的自左向右書寫有很大區(qū)別。維吾爾語有32個字母,其中8個元音字母,24個輔音字母,每個字母在詞中出現(xiàn)位置會不同,有2~4 種不同字形(如:詞首,詞中,詞尾,獨(dú)立式),共有120多種字形,這使得傳統(tǒng)維文的輸入法系統(tǒng)擁有復(fù)雜的鍵盤布置設(shè)定。維吾爾語詞和詞之間有空格隔開,不分大小寫。有些詞首字母由兩個字符構(gòu)成(如:字母由和兩個字符組成)。
傳統(tǒng)維文的編碼特征:傳統(tǒng)維文編碼在Unicode 編碼表的阿拉伯編碼區(qū)內(nèi)是分散分布的,詞首字母和大部分獨(dú)立式字母在0627-06AD 范圍內(nèi),詞中、詞尾和部分獨(dú)立式字母在FA8C-FEEE 范圍內(nèi),如圖1 所示,圖中黑色部分是傳統(tǒng)維文編碼所在區(qū)域。維文字母編碼的這種分配對維文字母的排序、自動選型、決策樹的構(gòu)建等帶來很大的不便。
圖1 Unicode編碼分布圖
拉丁維文:拉丁維文是用拉丁字母來拼寫維吾爾語的文字。2000 年新疆大學(xué)和新疆維吾爾自治區(qū)語言文字工作委員會一起公布了維文與拉丁維文的對應(yīng)標(biāo)準(zhǔn),把拉丁維文叫作維吾爾族的計算機(jī)網(wǎng)絡(luò)文字UCY(Uyghur Computer Yeziki)。維吾爾語有32個字母,而鍵盤上只有26 個拉丁字母,維吾爾文與拉丁維文對應(yīng)標(biāo)準(zhǔn)上,只使用了24 個拉丁字母(不包括讀音重復(fù)的v和c),剩下的8 個維文字母中的3 個原音字母與拉丁文擴(kuò)展區(qū)的 ü、ě、ǒ 字母對應(yīng),剩下的 5 個輔音字母用ch、ng、zh、sh、gh等雙字母對應(yīng)[1],如表1所示。
近幾年來維文網(wǎng)頁信息提取、維文詞法分析、詞干提取、信息檢索技術(shù)研究也有了長足的進(jìn)步。文獻(xiàn)[2-5]中吾守爾院士、亞森等人介紹了傳統(tǒng)維文、拉丁維文與斯拉夫維文的書寫規(guī)則和對應(yīng)關(guān)系,提出了它們之間的相互映射關(guān)系和轉(zhuǎn)換規(guī)則。文獻(xiàn)[6]中蔡李等人提出了一種有關(guān)句子特征的信息提取方法,該方法結(jié)合句子的特征對網(wǎng)頁內(nèi)容進(jìn)行提取,使用該文獻(xiàn)中的網(wǎng)頁正文提取方法可以實(shí)現(xiàn)維吾爾文網(wǎng)頁信息獲取。文獻(xiàn)[7-9]中吐爾根·依不拉音等人對維吾爾文的特點(diǎn)進(jìn)行了細(xì)致的剖析,破解了維吾爾語詞法分析、維吾爾語詞匯切分、維吾爾語詞干提取的難點(diǎn),提出了有關(guān)維吾爾語詞法分析的有向圖模型和詞干提取方法,提高了維吾爾文詞干提取的準(zhǔn)確率。詞干提取有效簡化維吾爾文敏感信息檢測的過程,是實(shí)現(xiàn)網(wǎng)絡(luò)維吾爾文敏感信息過濾的基礎(chǔ)。文獻(xiàn)[10-11]中鄧一貴、周毅敏等人提出了有關(guān)敏感詞決策樹過濾相關(guān)算法,通過結(jié)合決策樹記錄敏感詞詞頻等信息,最終計算出文本信息的整體敏感度,實(shí)現(xiàn)了文章敏感度的檢測。文獻(xiàn)[12-14]中唐華等人分別介紹了中文自適應(yīng)多重過濾模型和基于K近鄰分類算法的涉恐信息過濾模型。文獻(xiàn)[15]中薛朋強(qiáng)和吾守爾院士等人提出了一種基于確定有窮自動機(jī)的改進(jìn)算法ST-DFA,實(shí)現(xiàn)了針對傳統(tǒng)維文敏感詞決策樹的實(shí)時更新和維文反過濾技術(shù)。
表1 傳統(tǒng)維文與拉丁維文對應(yīng)標(biāo)準(zhǔn)
現(xiàn)有的研究僅限于傳統(tǒng)維文決策樹構(gòu)建、敏感信息檢測與過濾算法上,對拉丁維文信息檢測研究還是空白,反而互聯(lián)網(wǎng)上使用拉丁維文的用戶日益增多。因此本文研究拉丁維文和傳統(tǒng)維文的編碼特征,提出它們間的編碼轉(zhuǎn)換算法ULTC,通過ULTC 算法在傳統(tǒng)維文敏感信息庫中形成對應(yīng)拉丁維文敏感信息語料,構(gòu)建傳統(tǒng)維文和拉丁維文的多形式維文敏感信息語料庫ULSC。在此基礎(chǔ)上提出拉丁維文和傳統(tǒng)維文一體化的多形式維文決策樹LUDT,在決策樹的基礎(chǔ)上提出多形式維文敏感信息過濾算法USF,彌補(bǔ)目前維文敏感信息檢測與過濾系統(tǒng)的空白。
針對現(xiàn)有維文敏感信息檢測與過濾系統(tǒng)的缺點(diǎn),本文首先設(shè)計傳統(tǒng)維文與拉丁維文間的編碼轉(zhuǎn)換算法ULTC,使用ULTC 算法現(xiàn)有的維文敏感語料庫中的傳統(tǒng)維文剖象文件轉(zhuǎn)換成拉丁維文剖象文件,添加到語料庫中,實(shí)現(xiàn)多形式維文敏感信息語料庫ULSC 的構(gòu)建??紤]拉丁維文的字形和編碼優(yōu)勢,決策樹按照拉丁文的編碼順序排列,新建節(jié)點(diǎn)并添加節(jié)點(diǎn)內(nèi)容時,在語料庫中添加拉丁維文敏感信息后還要添加對應(yīng)的傳統(tǒng)維文敏感信息,實(shí)現(xiàn)拉丁維文與傳統(tǒng)維文一體化的多形式維文決策樹的構(gòu)建。經(jīng)過預(yù)處理準(zhǔn)備好的拉丁維文和傳統(tǒng)維文文檔流經(jīng)決策樹的方法,實(shí)現(xiàn)多形式維文敏感信息的過濾,如圖2所示。
圖2 多形式維文敏感信息過濾算法流程圖
ULTC 算法的主要功能是,根據(jù)傳統(tǒng)維文和拉丁維文的Unicode 編碼特征和表1 中的對應(yīng)關(guān)系,把傳統(tǒng)維文詞語轉(zhuǎn)換成對應(yīng)的拉丁維文詞語(如:傳統(tǒng)維文詞語(新疆),轉(zhuǎn)換成拉丁維文詞SHinjang)。
拉丁文編碼是按順序排列的,而傳統(tǒng)維文編碼在Unicode 編碼表的阿拉伯區(qū)內(nèi)是分散分布的,如圖1 所示,所以拉丁維文與傳統(tǒng)維文編碼間有不連續(xù)現(xiàn)象。因此,創(chuàng)建一個二維數(shù)組LU[Li,Ui],(i=1,2,…,32),其中Ui是32 個傳統(tǒng)維文詞首字母,Li對應(yīng)32 個拉丁字母,再建一個維文字庫表UCB(Uyghur Character Base),保存32 個傳統(tǒng)維文字母的125 種字形,可以網(wǎng)上下載。ULTC 算法如式(1)所示,其中UWi是用戶輸入的傳統(tǒng)維文詞語,n是該詞的長度,i=1 時讀取UWi中的第一個字母,LU數(shù)組中找到對應(yīng)的拉丁維文字母,保存到拉丁維文目標(biāo)詞LWi中,依此類推,做到i=n為止。
具體ULTC編碼轉(zhuǎn)換算法過程如下所示:
1. Public LU[2,36],UCB[3,36],UW,LW as string /*定義拉丁文與傳統(tǒng)維文對照數(shù)組和維文字庫*/
2. 根據(jù)數(shù)組LU 中輸入內(nèi)容,創(chuàng)建字母對照表。
3. 由傳統(tǒng)維文的125種字形創(chuàng)建傳統(tǒng)維文字庫UCB。
4. 讀取UW中的第一個傳統(tǒng)維文字母編碼。
5. 使用二分法在LU中查找對應(yīng)行數(shù)。
6. 讀取第二字段中對應(yīng)的拉丁文字母,保存到拉丁維文目標(biāo)詞LW中。
7. 檢查循環(huán)是否結(jié)束(循環(huán)變量是否大于UW的長度),如果是跳轉(zhuǎn)下一步,否則返回第4步繼續(xù)尋找。
8. 形成UW對應(yīng)的拉丁維文敏感詞。
多形式維文敏感信息語料庫ULSC 是為決策樹的構(gòu)建提供語料信息。敏感關(guān)鍵詞的語義與其字形無關(guān),因此在現(xiàn)有的傳統(tǒng)維文語料庫的基礎(chǔ)上,增加一些新的傳統(tǒng)維文敏感詞,用ULTC算法把它們轉(zhuǎn)換成對應(yīng)的拉丁維文敏感詞錄入語料庫ULSC 即可。根據(jù)敏感信息在互聯(lián)網(wǎng)的分布情況,主要在貼吧、微薄、Ulinix的論壇和新聞評論中采集傳統(tǒng)維文的敏感信息,由于敏感信息隨著時間和事件的發(fā)展而不斷更新,每隔一段時間要對敏感信息語料庫進(jìn)行更新并記錄更新的始末位置,語料庫的起始位置前和結(jié)束位置后添加特殊符號標(biāo)記起始位置和結(jié)束位置,這樣下次更新語料庫時只需要從起始點(diǎn)標(biāo)記處開始錄入,完成后將標(biāo)記的位置移動到錄入截止的位置。這樣就保證了敏感信息決策樹隨著敏感信息語料庫的擴(kuò)大而實(shí)時更新。ULSC由兩個區(qū)域組成,傳統(tǒng)維文語料區(qū)和拉丁維文語料區(qū),首先采集傳統(tǒng)維文的敏感信息語料,ULTC編碼轉(zhuǎn)換算法把它轉(zhuǎn)換成拉丁維文語料,并存入ULSC的拉丁文區(qū),如圖3所示。
圖3 ULSC構(gòu)建流程圖
傳統(tǒng)維文雖然由32 個字母組成,但有125 種字形,這對決策樹的構(gòu)建和查詢帶來很大的不便。因此,鑒于拉丁維文的字形優(yōu)勢,首先構(gòu)建拉丁維文決策樹。決策樹中的節(jié)點(diǎn)包括:葉子節(jié)點(diǎn),該節(jié)點(diǎn)沒有孩子的節(jié)點(diǎn),包含維吾爾敏感信息語料庫拉丁區(qū)中的最后一個拉丁維文單詞;非葉子節(jié)點(diǎn),決策樹中有孩子的節(jié)點(diǎn),包含的信息不是維吾爾敏感信息語料庫拉丁區(qū)的最后一個拉丁維文敏感詞;偽葉子節(jié)點(diǎn),該節(jié)點(diǎn)在決策樹中有孩子節(jié)點(diǎn),包含的信息是語料庫中最后一個拉丁維文敏感詞[16]。
首先在ULSC的拉丁區(qū)中讀取敏感詞,然后添加到?jīng)Q策樹中。為了提高決策樹的查詢速度和效率,在構(gòu)建決策樹時將根目錄的子樹按照拉丁字母順序排列,在下面的每一棵子樹按照敏感詞的第二個字母排列,如果第二個字母相同則按照第三個字母排列。首字母A 的為第一棵子樹,首字母Z的是最后一棵子樹。相同前綴詞的關(guān)鍵詞只需存儲在相同的前驅(qū)節(jié)點(diǎn),這樣敏感詞相似時,大量減少冗余和節(jié)點(diǎn)數(shù),如對Namayix(游行)、Namayix wahti(游行時間)、Namayix orni(游行地點(diǎn))等敏感詞,Namayix wahti 和 Namayix orni 在 Namayix的下一層。這樣可以進(jìn)一步縮小維吾爾文敏感信息決策樹所需要檢索子樹的范圍,并且需要檢索信息的最大長度不會高于決策樹的高度。每當(dāng)決策樹需要更新時,只需更新維吾爾文敏感信息詞匯中不同的后綴部分,降低了更新決策樹算法的時間和空間復(fù)雜度。另外,針對每一個節(jié)點(diǎn),通過多形式敏感信息庫ULSC的傳統(tǒng)維文區(qū)中找到對應(yīng)的傳統(tǒng)維文敏感詞,并添加到該節(jié)點(diǎn)中,實(shí)現(xiàn)拉丁維文和傳統(tǒng)維文敏感詞的同步查詢。ULSC的信息量越大時,決策樹的冗余也會很高,這時在決策樹中調(diào)用ULTC 算法來實(shí)時形成對應(yīng)的傳統(tǒng)維文敏感詞,有效控制決策樹冗余。
在決策樹中某一個節(jié)點(diǎn)是否葉子節(jié)點(diǎn),使用Leaf作為敏感詞是否結(jié)束的標(biāo)志,如Leaf=1是葉子節(jié)點(diǎn),Leaf=0是非葉子節(jié)點(diǎn),Leaf=9是偽葉子節(jié)點(diǎn)。下面以Anangni(媽的)、Ah tamaka(海洛因等各類毒品的總稱)、Namayix(游行)、Namayix wahti(游行時間)、Namayix orni(游行地點(diǎn))等敏感詞為樣例構(gòu)建敏感信息決策樹,如圖4所示。
圖4 多形式維文敏感信息決策樹
定義1 多形式維文敏感信息語料庫ULSC(U,L),其中U={u1,u2,…,ui,…,un}是傳統(tǒng)維文敏感信息集合,L={l1,l2,…,li,…,ln} 是拉丁維文敏感信息集合,1 ≤i≤n,n是敏感詞個數(shù),U和L的敏感詞按順序一一對應(yīng),ui和li分別是傳統(tǒng)維文和拉丁維文第i個敏感詞,其中ui={p1,p2,…,pj},li={q1,q2,…,qj}(1 ≤j≤m),pj,qj分別是拉丁維文和傳統(tǒng)維文敏感關(guān)鍵詞,m表示關(guān)鍵詞數(shù),s0表示拉丁文關(guān)鍵詞qi的首字母編碼。
有關(guān)多形式維文敏感信息決策樹的構(gòu)建,首先創(chuàng)建一個根節(jié)點(diǎn)R(Root),根節(jié)點(diǎn)下再創(chuàng)建A~Z 的32 個子樹節(jié)點(diǎn),接下來ULSC中的拉丁維文和傳統(tǒng)維文敏感信息按拉丁字母順序添加到?jīng)Q策樹上。具體LUDT 決策樹的構(gòu)建算法如下所示。
創(chuàng)建決策樹T:創(chuàng)建一個根節(jié)點(diǎn)R,再創(chuàng)建包含信息A~Z的32個子樹節(jié)點(diǎn)。
輸入:多形式維文敏感信息語料庫ULSC 中輸入拉丁維文敏感信息集合L和傳統(tǒng)維文敏感信息集合U。
輸出:新的敏感信息決策樹T*。
1. 初始化參數(shù)i=1,j=1;C設(shè)為當(dāng)前處理節(jié)點(diǎn),C=R。
2. 若i≤n,則獲取li和長度m以及l(fā)i中的第一關(guān)鍵詞qj的第一個字母s0并執(zhí)行第3步;否則跳轉(zhuǎn)第8步。
3. 如果j >m說明T已經(jīng)包含pj,跳轉(zhuǎn)第6步;否則獲取li中的關(guān)鍵詞pj并校驗(yàn)C是否為R,如果是pj的節(jié)點(diǎn)賦值給C,執(zhí)行下一步。
4. 查找C的子節(jié)點(diǎn)是否包含pj關(guān)鍵詞的節(jié)點(diǎn);如不包含將按照字母順序創(chuàng)建新節(jié)點(diǎn),將pj和它對應(yīng)的傳統(tǒng)維文敏感詞qj添加到新節(jié)點(diǎn),并令節(jié)點(diǎn)信息中的Leaf=0;否則該子節(jié)點(diǎn)賦值給C,令j++,并跳轉(zhuǎn)第3步。
5. 將新節(jié)點(diǎn)賦值給C,j++;若j≤m跳轉(zhuǎn)至第4 步;否則令節(jié)點(diǎn)C信息中的Leaf=1,且R賦給C,i++并轉(zhuǎn)第2步。
6. 檢測C是否有孩子節(jié)點(diǎn),如有且Leaf=0則令Leaf=9。
7. 將根節(jié)點(diǎn)Root賦給C,i++并執(zhí)行第2步。
8. 返回更新完成的決策樹T*。
鑒于拉丁文的字形優(yōu)勢,算法中首先建立拉丁維文的決策樹,節(jié)點(diǎn)按照拉丁文的字母順序排列,添加節(jié)點(diǎn)內(nèi)容時,拉丁維文和對應(yīng)的傳統(tǒng)維文敏感關(guān)鍵詞都添加到節(jié)點(diǎn)中,便于檢測敏感詞是否結(jié)束,節(jié)點(diǎn)中還存放Leaf 的值。決策樹的高度完全依賴于敏感詞的長度。具有相同維吾爾文前綴詞的敏感信息,決策樹上只需存儲相同的前驅(qū)節(jié)點(diǎn),后綴詞存儲到前驅(qū)節(jié)點(diǎn)的孩子節(jié)點(diǎn)上,這樣不但降低了空間復(fù)雜度,還提高了查詢速度和算法效率。
多形式維文敏感信息過濾算法USF的功能是,將網(wǎng)上獲取的傳統(tǒng)維文和拉丁維文文本經(jīng)過預(yù)處理后存儲起來,然后以數(shù)據(jù)流的形式流經(jīng)多形式維文敏感信息決策樹,實(shí)現(xiàn)多形式維文網(wǎng)頁文本信息的檢測與過濾。為了提高決策樹的檢測效率,如果語料庫中有相互包含的敏感詞(如“Namayix”“Namayix orni wahti”)時,按照最大匹配的原則進(jìn)行過濾。
本文收集的多形式網(wǎng)絡(luò)文本信息包含傳統(tǒng)維文網(wǎng)絡(luò)文本信息和拉丁維文網(wǎng)絡(luò)文本信息。多形式敏感信息決策樹的每個節(jié)點(diǎn)也包含拉丁維文敏感信息和傳統(tǒng)維文敏感信息,因此兩種文字的信息過濾過程是完全一樣的。下面以拉丁維文敏感信息的過濾來介紹算法具體流程。
定義2 拉丁維文網(wǎng)絡(luò)文本信息集為W={w1,w2,…,wj,…,wn},1 ≤i≤j,n為文本長度,wi是信息集中的一個關(guān)鍵詞;k0表示wi的首字母;設(shè)定wm是檢測敏感詞的起始點(diǎn);wij表示wi和wj之間的文本信息。
拉丁維文文本信息檢測算法要做的就是判斷wij是否包含敏感詞,若包含則該關(guān)鍵詞為wmi。具體USF多形式維文敏感信息過濾算法如下所示。
輸入:拉丁維文網(wǎng)絡(luò)文本信息集W,多形式維文敏感信息決策樹T。
輸出:過濾后的拉丁維文文本信息集W*。
1. 初始化參數(shù):i=1。
2.R賦值給C,獲取wm;若i+(h-2) 3. 如果i >j跳轉(zhuǎn)第6步,否則獲取wij,wi,wj,k0,令i++,如果C=Root,則C的子節(jié)點(diǎn)中值為k0的節(jié)點(diǎn)設(shè)為C,執(zhí)行下一步。 4. 查找C的子節(jié)點(diǎn)是否包含wi節(jié)點(diǎn)內(nèi)容;如果包含,則該節(jié)點(diǎn)設(shè)為C,執(zhí)行下一步,否則跳轉(zhuǎn)第2步。 5. 如果C中 Leaf=0 跳轉(zhuǎn)第 3 步,若 Leaf=1 則是敏感信息,使用*代替wij的值,跳轉(zhuǎn)第3步。 6. 返回不包含敏感信息的拉丁維文數(shù)據(jù)集W*。 在進(jìn)行多形式維文文檔敏感信息過濾時,網(wǎng)上獲取的維文文檔通過預(yù)處理后,構(gòu)成由若干個敏感詞組成的集合W,W={US,LS},其中US={us1,us2,…,usn}是傳統(tǒng)維文關(guān)鍵詞集合,LS={ls1,ls2,…,lsn}是拉丁維文關(guān)鍵詞集合。多形式維文敏感信息語料庫ULSC 是由一系列拉丁維文和傳統(tǒng)維文敏感詞組成的集合,ULSC={U,L}={q1,q2,…,qn,p1,p2,…,pn},其中傳統(tǒng)維文敏感詞L和拉丁維文敏感詞U是一一對應(yīng)的,對語料庫ULSC,如果或,則US或LS是多形式維文決策樹上的基本節(jié)點(diǎn)。下面針對拉丁維文,提出敏感值的計算公式。 維文文檔敏感值UDS(Uygur Document Sensitivity),拉丁維文關(guān)鍵詞集合LS,關(guān)鍵詞的個數(shù)為N,和LS匹配的語料庫L中的敏感詞個數(shù)為M,L的敏感值為: 敏感值可以表示該文檔的敏感程度,網(wǎng)上獲取的文檔敏感值過高,表示該文檔對社會安全不利,及時向相關(guān)部門反饋,避免一些不好的社會事件發(fā)生。 表2 ULTC算法實(shí)驗(yàn)結(jié)果 本文對傳統(tǒng)維文與拉丁維文Unicode 編碼轉(zhuǎn)換算法ULTC和多形式維文敏感信息過濾算法USF,進(jìn)行了實(shí)驗(yàn)研究與測試,并對測試結(jié)果進(jìn)行了分析。實(shí)驗(yàn)由兩個步驟進(jìn)行:第一步是ULTC 編碼轉(zhuǎn)換算法的測試;第二步是多形式維文敏感信息過濾算法USF的性能測試。 (1)實(shí)驗(yàn)環(huán)境 本文所有實(shí)驗(yàn)在一臺Intel?Pentium?CPU B940@2.4 GHz,內(nèi)存為4 GB的筆記本PC上完成;在Windows7 32 位系統(tǒng)下進(jìn)行;實(shí)驗(yàn)采用Java 語言開發(fā),開發(fā)工具M(jìn)yeclipse2015,運(yùn)行環(huán)境為Tomcat7.0。 (2)前期準(zhǔn)備 建立多形式維文敏感信息語料庫。首先收集傳統(tǒng)維文敏感信息語料,部分敏感信息在網(wǎng)絡(luò)上下載,下載的主要網(wǎng)站包括維吾爾語論壇、Ulinix、貼吧、新聞下的評論、個人微博下的評論等,因?yàn)檫@些地方話語比較自由,可以獲取敏感信息。另一部分敏感信息從書籍、雜志和一些文章中獲取。除此之外還使用一些常見的中文敏感詞匯進(jìn)行翻譯以對其進(jìn)行補(bǔ)充。最終收集了傳統(tǒng)維文的1 000 個敏感詞。通過ULTC 轉(zhuǎn)換算法,把傳統(tǒng)維文敏感詞轉(zhuǎn)換成對應(yīng)拉丁維文敏感詞,實(shí)現(xiàn)2 000 個敏感詞組成的多形式維文敏感語料庫。為了方便多形式維文決策樹的構(gòu)建,敏感語料庫進(jìn)行簡單預(yù)處理,語料庫由傳統(tǒng)維文區(qū)和拉丁維文區(qū)組成,使每個敏感詞獨(dú)占一行,并且拉丁維文敏感詞和傳統(tǒng)維文敏感詞順序一一對應(yīng)。為了更好地觀察決策樹更新后的查全率,將1 000個敏感詞分成兩部分,第一部分包含700 個敏感詞,在對網(wǎng)絡(luò)維吾爾文文本信息過濾前添加到語料庫中,剩下的300個敏感詞在第二次文檔過濾時添加到語料庫中,這樣可以觀察決策樹更新前與更新后的效率。提前在敏感信息較多的Ulinix、貼吧、維語論壇等網(wǎng)站上下載包含傳統(tǒng)維文和拉丁維文的300篇網(wǎng)頁,進(jìn)行預(yù)處理后整理出每篇5 000 字左右的4 篇文本文檔,其中兩篇是傳統(tǒng)維文,兩篇是拉丁維文的TXT文檔。 本文的實(shí)驗(yàn)數(shù)據(jù)是語料庫中收集的1 000個傳統(tǒng)維文敏感信息關(guān)鍵詞,這些敏感詞通過ULTC編碼轉(zhuǎn)換算法轉(zhuǎn)換成對應(yīng)的拉丁維文敏感詞,并添加到語料庫中。采用人工方式和維軟(Uyghur Soft)公司開發(fā)的AlKatip軟件的多形式維文詞匯庫來測試ULTC 編碼轉(zhuǎn)換算法的正確率,測試結(jié)果表明正確率已達(dá)到了100%,如表2所示。 多形式維文敏感信息決策樹包含拉丁維文和傳統(tǒng)維文的敏感信息,USF算法使用同一個決策樹來實(shí)現(xiàn)不同形式的維文文檔的敏感信息過濾,并脫離了多形式維文敏感語料庫的依賴。決策樹按照拉丁文的編碼順序排列,簡化了傳統(tǒng)維文字形復(fù)雜度給決策樹帶來的查詢復(fù)雜度,提高了檢測效率。 實(shí)驗(yàn)由兩個步驟組成:第一步是拉丁維文文檔的敏感信息過濾,分別對決策樹更新前和更新后的狀態(tài)進(jìn)行敏感信息過濾;第二步是傳統(tǒng)維文文檔的敏感信息過濾,也是分別對決策樹更新前和更新后的狀態(tài)進(jìn)行過濾。根據(jù)實(shí)驗(yàn)結(jié)果計算出了USF 過濾算法的查全率和文檔的敏感值,實(shí)驗(yàn)結(jié)果如表3所示。 表3 USF算法實(shí)驗(yàn)結(jié)果 ULTC編碼轉(zhuǎn)換算法的準(zhǔn)確率達(dá)到了100%,表明多形式維文語料庫中的拉丁維文敏感詞和傳統(tǒng)維文敏感詞完全一一對應(yīng)。根據(jù)表3可以發(fā)現(xiàn),不管是傳統(tǒng)維文還是拉丁維文,USF敏感信息過濾算法的查全率在決策樹的更新有所下降,傳統(tǒng)維文的下降幅度更高,除此之外傳統(tǒng)維文的查全率比拉丁維文低。主要原因是決策樹按照拉丁文的字母順序排列的,傳統(tǒng)維文敏感詞直接添加到對應(yīng)的拉丁維文敏感詞的節(jié)點(diǎn)上,因此決策樹上傳統(tǒng)維文敏感詞的順序是比較混亂的,使得部分敏感詞在決策樹更新過程中未能完成節(jié)點(diǎn)的添加或錯點(diǎn)添加,這樣算法就無法找到該節(jié)點(diǎn),造成查全率的降低。本實(shí)驗(yàn)結(jié)果與文獻(xiàn)[17]中的中文敏感信息過濾相比,查全率明顯低于文獻(xiàn)[17],主要原因是漢字的字形和語義優(yōu)勢,加上漢字拼音配合決策樹的使用,簡化了匹配的查詢復(fù)雜度,提高了檢索效率。根據(jù)表3還可以看出文檔的敏感值過低,主要原因是多形式維文敏感語料庫和下載整理的文檔綜合性比較強(qiáng),沒有彼此之間的針對性。除此之外,實(shí)驗(yàn)中使用的文檔大部分內(nèi)容是網(wǎng)上下載的,近幾年新疆維穩(wěn)和網(wǎng)絡(luò)監(jiān)控工作力度的加大,網(wǎng)絡(luò)敏感信息數(shù)量大幅下降也有關(guān)系。 多形式維文敏感信息過濾算法的研制對目前新疆社會穩(wěn)定和長治久安總目標(biāo)的實(shí)現(xiàn)具有非常重要的意義。本文提出的多形式維文敏感信息過濾算法實(shí)現(xiàn)了網(wǎng)絡(luò)媒體上的傳統(tǒng)維文和拉丁維文敏感信息的過濾,彌補(bǔ)了現(xiàn)有的維文敏感信息檢測與過濾系統(tǒng)不支持拉丁維文的空白。由此,本文的研究成果對新疆的網(wǎng)絡(luò)安全和社會穩(wěn)定工作具有重要的實(shí)際意義。未來工作包括:進(jìn)一步優(yōu)化多形式維文敏感信息決策樹的結(jié)構(gòu),引入領(lǐng)域本體的概念來提高決策樹和文檔的針對性,從而提高過濾算法對傳統(tǒng)維文和拉丁維文敏感信息的過濾效率。3.5 敏感值計算方法
4 實(shí)驗(yàn)與分析
4.1 實(shí)驗(yàn)環(huán)境與前期準(zhǔn)備
4.2 ULTC文字編碼轉(zhuǎn)換算法實(shí)驗(yàn)
4.3 USF算法性能分析
4.4 實(shí)驗(yàn)結(jié)果分析
5 結(jié)束語