• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于相碼模型的漢字表征

      2021-05-07 01:52:58范曉明王斌君
      科學(xué)技術(shù)與工程 2021年5期
      關(guān)鍵詞:單字字符音節(jié)

      范曉明, 王斌君

      (1.中國人民公安大學(xué)信息技術(shù)與網(wǎng)絡(luò)安全學(xué)院, 北京 100038; 2.北京警察學(xué)院網(wǎng)絡(luò)安全保衛(wèi)系, 北京 102202)

      漢字表征(characterization of Chinese characters),可理解為通過某些特定的字符或符號集表示漢字的過程,而表征技術(shù)則可看作一種變換函數(shù),將漢字映射到某一特殊的向量空間,這一向量空間由一組給定的字符集表示。對漢字表征技術(shù)的研究,可追溯到中文信息技術(shù)發(fā)展初期,當(dāng)時(shí)主要圍繞如何高效實(shí)現(xiàn)漢字錄入的問題進(jìn)行研究,以五筆為代表的形碼表征方式和以拼音為代表的音碼表征方式分別借助漢字字形特征和漢語拼音方案實(shí)現(xiàn)了漢字集向小字符集(鍵盤對應(yīng)的字符)映射,后期出現(xiàn)的手寫漢字識(shí)別[1]、語音識(shí)別[2]等技術(shù),則是將漢字視為筆畫、音節(jié)的空域或時(shí)域序列信號,利用隱馬爾可夫模型(hidden Markov model,HMM)[3]等統(tǒng)計(jì)模型進(jìn)行漢字相關(guān)特征的識(shí)別。目前,利用越來越成熟的中文分詞[4]以及詞嵌入(word embedding)[5]技術(shù),基本可將適用英文的自然語言處理(natural language processing,NLP)深度學(xué)習(xí)模型遷移到中文處理中,但在解決未登錄詞(out of vocabulary,OOV)和低頻詞(low frequency words)問題時(shí),由于漢字的復(fù)雜性,中國學(xué)者無法直接將英文場景中的字符級(character-level)語言模型進(jìn)行同級別遷移,需要借助筆畫、部件、拼音等轉(zhuǎn)碼方式進(jìn)行中文文本的細(xì)粒度表達(dá),圍繞這一需求,現(xiàn)嘗試構(gòu)建一種新的編碼模型,期望能得到拉丁字母序列碼與漢字的最佳映射關(guān)系,能以類似英文單詞(word)的編碼融合漢字的多種字符級特征,并用于NLP相關(guān)模型中。

      1 相關(guān)研究

      傳統(tǒng)方法中,文本主要以獨(dú)熱(One-Hot)編碼、詞頻-逆文件頻率(TF-IDF)、詞袋(BOW)等方式表示。Bengio等[6]使用神經(jīng)網(wǎng)絡(luò)語言模型(nerual network language model,NNLM)將文本從One-Hot輸入成功轉(zhuǎn)為詞向量,Mikolov等[7]提出詞嵌入方法,其提出的word2vec模型將詞向量維數(shù)降低到100~300,之后,Pennington等[8]利用共現(xiàn)矩陣實(shí)現(xiàn)了GloVe模型,后來出現(xiàn)的ELMo[9]、BERT[10]等模型則通過注意力機(jī)制具備了動(dòng)態(tài)向量表征的能力。

      為解決OOV問題,字符級的文本表征方式開始受到重視,并取得了一定的進(jìn)展。Zhang等[13]在Kim等[11-12]提出的TextCNN基礎(chǔ)上,將文本視為一種字符級別的原始信號,利用一維卷積實(shí)現(xiàn)了字符級文本分類模型CharCNN。在相關(guān)模型遷移到中文時(shí),部分研究者嘗試將漢字作為基本字符進(jìn)行模型的改造,王麗亞等[14]將字符級詞向量用于情感分析,李偉康等[15]探索了神經(jīng)網(wǎng)絡(luò)框架下漢語字向量和詞向量的結(jié)合問題,并在基于文檔的問答系統(tǒng)中進(jìn)行了驗(yàn)證。更多研究者則是關(guān)注到與漢字相關(guān)的拼音、筆畫、部件等低層級要素,將漢字特征進(jìn)行細(xì)粒度拆分。一種思路是基于形碼的漢字表征,主要將漢字視作筆畫、部件等基本元素的組合,Li等[16]構(gòu)造了以部首為主的部件信息向量,Sun等[17]通過部首來增強(qiáng)word embedding,構(gòu)造了RECWE模型,Su等[18]通過圖形字符來增強(qiáng)詞的表示,Cao等[19]通過筆畫的n-gram(n元模型)特征構(gòu)建了cw2vec模型,趙浩新等[20]提出了筆畫字向量模型,Yang等[21]將五筆編碼作為描述漢字的字符級編碼用于命名實(shí)體識(shí)別(NER)任務(wù)中。第二種思路是基于拼音實(shí)現(xiàn)漢字特征替換或補(bǔ)充,劉敬學(xué)等[22]通過拼音序列對原始漢字序列進(jìn)行語義拓展,在字級別卷積神經(jīng)網(wǎng)絡(luò)上,得到了比詞級別更好的短文本分類效果;張曼等[23]通過小字符集映射嵌入的方式,構(gòu)造了全卷積的字符級神經(jīng)網(wǎng)絡(luò) LRN-CharFCN,并在文本分類任務(wù)中取得良好表現(xiàn);還有一種思路是結(jié)合漢字音形特征進(jìn)行嘗試,胡浩等[24]結(jié)合漢字5種基本筆畫和拼音,將漢字映射為32維的向量,提高了短文本相似性比較的性能。

      一般來說,文字均可看成具有某種層級結(jié)構(gòu)[25]關(guān)系R的元素(基本筆畫、基本字母等)集合,如英文可以看作是26個(gè)基本字母集并擁有字母、單詞二級層級結(jié)構(gòu)關(guān)系的字母集合,中文可視為由基本筆畫集按某種層級結(jié)構(gòu)關(guān)系R構(gòu)成的集合,也可視為由拼音字母按層級結(jié)構(gòu)關(guān)系R構(gòu)成的字母集合,但這種層級關(guān)系遠(yuǎn)比英文復(fù)雜。一方面,中文的基本字符集遠(yuǎn)大于英文的基本字符集,英文的26個(gè)字母基本不能作為基本語義單位,其最小語義單位是單詞(word),對應(yīng)中文的詞,現(xiàn)代漢語雖然主要以詞作為表達(dá)單位,但很多漢字本身也充當(dāng)語義單位的角色;另一方面,漢字比英文字母表現(xiàn)出更明顯的二維特征,音形分離程度相對較大,并且漢字還可進(jìn)一步拆分為筆畫、部件,所以中文文本在細(xì)粒度區(qū)分和表達(dá)上比英文更復(fù)雜。

      從向量表征粒度看,英文中的word對應(yīng)中文的“詞”,包括單字詞(uni-word)、二字詞(bi-word)、三字詞(tri-word)、多字詞(n-word)等,而由于漢字的復(fù)雜性,英文中的character并不能與中文的“字”有效對應(yīng),這也是當(dāng)前中文字符級(character-level)表征存在多種處理方法的原因。2016年,Sennrich等[26]提出subword的概念,對word實(shí)現(xiàn)子詞級別(subword-level)的拆解,有效緩解神經(jīng)網(wǎng)絡(luò)機(jī)器翻譯(neural machine tranlation, NMT)任務(wù)中的OOV問題;2017年,Bojanowski等[27]也采用了subword-level的word描述策略,得到增強(qiáng)型詞向量,以提高訓(xùn)練及預(yù)測效率。同時(shí)發(fā)現(xiàn),漢字構(gòu)詞作用與subword極其相似,所以,認(rèn)為漢字恰好處于subword層面,向上可組成word,向下可繼續(xù)細(xì)分為character,并恰好與英文形成如表1所示的層級對照結(jié)構(gòu)。

      表1 中英文字詞層級對照

      此外,參考心理學(xué)領(lǐng)域的相關(guān)文獻(xiàn)[28]表明,漢字表征需適當(dāng)考慮用戶交互的需求,這樣找出的小字符集可同時(shí)作為一種助記符號體系使用,方便研究人員對比分析。借助統(tǒng)計(jì)規(guī)律和大量實(shí)驗(yàn),對漢字進(jìn)行了character-level層面的拆解,得到了一種人工干預(yù)下的預(yù)編碼,充分考慮了漢字的音形特征以及字頻等信息,初步實(shí)現(xiàn)漢字和拉丁字母的可逆映射,并在新聞文本分類任務(wù)中取得了較好的效果。

      2 對漢字主要屬性的統(tǒng)計(jì)與劃分

      2.1 對中文字(詞)頻規(guī)律的統(tǒng)計(jì)

      從公開統(tǒng)計(jì)數(shù)據(jù)[29]看,如圖1所示,單字形式下,《信息交換用漢字編碼字符集 基本集》(GB 2312—1980)中規(guī)定的3 000個(gè)漢字可覆蓋日常所用漢字的99%以上,若將詞作為基本表征單元,漢語中單字詞、二字詞使用頻度最高,詞頻靠前的8 000詞可覆蓋常用詞的85%以上,其中單字詞占18.5%,二字詞占60%。

      圖1 漢語字(詞)頻統(tǒng)計(jì)結(jié)果Fig.1 Statistical results of Chinese characters (words) frequency

      2.2 對形、音、義特征的統(tǒng)計(jì)與改進(jìn)

      2.2.1 基本筆畫

      漢字筆畫可劃分為“點(diǎn)、橫、叉、撇、豎、折”六類,其中“點(diǎn)、橫、撇、豎、折”為基本筆畫,依據(jù)《現(xiàn)代漢語通用字筆順規(guī)范》劃分;“叉”類筆畫包含“扌”“艸”“廴”“乂”“九”“又”“豐”“毋”等,其主要特征是有兩個(gè)或兩個(gè)以上的基本筆畫相交。

      2.2.2 偏旁歸類

      參考《漢字部首表》[30],選取161個(gè)部首作為偏旁,并根據(jù)偏旁組字能力強(qiáng)弱(含有該部首的漢字多少)排序,并結(jié)合音、形、義特征,可將排序靠前的55個(gè)偏旁歸類為如表2所示的20個(gè)固定子集,用20個(gè)字母表示。

      對組字能力偏弱的其余106個(gè)偏旁,可依據(jù)起筆、聲調(diào)特征動(dòng)態(tài)歸類,并用B、G、W、F 4個(gè)字母表示,如表3所示。

      2.2.3 音節(jié)的主備韻規(guī)律及雙拼方案的改進(jìn)

      根據(jù)漢語拼音方案,為壓縮碼長,可采用圖2所示的雙拼方案,將聲母zh、ch、sh分別用e、v、u表示,韻母自成音節(jié)的,將字母“o”作為其雙拼聲母,同時(shí),將韻母壓縮到26個(gè)字母鍵位上。

      表2 偏旁固定歸類表

      表3 偏旁動(dòng)態(tài)歸類表

      圖2 相碼雙拼鍵位圖Fig.2 Key map of XQMA double spelling scheme

      經(jīng)統(tǒng)計(jì),漢字音節(jié)對應(yīng)的漢字分布極其失衡,以i、u為韻母的同音字最為明顯,《信息技術(shù) 中文編碼字符集》(GB 18030—2005)中yi音節(jié)對應(yīng)的同音字多達(dá)480個(gè),而zei、zen等音節(jié)對應(yīng)的同音字不足10個(gè)。在詞組中,重碼率較高的也多為以i、u為韻母的漢字。故需要考慮改進(jìn)現(xiàn)有的雙拼方案。

      (1)定義一。成音碼對:兩個(gè)字母拼讀時(shí)存在對應(yīng)的漢字音節(jié),則兩個(gè)字母稱為成音碼對。非音碼對:兩個(gè)字母拼讀時(shí)不存在對應(yīng)的漢字音節(jié),則兩個(gè)字母稱為非音碼對。

      統(tǒng)計(jì)表明,使用雙拼方案時(shí),同聲母的成音碼對與某些非音碼對之間存在互補(bǔ)性,且具有一定規(guī)律,可用來提高編碼密度。

      (2)定義二。主備韻關(guān)系:某些存在互補(bǔ)性且成對出現(xiàn)的韻母(如d與f、h與n),其互補(bǔ)性對很多聲母均適用,如表4所示,這些韻母,若其處于成音碼對,稱為主韻,對應(yīng)的音節(jié)為主韻音節(jié),若其處于非音碼對,稱為備韻,對應(yīng)的音節(jié)為備韻音節(jié)。主韻音節(jié)和備韻音節(jié)之間的關(guān)系,稱為主備韻關(guān)系。雙拼方案下,對具有主備韻關(guān)系的漢字,可用主韻音節(jié)和備韻音節(jié)對同音字進(jìn)行二分類,有效解決編碼稀疏問題。

      表4 雙拼方案下的主備韻關(guān)系表

      2.3 利用統(tǒng)計(jì)規(guī)律劃分漢字子集

      結(jié)合起筆的統(tǒng)計(jì)規(guī)律,漢字可相對均衡地歸為兩類,其中一類以點(diǎn)橫叉起筆,另一類以撇豎折起筆。結(jié)合形旁特征,漢字可劃分為基本字、衍生字。當(dāng)某一漢字無偏旁或該漢字加偏旁后能構(gòu)成三個(gè)以上其他漢字時(shí),可判定其為基本字,否則為衍生字;基本字主要通過讀音區(qū)分,衍生字則需在讀音的基礎(chǔ)上增加偏旁歸類碼區(qū)分。其數(shù)量比例關(guān)系如圖3所示。

      圖3 常用漢字統(tǒng)計(jì)規(guī)律Fig.3 Statistical results of common Chinese characters

      對基本字,可根據(jù)漢字使用頻率以及漢字的表音、表形、表義等屬性,進(jìn)一步劃分為聲調(diào)字、偏旁字、特高頻字、普通字,進(jìn)一步提高編碼的可讀性。

      3 XQMA模型

      模型全稱為跨象限助記符映射模型,英文名稱為cross-quadrant mnemonic mapping model,用X代替cross,并取其余關(guān)鍵字縮寫為XQMA。模型可按照特定的規(guī)則,交叉利用詞組和單字的各項(xiàng)特征,自動(dòng)將漢字映射到碼元(26個(gè)拉丁字母)序列構(gòu)成的空間中,可實(shí)現(xiàn)拼讀、拼寫、鍵盤錄入的一致性。典型的單字表征碼如圖4所示,典型的詞組表征碼如圖5所示,利用字母、數(shù)字的可變長序列表示跨象限助記符,稱為相碼,為模型描述而構(gòu)造的象限圖,稱為相位圖。

      圖4 典型單字編碼相位圖Fig.4 Coding phase diagram of typical Chinese characters

      圖5 典型詞組編碼相位圖Fig.5 Coding phase diagram of typical Chinese words

      3.1 模型基本設(shè)定

      3.1.1 子集劃分

      根據(jù)第2節(jié)的統(tǒng)計(jì)結(jié)論,可依據(jù)起筆和形旁特征將漢字劃分出如表5所示的4個(gè)子集。

      同時(shí),根據(jù)音節(jié)的主備韻規(guī)律,可將起筆特征與漢字發(fā)音的主備韻關(guān)系相匹配,以主韻表示點(diǎn)橫叉起筆的漢字,備韻表示撇豎折起筆的漢字,得到如表6所示的結(jié)果。

      3.1.2 筆畫識(shí)別碼

      利用漢字本身的筆畫特征作為單字的筆畫識(shí)別碼;主要方法是將組成該漢字的所有筆畫中“點(diǎn)”“橫”“叉”的數(shù)量值“模5”(即除以5的倍數(shù),保證余數(shù)在01234的范圍內(nèi))后,所得余數(shù)值對應(yīng)的字母作為識(shí)別碼,如表7所示。

      3.1.3 主備韻規(guī)則

      對存在主備韻關(guān)系的漢字,當(dāng)漢字屬于JD或YD,其讀音編碼為其主韻音節(jié)的編碼,稱作主韻碼;當(dāng)漢字屬于JP或YP,其讀音編碼為其備韻音節(jié)的編碼,稱作備韻碼。如圖6所示,采用主備韻規(guī)則后,極大提高了編碼密度,編碼空間的利用率可由59.2%提高至83.4%。

      表5 漢字子集劃分

      表6 漢字編碼的子集劃分

      表7 筆畫識(shí)別碼

      圖6 采用主備韻規(guī)則后的音節(jié)分布Fig.6 Syllable distribution after adopting the active-standby switch rules

      3.1.4 偏旁歸類碼

      對衍生字區(qū)分時(shí)以發(fā)音和偏旁碼為主,參照表2、表3,由24個(gè)字母代表20類確定性偏旁和4類非確定性偏旁。采用偏旁歸類碼后,5 000個(gè)常用漢字可在3碼長度內(nèi)表示,若將編碼所用的26個(gè)拉丁字母按字母表排序映射為1~26的整數(shù),則5 000常用漢字單字在編碼空間的三維分布如圖7所示,為方便分析,將第3碼元對應(yīng)的坐標(biāo)值進(jìn)行了著色。

      3.1.5 聲調(diào)識(shí)別碼

      對單字,分別用“XYZD”表示該字發(fā)音為1、2、3、4聲。對二字詞,引入如表8所示的聲調(diào)識(shí)別碼,表示前后字分別為1、2、3、4聲所形成的16種聲調(diào)組合,字母“TEMP”分別表示前字發(fā)音為1、2、3、4聲且后字為輕聲時(shí)形成的4種情況。對三字詞,前兩字的聲調(diào)識(shí)別碼參照二字詞處理,第三字的聲調(diào)識(shí)別碼分為由字母“TEMPO”表示該字發(fā)音為1、2、3、4聲及輕聲的情況。四字詞以兩字為一組,聲調(diào)識(shí)別碼參照二字詞處理。

      3.1.6 補(bǔ)充排序碼

      為保證模型的可擴(kuò)展性,在對大字庫編碼和二字詞編碼時(shí),當(dāng)重碼過多,可在末位引入補(bǔ)充排序碼,單字在第5碼位、二字詞在第6碼位,依次用“oincsvlqbjuxyzdwtempghkrfa”表示0~25個(gè)候選位序,其中“o”備用。

      圖7 常用漢字在3碼長編碼空間的分布Fig.7 Distribution of common uni-word in 3-coding space

      表8 聲調(diào)識(shí)別碼

      3.2 漢字的區(qū)分策略

      3.2.1 根據(jù)頻率和聲調(diào)規(guī)律區(qū)分基本字

      基本字在編碼時(shí)用讀音區(qū)分,按字頻由高到低,用形如aC1C2、C1C2、C1C2a、C1C2o和C1C2ox、C1C2oy、C1C2oz、C1C2od兩組編碼表示聲調(diào)字,分別代表聲調(diào)為1、2、3、4聲的相應(yīng)漢字。用形如C1、aC1、oC1的形式表示特高頻字、偏旁字、特殊字。

      普通字為以上方式無法覆蓋到的基本字,用形如C1C2oC3(當(dāng)該字聲調(diào)為1聲或2聲)或形如C1C2iC3(當(dāng)該字聲調(diào)為3聲或4聲)的編碼表示,C3位置為筆畫識(shí)別碼。

      3.2.2 根據(jù)偏旁和筆畫規(guī)律區(qū)分衍生字

      衍生字需在讀音的基礎(chǔ)上增加偏旁歸類碼區(qū)分,典型表示方式為C1C2C3,C3位置為偏旁歸類碼。如“wum”表示漢字“梧”。若有重碼,用形如C1C2C3C4的編碼表示,C4位置為筆畫識(shí)別碼。對大字符集單字編碼時(shí),對以上方式無法覆蓋到的衍生字,需用形如C1C2C3C4C5的編碼表示,其中C5位置為補(bǔ)充排序碼,依次用“incsvlqbjuxyzdwtempghkrfa”表示1至25個(gè)候選值。

      3.2.3 單字無歧義表示

      采取改進(jìn)的雙拼方案表示漢字發(fā)音,在保留音節(jié)信息的同時(shí),引入主備韻規(guī)律、高頻字優(yōu)先策略和偏旁動(dòng)態(tài)歸類、筆畫識(shí)別機(jī)制,提高編碼密度,4碼范圍內(nèi)實(shí)現(xiàn)7 000個(gè)常用單字的獨(dú)立無歧義表示。

      3.2.4 字詞獨(dú)立無重編碼

      實(shí)行顯式的字詞分離。當(dāng)編碼的前四碼無法用雙拼的方式拼讀時(shí),該編碼代表單字。

      對核心字庫中的漢字單字的編碼長度壓縮在4碼以內(nèi),最長碼表示為C1C2C3C4的形式,對擴(kuò)展字庫,編碼長度壓縮在5碼以內(nèi),用形如C1C2C3C4C5的形式表示。

      將常用二字詞作為核心詞,碼長為4,取兩字的雙拼讀音,其余詞為普通詞,二、三、四字詞的碼長分別為5、9、11,在雙拼讀音的基礎(chǔ)上增加了聲調(diào)識(shí)別碼,以降低同音詞的識(shí)別難度。

      3.2.5 拼讀、拼寫及助記

      為提高助記符的易用性,選取25個(gè)特征字,對26個(gè)字母構(gòu)造如圖8所示的特征鍵位圖。整個(gè)編碼規(guī)則充分考慮了手寫需求,可直接將模型規(guī)則用于手動(dòng)拼寫、盲文替代、速記、變量命名等場景。

      圖8 助記字特征鍵位圖Fig.8 Mnemonic feature key map

      4 實(shí)驗(yàn)及分析

      4.1 數(shù)據(jù)準(zhǔn)備及評估指標(biāo)

      4.1.1 模型編碼所用數(shù)據(jù)準(zhǔn)備

      下載漢字編碼字符集,分別符合《信息交換用漢字編碼字符集 基本集》(GB 2312—1980)和《信息技術(shù) 中文編碼字符集》(GB 18030—2005)標(biāo)準(zhǔn)。收集整理公開語料庫,構(gòu)建漢語字、詞的頻率特征庫。同時(shí),利用pypinyin,標(biāo)注相應(yīng)漢字、詞組的聲調(diào)及拼音。參考文獻(xiàn)[31-32]中的模型,結(jié)合人工校驗(yàn),構(gòu)建漢字單字偏旁庫以及相應(yīng)偏旁的漢字單字拆分庫、基于6種基本筆畫的筆畫筆順庫。

      4.1.2 模型驗(yàn)證數(shù)據(jù)準(zhǔn)備

      驗(yàn)證實(shí)驗(yàn)基于Windows 10環(huán)境,搭建TensorFlow 1.13平臺(tái),采用Python3語言,數(shù)據(jù)集為清華NLP組提供的THUCNews新聞文本分類數(shù)據(jù)集的一個(gè)子集,如表9所示,包含10個(gè)分類,每個(gè)分類6 500條數(shù)據(jù)。

      表9 測試所用數(shù)據(jù)集分布

      4.1.3 評價(jià)指標(biāo)

      在自動(dòng)標(biāo)注場景中,主要通過實(shí)際效果進(jìn)行可行性驗(yàn)證;在中文字符級向量表示場景中,引入以下指標(biāo)對分類效果進(jìn)行評價(jià)。

      圖9 二分類情況下混淆矩陣示意圖Fig.9 Confusion matrix diagram in binary classification

      (1)混淆矩陣(confusion matrix)。也稱誤差矩陣,經(jīng)常用來對機(jī)器學(xué)習(xí)算法的可視化評估,以大小為n×n的方陣形式對分類結(jié)果進(jìn)行展現(xiàn),其中n表示類的數(shù)量。矩陣的每一行代表實(shí)際類中的實(shí)例,而每列代表預(yù)測類中的實(shí)例(行列也可互換)。如圖9所示,在二分類情況下,綠色代表模型預(yù)測為正例的情況,黃色代表模型預(yù)測為負(fù)例的情況。TP表示預(yù)測為正例,實(shí)際也為正例,F(xiàn)P表示預(yù)測為正例而實(shí)際為負(fù)例,F(xiàn)N表示預(yù)測為負(fù)例而實(shí)際為正例,TN表示預(yù)測為負(fù)例而實(shí)際也為負(fù)例。

      (2)召回率(R)。也稱查全率,指所有實(shí)際是正例的有多少被正確預(yù)測為正例,其公式為

      R=TP/(TP+FN)

      (1)

      (3)精準(zhǔn)率(P)。也稱查準(zhǔn)率,即預(yù)測對的正例數(shù)占預(yù)測為正例總數(shù)的比率,其公式為

      P=TP/(TP+FP)

      (2)

      (4)準(zhǔn)確率(Acc)。反映分類器對整個(gè)樣本的預(yù)測能力,能將正的預(yù)測為正,負(fù)的預(yù)測為負(fù),計(jì)算公式為

      Acc=(TP+TN)/(TP+FP+TN+FN)

      (3)

      (5)F1值。精準(zhǔn)率與召回率的加權(quán)調(diào)和平均數(shù),公式為

      F1=2PR/(P+R)

      (4)

      4.2 XQMA模型的實(shí)現(xiàn)

      4.2.1 主體框架

      模型主體功能框架如圖10所示。

      圖10 相碼模型主體功能框架Fig.10 The main function framework of XQMA model

      4.2.2 單字表征關(guān)鍵代碼

      對《信息技術(shù)中文編碼字符集》(GB18030—2005)中規(guī)定的7 000個(gè)常用漢字,可按基本字、衍生字分別處理,算法可用偽代碼描述如下。

      (1) if 漢字 ∈ 基本字:

      (2) 若 為 特高頻字or 特殊字 or 偏旁字:

      (3) 分別用C1、oC1、aC1的形式表示

      (4) 若 適用主備韻原則:

      (5) 依起筆確定音節(jié)使用主韻或備韻

      (6) 分別用aC1C2、C1C2、C1C2a、C1C2o表示1234聲

      (7) 若 有重碼:

      (8) C1C2ox、C1C2oy、C1C2oz、C1C2od表示1234聲

      (9) 若 仍有重碼: //在第4碼位使用筆畫識(shí)別碼

      (10) 若 聲調(diào)為1、2聲: 用C1C2oC3表示

      (11) 否則 用C1C2iC3表示

      (12)else: //漢字 ∈ 衍生字

      (13) 用形如C1C2C3的編碼表示 //C3為偏旁歸類碼

      (14) 依起筆確定音節(jié)C1C2使用主韻或備韻

      (15) 若 有重碼: //在第4碼位使用筆畫識(shí)別碼

      (16) 用形如C1C2C3C4的編碼表示

      4.2.3 詞表征關(guān)鍵代碼

      對4字詞以上的漢字詞,需先進(jìn)行拆分;4字詞以下的詞,可按長度分別處理,其過程可用偽代碼描述如下。

      (1) if 詞∈二字詞:

      (2) 若 為 核心二字詞:

      (3) 用C1C2C3C4的形式表示

      (4) 否則 在第5碼位引入聲調(diào)識(shí)別碼

      (5) 用C1C2C3C4C5的形式表示

      (6) 若 仍有重碼://在第6碼位引入補(bǔ)充排序碼

      (7) 用C1C2C3C4C5C6的形式表示

      (8) elif詞∈三字詞://在8,9碼位引入聲調(diào)識(shí)別碼

      (9) 用形如C1C2C3C4C5C6aC7C8的編碼表示

      (10)elif詞∈四字詞://在10,11碼位引入聲調(diào)識(shí)別碼

      (11) 用形如C1C2C3C4C5C6C7C8aC9C10的編碼表示

      (12)else //詞不在既有詞庫中

      (13) 拆分為單字組合或字詞組合,分別處理

      (14) 將編碼用5連接,用形如C1C2C35C1C2C3的形式表示

      4.2.4 基于相碼的中文文本轉(zhuǎn)換

      利用XQMA模型得到的編碼具有唯一性,所以可對中文文本自動(dòng)完成可逆變換。在深度學(xué)習(xí)中,可將中文文本轉(zhuǎn)換為一種類似英文的字母序列,減少或降低學(xué)習(xí)模型的轉(zhuǎn)換成本。這種可逆轉(zhuǎn)換有兩種形式,一種為單字直接映射,可通過查找碼表的方式直接轉(zhuǎn)換,對碼表中未能覆蓋的單字,將其Unicode編碼值逐字節(jié)映射為相應(yīng)的補(bǔ)充排序碼,并以所生成的編碼代替該字;另一種為字詞混合映射,需要先借助jieba等分詞工具對文本進(jìn)行分詞,然后利用查表方式進(jìn)行轉(zhuǎn)換,對既有詞庫未能覆蓋的分詞,拆分為單字處理。其過程可用偽代碼描述如下。

      (1) 讀入需轉(zhuǎn)換的文本

      (2) if 以單字直接轉(zhuǎn)換:

      (3) 若 單字 in 單字碼表: 直接轉(zhuǎn)換為相應(yīng)相碼

      (4) 否則 得到該字的Unicode編碼uc

      (5) 將uc逐字節(jié)映射為相應(yīng)的補(bǔ)充排序碼得到xc

      (6) 將字母a與xc拼接得到最終編碼

      (7) 循環(huán)執(zhí)行(3)~(6),直至轉(zhuǎn)換完成

      (8) else: //字詞混合轉(zhuǎn)換

      (9) 將文本分詞,得到詞序列

      (10) 若詞 in 字詞碼表:

      (11) 直接轉(zhuǎn)換為相應(yīng)相碼

      (12) 否則 拆分為單字

      (13) 按單字編碼

      (14) 循環(huán)執(zhí)行(10)~(13),直至轉(zhuǎn)換完成

      4.3 模型驗(yàn)證及結(jié)果分析

      4.3.1 同音單字的獨(dú)立無歧義表示

      這里引用著名語言學(xué)家趙元任先生寫的同音字奇文《施氏食獅史》《季姬擊雞記》來測試模型的同音字區(qū)分效果。結(jié)果表明,XQMA模型能兼顧可讀性與單字無歧義表達(dá)兩個(gè)需求。圖11為模型對《施氏食獅史》自動(dòng)標(biāo)注后的效果截圖。

      按照圖7的構(gòu)造思路,并將第四碼元的位序值大小與三維圖中代表漢字的小球體積相對應(yīng),則與“獅”“季”相對應(yīng)的同音字在編碼空間中的分布可用圖12表示。

      圖11 同音字區(qū)分及自動(dòng)標(biāo)注效果圖Fig.11 Result of homophone distinction and automatic annotation

      圖12 獅、季所在音節(jié)同音字在編碼空間的分布Fig.12 Distribution of homophones of ui and ji in codes space

      4.3.2 同音字、詞的編碼性能分析

      單字編碼時(shí),對《信息交換用漢字編碼字符集 基本集》(GB 2312—1980)中規(guī)定的漢字,模型能在4碼范圍內(nèi)實(shí)現(xiàn)單字的唯一編碼,以上字符集未能覆蓋的漢字,模型可在5碼范圍內(nèi)實(shí)現(xiàn)唯一編碼,詞組編碼時(shí),利用jieba分詞對“新聞?wù)Z料(news2016zh)”和“維基百科(wiki2019zh)”兩個(gè)語料庫統(tǒng)計(jì)得到的詞條,可得到如表10所示的結(jié)果,實(shí)驗(yàn)表明,相對傳統(tǒng)拼音方案,模型的無歧義表征優(yōu)勢較為明顯。

      按照圖12的構(gòu)造思路,《信息交換用漢字編碼字符集 基本集》(GB 2312—1980)中6 763個(gè)漢字的分布規(guī)律可用圖13表示,結(jié)果表明,模型能在4碼空間內(nèi)實(shí)現(xiàn)常用漢字單字(uni-word)的唯一描述,編碼分布相對均衡。

      表10 相碼模型編碼性能分析

      圖13 常用漢字在4碼長編碼空間的分布Fig.13 Distribution of common uni-words in 4-code space

      參照圖12的構(gòu)造思路,若分別以前后單字音節(jié)、聲調(diào)識(shí)別碼為坐標(biāo),將補(bǔ)充排序碼的值與表示詞的小球體積相對應(yīng),則表10中所列二字詞(bi-word)在6碼長編碼空間的分布如圖14所示。

      圖14 常用二字詞在編碼空間的分布Fig.14 Distribution of common bi-words in coding space

      圖15 對法律文本的自動(dòng)標(biāo)注效果圖Fig.15 Result of automatic annotation of legal text

      4.3.3 法律類文本以詞為最小單元的自動(dòng)標(biāo)注

      現(xiàn)代漢語中,法律文本對編碼的無歧義表示需求更明顯,為進(jìn)一步檢驗(yàn)?zāi)P偷挠行?,特選取“刑法修正案(九)”進(jìn)行測試,其標(biāo)注效果如圖15所示。

      考慮到現(xiàn)代漢語以詞為最小表示單元,并以二字詞占比最大,單字詞和三、四字詞次之,而模型只針對詞頻居前的二、三、四字詞構(gòu)建基本詞庫,進(jìn)行了固定編碼,對基本詞庫未覆蓋的詞,可將其進(jìn)行拆分后分別編碼,然后將各編碼用數(shù)字“5”進(jìn)行連接,連接后得到的編碼即為該詞的編碼,其標(biāo)注效果如圖15所示。

      從標(biāo)注效果看,XQMA模型生成的表征碼長度合理,比拼音攜帶更多的音形信息,符合用戶的日常識(shí)記習(xí)慣,可為中文自動(dòng)標(biāo)注、盲文漢字表示、程序代碼中實(shí)現(xiàn)類漢字標(biāo)識(shí)符提供一種新途徑。

      4.3.4 相碼用于中文字符級向量表示

      在自然語言處理場景中,相碼可提供一種類似于英文的中文轉(zhuǎn)換碼,為檢驗(yàn)其轉(zhuǎn)換后的實(shí)用價(jià)值,參照文獻(xiàn)[33]的方法,利用改造后的字符級TextCNN模型進(jìn)行新聞文本分類測試,采用一維卷積、一個(gè)卷積層、一個(gè)全連接層的主體結(jié)構(gòu),模型參數(shù)設(shè)置如表11所示。

      與原作中的方法不同,本文模型不直接將漢字作字符級embedding,而是首先將數(shù)據(jù)集按不同編碼方式轉(zhuǎn)換為相應(yīng)的字符序列碼形成新數(shù)據(jù)集,此時(shí)可得到較小的詞匯表,之后按新詞匯表對每一字符作字符級embedding,然后輸入TextCNN進(jìn)行分類訓(xùn)練。實(shí)驗(yàn)分別測試了采用相碼、拼音、五筆、unicode編碼直接視為字符串等轉(zhuǎn)換方式下的分類效果,并在轉(zhuǎn)換時(shí)細(xì)分為按單字逐字編碼(單字編碼)和先分詞再編碼(字詞混合編碼)兩種場景。實(shí)驗(yàn)結(jié)果如表12所示。

      從實(shí)驗(yàn)結(jié)果看,unicode轉(zhuǎn)換方式分類效果不如其他方式,反映出該轉(zhuǎn)換方式丟失的信息較多。拼音編碼方式分類效果弱于五筆編碼方式,這與拼音方式下同音字、同音詞重碼較多有關(guān)。相碼編碼方式在實(shí)驗(yàn)中表現(xiàn)較好,準(zhǔn)確率分別達(dá)到了96.76%和96.78%,其他評估指標(biāo)也表現(xiàn)良好,在精準(zhǔn)率、召回率、F1值上與原作中結(jié)果基本相當(dāng),個(gè)別結(jié)果略好。圖16和圖17分別展示了采用相碼單字編碼時(shí)的訓(xùn)練過程和測試結(jié)果。

      表12 不同編碼方式下文本分類結(jié)果對比

      圖16 采用相碼單字編碼的訓(xùn)練過程Fig.16 The training process when using xqma uni-word coding

      圖17 采用相碼單字編碼時(shí)的混淆矩陣Fig.17 Confusion matrix when using xqma uni-word encoding

      從驗(yàn)證效果看,XQMA模型得到的漢字編碼確實(shí)能提供一種新的字符級中文向量表示方式,可有效解決OOV問題,具有一定的實(shí)用價(jià)值。在本例中,考慮到新聞文本中存在不少標(biāo)點(diǎn)、數(shù)字等非漢字字符,所以卷積模型中的詞匯表由系統(tǒng)自動(dòng)按統(tǒng)計(jì)頻率取前128個(gè)字符形成,未人為指定。若測試對象為純漢字文本,則可直接將詞匯表限定為26個(gè)字母。

      5 結(jié)論

      針對字符級語言模型的細(xì)粒度漢字表征需求,提出了跨象限助記符映射(XQMA)模型。模型有效融合了漢字的多種特征,可實(shí)現(xiàn)中文文本的預(yù)編碼,為漢字細(xì)粒度表征提供了一種新方法,實(shí)驗(yàn)結(jié)果表明,該模型在TextCNN文本分類任務(wù)上表現(xiàn)良好,同時(shí),模型可實(shí)現(xiàn)中文語料的批量可逆轉(zhuǎn)碼和唯一標(biāo)注,存在較為廣闊的應(yīng)用前景。

      雖然初步驗(yàn)證了相碼編碼在中文文本字符級向量的有效性,但并未在機(jī)器翻譯、命名實(shí)體識(shí)別等相關(guān)模型上進(jìn)行測試,后續(xù)研究中還需逐步進(jìn)行驗(yàn)證,同時(shí),可考慮將相碼模型與其他中文字符級語言模型相融合,使模型有更好表現(xiàn)。

      猜你喜歡
      單字字符音節(jié)
      尋找更強(qiáng)的字符映射管理器
      河北大名話單元音韻母、單字調(diào)及雙音節(jié)非輕聲詞連調(diào)的實(shí)驗(yàn)語音學(xué)初探
      字符代表幾
      一種USB接口字符液晶控制器設(shè)計(jì)
      電子制作(2019年19期)2019-11-23 08:41:50
      拼拼 讀讀 寫寫
      消失的殖民村莊和神秘字符
      藏文音節(jié)字的頻次統(tǒng)計(jì)
      “對仗不宜分解到單字”毋庸置疑——答顧紳先生“四點(diǎn)質(zhì)疑”
      中華詩詞(2016年11期)2016-07-21 14:56:16
      鹽城方言單字調(diào)聲學(xué)實(shí)驗(yàn)研究
      快樂拼音
      招远市| 阿克陶县| 巩留县| 静海县| 兴义市| 高台县| 浦东新区| 拜城县| 峨眉山市| 武义县| 高安市| 射洪县| 湖口县| 驻马店市| 车险| 防城港市| 横山县| 赤城县| 彩票| 南江县| 侯马市| 图木舒克市| 仪征市| 天祝| 清原| 安阳市| 兰溪市| 临江市| 论坛| 大渡口区| 嘉鱼县| 涟水县| 兴宁市| 城固县| 福鼎市| 改则县| 仙居县| 万源市| 靖江市| 凤凰县| 朝阳市|