面向拓片信息的甲骨字网络构建与分析

2018-08-17 08:38焦清局金园园刘永革
中文信息学报 2018年7期
关键词:拓片甲骨甲骨文

焦清局,高 峰,金园园,熊 晶,刘永革

(1. 安阳师范学院 计算机与信息工程学院,河南 安阳 455000;2. 河南省甲骨文信息处理重点实验室,河南 安阳 455000;3. 汉语海外传播河南省协同创新中心,河南 安阳 455000)

0 引言

甲骨文是一种距今有3 500多年历史的古汉字,其所记载的内容极其丰富,涉及商代社会生活的诸多方面,不仅包括政治、军事、文化、社会习俗等内容,而且涉及天文、历法等科学技术[1]。对甲骨文进行深入的研究与探讨,可以对语言文字学、考古学、历史学、社会人类学等学科产生深刻的影响,具有重要的文化价值和传承意义。目前国内外共收藏的甲骨片约有15万片[2](数字会随时间的变化而变化,如新出土甲骨片及甲骨片的缀合),被发现的甲骨文单字约有4 378个[3](2010年前所见殷墟甲骨字),但其中可释者仅为1 682个[3]。因此,考释字是甲骨文研究的主要任务。一百多年来,经过几代学者的努力,在甲骨文字的考释方面取得了丰硕的成果[4]。如郭沫若是第一个运用历史唯物主义研究古文字的人,善于将文字考释与史料分析相结合,进而研究中国古代社会。他在甲骨文字考释方面取得了令人瞩目的成绩。历史学家唐兰,他不但考释出很多难以辨识的甲骨文字,还建立了各种较为完整和系统的研究方法,如对照法、推勘法、偏旁分析法等。其他如董作宾、徐中舒也在甲骨文考释方面取得了丰硕的成果。然而,纯人工地研究甲骨文也存在许多缺陷:①专家们对甲骨文的辨识和翻译只能依赖于长期的学术钻研和经验累积,而且培养一名甲骨文专家是无法速成的,往往需要一二十年甚至更长的时间[1]; ②甲骨文字之间不是孤立存在的,它们之间相互联系和作用,从而形成一个成熟的文字系统。然而,历史学家研究甲骨文的考释时,只是孤立的研究,并不能从系统的角度揭示甲骨文字的场景和语义。

随着对甲骨文的深入研究和其材料的数字化,甲骨文的数据已体现出海量化和系统化[5],这为使用计算机技术研究甲骨文提供了数据上的保障。甲骨文的研究也渐渐进入了以计算机研究和人工研究相辅相成的时代。为了解决甲骨文资料库的缺陷,2007年,刘永革开发了甲骨文字的编辑软件[6]。甲骨文字编辑软件对甲骨文字的可视化研究开创了一种资料编辑的新方法,也为国内外的甲骨文学者们之间的相互交流提供了一个新的平台。2008年,顾绍通等人对计算机中如何输入甲骨文字也做出重要研究[7]: 首先对甲骨文字形进行深入研究之后发现,甲骨文的字形具有一定的规律。通过对《殷墟甲骨刻辞类纂》中收录的甲骨文字形的拓扑结构进行深入分析之后,整理出了569个甲骨文字的偏旁部首。再把这569个偏旁部首分别配置到标准键盘的26个英文字母上之后,通过拆分取码和现代汉字的拼音方法,使用标准键盘即可输入3 673个甲骨文字(包含异体字合文)。甲骨文字输入法的问世对甲骨文字的数字化 、展示 、有效保护和方便使用,具有非常重要的现实意义。2013年,酆格斐等人通过对原始拓片的预处理,并结合数学形态学方法提出12项指标描述甲骨字特征,这些特征较好地反映了甲骨文字的笔画形态和结构[8]。2014年,安阳师范学院的高峰对诸多甲骨文语义进行研究后,构建了一个甲骨文领域的语义词典系统[9]。作者通过不断地对国内外甲骨文语义词典的对比研究后,从其特点出发,对甲骨文语料中的原材料进行了精细的加工处理,并在甲骨文语义分类的基础上对实词做出了很多属性描述,并建立了计算机的半自动化辅助加工模块,用来服务于甲骨文辅助机器的翻译和考释工作。2014年,熊晶以许多甲骨文学家建立的甲骨文字库为基础,提出一种计算机辅助翻译甲骨文的方法[10]。2016年,中山大学、北京微软研究院以及瑞士日内瓦大学的研究人员通过图像处理的方式识别甲骨字[11]。2016年,德国马克斯普朗克研究所和上海大学的研究人员构建了有关动物甲骨字的认知网络[12]。虽然一些计算机学家在研究甲骨文方面取得了显著的成绩,但是还存在一些问题需要继续深入研究。如现有的算法在研究甲骨文字时,并没有从系统的角度研究,导致使用计算机方法预测未知甲骨文字的语义距离还很远。不仅如此,现有的计算机方法研究甲骨文时,并没有考虑甲骨字之间的联系对场景和语义的影响。

复杂网络是描述复杂系统的一种有效工具,语言系统的网络化抽象为研究语言提供了新的视角和手段[13]。目前,人们已经构建了汉语的同现网络[14]、句法网络[15]、语义场网络[16]等。语言网络的构建及其特征的分析对研究语言系统背后的形成机制和演化规律具有重要的意义[13]。在本文中,我们使用甲骨拓片信息构建甲骨文字网络,并对网络的特性进行详细分析。本文的研究结果能为历史学家和网络甲骨学家揭示未知甲骨字的语义提供新的数据和研究思路。

1 甲骨字网络构建

本文以收集的72 151片甲骨文拓片为研究对象,进而通过建模构建甲骨字网络。由于甲骨拓片历史久远,拓片的损坏比较严重。因此,在构建网络之前,对其进行相应的处理。第一,如果在一个拓片中,字和字之间有残缺的情况,用省略号代替;第二,除去没有甲骨字的拓片;最后共得到71 455片甲骨文拓片、6 199个已识和未识甲骨字。

由于甲骨文系统是中国最早的文字系统,语言特性还处于萌芽的状态。因此,它和现有的成熟文字系统有很大的区别: 第一,在甲骨文系统中,同一拓片的甲骨字描述了同一个场景(或称语义单元),如,战争、天象、婚娶等,但也有可能不同拓片中的甲骨字描述不同时段的场景。第二,在甲骨文系统中,单音节词较多,而复音节词较少。这也是古文字系统特有的属性。

为了构建甲骨字网络,需要定义甲骨字和甲骨字之间的相似性距离。由于甲骨文系统的同一场景或语义单元是以拓片为单位,所以,如果在一个拓片中,两个甲骨字之间在n阶Markov链的条件下同时存在,则认为这两个甲骨字之间应存在一条边。与刘知远构建汉语网络不同[14],本文中,在两个甲骨字之间定义了相应的权重。对于同一拓片上的两个甲骨字(这两个甲骨字可以是已识或未识),它们分别用i和j表示,那么这两个字之间的距离为wij(见公式1)。不仅如此,在n阶Markov链中n在现代汉语中经常取值为2[14],因为现在的文字系统有大量的词语。而在甲骨文系统,很少有词组的出现。因此,在构建网络时,对于不同拓片,n值选择为拓片上甲骨字的个数。

图1 甲骨字之间距离计算图

本文使用的构建甲骨字网络方法具有三个创新点: 一是在构建网络的过程中,充分利用了拓片在甲骨文系统中作为语义单元的信息,即拓片中的甲骨字不论是已识或未识,根据式(1)~(2)都可以构建它们之间的距离。因此,未识和已识的甲骨字出现在同一个网络中,这种现象为我们依据已识的语义信息破译未识甲骨字提供可能;二是构建网络的方法体现了甲骨文系统中复音节词较少的古文字特征;三是在构建网络的过程中赋予甲骨字之间相应的权重,利于分析甲骨字之间的同现信息。

2 甲骨字网络特性分析

为了验证甲骨字网络是否具有真实网络的特性,本文对构建网络的度分布、局部连接比率、聚类系数、模块度等特性进行分析。

2.1 度分布

图2 甲骨字网络的度分布

一个节点的度是此节点的邻接节点的个数或者是节点连接边的个数。如果我们把节点度为k的数目占网络节点总数目的比例记为pk,那么网络中不同度的统计分布即为度分布[17]。为了方便推断一个甲骨字在71 455片拓片中同时出现的信息,即一个甲骨字和其邻接甲骨字共同描述同一个场景或语义单元信息,我们把构建的权重网络简化为无权重的网络,然后计算度分布。在本文构建的网络中,甲骨字的度表现为甲骨字之间的权重值(或连接边的个数),而甲骨字之间权重分布表现为网络的度分布。图2给出了未识和已识甲骨字网络的度分布图,从图中我们可以看到甲骨字网络的度分布符合无标度分布[18](scale-free distribution),无标度分布意味着网络中大部分节点度的取值较小,但是会有少数节点度的取值非常大。在甲骨字网络中的度分布说明: 一方面大部分甲骨字的度值比较小,比如,度值小于10的甲骨字(即此甲骨字有10个相邻甲骨字)占总甲骨字的比例为76.6%,而度值小于17、50的甲骨字占总甲骨字的比例分别为82.1%、91.1%。在甲骨文字系统中,较小的度值代表描述同一个场景或语义单元所需的甲骨字也较少。另一方面,有少数的甲骨字有很大的度值,如甲骨字“卜”和“贞”字之间的权重高达203 756,如果假设这两个甲骨字直接相连,那么“卜”和“贞”在71 455个拓片中至少出现20 375次。不仅如此,“卜”和其他甲骨字的度值也较大。通过相关的文献我们得知[1]: 在甲骨字系统中,单音节名词占大多数;而动词占少数,并且在动词中,祭祀动词占多数。“卜”字是常用的动词,经常和其他名词相连使用,因此,“卜”字具有较大的度值。以上分析也说明我们构建的甲骨字网络能充分反映甲骨文系统的语言信息。

2.2 局部连接比率

局部连接比率(local-links-rate,LLR)是一种衡量网络局部特性的指标[19],如式(3)所示。由于网络中的边信息比节点信息更能反映网络的各种特性。因此,LLR的定义是基于网络的连接信息,而不是节点信息。对网络中任意一条边e,被它连接的两个节点为n1和n2。首先计算这两个节点的共同邻接节点(common node,CN),然后统计共同邻接节点之间存在的边数(local-links)。最后,计算局部连接比率LLR。图3给出了计算LLR的实例图。对于图3中的一条实线边,连接它的两个节点(中空结点)共享四个节点(实心节点),这四个节点之间存在三条边(点形边)。因此,实线边的LLR值为3/4。如果一个网络的平均LLR大于2,那么这个网络有较强的局部特性[19]。通过计算,甲骨字网络的LLR值高达26.678 7,说明甲骨字网络具有很强的局部特性,即描述同一个场景(或语义单元)的甲骨字在甲骨字网络中相互之间连接的边较为稠密。

LLR=local-links/CN

(3)

图3 局部连接比率计算示意图[19]

2.3 聚类系数

一个网络的聚类系数是网络中所有节点聚类系数的平均值。通过计算,甲骨字网络的聚类系数为0.594 4。较高的聚类系数意味着节点的邻接节点之间存在更高程度的交互关系,即这个节点和其邻接节点更稳固地聚集成模块结构[22]。在甲骨字网络中,较高的聚类系数意味着一个甲骨字和其邻接的甲骨字参与描述同一场景或语义单元的概率较高。

(4)

Ui表示节点i的邻接节点数,ei表示Ui个邻接节点之间存在的边数。

图4 聚类系数计算示意图

2.4 模块度

模块(module,或称社团)结构是复杂网络的一个基本特性,也是复杂网络研究的重点内容。模块是网络的一个子集,它要求模块中节点之间的边连接紧密,而不同模块之间节点的边连接稀疏。图5是一个含有12个节点和三个模块的网络示意图[23]。模块内的节点具有相似的属性,依据这一特点,模块结构已在很多领域取得了成功的应用。如在蛋白质相互作用网络中,功能相似的蛋白质在网络中往往以模块的形式存在。因此,通过挖掘模块结构可以预测未知蛋白质的功能;在人类社会中,人以类聚是模块结构在社会网络中的真实反映。社会学家可以利用模块结构研究人们的心理行为、兴趣爱好等。通过构建包含已知和未知语义的甲骨字网络,在此基础上分析此网络是否具有模块度特性,进而利用模块内结点的属性,可以预测同一模块内未知甲骨字的语义信息。如在图5中下方的一个含有五个节点的模块中,假如我们已知其中四个甲骨字描述了某种场景信息(如婚娶),那么根据模块结构中节点具有相同属性的特性,可以推测剩余一个未知语义的甲骨字也用来描述婚娶信息。

图5 网络模块结构示意图[23]

模块度(modularity)[24]不仅是一种用来挖掘网络中模块结构的方法,而且是一种用来衡量网络是否具有模块结构的标准。虽然基于模块度的方法具有“分辨率限制”(Resolution limit)的问题[25],但它仍然被广泛用于判断一个网络是否具有模块结构的评价标准。对于有权重的网络,模块度(Q)的定义如式(5)所示。

(5)

其中,nc是网络划分的模块个数,W是网络中所有边的权值之和,Wv是模块v内部所包含的边的权重和,Sv是所有与模块v内部的点相关联的边的权重和。利用模块度方法对甲骨字网络进行分析,得到的模块度的值为0.292 1。根据文献[26]我们得知,如果一个网络的模块度大于等于0.3,说明这个网络具有很强的模块特性。另外,从局部连接比率和聚类系数可以说明我们构建的甲骨字网络具有较强的局部特性。综上所述,甲骨字网络具有良好的模块结构属性,这种属性为我们通过识别模块结构进而破译未知甲骨字的语义提供了直接数据和理论上的依据。

3 讨论

作为一个新的研究方向,语言网络正在悄然兴起,并取得了一些有意义的结果[27]。本文第一次使用大规模的拓片信息创新性地构建了甲骨字网络,其主要表现在以下三个方面: 一是构建的网络充分捕捉了甲骨文系统的语义单元信息;二是构建网络的方法保留了甲骨文系统单音节词多、复音节词少的特性;三是构建的网络中边权重反映了甲骨字之间的同现关系。

在甲骨字网络之上,深入研究了网络的度分布、局部连接比率、聚类系数和模块结构特性。本文构建的甲骨字网络可为网络甲骨学家和历史学家预测未知甲骨字的场景和语义提供数据支持和直接的研究理论思路。但是,本文还存在一些不足之处需要我们进一步研究: 第一,式(2)中参数length选取具有不合理性: length表示的是同一拓片上两个甲骨字之间残缺字的个数,因此,length的值不能设置过大。如何利用甲骨文字系统的意义选取length的值是我们需要进一步研究的问题。第二,由于破译未知甲骨字的语义是甲骨学研究的重要内容,因此另外一个不足之处是本文既没有利用构建的网络破译已识甲骨字的一些偏旁部首的可能含义,也没有依据已识甲骨字推断未识甲骨字或其偏旁部首的可能含义。如何设计高效算法推断未识甲骨字或其偏旁部首的可能含义是我们下一步重点研究的内容。

猜你喜欢
拓片甲骨甲骨文
《韦洽墓志》拓片
字溯甲骨∙文承龙韵
北宋《曲行殷墓志》拓片
拓片制作中的用墨技巧
一百二十年来甲骨文材料的初步统计
说甲骨新缀所见的“南孟”与“奠子方”
甲骨释字四则
甲骨文“祸”字新证
三千年甲骨文
浅谈石碑的拓片制作