1.3 词频序关系曲线的形态

早在1939年,齐普夫就已经发现,文本中的词频与其序之间并不能始终保持很好的幂律关系。当文本的规模较大时,词频序关系只能在中频段至多2~3个数量级上较好地符合幂律,在甚高频和低频段,实际词频都比幂律预测的小,因此词频序曲线在双对数坐标下表现为下弯曲,或者称为上凸。所以,Zipf(1949)指出,存在一个最佳语料规模,在其上词频与其序能保持较好的幂律关系,小于该规模或者大于该规模均不能保持较好的幂律关系。很多研究也都发现了词频序的这种下弯曲现象。那么,这种下弯曲现象是普遍的吗?其成因是什么?

由于上凸现象是在语料规模较大时出现的,也就是说,在语料规模相对较小时,幂律的直线拟合优度是较好的,因此,我们想观察在语料增长过程中,词频序曲线的形态变化。

下面具体介绍研究材料和方法。词频序关系的下弯曲现象,是指随着语料规模的增加,词频序关系在高频和低频段的频率都小于中频段的幂律拟合直线。我们通过对英国国家语料库(BNC)4000多万词次的词频序关系的计算,观察词频序关系形态的变化。为了观察曲线形态随语料规模的变化,图1.4将语料分为从4万多到4000多万的4000个数量级。

图1.4中语料规模(token,即词例数)自上向下各是前者的1/10(图中最上方曲线的词例数为43354559),图中文本框中的数字表示的是词型数(type)。带有阶梯的实曲线为真实的词频序关系,虚线为依据该曲线的前2000~3000数据点拟合的幂律关系。

图1.4中虚线和带有阶梯的实线的偏离,显示了词频序关系的下弯曲。

图1.4中是基于BNC显示的词频序关系的下弯曲现象,那么,这种现象是普遍存在于人类语言中的吗?为此,我们在莱比锡(Leipzig)语料库上计算了语料规模较大的51种语言的词频序关系,计算结果和各语言语料的统计概况见表1.4和图1.5。图1.5中显示出的是51种语言的词频序关系,均表现出了下弯曲现象。

图1.4 随着语料规模的增加词频序关系曲线的变化

表1.4 莱比锡语料库中51种规模较大的语言及其基本统计参数

(续表)

图1.5 51种语言的词频序关系表现出的下弯曲现象

(注:这些语言的语料规模从1.6×106到1.3×107,规模均较大。)

图1.5表明下弯曲现象在自然语言中是普遍存在的。既然是普遍存在的,那么下弯曲的原因是什么呢?要研究这个问题,我们先对下弯曲的程度做更确切的描述,以得到下弯曲的变化规律。当我们使用两段直线分别拟合齐普夫曲线的高频段和低频段时,两段直线的斜率之差可以作为弯曲程度的描述。由于我们的目的是要描述齐普夫曲线形状的弯曲程度,即在双对数坐标下曲线的弯曲,因此,我们在齐普夫曲线上取等对数间隔的点作为被拟合的数据,而不是使用全部数据。使用全部数据会使得拟合结果更符合多数数据点的规律,而不是曲线的整体变化方式,因此,就会更符合甚低频段(拥有绝大多数词)。第一段曲线使用前1000数据点,这一部分是高频词,一般都会保持相对稳定的词频序关系。第二段选择3000点开始直至最后,这部分长度不固定,视语料规模而定。忽略中间的1001到2999的数据点,是因为这一段一般是过渡段。计算结果见图1.6。

图1.6 不同语言随着语料规模的增加,两段直线拟合的斜率的分布

(注:长箭头表示语料规模增加的方向。)

由图1.6可见,随着语料规模的增加,第一段拟合直线的斜率基本保持不变,第二段的斜率在增加(图中每条曲线自上而下对应着语料规模的增加),但增量越来越小,这意味着曲线越来越向下倾斜。也就是说,第二段的减小的增量随语料规模增加而逐渐减少,即弯曲程度虽然在增加,但是增加的量越来越少。大部分语言在语料达到一定的规模后,第二段斜率几乎不再增加,而第一段则表现出一定程度上的不稳定性。

因此,这就是说,在语料规模较大后,词频序关系曲线保持了稳定的两段模式,各自具有相对稳定的斜率。

接下来,我们想知道,在语料规模增加的过程中,词频序关系从比较直的直线变为下弯曲的原因是什么?也就是说,曲线中哪些参量使得词频序关系曲线逐渐脱离直线形式,即,这些参数怎样随着语料规模的增加而与式1.1定义的值偏差越来越大的。

首先,由式1.1可推导出,一个语料库的词频序关系中最小频率值所对应的最大的序数就是该语料库包含的词型数。由于每个语料文本集最小频率值都是1,因此,我们依据第一段拟合直线的参数外推频率是1时的词数(即按照第一段幂律的参数计算出的“应该有的”词数),并与该语料的真实词数对比。结果见图1.7。

可以看到,前者高出一个数量级,且随着语料规模的增加,前后二者有较好的幂律关系。因此,语料规模越大,二者相差越大。

图1.7显示出,实际的词数与高频段齐普夫曲线要求的词数间有幂律关系,二者关系拟合结果见表1.5。拟合是在双对数下使用线性函数y=ax+b

图1.7 由高频段的幂律关系计算出的词数与从实际语料中计算出的词数的对比

(注:长箭头表示语料规模增加的方向。)

表1.5 第一段幂律推导出的词数与实际词数间的拟合参数

由图1.7和表1.5可见,拟合均有好的优度。由于幂律指数均大于1,因此,随着语料规模的增加,词数也增加(Heaps定律已经指出,词数与语料规模有幂律关系),但是,词数达不到高频段幂律所预测的数量。且该结论对所述语言均成立。

影响词频序关系曲线形状的量,除了词的数量外,还有低频词(这包括两部分:原语料规模的低频词和语料增加后新增的低频词)所产生的词频。因此,我们观察了低频词的频次随语料规模增加的变化方式。

具体方法是,按着高频段斜率外推计算低频段的词的频次,作为“标准值”,再计算真实值与该标准值的偏差。计算公式是:。该值度量了真实频率值与齐普夫曲线要求的频率值的差,该值越小,真实值与标准值的偏差就越小。计算结果见图1.8。图1.8显示在语料规模较大后,偏差均大于100%,即低频词的词频与幂律的要求有非常大的差距。由于低频词的数量占绝大多数(如词频为1的词占50%左右),而低频词的频率又较大偏离幂律拟合的直线,因此,低频词的过小的频率会导致所拟合曲线与幂律有很大的偏差。

图1.8 低频词(序>3000)的频率与高频段拟合直线的差值与总拟合差值的比

图1.8显示,比例最小值也在50%左右,也就是说,低频词的频率偏差对于曲线弯曲有重要影响。

总结图1.7与图1.8可知,随着语料规模的增加,词频序曲线逐渐下弯曲的直接原因有二:第一,总词数过少;第二,低频词的频率过小。

既然低频词的数量较少,词频较小,以至于不能保证直线形态,那么,为何在语料规模较小时,尚能保证较好的幂律形态,而规模增加后导致越来越严重的下弯曲?

为此,我们观察词频随语料规模变化的情况。具体地说,我们计算了每一个词从出现以后,其频率随语料规模增加的变化。

计算在BNC上进行,为抵消文本的话题领域对词频的影响,我们对语料库中的文本做随机化处理,然后再计算词频,计算分10个语料规模。首先,随机选择全部语料的1/210,计算每个出现词的词频,然后,随机增加1倍的语料规模(即增加到全部语料的1/29)做第二次计算,再增加1倍(即增加到全部语料的1/28)做第三次计算……直至做完全部语料。如此,我们得到了语料的10个增长点上每个词出现的频次。

然后,我们计算了每个词从出现以后的词频平均增长率。词频平均增长率是指:

该公式的含义是,词从出现一直到最后(全语料规模),其频率增加的倍数除以在这个过程中语料规模增加的倍数。该式中,最终语料规模就是整个语料库的规模(即43301985),而最终频率即是最后一次计算时该词的频率。相应地,初始语料规模是该词第一次出现时的语料规模,而初始频率就是第一次计算该词时的频率。比例值大于1时,表明该词的频率增长速度大于语料规模的增长速度,反之则相反,而比例值等于1时则表明该词的频率增长与语料规模增长速度相当。词频平均增长率的分频段统计的比例分布结果见图1.9。

图1.9 各频率段词的词频平均增长率

(注:各图中右上角的文字表示词频序,如1∶1000表示前1000个词。)

在词频序1∶10000的高频词中,绝大多数的词频平均增长率在1左右;在词频序大于10000的低频词中,绝大多数词的词频平均增长率小于1,这说明该词重复出现的概率很低。词频平均增长率大于1的,意味着词频增长速度大于语料规模的增长速度,这是由语料规模的不均性形成的,图1.9中可见,这部分词占极少数。

图1.9中显示,在高频词中,大部分词的频率增长速度基本上与语料规模的增长速度相等;而在低频词中,绝大多数词的频率增长速度小于语料规模的增长速度。换言之,高频词的词频随着语料规模的增加等比例地增加,表现在齐普夫曲线在这部分平行地等比例地上升;而低频词的词频增长速度慢于语料规模的增长速度,表现在齐普夫曲线在这一部分上升速度慢。因而,语料规模增加越多,这部分滞后越多,曲线就越下弯曲。这就是齐普夫曲线越来越下弯曲的原因。

语料已经过随机化处理,具有均匀性,为何这样多的低频词的频率增长速度小于语料规模的增长速度?为此,我们观察词频为1的词的频率变化。如果一个词,在语料规模为N时第一次出现,那么,我们认为当语料规模是mN时,出现m次的概率→1,当m→∞时,该词的出现概率≈1/N。这是建立在大数定律基础上的信念,是基于该词是随机稳定出现的思想。但是,如果该词的出现并不是这样的随机稳定,也就是说,该词的出现是语言使用中非常偶然的,那么,如何建立这类低频词的词频模型呢?

为观察该现象,我们计算了词在语料中出现的相对词频,即。如果词在语料中是均匀的,则该比例值随着语料规模的增加逐渐趋于一个稳定的极限值,就是该词的出现概率。如果不能满足均匀性条件,该值就只能是一个比例值,而不能作为概率的近似值。

在各语料规模下,我们计算了各频序段的词的相对词频的累加和,结果见图1.10。由图1.10可以看到:

图1.10 各频段词的出现概率的累加在语料规模变化中保持不变

第一条曲线表明甚高频词的相对词频的累加值在各语料规模下基本保持不变;

后四条曲线表明随着语料规模的增加,出现了新词,新词的比例值只是从低频词中分得,并不影响高频词的比例值。

图1.10的结果还表现在相对词频与序的关系上,即图1.11。为显示清晰,图1.11只显示了4个语料规模的词频(相对比例值)序关系。图1.10的结果意味着,随着语料规模的增加,高频词的相对词频保持不变,即词频序曲线不变,而只是低频词的变化,并且随着语料规模增加,所能影响到的词频的序越来越高。图1.11显示出,随着语料规模的增加,相对词频与其序的关系曲线,在中高频段保持不变,只是低频部分的曲线逐渐向下延伸。

图1.11 各语料规模下词频相对值与其序的关系的对比

基于图1.9至图1.11,我们总结齐普夫曲线下弯曲的原因:随着语料规模的增加,低频词要“拿出”一部分相对词频分给新出现的词,这样这部分词的频率就降低了,因此产生了曲线的下弯曲。

在语言的真实使用过程中,词的出现是应表达的需要(意义和句法),因此,词频序应该与被统计文本所论述的话题有关,也因此与语料话题的领域有关。为了观察二者的关系,我们在BNC上计算了词频在话题领域上的分布。BNC包含9个领域的文本集,我们计算了词对于特定领域的归属度。计算方法是:首先,计算每个词在每个领域中的出现频率的分布(相似于话题模型),为了抵消文本规模的影响,我们将每个词的词频除以语料的规模,得到的小数可以被看作该词对该领域文本集的贡献率;然后,我们把每个词的9个领域的贡献率组成一个向量,经过归一化后,该向量可以被认为是该词在9个领域的概率分布,也是该词对9个领域的贡献率;最后,计算该向量的一阶绝对中心矩,,它表达了该向量的9个分量的均匀程度。如果一个词在各领域中出现概率都相同,即与领域或者话题无关,则该向量的一阶绝对中心矩会很小,最小值为0;相反,如果一个词只在某一个领域中出现,那么,该向量的一阶绝对中心矩会很大。由于向量是9维归一化的,因此一阶绝对中心矩的最大值出现在如(1,0,0,0,0,0,0,0,0)一类的坐标轴单位向量上,其值为0.1975,这是此一阶绝对中心距的最大值。因此,该值可以度量词在各领域的分布,我们定义它为该词的“领域专属度”。为了符合表达习惯,我们将每一个一阶绝对中心矩除以0.1975,得到一个[0,1]间的归一化的小数。结果见图1.12。图1.12是词的领域专属度在词频序上的分布,它显示,高频词领域专属度较低,即在各领域的分布较均匀;而低频词的领域专属度较高,即在各领域的分布很不均匀,或者说,更可能专属某一个领域,或者某一个文本。

图1.12 词的领域专属度在词频序上的分布

(注:1表示该词只属于一个领域,0表示在各领域中均等出现。为观察方便,图中显示的是领域专属度的100点短时滑动均值。)

一个词的领域专属度越高,其词频序受到语料话题领域的影响越大。

总结本节通过观察BNC中词频序曲线随着语料规模的增加的变化模式发现:高频词的词频随着语料规模的增加而等比例增加,因而在语料规模增加过程中,这部分曲线的形态能一致保持平行增加;低频词增加的比例低于语料规模的增加比例而且新出现的低频词的数量也少于幂律曲线的“要求”。这些参数控制了低频段的词频序曲线不能与语料规模等比例增加,因而曲线的形态出现了上凸。

产生这个现象的原因是:高频词的领域专属度较低,即表达任何领域和话题都需要这些词,因而它们在语料中的出现频次与语料规模呈较稳定的比例关系,这部分词的数量是固定的;而低频词领域专属度很高,甚至只有在特定的表达情况下才需要该词,这种词的数量是无限的,但是只有在特定场合才会出现,因而,它们在语料中的频次与语料规模的关系不稳定。

在上一节的仿真实验中我们发现,在层级数不变情况下,对象数越多,其幂律指数α越小,反之亦然。本节我们看到,高频词的数量是固定的,其词频也是稳定的,因此其层级数和对象数都是固定的,所以按照上节的结果,其幂律指数也应该是固定的,这与图1.8的结果是一致的。而低频词的数量随着语料规模增加,这些词都有很强的领域专属度,因而可以认为分布在不同的层级,即可以认为层级数也随着增加,而根据上节的仿真结果,层级数越多,其幂律指数α越大。因此,低频段的幂律指数应该随语料规模增加而增加(绝对值)。这也与本节图1.8所示结果是一致的。

本节的研究显示,词频序关系曲线可以分为两段:第一段的长度和幂律指数在语料规模增加时是保持不变的,这一段体现的是语言的特点,可由曲线长度和幂律指数表征;第二段长度随语料规模的增加而增加,曲线的斜率也逐渐加大,这一段体现的是语料的特点,语料的内容和规模决定了该段的斜率和长度。也就是说,严格说起来,整条词频序关系曲线应为“分段幂律曲线”,而不是传统上的幂律曲线,各段的指数未必相同。幂律指数反映了各词的频次之间的衰减速度,第一段比第二段有较小的(更接近0)幂律指数,表明第一段的词的使用频次更“均匀些”,即相对来说各高频词被使用的概率更“接近”些。

虽然词频分布规律的统计对象是词,但实质上,句子才是语言使用的基本单位。以上的研究表明,词的出现频次的序是比较稳定的,那么,这些词在语言的实际使用中有怎样的规律?接下来,我们研究词频序关系在句子中是如何分布的,即人们在产生句子时是如何涌现出齐普夫定律的。