马燕
摘 要: 本文提出了一种新的、较为简便的、即基于字层面的文本风格判定方法,即使用两篇文本中的相同字做相对熵来计算两篇文本在用字方面的差异。通过对《红楼梦》前80回和后40回的内部相对熵比较,证明了其方法的可行性。又通过对李伯元的《官场现形记》、《活地狱》和《文明小史》与存在作者争议的《海上繁华梦》做文本间的相对熵比较,得出了《海上繁华梦》确实不为李伯元所作的结论。
关键词: 相对熵 作者判定 《红楼梦》 李伯元 《海上繁华梦》
1.引言
近年来随着语言研究的现代化,运用计算机和统计学的知识来分析文学作品的问题,已经引起了社会科学和计算机科学界的普遍关注(李国强,李瑞芳,2006)。西方文体学界从20世纪30年代就开始关注定量分析,“人们开始利用这种方法去研究圣经书籍的著作权以及柏拉图等古典作家的著作年代,这其实就是在对作家个人风格或时代风格等进行科学的描写分析的基础上进行的,”这种研究经历了从最初的由手工计算到运用具有高速的运算能力计算机辅助计算,以实现更大规模、更加精确的定量分析。
而关于汉语风格的研究应始于20世纪七八十年代,黎运汉认为分析综合法、比较法和统计法是语言风格研究中常用的三种方法①,国内最早正式倡导建立“计算风格学”的是钱锋和陈光磊两位学者,他们主张将计算机技术和数学方法相结合应用到风格学的研究当中。当然,语言风格研究的应用之一便是对文本作者的考证,如曾受到广泛关注的《红楼梦》作者问题等,也有不少的学者从定量分析的角度提出了自己的看法,这在下文会有详细介绍。
本文提出了一种新的计算文本风格的方法,即借助计算机和统计学的方法,来计算两篇文本间相同字的相对熵。本文在验证同一篇文本内部相对熵差异程度的同时,也对不同文本间的相对熵进行了比较,发现也具有可行性。
2.相对熵
相对熵(relative entropy)又称KL散度(Kullback-Leibler divergence,简称KLD),用以表示两个概率分布的距离。对一个离散随机变量的两个概率分布p和q来说,他们的KL散度定义为:D(p||q)=■(p(x))*log(p(x)/q(x)))。其中p(x)和q(x)为两个概率分布,相对熵不是严格意义上的距离,典型情况下,p表示数据的真实分布,q表示数据的理论分布、模型分布或p的近似分布。相对熵具有非负性(即D(p||q)≥0)和不对称性(即D(p||q)≠D(q||p),除非对于所有的x,有p(x)=q(x))。
在自然语言处理时,可以利用相对熵进行分类或者是利用相对熵来衡量两个随机分布的差距,当两个随机分布相同时,其相对熵为0,当两个随机分布的差别增加时,其相对熵也增加。在这里我们使用相同字作为随机分布的量,首先把一部文本中的相同字的随机分布作为其真实分布,来分别计算与其他文本中的相同字的分布的距离,其结果越接近,则我们认为这两篇文本的用字风格越相近,反之,结果越大,则其用字风格越有差距,即提出相对熵越小,则两篇文本的用字风格越相近,反之,相对熵越大,则其用字风格越有差距的假设。
3.《红楼梦》的作者判定研究
比较早的用统计的方法来研究《红楼梦》语言的可以算是瑞典汉学家高本汉(1954),他取了《红楼梦》中的24个语词进行统计并得出了前80回和后40回为曹雪芹一人所写的结论。持同样观点的还有美国威斯康星大学的陈炳藻先生,他在1980年6月的首届国际《红楼梦》讨论会上发表了《从词汇统计论证红楼梦的作者》一文,并在1986年发表了《电脑在文学上的应用:〈红楼梦〉与〈儿女英雄传〉两书作者用词的比较》一文,后又出版了《电脑红学:论〈红楼梦〉作者》的专著。陈炳藻先生利用计算机对《红楼梦》前80回和后40回的用字进行了测定,并从数理统计学的观点出发,探讨《红楼梦》前后用字的相关程度,由此推断出后40回也出自曹雪芹之笔的结论(吕光明,2008)。
对此,持不同观点的学者有蒋文野、王世华、刘钧杰、陈大康、张卫东、刘丽川、严安政、俞敏、晁继周、郑庆山、黄晓惠等(汪维辉,2010)。陈大康(1987)结合《红楼梦》各个版本间的比较,采用数理统计的方法,分别从词、字、句的角度否定了陈炳藻的说法。他分别对27个专用词、46个字和89758个句子的句长分布及平均句长等共88个项目进行了考察,不仅否定了前80回和后40回为同一作者的说法,也得出了后四十回的前半部分中含有曹雪芹的少量残稿。同样,李贤平(1987)也对陈炳藻的观点做出了驳斥,他发表的《<红楼梦>成书新说》一文中将《红楼梦》120回看成是120个样本,以与情节无关的47个虚词作为变量,统计出每一回里变量出现的次数,用多元统计中的聚类分析法进行合并,果然将120回分成两类即前80回为一类,后40回为一类,形象地证实了前80回和后40回不是出自同一人之手;之后又对曹雪芹的另一本著作做了类似计算,得出了用词手法完全相同的结论,进一步论证了前80回出自曹雪芹之手,类似的论证还推翻了后40回是高鹗一人所写的传统认识(吕光明,2008)。陈大康(1988)对“成书新说”所使用的数学方法提出了异议,认为其采用的聚类方法缺乏客观标准,但是没有能够揭示聚类方法实质,因此也就没能从理论上证明“成书新说”的结论到底是否可靠。施建军(2010)在此基础上做了对用聚类分析研究文本作者的可信度分析,并得出了仅以《红楼梦》一部作品作为样本进行聚类分析,不能够判别《红楼梦》作者的所属问题的结论。
3.1基于相对熵的《红楼梦》作者判断
为了更好地看出《红楼梦》前80回和后40回中相同字在前后概率分布的差异程度,本文将前120回平均分为3组,即前40回,中40回和后40回,分别计算了以前40回为真实分布时与中40回和与后40回的相对熵,以及以中40回为真实分布时与前40回和与后40回的相对熵。
需要指明的是,本文是以前80回(前40回和中40回)的相同字分布情况作为真实分布,这是在默认即承认了红学界普遍认为的前80回和后40回存在差别,而不是前90回和后30回或者是前70回和后50回存在差别的前提下进行的。对此,施建军(2011)曾质疑张云良(2009)把《红楼梦》的120回平均分为3个集合来进行分类鉴定作者的方法,认为“这个实验实际上是在承认了前80回和后40回有差别的情况下做的,是一种迎合传统结论的作法”,因而施建军采用的是“支持向量机”(SV中)的方法,将《红楼梦》的120回作为作者完全未知的文本来进行分类,结果也得出了《红楼梦》前80回和后40回作者是两个人的结果,这与红学界多年的推断一致。故本文在接受了前人实验结论的基础上仍采用传统的认识,把前80回看成是真实分布,而不再细究。
3.2实验及结果分析
将《红楼梦》按照章回分为前、中、后三组后,利用计算机自动统计其字型和字例,再利用Excel表格删选出各自与其他组的相同字,得到表1和表2中的《红楼梦》(繁体程高本)的用字情况。从表中可以知道,《红楼梦》120回的总字型为4509个,总字例为736699个,其中前40回有字型3729个,字例为230407个;41-80有字型3734个,字例271271个;前40回与中40回有相同字型3157个,前40回与后40回有相同字型2849个,中40回与后40回有相同字型2845个,从表中可以看出,这些相同字的频数都占到了所在40回中总字数的98.9%以上。
表1 字符统计表
表2 相同字统计表
注:百分比=字例/所在分组的总字数*100%。
得出相同字之后,就可以带入公式计算其相同字的相对熵,计算得到的相对熵值见下表3:
表3 《红楼梦》内部相对熵
注:p表示数据的真实分布,q表示数据的理论分布、模型分布或p的近似分布。
通过观察表格中的相对熵,可以看出,当以1-40回中相同字作为真实分布时,与41-80回中的相同字计算得到的相对熵较小,为0.0910586,而与81-120回中的相同字计算得到的相对熵较大,为0.158121426;同样,在以41-80回中相同字作为真实分布时,与1-40回中的相同字的相对熵也比与81-120回中的相同字的相对熵小;且当以81-120回中相同字作为真实分布时,与1-40回和41-80的相同字相对熵都较大;从这些相对熵的明显差距中可以得出,其前80回与后40回的相同字的分布情况距离较远,可以判断为前80回与后40回并非一人所写。
4.相对熵的文本间比较
上面是以《红楼梦》为例,用相对熵来判断文本内部风格存在的争议,但在同一个作者的不同文本之间,此方法是否适用呢?本文拟用清末著名谴责小说代表作家李伯元的小说作进一步的分析。
据一般文学史的记述,李伯元所作的小说主要有《官场现形记》(60回)、《文明小史》(60回)、《中国现在记》(12回)、《活地狱》(43回)、《海天鸿雪记》(20回)、《繁华梦》六部。但其存疑者很多,如阿英编《晚清文学丛钞》小说一卷中认为《中国现在记》只写了十二回,魏绍昌所编《李伯元研究资料》中认为《活地狱》第四十至四十二回由吴研人续作,第四十三回由欧阳矩源续作,胡适认为《官场现形记》也许是别人续到第六十回勉强结束的。此外,邓季方(1990)认为《文明小史》的前二十回为季伯元所著,而后四十回当为他人代庖。王学钧(2002)认为“《海天鸿雪记》是浙江人‘二春居士所作,并非李伯元之作;《繁华梦》实为孙玉声《海上繁华梦》,也非李伯元之作”等等。其中争议最大的便是《海上繁华梦》的作者是否为李伯元,因此,本文将选取《官场现形记》、《文明小史》、《活地狱》这三部作品与《海上繁华梦》进行文本间相同字的相对熵计算,看其结果是否存在显著差异。
分别从《官场现形记》、《文明小史》、《活地狱》和《海上繁华梦》中随机选取连续的10万字左右的文本,提取相同字,得出文本间的相同字相对熵值,见表4。
表4 文本间相对熵比较
从表格中可以看出,以《官场现形记》作为真实分布的文本时,与作为模拟文本分布的《活地狱》、《文明小史》、《海上繁华梦》的相对熵分别为0.264222734、0.240928183和0.518866854,可以看出《海上繁华梦》的相对熵大于《活地狱》和《文明小史》的相对熵。同样,以《活地狱》作为真实分布的文本时,与作为模拟文本分布的《官场现形记》、《文明小史》、《海上繁华梦》的相对熵分别为0.269838631、0.284102164和0.600203942,《海上繁华梦》的相对熵依旧大于其他两篇文章。再看,当把《海上繁华梦》作为真实分布的文本时,其与《官场现形记》、《活地狱》和《文明小史》的相对熵分别为0.465435583、0.473658949和0.501873884,其相对熵的数量级较大,则说明《海上繁华梦》与其他三个文本在用字方面的差异度很大。
由此可以得出,《官场现形记》、《活地狱》和《文明小史》三篇文本不管是作为真实分布的文本还是作为模拟分布的文本,三者之间的相对熵相对接近,数量级都在0.24~0.285之间,而《海上繁华梦》与其他文本间的相对熵则较大,数量级在0.465~0.6之间。如果我们的假设成立,则由此可以判断,《海上繁华梦》并不是李伯元所写。
5.结语
通过以上的计算,可以认为利用文本相同字的相对熵来做作品的作者判定是可行的,而且从字的角度考察,方法也比较简单可行,比从词、句子的角度考察能省去很多分词和统计的工作量。而且可以预测,如果文本规模越大则其判定的准确性也越高。
但同时,这个方法也存在着某些缺陷,即只能对有候选作者的争议文本进行判断,而且候选作者要有足够的可作为真实分布的文本做参考。其次,本文实验的样本容量还不够多,具体要得知文本间的相对熵规律还要依赖更多的文本间的计算,不仅有对同作者其他作品的横向互检,也要有与不同作者作品的纵向比较,同时也要考虑不同文本规模与相对熵值之间的影响等等。总之,作为对作者判定的一种辅助方法,相对熵也是一种值得研究的途径。
注释:
①曾毅平、朱晓文:计算方法在汉语风格学研究中的应用,2006.
参考文献:
[1]陈大康.从数理语言学看后四十回的作者——与陈炳藻先生商榷[J].红楼梦学刊,1987,(1).
[2]李贤平.《红楼梦》成书新说[J].复旦学报,1987,(5).
[3]陈大康.“《红楼梦》成书新说难以成立”——与李贤平同志商榷[J].华东师范大学报,1988,(1).
[4]徐秉铮,蔡伟鸿.从信息论角度探讨《红楼梦》的作者[J].中文信息学报,1988,(4).
[5]陈炳藻.关于《红楼梦》后四十回[J].红楼梦学刊,2002,(3).
[6]曹诣珍.《红楼梦》语言研究的对象及方法述略[J].红楼梦学刊,2004,(3).
[7]李国强,李瑞芳.基于计算机的词频统计研究——考证《红楼梦》作者是否唯一[J].沈阳化工学院学报,2006,(12):305-307.
[8]吕光明.《红楼梦》作者的统计论证[J].数据,2008(4).
[9]李瑞芳,孙军波,常诗珧.基于计算机的《红楼梦》字词浅探[J].电脑知识与技术,2009,(5).
[10]张运良等.基于句类特征的作者写作风格分类研究[J].计算机工程与应用,2009,(22).
[11]汪维辉.《红楼梦》前80回和后40回的词汇差异[J].古汉语研究,2010,(3).
[12]施建军.关于以《红楼梦》120回为样本进行其作者聚类分析的可信度问题研究[J].红楼梦学刊,2010,(5).
[13]施建军.基于支持向量机技术的《红楼梦》作者研究[J].红楼梦学刊,2011,(5).
[14]C.-I Chang;Y.Du;J.Wang;S.-M.Guo and P.D.Thouin.Survey and comparative analysis of entropy and relative entropy thresholding techniques.IEE Proc.-Vis.Image Signal Process.,2006,153,(6):837-850.
[15]Wang,J.,Du,Y.,Chang,C.-I,and Thouin,P.“Relative entropy-based methods for image thresholding”.Int.Symp.Circuit and Systems(ISCAS)2002,Scottsdale,AZ,May,2002.
[16]Chang,C.-I,Chen,K.,Wang,J.,and Althouse,M.L.G.:“A relative entropy-based approach to image thresholding”,Pattern Recognit.,1994,27,(9):1275-1289.
[17]曾毅平,朱晓文.计算方法在汉语风格学研究中的应用[J].福建师范大学学报,2006,1.
[18]王学钧.李伯元与“谴责小说”的兴起[J].江苏社会科学,2002,09.
[19]邓季方.《文明小史》后四十回非李伯元著作考[J].西南师范大学学报,1990.
[20]杜家利,于屏方.计算语义学视角下的文本风格研究[J].计算机工程与应用,2011,47(30).