吳琴霞,趙紅丹
(1.安陽(yáng)師范學(xué)院 計(jì)算機(jī)與信息工程學(xué)院,河南 安陽(yáng) 455000;2. 甲骨文信息處理教育部重點(diǎn)實(shí)驗(yàn)室,河南 安陽(yáng) 455000;3.河南省甲骨文信息處理重點(diǎn)實(shí)驗(yàn)室,河南 安陽(yáng) 455000)
文字是人類(lèi)最偉大的發(fā)明,它是人類(lèi)思想的反映,也是歷史事件的直接記錄。甲骨文是世界四大古老文字之一,是漢字的源頭、中華優(yōu)秀傳統(tǒng)文化的根脈。隨著計(jì)算機(jī)科學(xué)技術(shù)的發(fā)展,甲骨文的研究也與時(shí)俱進(jìn)。近年來(lái),不少學(xué)者將人工智能、大數(shù)據(jù)分析、深度學(xué)習(xí)等技術(shù)應(yīng)用到甲骨文的研究中,當(dāng)甲骨文與現(xiàn)代科技相結(jié)合,使得甲骨文信息化建設(shè)成為現(xiàn)實(shí)?,F(xiàn)在,已有若干個(gè)甲骨文信息化數(shù)據(jù)平臺(tái)開(kāi)發(fā)完成,如安陽(yáng)師范學(xué)院甲骨文信息處理教育部重點(diǎn)實(shí)驗(yàn)室與中國(guó)社會(huì)科學(xué)院甲骨學(xué)殷商史研究中心合作建設(shè)的“殷契文淵”、香港中文大學(xué)的“漢達(dá)文庫(kù)”等,都采用了計(jì)算機(jī)技術(shù)建成了甲骨文信息化平臺(tái),為廣大研究者提供了極大便利[1]。但大多專(zhuān)家學(xué)者在研究甲骨文信息化方面存在一些誤區(qū):1)重視甲骨字字形、字音和字意的考證。把甲骨字信息處理看作對(duì)知識(shí)的處理,而沒(méi)有將甲骨字本身看作一種信息;2)重差別輕統(tǒng)一。甲骨字存在大量的異體字,重視每個(gè)甲骨字字形差別和構(gòu)字部件差別,忽視甲骨字形體結(jié)構(gòu)和構(gòu)字部件之間的統(tǒng)一性[2];3)重理論輕系統(tǒng),重視把甲骨字研究的經(jīng)驗(yàn)運(yùn)用到信息處理當(dāng)中,而忽略信息處理的系統(tǒng)性。這樣使得甲骨文信息處理變得零碎和煩瑣,數(shù)據(jù)信息無(wú)法通用,存儲(chǔ)和處理的數(shù)據(jù)巨大[3-4]。
隨著人類(lèi)對(duì)客觀世界認(rèn)知的不斷增強(qiáng),語(yǔ)言文字隨之產(chǎn)生。甲骨字字形構(gòu)成的思維范式體現(xiàn)了人類(lèi)對(duì)客觀世界認(rèn)知的抽象、概括、分析、歸納和推理,規(guī)范了人類(lèi)對(duì)自然界的認(rèn)知過(guò)程。甲骨字主要以象形和表意這種最簡(jiǎn)單的方式來(lái)描述自然界里的萬(wàn)物,其本身就是一種抽象概括的原型。甲骨字的產(chǎn)生和在日常生產(chǎn)過(guò)程中的運(yùn)用,是人類(lèi)掌握了客觀事物的認(rèn)知規(guī)律的結(jié)果。甲骨文已經(jīng)具有一套完整的構(gòu)成體系,這套構(gòu)成體系將甲骨文分成了字形和構(gòu)件。相對(duì)于甲骨文的識(shí)別、考釋、綴合等工作來(lái)說(shuō),對(duì)于甲骨字構(gòu)件的研究具有更加重要的意義[5]。該文利用認(rèn)知心理學(xué)的科學(xué)成果,研究和總結(jié)甲骨字的造字機(jī)理,在對(duì)甲骨字造字原理分析的基礎(chǔ)上,通過(guò)研究甲骨字的結(jié)構(gòu)、筆畫(huà)和原型(構(gòu)件)建模方法,提出一種基于語(yǔ)義構(gòu)件及其空間位置的甲骨字計(jì)算模型;并通過(guò)定義甲骨字的基本筆元、組合筆元和擴(kuò)展筆元來(lái)表示甲骨字構(gòu)件的結(jié)構(gòu),以空間變換向量實(shí)現(xiàn)原型的組合,提出甲骨字構(gòu)件智能拼組造字方案;并建立了基于認(rèn)知機(jī)理的甲骨字自動(dòng)生成數(shù)學(xué)模型。
認(rèn)知是人對(duì)自然界和人類(lèi)社會(huì)活動(dòng)的理解過(guò)程,甲骨字就是商朝時(shí)期人類(lèi)對(duì)自然界認(rèn)知和實(shí)踐的產(chǎn)物。認(rèn)知心理學(xué)中的原型匹配理論認(rèn)為人腦中存儲(chǔ)著代表一個(gè)事物的最基本特征的表示,這種表示就是某類(lèi)事物的抽象形式。這種抽象形式的表示就是“原型”,人類(lèi)認(rèn)知一類(lèi)事物,對(duì)該類(lèi)事物的知覺(jué)由輸入信息與腦海中存儲(chǔ)的“原型”進(jìn)行匹配而實(shí)現(xiàn)。
甲骨字是一類(lèi)存在的客觀事物,其原型由“象形”和“指事”符號(hào)組成。甲骨字原型是甲骨字符集的最基本的組成成分,原型映射到具體的甲骨字中稱(chēng)為“甲骨字構(gòu)件”。甲骨字是由“甲骨字構(gòu)件”按照某種結(jié)構(gòu)組成,組成甲骨字時(shí),甲骨字構(gòu)件之間,以及甲骨字構(gòu)件和甲骨字整體間的關(guān)系構(gòu)成了甲骨字的層次結(jié)構(gòu)如圖1所示。
圖1 甲骨字的層次結(jié)構(gòu)
甲骨字自動(dòng)生成技術(shù)是將甲骨字原型變化成甲骨字構(gòu)件,然后按照一定的結(jié)構(gòu)組合成甲骨字,甲骨字自動(dòng)生成原理如圖2所示。
圖2 基于認(rèn)知機(jī)理的甲骨字造字原理
甲骨字自動(dòng)生成的實(shí)現(xiàn),首先要建立甲骨字原型庫(kù)和甲骨字的結(jié)構(gòu)知識(shí)庫(kù)。通過(guò)分析甲骨字的造字原理,對(duì)造字知識(shí)進(jìn)行組織,建立智能造字知識(shí)庫(kù);其次,字體自動(dòng)生成時(shí),需要外界刺激進(jìn)行輸入,根據(jù)造字知識(shí)庫(kù)的規(guī)則把甲骨字原型映射為甲骨字構(gòu)件,按照一定的甲骨字結(jié)構(gòu)將構(gòu)件組合成甲骨字[7-8]。
1.甲骨字編碼。甲骨字自動(dòng)生成的實(shí)現(xiàn)工具是計(jì)算機(jī),只有把甲骨字自動(dòng)生成的工程轉(zhuǎn)換成便于計(jì)算機(jī)處理的編碼,才能實(shí)現(xiàn)甲骨字的自動(dòng)生成。根據(jù)甲骨字的結(jié)構(gòu)和甲骨字的造字原理給出甲骨字的編碼方法。甲骨字編碼處理的實(shí)質(zhì)是將甲骨字編碼分解為相應(yīng)的甲骨字結(jié)構(gòu)和甲骨字原型建立甲骨字原型組合樹(shù)。
2.甲骨字原型庫(kù)。甲骨字原型是甲骨字的基本組成單位,甲骨字自動(dòng)生成是甲骨字原型映射到甲骨字結(jié)構(gòu)中映像組合而成的數(shù)據(jù)。甲骨字原型庫(kù)存儲(chǔ)著甲骨字原型的具體構(gòu)型、甲骨字原型構(gòu)件的數(shù)據(jù)、甲骨字原型的表示數(shù)據(jù)等。
3.甲骨字的構(gòu)成。甲骨字的構(gòu)成是指甲骨字構(gòu)件按照一定的組合規(guī)則生成甲骨字的過(guò)程,描述甲骨字基元在甲骨字圖形中的位置關(guān)系。有了甲骨字的結(jié)構(gòu),才能實(shí)現(xiàn)用有限個(gè)甲骨字原型生成所有的甲骨字字符集。
4.甲骨字原型映射。原型到客體的轉(zhuǎn)換是一種保持拓?fù)洳蛔冃蔚淖儞Q。甲骨字的自動(dòng)生成過(guò)程就是甲骨字構(gòu)件按照甲骨字構(gòu)成規(guī)則在平面上的重組。從甲骨字原型到具體的甲骨字構(gòu)件就是抽象到具體的映射,這種映射保持甲骨字原型的拓?fù)洳蛔冃巍?/p>
依據(jù)基于認(rèn)知機(jī)理的甲骨字自動(dòng)生成理論,所有已釋甲骨字中,具有獨(dú)立語(yǔ)義的構(gòu)字單元為甲骨字原型,甲骨字符集中的每個(gè)甲骨字是由一個(gè)或多個(gè)甲骨構(gòu)件組成,這些構(gòu)件是甲骨字原型在甲骨字結(jié)構(gòu)空間的映射。
原型構(gòu)件庫(kù)是甲骨字的基本組成單位,甲骨字自動(dòng)生成是由原型構(gòu)件映射到甲骨字結(jié)構(gòu)中的映像組合而成。原型構(gòu)件庫(kù)包含甲骨字原型的具體構(gòu)成數(shù)據(jù)、甲骨字原型構(gòu)件數(shù)據(jù)、甲骨字原型構(gòu)件的計(jì)算機(jī)表示數(shù)據(jù)。原型構(gòu)件庫(kù)是甲骨字自動(dòng)生成的基石。
由于甲骨字符的數(shù)量是無(wú)法定量的,根據(jù)認(rèn)知原理給出有限個(gè)甲骨字原型可以生成所有的甲骨字符,根據(jù)這一原理給出以下定義:
定義1 設(shè)Ω代表某個(gè)時(shí)間段內(nèi)所有的甲骨字符集,Ci是Ω中的元素。R為實(shí)數(shù)集,Ω的數(shù)學(xué)表達(dá)式如下:
定義2 設(shè)P為甲骨字符集的所有原型的集合,因?yàn)閨P|<|Ω|,所以P為有限集;設(shè)Pi是P集合中的元素,所有甲骨字符原型組成的集合的數(shù)學(xué)表達(dá)式如下:
根據(jù)定義1、2可以得出甲骨字自動(dòng)生成機(jī)理,即在甲骨字原型集合P中,可以找到Ω的一個(gè)有限覆蓋。即用有限個(gè)甲骨字原型組成所有的甲骨字,它是通過(guò)甲骨字原型在甲骨字中的結(jié)構(gòu)映射來(lái)實(shí)現(xiàn)的。一個(gè)甲骨字可以表示為一個(gè)或多個(gè)甲骨字構(gòu)件在甲骨字構(gòu)成空間中的分布;甲骨字構(gòu)件是甲骨字原型在甲骨字結(jié)構(gòu)上的拓?fù)溆成?,甲骨字?gòu)件在甲骨字中的具體外觀、大小、位置將由甲骨字原型和甲骨字結(jié)構(gòu)共同決定。
根據(jù)上述甲骨字自動(dòng)生成機(jī)理,甲骨字自動(dòng)生成的數(shù)學(xué)模型如下:
定義3 設(shè)S為甲骨字所有甲骨字結(jié)構(gòu)組成的集合,|S|<|Ω|,S為有限集;甲骨字結(jié)構(gòu)組成的集合可用以下公式來(lái)描述:
根據(jù)甲骨字自動(dòng)生成數(shù)學(xué)模型,甲骨字自動(dòng)生成的步驟如下:
1.依據(jù)描述甲骨字結(jié)構(gòu)的數(shù)學(xué)公式,對(duì)組成甲骨字的原型進(jìn)行選??;
2.把甲骨字原型pi映射到甲骨字結(jié)構(gòu)si中,得到甲骨字的構(gòu)件F(si,pi);
3.在甲骨字圖形空間中,用一個(gè)或多個(gè)甲骨字構(gòu)件F(si,pi)“拼”來(lái)自動(dòng)生成甲骨字Ci;
4.自動(dòng)生成的甲骨字字體和字形進(jìn)行選擇,通過(guò)構(gòu)建函數(shù)Tfs(f為字形,s為字號(hào)),對(duì)所生成的甲骨字進(jìn)行統(tǒng)一處理。
以此為基礎(chǔ),深入分析認(rèn)知心理學(xué)中的原型理論,得出甲骨字這個(gè)客體是無(wú)法定量的,而組成甲骨字的原型是有限的。原型構(gòu)件是甲骨字的基本組成成分。在此基礎(chǔ)上,依據(jù)甲骨字的特殊性兼顧計(jì)算機(jī)處理效率總結(jié)出甲骨字原型提取準(zhǔn)則。以已釋的1024個(gè)甲骨字為基礎(chǔ)實(shí)驗(yàn)數(shù)據(jù),進(jìn)行原型構(gòu)件提取實(shí)驗(yàn),為甲骨字自動(dòng)生成數(shù)學(xué)模型打下基礎(chǔ)。
表1 原型對(duì)應(yīng)的構(gòu)件
依據(jù)甲骨字自動(dòng)生成的數(shù)學(xué)模型,甲骨字由甲骨字原型、甲骨字結(jié)構(gòu)的映射、甲骨字構(gòu)件組成。甲骨字自動(dòng)生成平臺(tái)應(yīng)具有輸入、顯示、編輯、保存等功能,如圖3所示。
圖3 甲骨字生成平臺(tái)
鍵盤(pán)輸入功能:對(duì)甲骨字進(jìn)行編碼處理,甲骨字符的外碼將甲骨字的結(jié)構(gòu)信息映射到鍵盤(pán)上的26個(gè)字母鍵上。
編碼處理功能:將按照“甲骨字原型+甲骨字結(jié)構(gòu)”進(jìn)行編碼的甲骨字進(jìn)行解析,把解析的結(jié)果轉(zhuǎn)化為特定的數(shù)據(jù),即甲骨字的結(jié)構(gòu)和組成甲骨字的原型,方便甲骨字的自動(dòng)生成。
自動(dòng)生成模塊:從知識(shí)庫(kù)中提取各個(gè)基元的映射知識(shí),從計(jì)算機(jī)硬盤(pán)中讀取各個(gè)基元的特征數(shù)據(jù)點(diǎn),仿射變化后拼合成新的甲骨字。
打開(kāi)和保存功能:新造的甲骨字只需將該字的構(gòu)成編碼保存即可。同時(shí)設(shè)計(jì)有文件打開(kāi)功能,打開(kāi)用戶保存的數(shù)據(jù),程序?qū)⒏鶕?jù)該字的編碼推理,并將該字“拼合”顯示在屏幕上。
甲骨字自動(dòng)生成系統(tǒng)根據(jù)甲骨字結(jié)構(gòu)編碼信息,在原型構(gòu)件庫(kù)的指導(dǎo)下生成新的甲骨字。甲骨字自動(dòng)生成平臺(tái)提供了甲骨字信息的輸入、輸出和編輯三大功能。甲骨字原型庫(kù)中的每一個(gè)原型依據(jù)其特征點(diǎn)進(jìn)行保存,現(xiàn)已提取出四百多個(gè)甲骨字原型,存儲(chǔ)量為156KB,應(yīng)用該原理已生成了1202個(gè)常用甲骨字。甲骨字的原型構(gòu)件存儲(chǔ)如圖4所示。
圖4 甲骨字原型構(gòu)件
甲骨字的組成成分是原型構(gòu)件在甲骨字結(jié)構(gòu)上的拓?fù)溆成?,即原型?gòu)件在結(jié)構(gòu)漢字中的位置、大小和形態(tài)的不同構(gòu)成不同的甲骨字。但同一原型構(gòu)件在不同漢字中對(duì)應(yīng)的成分與原型構(gòu)件都具有相同的拓?fù)浣Y(jié)構(gòu)。如圖5所示,甲骨字“北”可以用“人”這個(gè)原型構(gòu)件按照左右結(jié)構(gòu)組成。
圖5 由構(gòu)件和筆元生成的甲骨字
原型構(gòu)件映射到具體的甲骨字組成成分的幾何變換方法是必須解決的問(wèn)題。該實(shí)驗(yàn)平臺(tái)采用基于區(qū)域和特征提取的仿射變換系數(shù)自動(dòng)獲取方法,從不同的角度、不同的技術(shù)方法來(lái)獲取原型構(gòu)件的仿射變換系數(shù),形成優(yōu)勢(shì)互補(bǔ)獲取更精確的原型構(gòu)件的映射知識(shí)[10]。
在對(duì)甲骨字造字原理分析的基礎(chǔ)上,通過(guò)研究甲骨字的結(jié)構(gòu)、筆畫(huà)和原型構(gòu)件的建模方法,提出了基于造字機(jī)理的甲骨字自動(dòng)生成的方法來(lái)取代字庫(kù),不以甲骨字作為信息處理的基本單元,而是把甲骨字的原型構(gòu)件作為組字的基本單元。解決了沒(méi)有統(tǒng)一的Unicode編碼的甲骨字的輸入、顯示和編輯等問(wèn)題。采用此方法可以解決甲骨字無(wú)法定量、定型的難題,歸納智能造字規(guī)則,以后新產(chǎn)生的甲骨字按照造字規(guī)則來(lái)生成,可以制定穩(wěn)定的甲骨文信息化標(biāo)準(zhǔn)。甲骨字原型庫(kù)和智能造字知識(shí)庫(kù)都是從甲骨文文化特點(diǎn)出發(fā),方便了廣大甲骨文愛(ài)好者對(duì)甲骨字的學(xué)習(xí)和認(rèn)知。甲骨字原型庫(kù)的數(shù)量遠(yuǎn)遠(yuǎn)小于甲骨字符的數(shù)量,信息處理中信息熵將大大降低,信息化效率大大提高,方便了甲骨文的Web傳輸。