一种互联网上汉语电子文档阅读分级的方法转让专利

申请号 : CN201110200423.4

文献号 : CN102214246B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 顾庆李敏骆斌汤九斌陈道蓄

申请人 : 南京大学

摘要 :

本发明公开了一种互联网上汉语电子文档阅读分级的方法,首先确定汉字、词组、以及语句结构指标在不同级别文档的频率分布;筛选用来对文档阅读分级的汉字和词组,避开常用词和冷僻词的干扰;再针对待分级的目标文档,分析文档的字词组成,将文档解析成 二元组向量;计算文档的语句结构指标,包括平均段落长度、平均句子长度、最长句和最短句的长度差异等;最后采用朴素贝叶斯方法,基于汉语文档的字词组成信息和语句结构信息确定文档的阅读级别。通过解析文档的汉字和词组构成,结合文档的语句结构,根据各个字词和结构指标在不同阅读级别文档中的频率分布,运用朴素贝叶斯方法,有效确定了汉语电子文档的阅读级别。

权利要求 :

1.一种互联网上汉语电子文档阅读分级的方法,其特征在于包括以下步骤:

1)储备已界定阅读级别的汉语文档库,确定汉字、词组和语句结构指标在不同阅读级别中的频率分布;

2)筛选用来对汉语文档阅读分级的汉字和词组,删除其中的常用词和冷僻词;

3)针对待分级的目标文档,分析文档的汉字和词组组成,将文档解析成<字词、出现次数>二元组向量,其中字词指一个汉字或者是一个词组;

4)统计目标文档的语句结构指标,包括平均段落长度、平均句子长度、最长句和最短句的长度差异;

5)采用朴素贝叶斯方法,基于目标文档的汉字和词组组成和语句结构确定文档的阅读级别。

2.根据权利要求1所述的互联网上汉语电子文档阅读分级的方法,其特征在于步骤1)中的汉语文档库的构建要求是:首先收集不同阅读级别的文档,然后对所收集文档进行筛选,使每个阅读级别的文档数量大体相同,处理方法是增补或删除属于某个阅读级别的文档,计算所有级别文档数量的均值 和均方差std(S),使得各级别文档数量的最大偏差小于3倍std(S)。

3.根据权利要求1或2所述的互联网上汉语电子文档阅读分级的方法,其特征在于步骤1)中确定汉字、词组在不同阅读级别中频率分布的流程是:首先解析各个阅读级别文档中包含的汉字或词组,累加汉字或词组在各个级别中出现的次数、以及在所有文档中出现的总次数;然后令汉字或词组w在级别gi中出现的次数为ci(w),在所有级别中出现的总次数为c(w),计算w在级别gi出现的频率θi(w):最后由此构建w的频谱Θ(w)={θ1(w),θ2(w),...,θm(w)},其中m为阅读级别设定的总数。

4.根据权利要求1或2所述的互联网上汉语电子文档阅读分级的方法,其特征在于步骤1)中确定语句结构指标在不同阅读级别中频率分布的流程是:首先解析各个阅读级别文档中的语句结构,统计文档的平均段落长度即所包含句子数量δ,平均句子长度即所包含汉字数量μ,和句长最大偏差σ;然后累加不同δ值、μ值和σ值在各个级别出现的次数、以及在所有文档中出现的总次数;最后分别计算δ值、μ值和σ值在级别gi中的频率θi(δ)、θi(μ)和θi(σ),构成对应频谱Θ(δ)、Θ(μ)和Θ(σ)。

5.根据权利要求3所述的互联网上汉语电子文档阅读分级的方法,其特征在于步骤

2)中常用词和冷僻词的排除方法是:给定汉字或词组w,判定常用词基于θi(w)或者经过平滑处理后的 之间的最大偏差θmax(w)-θmin(w);其中θmax(w)和θmin(w)分别对应θi(w)的最大值和最小值,以及θi(w)的均值 选定比例系数r,则满足下述公式的汉字或词组w被认为是常用词:判定w是否是冷僻词根据各θi(w)的取值,如果θi(w)只在少数几个阅读级别取值大于0;或者各级别文档中出现的次数ci(w)小于给定值,则认为w是冷僻词。

6.根据权利要求5所述的互联网上汉语电子文档阅读分级的方法,其特征在于汉字或词组频谱分布的平滑方法为:给定汉字或词组w,采用高斯平滑方法对Θ(w)做平滑处理,即对θi(w),根据周边级别的频率值做加权平均,权值按其级别数同本级别gi的距离递减,权值设定采用高斯函数,计算公式如下:平滑后的频谱做归一化处理,要求满足:

7.根据权利要求1或2所述的互联网上汉语电子文档阅读分级的方法,其特征在于步骤3)的具体过程是:首先采用汉语分词技术解析目标文档D中的汉字和词组,计数目标文档中包含的不同汉字和词组的数量;然后针对文档D中的每一个汉字或词组wj:如果wj属于用于文档分级的汉字或词组,则统计wj在文档D中出现的次数cj;否则排除wj;最后将目标文档D组织成一个二元组向量,其中有效字词个数为n,字词指一个汉字或一个词组:D={,...,}。

8.根据权利要求4所述的互联网上汉语电子文档阅读分级的方法,其特征在于步骤4)中计算目标文档语句结构指标的流程是:首先解析出目标文档D的所有句子;然后按照段落和语句两个层次计算文档D的语句结构指标:在段落层次,统计文档中的段落数量cp,计算段落的平均长度δ;在语句层次,统计句子的总数cs,计算句子的平均长度μ,以及句长的最大偏差σ,即最长句和最短句长度差。

9.根据权利要求8所述的互联网上汉语电子文档阅读分级的方法,其特征在于步骤5)中确定目标文档阅读级别的具体过程是:首先给定级别gi,采用朴素贝叶斯方法计算文档D属于级别gi的条件概率p(gi|D);为简化计算,对条件概率取对数,计算公式如下:其中cp指目标文档中的段落数量,cs指目标文档中的句子数量,cj指目标文档中汉字或词组wj出现的次数,n指有效字词个数,θi(wj)指wj在级别gi出现的频率;

条件概率p(gi|D)的计算分两部分:前半部分体现文档D的汉字或词组组成,相当于语义信息;后半部分体现文档D的语句结构,相当于语法信息,然后计算文档D归属于每一个阅读级别的概率P(G|D):P(G|D)={p(g1|D),p(g2|D),...,p(gm|D)}

其中m指为阅读级别设定的总数;

最后选择P(G|D)中概率值最大者所对应的级别gmax,作为目标文档D的阅读级别:

说明书 :

一种互联网上汉语电子文档阅读分级的方法

技术领域

[0001] 本发明涉及一种汉语电子文档的阅读分级方法,特别针对互联网时代电子文档越来越普及,需要划分其阅读级别以适于不同年龄层次或汉语掌握程度的用户阅读。

背景技术

[0002] 随着互联网的快速发展,智能手机、平板电脑、以及其他便携电子设备的日益普及,电子文档越来越成为人们日常阅读的主要对象。青少年目前已成为电子文档阅读的主流群体之一;另外,汉语学习热在国外已成流行趋势,大量国外汉语学习者亦通过电子文档来学习汉语。这些都需要对电子文档的阅读级别进行合理界定,以方便阅读者选择合适的汉语电子文档来阅读和学习。国内除传统中小学汉语教材和教辅材料有阅读级别的界定外,大量文档材料尤其是互联网电子文档缺少对阅读级别的界定。
[0003] 为了解决这一问题,就需要提供对汉语文档的阅读分级技术和工具。目前,对文档的阅读级别进行界定有两类方法:其一是可读性判定或评估;其实质是一个二分法,即首先给定阅读者的阅读水平,如初中一年级(如果从小学一年级算起,可以认为是汉语阅读7级),然后判定目标文档是否适合该阅读者。这是一种相对粗略的阅读级别确定方法,需要针对每一个级别设定一个判定公式。其二是阅读分级或评分;即根据一个统一的分级公式计算目标文档的阅读级别,或者针对不同级别评分,直接确定该文档的阅读级别。例如可以确定目标文档属于初中一年级(级别7)、还是初中二年级(级别8)、或者是小学六年级(级别6)。
[0004] 界定文档阅读级别可以基于两个方面的信息:其一是文档的结构信息和指标,例如汉字的笔画(音节)数量、字词的重复次数、句子和段落的长度等,根据这些指标(及其组合)采用拟合和分类等学习算法对目标文档进行分级。采用这类信息在英语等表音语言运用比较有效,在国际上已有应用。汉语是一种表意语言,采用这种方法存在一定问题。其二采用统计语言模型,将语言分解成不同层次的基本单元,根据各个基本单元的分布情况和目标文档中基本单元组成确定目标文档的阅读级别。采用这类信息对表意语言比较有效,但目前还没有应用于汉语文档的阅读分级。

发明内容

[0005] 本发明所要解决的技术问题是提供一种互联网上汉语电子文档阅读分级的方法,本方法可以直接计算目标文档所属的阅读级别,同时适于汉语作为表意语言的特点,计算简单,具有扩展性,且能够分析敏感词汇。
[0006] 为实现上述目的,本发明采用如下的步骤:
[0007] 1)在现有的已界定阅读级别的汉语文档基础上,确定汉字、词组、以及语句结构指标在不同级别文档中的频率分布;
[0008] 2)筛选用来对汉语文档阅读分级的汉字和词组,删除其中的常用词和冷僻词;
[0009] 3)针对待分级的目标文档,分析文档的字词组成,将文档解析成<字词、出现次数>二元组向量;
[0010] 4)统计目标文档的语句结构指标,包括平均段落长度、平均句子长度、最长句和最短句的长度差异;
[0011] 5)采用朴素贝叶斯方法,基于文档的字词组成信息和语句结构信息确定文档的阅读级别。
[0012] 上述步骤1)中的汉语文档库的构建要求是:首先收集不同阅读级别的文档,如中小学语文课文、课外读物和期刊、汉字生字表等,然后对所收集文档进行筛选,使每个阅读级别的文档数量大体相同,处理方法是增补或删除属于某个阅读级别的文档,计算所有级别文档数量的均值 和均方差std(S),使得各级别文档数量的最大偏差小于3倍std(S)。
[0013] 步骤1)中确定汉字、词组在不同阅读级别中频率分布的流程:首先解析各个阅读级别文档中包含的汉字和词组,累加字词在各个级别中出现的次数、以及在所有文档中出现的总次数;然后令字词w在级别gi中出现的次数为ci(w),在所有级别中出现的总次数为c(w),可计算w在级别gi出现的频率θi(w):
[0014]
[0015] 最后由此构建字词w的频谱Θ(w)={θ1(w),θ2(w),…,θm(w)},其中m为阅读级别设定的总数。
[0016] 步骤1)中确定语句结构指标在不同阅读级别中频率分布的流程是:首先解析各个阅读级别文档中的语句结构,统计文档的平均段落长度,即所包含句子数量δ、平均句子长度,即所包含汉字数量μ和句长最大偏差σ;然后累加不同δ值、μ值和σ值在各个级别出现的次数、以及在所有文档中出现的总次数;最后分别计算δ值、μ值和σ值在级别gi中的频率θi(δ)、θi(μ)和θi(σ),构成对应频谱Θ(δ)、Θ(μ)和Θ(σ)。
[0017] 上述步骤2)的常用词和冷僻词的排除方法是:首先针对每一个汉字和词组,识别常用词和冷僻词;其中常用词在所有级别文档中平均分布,难以起到阅读分级的作用。具体过程是:根据给定汉字或词组w,判定常用词基于θi(w)或者经过平滑处理后的θ′i(w)之间的最大偏差θmax(w)-θmin(w);其中θmax(w)和θmin(w)分别对应θi(w)的最大值和最小值,以及θi(w)的均值 选定比例系数r,r值可根据经验选定,一个可选值是0.1。则满足下述公式的字词w被认为是常用词:
[0018]
[0019] 冷僻词由于出现几率过低,同样难以区分阅读级别。判定字词w是否是冷僻词根据各θi(w)的取值,如果θi(w)只在少数几个阅读级别取值大于0,例如级别总数m的10%;或者各级别文档中出现的次数ci(w)小于给定值,例如对应级别gi中文档总数的1%,则认为w是冷僻词。
[0020] 接下来对每一个字词w的频谱Θ(w),采用高斯平滑方法做平滑处理:即对θi(w),根据周边级别的频率值做加权平均,权值按其级别数同本级别gi的距离递减。权值设定采用高斯函数,计算公式如下:
[0021]
[0022] 平滑后的频谱做归一化处理,要求满足:
[0023] 上述步骤3)的目标文档解析的过程为:首先采用汉语分词技术解析目标文档D中的汉字和词组,计数目标文档中包含的不同汉字和词组的数量;然后针对文档D中的每一个汉字或词组wj(wj∈D):如果wj属于用于文档分级的字词,则统计wj在文档D中出现的次数cj;否则排除wj;最后将目标文档D组织成一个二元组向量,其中有效字词个数为n:
[0024] D={,…,}。
[0025] 步骤4)中计算目标文档语句结构指标的流程是:首先解析出目标文档D的所有句子。然后按照段落和语句两个层次计算文档D的语句结构指标:在段落层次,统计文档中的段落数量cp,计算段落的平均长度δ;在语句层次,统计句子的总数cs,计算句子的平均长度μ,以及句长的最大偏差σ,即最长句和最短句长度差。
[0026] 步骤5)的确定目标文档阅读级别的过程为:根据目标文档中字词组成的二元组向量、以及文档的语句结构指标,采用朴素贝叶斯法计算目标文档归属于阅读级别gi的条件概率p(gi|D);为简化计算,对条件概率取对数,计算公式如下:
[0027]
[0028] 条件概率p(gi|D)的计算分两部分:前半部分体现文档D的字词组成,相当于语义信息;后半部分体现文档D的语句结构,相当于语法信息。计算文档D归属于各阅读级别的概率P(G|D)={p(g1|D),p(g2|D),…,p(gm|D)}。选择其中概率值最大者所对应的级别gmax,作为目标文档的阅读级别:
[0029]
[0030] 本发明在统计语言模型基础上结合文档结构方面信息,针对目标文档采用统一的公式直接完成文档阅读分级。该方法依托现有的已界定阅读级别的汉语文档,如中小学汉语教材和教辅材料、儿童和青少年读物等,利用已有的汉语分词技术解析目标文档,通过解析文档的汉字和词组构成,结合文档的语句结构,根据各个字词和结构指标在不同阅读级别文档中的频率分布,运用朴素贝叶斯方法,可以有效确定汉语电子文档的阅读级别。本发明兼顾目标文档的语义和语法信息,综合汉语文档的字词组成和语句结构判定目标文档所属的阅读级别。符合汉语作为表意语言的特点,计算方法简单快速,可以适应汉语文档分级的不同约定,具有良好的可扩展性和适应性。

附图说明

[0031] 图1是汉语电子文档阅读分级的总体框架;
[0032] 图2是统计汉语字词和语句结构指标在不同阅读级别频率分布的流程;
[0033] 图3是描述样例字词频谱分布的直方图,其中图3a为“汽车”在每个阅读级别中的频率,图3b为“企图”在每个阅读级别中的频率;
[0034] 图4是用于分级的汉语字词筛选的处理流程图;
[0035] 图5是样例字词频谱分布平滑后的折线图,其中图5a为“汽车”、图5b为“企图”;
[0036] 图6是不适用于分级的字词频谱分布图,其中图6a为常用词“我”,图6b为冷僻词“垚”。

具体实施方式

[0037] 图1所示为汉语电子文档阅读分级方法的技术框架。方法的输入是待分级的目标文档,以及前期储备的已确定阅读级别的文档库。方法的输出是目标文档所属的阅读级别。技术框架分5个模块:确定汉字、词组和语句结构指标在各阅读级别的频率分布;筛选用于阅读分级的汉字和词组;针对目标文档,解析文档的字词组成;统计文档的语句结构指标;
最后计算目标文档的阅读级别。
[0038] 首先确定汉字、词组和语句结构指标在各阅读级别的频率分布。令汉语文档阅读级别数量定为m。m值可以按照中小学年级数量来设定,即m=12。本专利方法不需要限定阅读级别的数量和划分原则,具有可适应性和扩展性。令阅读级别集合为G,即G={g1,g2,…,gm}。以此为基础,给定汉字或词组w,可以统计w在各阅读级别的频率分布,即频谱Θ(w)={θ1(w),θ2(w),…,θm(w)}。
[0039] 图2所示为统计汉语字词和语句结构指标频率分布的处理流程。首先收集已确定阅读级别的文档,如中小学的语文教材、课外读物、中小学生的期刊杂志、汉字生字表等所包含的文档。将这些文档按级别分类并储存于文档库,文档库可以添加新文档或变更已有文档,以使得分级结果能够进一步校准。然后基于文档库中的文档进行筛选,筛选的目的是使得对应每一个阅读级别的文档数量保持等规模。令属于级别gi的文档数量为si,保持文档数量等规模相当于确保各si为同一个随机变量S的采样值。该随机变量的采样均值 和均方差std(S)由下述公式计算:
[0040]
[0041]
[0042] 令smax为规模最大的阅读级别所拥有的文档数量,而smin为规模最小的级别所拥有的文档数量。确保各级别文档数量等规模的判定公式如下:
[0043] smax-smin<3×std(S) (3)
[0044] 接下来解析各个阅读级别文档中的汉字和词组,这里可以利用已有的成熟的汉语文档分词技术。针对每一个汉字或词组w,统计w在各级别文档中的出现次数。令字词w在级别gi所属所有文档中总的出现次数为ci(w),计算w在所有级别文档中出现的总次数c(w):
[0045]
[0046] 在此基础上可计算字词w属于级别gi的频率θi(w):
[0047]
[0048] 由此组成字词w的频谱Θ(w)={θ1(w),θ2(w),…,θm(w)},易知频谱Θ(w)满足以下条件:
[0049]
[0050] 最后解析每篇文档的语句结构,计算文档的平均段落长度δ、平均句长μ、以及最长句和最短句的偏差值σ(即文档中句长偏差的最大值)。其中一个句子以“。”结尾;句长指句子中包含的汉字数量;段长指一个段落中包含的句子数量。平均段长和平均句长按四舍五入取整数。根据汉语文档的特点,值δ、值μ和值σ不会有太大的取值范围。给定值δ、值μ和值σ,可以统计其在各个阅读级别中出现的次数,然后采用公式(4)和(5)分别计算δ、μ和σ在级别gi中的频率θi(δ)、θi(μ)和θi(σ),构成对应频谱Θ(δ)、Θ(μ)和Θ(σ)。
[0051] 图3所示为汉字或词组w对应频谱Θ(w)的示例图(图3a为“汽车”在每个阅读级别中的频率,图3b为“企图”在每个阅读级别中的频率),用直方图表示,横坐标为阅读级别([1,m]);纵坐标为频率值([0,1])。其中每一个“直方”对应一个阅读级别。为简化起见,图中的阅读级别数量为6(即m=6)。
[0052] 图4所示为筛选用于分级的汉字或词组的处理流程。首先针对每一个汉字或词组w,分析其频谱Θ(w)={θ1(w),θ2(w),…,θm(w)}。根据频谱确定w是否属于常用词或冷僻词。判定常用词基于θi(w)之间的最大偏差θmax(w)-θmin(w),其中θmax(w)和θmin(w)分别对应θi(w)的最大值和最小值;以及θi(w)的均值
[0053]
[0054] 选定比例系数r,满足公式(8)的字词w被认为是常用词。其中r值可根据经验选定,一个可选值是0.1。
[0055]
[0056] 判定字词w是否是冷僻词根据各θi(w)的取值,如果θi(w)只在少数几个阅读级别取值大于0,例如级别总数m的10%;或者各级别文档中出现的次数ci(w)小于给定值,例如对应级别gi中文档总数的1%,则可以认为w是冷僻词。实验发现,冷僻词大多是组成姓名的汉字如“烎、垚”等,出现几率过低,难以用于区分目标文档的阅读级别。
[0057] 下一步是对每一个字词w的频谱Θ(w),采用高斯平滑方法做平滑处理。平滑处理的目的是进一步避开随机因素的干扰,使频谱更加反映字词w在各阅读级别的实际分布情况。平滑处理过程是:对θi(w),根据周边级别的频率值做加权平均,权值按其级别数同本级别gi的距离递减。权值设定采用高斯函数,计算公式如下:
[0058]
[0059] 其中 为计算θ′i(w)时频率θk(w)的权值,表示一个正态分布的概率密度值,其均值设为i(对应级别gi),均方差为常数0.8。例如计算θ′i(w)时θi(w)本身的权值是
[0060] 图5所示为样例字词(图5a为“汽车”、图5b为“企图”)频谱曲线平滑后得到的折线图。平滑后的频谱要做归一化处理,要求仍然满足公式(6)。图中“*”代表原始频率值,折线代表平滑后的新频率值。
[0061] 最后按照字词w平滑后的曲线,进一步判定w是否属于常用词,判定方法仍然采用公式(7)和(8),区别是所有频率θi(w)替换为平滑后的值θ′i(w)。常用词(如“的”、“我”)在各个级别的分布频率在统计上相同,在目标文档分级时只会增加级别计算的复杂度,因此应该删除。图6所示为不适用于分级的常用词和冷僻词(图6a为常用词“我”,图6b为冷僻词“垚”)的频谱曲线特征。
[0062] 储备用于区分阅读级别的汉字和词组后,针对需要判定阅读级别的目标文档D,解析文档的字词组成和语句结构。在方法框架的第三个模块中,采用汉语分词技术解析目标文档中的汉字和词组,计数目标文档中包含的不同汉字和词组的数量。考虑文档D中的每一个汉字或词组wj(wj∈D),如果wj属于用于文档分级的字词库,则统计wj在文档D中出现的次数cj;否则排除wj。采取这种处理后,目标文档D可以视为一个二元组向量(集合),其中有效字词个数为n,如公式(10)所示:
[0063] D={,…,}。(10)
[0064] 在方法框架的第四个模块中,首先解析出目标文档D的所有句子。按照段落和语句两个层次计算文档D的语句结构指标。在段落层次,统计文档中的段落数量cp,计算段落的平均长度(所包含句子数量)δ。在语句层次,统计句子的总数cs,计算句子的平均长度(所包含汉字数量)μ,以及句长的最大偏差σ(最长句和最短句长度差)。
[0065] 方法框架的最后一个模块是根据目标文档D的字词组成和语句结构指标判定文档D所从属的阅读级别。给定级别gi,采用朴素贝叶斯方法计算文档D属于级别gi的条件概率p(gi|D),计算方法如公式(11)所示。
[0066]
[0067] 其中各标识符的含义如前述。条件概率p(gi|D)的计算分两部分:前半部分体现文档D的字词组成,相当于语义信息;后半部分体现文档D的语句结构,相当于语法信息。综合计算文档D归属于每一个阅读级别的概率P(G|D),如公式(12)所示。
[0068] P(G|D)={p(g1|D),p(g2|D),…,p(gm|D)} (12)
[0069] 为简化计算,可以对概率值取对数,如公式(13)所示:
[0070]
[0071] 选择P(G|D)中概率值最大者所对应的级别gmax,作为目标文档D的阅读级别,如公式(14)所示。
[0072]
[0073] 本发明方法的特点是综合目标文档的语义和语法信息判定文档所属的阅读级别,符合汉语的语言特点。计算简单快速,具有良好的可扩展性和适应性。