Zipf's law 齐普夫定律

 


这是自然语言处理领域的一个有趣的定律,其实称为规律更合适,因为这是一个经验性的结果,是通过统计数据得出来的近似的规律。
它的定义有些绕口,就是说,在一个自然语言的语料库中,一个词的出现频数和这个词在这个语料中的排名(这个排名是基于出现次数的)成反比。
"Zipf's law states that given some corpus of natural language utterances, the frequency of any word is inversely proportional to its rank in the frequency table. "

举个例子,在Brown Corpus中,‘the’的排名是最高的,第一位,而它的出现次数是69971。排名第二位的词是‘of’,出现的次数为36411。 1/2 约等于 36411 / 69971。

再举个例子,根据M. L. Hanley(1937)中有关James Joyce Ulysses的用词数据,从中抽取了第10、20等序号的词,其序号(r)与在书中的出现次数(f)的乘积分别如下表的III栏。除了最后三个数字出入稍大一点,其他的都在26,000左右。而且,Zipf发现常数C乘以10跟该书的实际总词数260,430很接近,如IV栏所示。
 

 


I
Rank
(r)
II
Frequency
(f)
III
Product of I and II
(r × f = C)
IV
Theoretical Length of Ulysses
(C × 10)
10
2,653
26,530
265,300
20
1,311
26,220
262,200
30
926
27,780
277,800
40
717
28,680
286,800
50
556
26,500
278,000
100
265
26,500
265,000
200
133
26,600
266,000
300
84
25,200
252,000
400
62
24,800
248,000
500
50
25,000
250,000
1,000
26
26,000
260,000
2,000
12
24,000
240,000
3,000
8
24,000
240,000
4,000
6
24,000
240,000
5,000
5
25,000
250,000
10,000
2
20,000
200,000
20,000
1
20,000
200,000
29,899
1
29,899
298,990

 

r × f = C这个公式还说明,一个词的出现次数跟它的等级序号成反比。出现次数越多,序号越小。出现次数最多的排第一,出现次数最少的排最后。这原本没有什么特别 的:序号就是根据出现次数排的。但它们的乘积是常数这一点,却使得分别以词的序号和出现次数为轴线的双对数表(doubly logarithmic chart)呈现极大的规律性——它几乎是一条45度的直线。

尽管zipf's law是在语言学中被发现的,但是现在已经深入到了很多其它领域当中。比如,在生物学中,蛋白质序列中就可能存在着zipf's law。[3]中给出了一些zipf's law在互联网中的存在。

 
posted @ 2011-06-12 03:38  Kaffeeck  阅读(1365)  评论(0编辑  收藏  举报