第一節 文體特征的頻率、概率、條件概率
正如前文介紹的那樣,一個作家寫作風格從微觀上區別于其他作家的重要特點主要體現在同一語言表達形式使用的多與少上。這種衡量語言表達形式使用的多與少,以及某一作家使用某一特定語言表達形式的可能性的大小,就要使用到頻度、頻率、概率等重要的統計量。
頻率
概率論總是使用骰子來說明概率論最基本的概念:頻度、頻率、概率。以骰子為例確實能夠清楚說明這幾個概念之間的相互關系。我們常見的骰子通常都是正方體,有六個面,每一個面上分別標記著一至六個點。我們投骰子時,每一次總有一個面是朝上的,我們設定一個變量來代表每次拋擲所得到的骰子朝上那面的點數,這個變量的取值是根據每次拋擲骰子所出現的朝上的那一面的情況而定的,我們事先是無法預測的,是隨機的,因此我們把這樣的變量叫作隨機變量?,F在我們做一個試驗,將一個質地均勻的骰子拋100次,觀察1.2.3.4.5.6點出現的次數,這個次數就叫作每個點出現的頻度或者頻數。我們將每一個面出現的次數在100次試驗中所占的比例叫作該面出現的頻率。如下表:
表2.1 骰子點數分布情況

假設我們做N次試驗,其中某一事件X出現了nx次,那么事件X出現的頻率fN(X)就可以由以下公式得出:

概率
在上述實驗中,我們對骰子作了100次拋擲,每一個面出現的次數各不一樣,這與我們的感覺似乎不一樣。通常我們的直感是,如果骰子的質地是均勻的,那么骰子每一個面出現的機會是一樣的,也就是說他們出現的次數是相同的,因此在100次拋擲中每一面出現的次數應該是100/6=16.666次。但是上述結果卻與我們的直感有一定的差距。
那么我們的直感到底對不對,什么時候才能夠出現和我們直感一致的情況呢?為了說明這個問題有人用錢幣做試驗,觀察錢幣正面出現的情況,為了能夠說明問題,這種試驗往往要重復幾千次。這樣的試驗看上去簡單,但是大量的重復試驗實際操作起來卻非常復雜。過去由于受到技術條件的限制,只能夠用這種原始的方法去驗證一些概率論的規律。隨著計算機技術的進步,我們現在可以用計算機模擬這樣的試驗。下面我們用EXCEL來模擬拋擲錢幣的試驗。試驗分三組進行,每一組做5遍,第一組每遍拋擲50次;第二組每遍拋擲500次;第三組每遍拋擲5000次。我們觀察每組正面出現的頻率值。
EXCEL中提供了隨機數產生的方法,我們可以按照給定的隨機數產生規則讓計算機自動產生我們需要的隨機數。如果我們將錢幣的正面看成是1.反面看成是0;那么拋擲錢幣觀察其正反面出現的次數實際上就相當于看1和0出現的次數。因此,拋擲錢幣的試驗實際上就相當于讓計算機自動隨機產生0和1;拋擲10次錢幣,就等于讓計算機自動產生10個0和1。由于錢幣是均質的,其正反面出現的機會是均等的,所以我們讓計算機產生0和1時也必須使0和1出現的機會相等。EXCEL模擬拋擲錢幣的試驗是由數據分析中的隨機數發生器產生的。隨機數發生器的參數設置如下圖所示:

圖2.1 EXCEL隨機數發生器參數設置
由于我們考察一個錢幣的情況,所以變量個數設為1,隨機數個數相當于我們拋擲次數,如果拋擲100次則隨機數個數設為100;分布是指拋擲錢幣時正反面出現的規律,也就是0和1出現的規律。通常拋擲錢幣的試驗叫作柏努利試驗,我們在分布欄中選擇柏努利。參數P(A)是指正面出現的可能性,一般均質的錢幣其正面和反面出現的可能性是相等的,各為0.5,因此這里選擇0.5。輸出項是指每次拋擲錢幣的動作,產生的結果(正面1.反面0)在EXCEL表格中所保存的位置。下表為我們用計算機模擬3組拋擲錢幣的結果:
表2.2 計算機模擬拋擲錢幣正反面出現情況

從上表可以看出,三組試驗中,雖然同一組中拋擲錢幣的次數一樣,但是同一組中錢幣正面出現的次數卻各不相同,因此其頻率也不一樣。拋擲次數較少的組(如拋擲次數為50次的組),錢幣正面出現的次數差距比較大,拋擲50次的組正面出現的平均頻率為44%;而隨著錢幣拋擲次數增多,正面出現的次數的差距逐漸減少,其頻率逐步穩定在50%左右,500次組的平均頻率為49.24%;5000次組的平均頻率為49.56%。
大量試驗證明,拋擲錢幣這樣的試驗,其正面出現的頻率會隨著試驗次數的增多逐步穩定于某一個固定的值附近。這就是隨機現象頻率的穩定性。這個規律我們通過大量的統計就可以發現。這也是進行統計的意義之所在。我們直感上認為,拋擲質地均勻的錢幣,其正面和反面出現的機會是一樣的,也就是說其正面和反面出現的可能性各占50%。而上述大量試驗也證明,當試驗次數足夠大時,錢幣正面出現的頻率也逐漸穩定在50%左右。也就是說大量試驗中頻率趨于穩定的那個值可以衡量事件發生可能性大小。我們通常將這個值叫作事件發生的概率。這實際上也是概率的統計定義。通常事件A發生的概率記作P(A)。
有一些現象,由于其出現的結果是有限的,比如投擲骰子,每一次投擲,骰子出現的點數總是在1、2、3、4、5、6這個范圍內;投擲錢幣時,每次結果總是正面或反面中的一個。而且根據我們的經驗,只要骰子和錢幣的質地是均勻的,那么每次投擲時,這些結果出現的可能性是一樣的,因此我們可以計算出投擲骰子時,其某一點出現的概率為1/6;投擲錢幣時其正面和反面出現的概率為1/2。但是,也有一些現象,其可能出現的結果是無限的,而且每一個結果出現的可能性并不相等,這樣的現象我們就很難精確計算出其某一個結果出現的概率值。比如語言中詞匯使用的概率;某一個作家使用某一長度句子的概率。這些現象的概率就需要用概率的統計定義來理解。
另外,投擲骰子時,其結果總是在1、2、3、4、5、6這六個數之中,也就是說隨機變量的取值總是這六個數。這六個數是有限的,并且可以進行窮盡性列舉的。像這樣取值為有限個而且可以窮盡列舉的隨機變量我們稱之為離散型隨機變量。進行計量文體研究時所涉及的作家年齡等都屬于離散型隨機變量。還有一種情況就是,隨機變量的可能取值不是有限的,而且不能夠進行窮盡性列舉,其取值范圍可能是某兩個實數之間的任意一個數。比如,人的身高等等。這樣的隨機變量我們將其稱之為連續型隨機變量。其實句子的長度也可以近似地看成是連續型隨機變量。
條件概率
我們在上述描述頻率和概率的過程中,有一個十分值得注意的現象就是,試驗是獨立進行的,也就是前面的試驗結果不對后面的試驗結果產生影響。比如我們投擲錢幣時,假設我們第一次投擲出現的是正面,接著投擲第二次,第二次的結果是正面還是反面和第一次是沒有關系的。這叫作事件獨立性。但是,日常生活中兩個事件的發生不可能都是互不相關的,有時他們是互為因果關系的。比如我們寫文章時,當用了“雖然”這個詞,那么其后面的行文中出現“但是”的可能性就會很高。也就是說,漢語文章中“但是”出現的概率和其前文中有沒有出現“雖然”有很大關系。如果我們要計算“雖然”出現的情況下,“但是”出現的概率,就叫作“雖然”發生的條件下“但是”發生的條件概率。通常事件A發生的條件下B發生的條件概率可記作P(B|A)。上述,“雖然”發生的條件下“但是”發生的條件概率就記為P(但是|雖然)。
和概率的計算一樣,有些現象的條件概率是可以精確計算的。比如:我們在一只箱子里面放5只白球和5只黑球,將其搖均勻。然后,從其中摸取一只,并且不放回去,再從剩下的9只中摸取一只。問如果已知第一只球是白色的條件下,摸取第二只球是黑色的概率是多少?這就是條件概率,而且可以精確計算出來,P(黑|白)=1/9。
但是,有很多現象的條件概率是不能夠精確計算的。比如上述“雖然”出現的條件下“但是”出現的條件概率P(但是|雖然)。這就需要運用概率的統計定義去分析統計。因為根據概率的統計定義,在多次試驗中某一事件發生的頻率會穩定在概率附近,因此,我們可以從大量的語料中進行統計,在統計的基礎上得出P(但是|雖然)的值。
概率的乘法公式
另外,當我們知道A、B兩個事件同時發生的概率P(AB)和某一個事件A單獨發生的概率P(A),那么我們就可以利用下面的公式計算事件A發生的條件下,事件B發生的條件概率P(B|A):

這也是條件概率的定義。根據條件概率的這一定義,我們可以得出以下重要公式:
P(AB)=P(B|A)P(A)……………………………2.3
P(AB)=P(A|B)P(B)……………………………2.4
P(ABC)=P(A)P(B|A)P(C|AB)……………2.5
推而廣之,有以下公式成立:

這就是概率論中應用非常廣泛的乘法公式。在語言研究中由于經常需要計算相鄰的字和詞同時發生的概率或者某個字(詞)出現的情況下另外一個字(詞)出現的概率,乘法公式就會發揮重要的作用。