红楼梦文本分析.docx
- 文档编号:24936626
- 上传时间:2023-06-03
- 格式:DOCX
- 页数:27
- 大小:287.62KB
红楼梦文本分析.docx
《红楼梦文本分析.docx》由会员分享,可在线阅读,更多相关《红楼梦文本分析.docx(27页珍藏版)》请在冰豆网上搜索。
红楼梦文本分析
2013高教社杯全国大学生数学建模竞赛(选拔赛)
承诺书
我们仔细阅读了中国大学生数学建模竞赛的竞赛规则.
我们完全明白,在竞赛开始后参赛队员不能以任何方式(包括电话、电子邮件、网上咨询等)与队外的任何人(包括指导教师)研究、讨论与赛题有关的问题。
我们知道,抄袭别人的成果是违反竞赛规则的,如果引用别人的成果或其他公开的资料(包括网上查到的资料),必须按照规定的参考文献的表述方式在正文引用处和参考文献中明确列出。
我们郑重承诺,严格遵守竞赛规则,以保证竞赛的公正、公平性。
如有违反竞赛规则的行为,我们将受到严肃处理。
我们参赛选择的题号是(从A/B/C/D中选择一项填写):
我们的参赛报名号为(如果赛区设置报名号的话):
所属学校(请填写完整的全名):
参赛队员(打印并签名):
1.
2.
3.
指导教师或指导教师组负责人(打印并签名):
日期:
年月日
赛区评阅编号(由赛区组委会评阅前进行编号):
队员信息表(必须如实填写)
学号
姓名
所属院
专业
年级
电话
指导教师
是否有笔记本
周怡
数学与统计学院
统计学
2011
未选定
段熙玉
数学与统计学院
统计学
2011
未选定
林阳
机电与信息工程
软件工程
2010
未选定
注:
如未选定指导教师可不填写“指导教师”一栏。
2013高教社杯全国大学生数学建模竞赛(选拔赛)
编号专用页
赛区评阅编号(由赛区组委会评阅前进行编号):
赛区评阅记录(可供赛区评阅时使用):
评
阅
人
评
分
备
注
全国统一编号(由赛区组委会送交全国前编号):
全国评阅编号(由全国组委会评阅前进行编号):
对《红楼梦》文本的计算机识别方法的研究与设计
摘要
本文通过对文本人物关系、文本结构分层、作者行文风格的分析来分析中文文本。
针对问题一,我们运用聚类分析和层次分析建立模型从物理结构与逻辑结构两方面来分析文本,我们提取文本中和文本标题中的人名作为特征项,用matlab编程分别统计每个人名在各个段落中的频数。
通过运用主成分分析法对文本进行的分析我们得出自变量与常数项几乎不相关,因此不需要采取主成分回归分析。
通过系统聚类分析,我们得到了聚类图,从中得出了主演人物之间的关系。
通过层次划分,我们将样本一划分为两层,样本二划分为两层,样本三划分为两层。
最后通过matlab编程统计样本中虚词的频数,并且分别对样本中虚词总体和各个虚词进行统计,运用计算风格学理论,我们得出前八十回与后四十回作者的行文风格存在差异。
针对问题二,我们对聚类分析、层次划分、行文风格进行了检验。
对于聚类分析的结果,我们与从对文本概述的文学概括分析得到的人物关系进行比较检验,验证了聚类分析结果是可靠性。
对于层次分析,我们通过用Excel对数据做出折线图,对图形进行分析,得出与用层次分析算法得出的相同的人物关系结论。
针对问题三,我们计算了各个样本中主要人物的比重,做出了折线图,从图中我们得出了文本结构一致性的结论,体现了三个样本的相同性。
通过计算同一个人物在不同样本中的频数(以黛玉为例),我们得出各个样本由于主题思想的不同主要人物也有差异。
最后说明模型的优缺点及需要改进的地方。
关键字:
系统聚类计算风格学文本层次分析
一、问题重述
文本(text),与讯息(message)的意义大致相同,是有一定的符号或符码组成的信息结构体,这种结构体可采用不同的表现形态,如语言的、文字的、影像的等等。
文本是由特定的人制作的,文本的语义不可避免地会反映人的特定立场、观点、价值和利益。
因此,由文本内容分析,可以推断文本提供者的表述方式,意图和目的。
文本分析是指对文本的表示及其特征项的选取;文本分析是文本挖掘、信息检索的一个基本问题,它把从文本中抽取出的特征词进行量化来表示文本信息。
将它们从一个无结构的原始文本转化为结构化的计算机可以识别处理的信息,即对文本进行科学的抽象,建立它的数学模型,用以描述和代替文本。
使计算机能够通过对这种模型的计算和操作来实现对文本的识别。
由于文本是非结构化的数据,要想从大量的文本中挖掘有用的信息就必须首先将文本转化为可处理的结构化形式。
在分析问题是我们了解到目前有关文本表示的研究主要集中于文本表示模型的选择和特征词选择算法的选取上。
用于表示文本的基本单位通常称为文本的特征或特征项。
特征项必须具备一定的特性:
(1)特征项要能够确实标识文本内容;
(2)特征项具有将目标文本与其他文本相区分的能力;(3)特征项的个数不能太多;(4)特征项分离要比较容易实现。
在中文文本中可以采用字、词或短语作为表示文本的特征项。
相比较而言,词比字具有更强的表达能力,而词和短语相比,词的切分难度比短语的切分难度小得多。
因此,目前大多数中文文本分类系统都采用词作为特征项,称作特征词。
因此,在处理问题时角度和特征项的选择是关键。
我们要解决的问题是:
(1)从第一回--第四十回,第四十一回--第八十回,第八十一回--第一百二十回分别选取3段文字(每段不少于2000字,指出开始,结束的页码和行数)作为3个样本,对这3个样本提出文本分析的角度,特征项的选取及数量表征,并建立数学模型。
(2)分别估计3个模型的参数,并对模型进行检验。
(3)基于你们的模型,对3个文本进行比较分析(包括相同点和它们之间的差异性分析)。
将上述研究结果写成综合性的研究报告。
二、问题分析
本问题主要是通过不同的文本分析角度,建立数学模型,实现对文本的识别,来推断文本提供者的表述方式,意图和目的。
对于问题一,根据物理结构和逻辑结构两个角度确立我们文本分析角度,物理结构方面,通过计算文本虚词使用频率确定作者的行文风格;逻辑结构方面,以红楼梦主要人物名字为特征值对人物关系进行分析,和以标题词汇为特征值的文本层次分析。
使用聚类和层次分析法建模。
对于问题二,运用所建立的模型对选择样本进行运算,得到文本总字数,虚词的使用情况,人物关系情况由聚类法得到,再将文本由标题词汇判定段落分层。
在模型检验方面,我们由人为读出的结论与模型得到的人物关系进行大致方向上的比较,由分段后主要人物在各层次所占比重判断层次分析的精确性,作者行文风格通过所得结论与专家推断比较检验。
对于问题三,分别选取三个样本中的虚词频率和人物分析进行比较。
通过虚词频率的比较我们可以大致分析出各四十回中作者的行文风格从而判断红楼梦作者是否为一人;而对人物分析方面,对人物与人物之间关联度的比较,能大致确立出在整篇文章中的主要人物和与其关联密切的人物的关系进展,通过关联度相同性与差异性的比较,确立主要人物的日常交际圈和主要人物之间的关系变化。
三、模型假设
[1]每个样本拥有独立性(不受其他样本影响也不影响其他样本);
[2]样本选取是随机的,具有普遍性;
[3]虚词的使用频率的异同可以充分区分作者的行文风格;
[4]标题中词汇在整个文本中具有代表性(标题是整个文本中心思想的概括);
[5]3个样本在整个文本各四十回中的人物关系具有代表性。
[6]可忽略同名不同义的词对研究结果的影响
[7]样本中出现频率很低的人物名可忽略,对结果无影响。
四、符号系统
——人物i在第j段中的频数T——特征值组成的向量
——表示人物i的第j个特征值的频数
——第i自然段
五、建立文本识别模型
1)人物关系:
由主要人物每段出现频数向量确定人物相关性;
2)文本结构分析:
由标题词汇每段出现频数比较分层,使层内差异达到最小值;
3)行文风格:
统计虚词使用情况。
5.1人物关系模型研究与确立
目前人们通常采用向量空间模型来描述文本向量,但是如果直接用分词算法和词频统计方法得到的特征项来表示文本向量中的各个维,那么这个向量的维度将是非常的大。
这种未经处理的文本矢量不仅给后续工作带来巨大的计算开销,使整个处理过程的效率非常低下,而且会损害分类、聚类算法的精确性,从而使所得到的结果很难令人满意。
因此,必须对文本向量做进一步净化处理,在保证原文含义的基础上,找出对文本特征类别最具代表性的文本特征。
为了解决这个问题,最有效的办法就是通过特征选择来降维。
红楼梦通篇是文言文,在进行文本分析时,由于虚词在文本内容角度的无用性我们将虚词统计次数后用批处理技术删除,同时去除的还有停用词(常用词如‘了’等和生僻词)。
从人物关系的分析角度看,由于文本中形容词的多样化与词义分析方面的复杂性,不从该角度分析。
为使操作简单化,我们根据研究的角度,将红楼梦中主要人物名字设置为特征值,
T表示由人名组成的向量,
表示第i个人名特征值,n表示人名特征值的个数为n
可将选择的文本表示为
I表示所选文本,
表示文本I中的第i自然段,N表示文本i中共有N个自然段。
将人物在文本每一自然段中出现的次数组合成向量,经过对不同人物之间的相关性度量,组合成相关系数矩阵,再对其聚类分析得出人物关联度。
A表示各特征词在各段的频数矩阵,
表示第i个特征词在第j自然段中的频数,A矩阵的行与行向量之间对应数据关系即可反映在该文本中两人物之间的联系。
,这里我们使用在对变量聚类分析时利用最多的相关系数矩阵
越接近1,
与
越相关或越相近;
越接近0,
与
的相关性越弱。
与
分别表示
与
两个特征值的频数特征向量。
由于红楼梦中主要人物过多,我们要对特征值进行降维处理,再考虑人物关系。
人物关系体系建立:
利用多元统计分析的主成分分析法、系统聚类分析法将所选主要人物特征值进行简化归类。
在多元统计分析中,主成分分析(英语:
Principalcomponentsanalysis,PCA)是一种分析、简化数据集的技术。
主成分分析经常用于减少数据集的维数,同时保持数据集中的对方差贡献最大的特征。
这是通过保留低阶主成分,忽略高阶主成分做到的。
这样低阶成分往往能够保留住数据的最重要方面。
但是,这也不是一定的,要视具体应用而定。
由于主成分分析依赖所给数据,所以数据的准确性对分析结果影响很大。
[1]
人为主要人物往往带有主观性,必须对所选文件的特征值用数理统计方法,由上所得的相关系数矩阵经过正交化处理,将文本所确立的人名特征值转化为少数几个综合人名后的新指标(即主成分),其中每个主成分都是原始变量的线性组合,各主成分之间相互正交,从而这些主成分能够反映始变量的绝大部分信息,且所含的信息互不重叠,把复杂问题简单化。
✍主成分分析法的基本步骤
第一步:
设估计样本数为n,选取的文本人名特征值总数为p,则由估计样本的原始数据可得矩阵
,其中
表示第i个特征值在第j段中的频数。
第二步:
为了消除各项理化指标之间在量纲化和数量级上的差别,用极差标准化法对指标数据进行规范化,将其化为0~1间的标准数据得到规范化矩阵。
第三步:
根据规范化数据矩阵建立协方差矩阵R,是反映标准化后的数据之间相关关系密切程度的统计指标,值越大,说明有必要对数据进行主成分分析。
其中,
(i,j=1,2,…,p)为原始变量
与
的相关系数。
由数据可得
是对称矩阵,其计算公式为:
其中
第四步:
根据协方差矩阵R求出特征值、主成分贡献率和累计方差贡献率,确定主成分个数。
解特征方程
,求出特征值λi(i=1,2,…,p)。
因为R是正定矩阵,所以其特征值λi都为正数,将其按大小顺序排列,即λ1≥λ2≥…≥λi≥0,其对应的特征向量为
。
特征值是各主成分的方差,它的大小反映了各个主成分的影响力。
主成分
的贡献率
,
累计贡献率为
根据选取主成分个数的原则,特征值要求大于等于1且累计贡献率达85%的特征值λ1,λ2,…,λm所对应的1,2,…,m(m≤p),其中整数m即为主成分的个数。
第五步:
建立初始因子载荷矩阵,解释主成分。
因子载荷量是主成分
与原始指标
的相关系数
,揭示了主成分与各理化指标之间的相关程度。
第六步:
计算综合人名后的新指标
,并进行降序排列:
第七步:
主成分与方差贡献率构建出文本中人物关系模型
✍文本原始人名特征值的主成分分析
首先对三个文本的原始矩阵进行处理得规范化矩阵(见附录),然后用matlab并经过一列变换后得评价指标相关系数,见下表:
上述表显示自变量几乎不存在共线性,常数项(Constant)与变量x中的任何几个几乎均没有一致性,因此自变量与常数项几乎不相关,不需要采取主成分回归分析。
[2]
聚类分析(英语:
Clusteranalysis,亦称为群集分析)是对于静态数据分析的一门技术,在许多领域受到广泛应用,包括机器学习,数据挖掘,模式识别,图像分析以及生物信息。
聚类是把相似的对象通过静态分类的方法分成不同的组别或者更多的子集(subset),这样让在同一个子集中的成员对象都有相似的一些属性,常见的包括在坐标系中更加短的空间距离等。
由于我们选用对人物名频数计算比较的方法,在人物关系上我们选用系统聚类分析法。
1).聚类要素的数据处理
假设有m个聚类的对象,每一个聚类对象都有个要素构成。
它们所对应的要素数据可用在聚类分析中,常用的聚类要素的数据处理方法有如下几种。
①总和标准化
②标准差标准化
?
?
?
③极大值标准化
经过这种标准化所得的新数据,各要素的极大值为1,其余各数值小于1。
④极差的标准化
经过这种标准化所得的新数据,各要素的极大值为1,极小值为0,其余的数值均在0与1之间。
2).距离的计算
距离是事物之间差异性的测度,差异性越大,则相似性越小,所以距离是系统聚类分析的依据和基础。
①绝对值距离
选择不同的距离,聚类结果会有所差异。
我们运用欧式距离距离进行聚类。
5.2文本结构分析
层次是文章思想内容的表现次序,它着眼于文章思想内容的逻辑关系,是表示意义的结构单位。
而段落是构成文章的最小单位,段落是体现层次的外部形式。
在一般情况下,层次大于或等于自然段。
层次具有有序性,是由若干连续有序的自然段组成。
同一层次的若干自然段,由于共同支持该层次所表达主题思想,因此在选用的词汇上以及
用词的频率上往往具有很大的相同之处,可。
针对《红楼梦》样本的实际分析,我们从一到四十回、四十一到八十回、八十一到一百二十回分别选取一回作为研究样本,由于作者已给出没一回的标题,从标题中我们可以得到该回描述的主题思想(根据标题可分为两部分),为了让读者能清晰、准确、方便地找出样本正文中的层次,我们采取有序聚类的方式来划分文本的层次,保证每一个层次都由若干连续的互不交叉的自然段组成,从而达到识别样本的目的。
设样本T具有n个自然段,K个层次,用H表示文本层次,P表示自然段,则有如下组成
关系:
T=H1H2?
HK={Pi?
Pi-1}{Pi?
Pi-1}?
{Pi?
Pi-1}
其中:
i1=1≤i2≤?
.≤iK≤iK+1-1=n(为了叙述和书写方便,P1,P2,?
Pn简记为1,2,?
?
n)
设文本T的特征项集为{t1,t2,?
?
tm}则设Pi=(wi1,wi2,?
?
wim)为第i段的特
征向量。
其中wij是特征项tj在第i段中权重。
将n个段落划分为K个层次,则所有可能的分法共有CK-1n-1种,设S(n,K)是任一种分法,其中S(n,K)={i1=1,i1+1,?
i2-1},?
{ij,ij+1,?
ij+1-1},?
{iK,iK+1,?
n}。
有序聚类就是寻找一种分法使K个层次内差异尽可能地小,而层次间的差异尽可能地大。
设D
表示第j层内的差异量,则总体误差函数:
E(S(n,K))=
为了使上述总体误差函数达到最小,寻求最优的K分法。
相当把n个段落分成两个部分{i1=1,i1+1,?
?
iK-1}{iK,?
?
n},将前一部分进行最优K-1分法,然后再考虑后一部分的误差,由此寻找到最优K分法。
设S0(n,K,cK)是使总体误差函数达到最小的分法,
其中cK是上述最佳分法的分割点iK。
则有如下递推公式:
E(S0(n,K,cK))=Min{E(S0(iK-1,K-1,cK-1)+D(iK,n))}
文本层数的确定关系到文本逻辑结构的建立,它可以通过如下方法确定最优层次划分的数目,一是给定阀值ε,当|E(S(n,K+1))-E(S(n,K))≤ε时,则最优层数为K。
二是根据语言学知识和实际经验,预先给定层数K。
这里,我们在运行过程中根据段落数目和总体误差情况给定层数,K的范围一般情况下是从2到6。
具体算法如下:
文本的特征矩阵W=
=
计算层次内部差异量:
Dij=
,其中
, i=1,2,?
n,j=i,i+1,?
n。
计算总体误差函数:
Sij (Cij用来存储每次分割点)
S1j=D1j j=1,2,?
n
Sij=
, Cij=
,i=2,3,?
K,j=i+1,?
n。
则最佳K分法为:
{
=1,
+1,?
?
-1},{
+1,?
?
-1},?
?
{
?
?
n}
其中:
iK=CKn,
=Ck-1,
,
=Ck-2,
?
?
i1=1。
[3]
5.3判定作者行文风格
计算机设计语体风格是人们在语言表达活动中的个人言语特征,是人格在语言活动中的某种体现。
这种风格可在一定程度上通过数量特征来刻画。
能够区别文学作品的特征主要有:
用词、句式、修辞手法、中心意象、主题等等;能利用的特征有:
语音、字、词、句子、段落等等语篇结构的信息。
计算风格学可被应用来解决“作者考证”这种问题。
当然要十分谨慎。
如:
捷泽等学者关于《静静的顿河》的作者考证。
[4]
能够区别文学作品的特征主要有用词、句式、修辞手法、中心意象、主题等等。
但是能用于统计的特征有语音、字、词、句子、段落,语篇结构等等可以量化考察的信息。
因此它反映的不是作者想表现的内容,而是作者行文中不经意间体现出的用词造句习惯。
最常用的方法是字、词频率统计。
除了使用词语频率的方法以外,许多文本信息都可供使用。
例如句长和词长可以代表人们造词句的风格。
句长是句子中的单词数,词长是词中的音节数,反映作者风格的不是单个词的词长和单个句子的句长,而是以一定数量的语料为基础的平均句长和平均词长。
平均词长M=语料中音节总数L/单词总数N
平均句长=语料中音节总数L/句子总数N
此外还有作者在同义词使用中的倾向性。
是值得利用但较困难的。
我们在这里选用虚词这一文言文中的特殊词汇判定作者行文风格,虚词是一类特殊的词汇,它不在文章中有实义,从而虚词在文言文中的使用情况仅由作者用词习惯决定,从而可以通过对虚词的使用情况分析代表作者的一类行文风格。
首先统计全文字数,再分别统计出各虚词在文本每一自然段中的使用频数,对三个样本中的虚词使用比率进行比较,分析出作者使用虚词的总体情况。
在分别就每一个虚词的使用分析确定作者的行文风格。
六、三个文本模型成果与检验
文本1人物关系层次分析
从聚类分析得到的聚类图中也可以得到宝钗、宝玉、黛玉之间有密切关系。
文本2人物关系
观察系统聚类分析的树形图的每一次类的合并情况,凤姐和平儿、贾母和贾琏分别合并成一类然后合并成一类。
文本3人物关系
从聚类分析的聚类图中可以看出惜春与鸳鸯间有密切联系,从聚类图的每一次类的合并情况来看贾琏与惜春为一类后与贾珍合并为一类,再与贾母合并为一类,可得出贾珍与贾琏之间存在联系,而贾母又与这些人物有着关联;从图中还可以看出贾芸与凤姐之间有着联系。
由文章的标题可以确定出三个文本的主要人物分别为薛宝钗、贾宝玉;王熙凤、平儿;贾宝玉、贾珍。
故事分别围绕这六个人展开。
第八回概述:
宝玉想起宝钗小病,前去探望,宝钗要看宝玉那块“落草时衔下来的宝玉”,宝钗只见通灵宝玉上铭文:
莫失莫忘,仙寿恒昌。
宝玉也要过宝钗佩带的金锁来看,发现金锁上铭文:
不离不弃,芳龄永继。
正巧黛玉来了,见宝玉,宝钗在一起,心下不悦,黛玉借寻雁送手炉趁机奚落宝钗。
宝玉深感郁闷喝醉回房,趁酒意大骂李嬷嬷。
从概述里可以看出宝钗、宝玉、黛玉之间存在着情感关联,宝钗的金锁、宝玉的通灵宝玉上的两句铭文恰好是对仗工整的一副联语,也是所谓“金玉良缘”的根据。
黛玉因看到宝钗与宝玉在一起而心生不悦,从而引出三人之间的情感联系。
从聚类分析得到的聚类图中也可以得到宝钗、宝玉、黛玉之间有密切关系,与文本内容相吻合。
第44回主要讲的是凤姐过生日,喝醉了酒,就叫平儿扶她回房间,没想到走到院子里的时候看见一个丫头一看见凤姐就没命的跑,凤姐很生气,逼问那个丫头,那个丫头就说贾琏和鲍二媳妇在屋里偷情,凤姐一气之下冲进院里,站在窗外偷听,听贾琏和鲍二媳妇说要毒死她,把平儿扶正,凤姐听了生气,就打了平儿一耳光,冲进屋内,大喊大嚷,又打又闹,平儿感觉很委屈,也去打鲍二媳妇,贾琏很生气,就拿剑要杀凤姐,凤姐就冲到贾母屋里告状,贾母就要贾琏狠狠骂了一顿,要他跟凤姐道歉,也要凤姐跟平儿道歉.
从概述里可以看出在这回中,主要的矛盾冲突存在于凤姐和平儿间,贾母与贾琏之间,以及这四个人物间关系纠葛。
观察系统聚类分析的树形图的每一次类的合并情况,凤姐和平儿、贾母和贾琏分别合并成一类然后合并成一类,与我们对文本分析得到的结论相同。
第八十八回概述:
贾母八十一大寿时,鸳鸯叫惜春写经。
李纨与贾母打双陆。
宝玉给贾母送蝈蝈解闷。
师傅让对对子,贾环对不了,宝玉帮他对,他买蝈蝈谢宝玉;贾兰对好了,宝玉夸贾兰。
贾环、贾兰给贾母表安来了。
贾珍、贾琏怒打闹仗的周瑞、何三和鲍二。
贾芸和小红在凤姐外相见戏笑。
贾芸给凤姐送东西,凤姐不收;贾芸把凤姐不要的东西给小红两件。
从概述可以看出鸳鸯与惜春因贾母大寿产生联系,贾环、宝玉、贾兰因对对子产生联系,贾珍与贾琏因闹仗的悍仆而产生联系,在前几组人物的关系发展中贾母的大寿是主要因素,因此贾母又与鸳鸯、惜春、贾环、贾兰、宝玉之间存在联系;贾芸与凤姐因送东西而产生联系。
从聚类分析的聚类图中可以看出惜春与鸳鸯间有密切联系,从聚类图的每一次类的合并情况来看贾琏与惜春为一类后与贾珍合并为一类,再与贾母合并为一类,可得出贾珍与贾琏之间存在联系,而贾母又与这些人物有着关联;从图中还可以看出贾芸与凤姐之间有着联系。
从聚类图中可以得出的人物关系与从文本内容概述的得出的关系相符合。
得到的分层结果如下:
样本一(第八回)1至13自然段可划分为第一层,主题为薛宝钗小恙梨香院;14自然段到本回结束为第二层,主题为贾宝玉大醉绛芸轩。
下表为标题中出现的人物名在各段落中出现的频率:
宝钗
0
1
5
0
0
3
1
4
2
0
1
1
1
0
0
0
0
0
0
0
0
宝玉
3
8
11
0
3
3
2
3
2
5
5
1
6
4
6
5
6
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 红楼梦 文本 分析