信息熵(Entropy)到底是用來衡量什麼的?——與Philip ZHANG商榷
思明
Philip ZHANG先生在反駁彭小明的時候,提出一個觀點,他說:「 就語言文
字來說,整體效率不是用民族主義來衡量的,而是用信息熵(Entropy)來衡量
的。」
張先生介紹說:
計算文字效率的基本公式是:
H=-log2(P)
H 為信息熵的值(或叫信息量),單位是比特(bit)。
在這基點上,他根據資料引證:
英文的平均信息熵是 4.03 比特,
法文的平均信息熵是3.98,
西班牙文的是 4.01,
德文的是 4.10,
俄文的是 4.8,
而中文的平均信息熵是 9.65比特
於是,「漢字是落後的,無論是簡體還是繁體」就成了他輕鬆得到的結論。
其實,要反駁他的結論是一點也不困難的,甚至可以說是非常輕鬆的——只要
知道什麼是一種文字的「平均信息熵」。
只可惜,張先生把方向正好弄錯了180度。
公式是有的,叫做平均信息熵也確實。但是根本就不是文字效率的基本公式,
而是在通訊中編碼的碼長的效率!提出這公式,申農是用以研究信息編碼的。說得
通俗一點,就是要(在可能有噪音的情況下)把已方(信息源)的信息進行標準化
編碼(比如,0-1化),然後傳送出去,對方接收,解碼,恢復成原來的信息。
研究的重點,是多長的一組碼為合理——如果太短,無法正確還原,如果太
長,就有冗余。
在接下去談以前,先要強調,是碼長的節約或冗余,不是信息本身的節約或冗
余。比方說,如果拿盡用分幣買東西,分幣已經多得很,錢卻不一定夠。這是兩回
事。
以英語為例,信息源集合大體是26個字母加上一個空格,這是基本集合。要傳
送給任何對方(比如用莫爾斯電碼),碼長要幾位「0-1」?滿打滿算,是五位。
要是用「平均信息的觀點」來研究處理,會發現:有些字母出現得經常,另外
一些比較不經常用,所以信息源是有點特徵的,這特徵就是信息含量不「飽滿」。
通俗地說,如果英文字母中只有一部分常用,其他罕用,通過巧妙編碼可以把碼長
縮為4個多一點點。實際上由於目前通訊瓶頸已經不像半世紀以前那樣重要,電腦
裡的正規編碼方案全是冗余方案,並無人真正採用緊縮方案,連考慮的價值也沒
有。
那麼怎樣計算信息量又是怎麼回事呢?
以電腦的0-1編碼方法為例,如果「0」和「1」以均等機會出現,P就是1/2,
對數就是-1,H就是1。因此它的信息含量就是1個比特(bit)。如果出現得不均
勻(比如說基本是「0」出現,偶爾才有「1」出現),那麼「0」的P值接近於1,
其對數自然接近於0;另外的「1」的P值接近於0,對數就接近於負無窮,經過加權
平均,(這種無窮乘以0的極限,自然可以用(數學上的計算)方法求出)信息比1
個比特(bit)更小。
因此,任何一組碼的元素(比如英文字母),在最有效使用的情況下,可以傳
達的信息量最大,等於log2(N)(以源碼的元數為N,例如英文的滿荷值為4.75;
俄文為5.08;按照中文的字數,小字庫為12多,大字庫為14多。等等)。
大家知道,英文字母平均信息熵是 4.03 比特,說明它有一點「浪費」(因為
2的4次方是16,這只相當於均勻使用了16個字母)。如果英文的「平均信息量」少
到1或者2,就相當於只有兩個或者四個字母了。所以張先生對英文的表揚可真的一
點意義沒有。
那麼,假設我們的祖先造的漢字只用了很少的部分,平均信息熵就會很小,比
如,要是只用「是,不」二字而其他文字統統不用,那就只要有一個比特就夠。
張先生以為「平均信息熵」越少越好,是犯了一個「方向的錯誤」。可見,張
先生在信息科學上的知識是多麼脆弱,多麼不精確!用這樣的東西作為「證據」,
要我們信改革有幾千年歷史的漢字很是必要,太不負責!
張先生又引用說:
本世紀四十年代,申農和霍夫曼等科學家提出了信息熵理論和方法,基本定理
是:在一種非擴展的無記憶信息源中,字符編碼的長度不能小於信息源的熵。這個
定理適合所有的語言文字,是計算機和網絡通訊的科學技術基礎和工程設計的基本
依據。
這句話全對。不知道張先生是哪裡引用來的,但是張先生顯然不理解其含義。
這話說明的是什麼?原來,這不過是說,因為英文的平均信息熵是4多一點,因此
作為通訊用的英文字符集的實用長度也至少要有那麼長。德文和俄文的字母比英文
多幾個,它們多含一點信息量是正常的。德國人之不改動字母,絕對不是因為信息
量多還是少的緣故。多更不是壞事。其實,大家知道在電腦裡英文字母、德文、俄
文統統用的是8位(8比特)。8位的滿存儲是256個字符,大家相聚在一起,誰多用
誰少用,不會去斤斤計較。德國人也讀英文,俄國人也用德文,更沒有人用它來比
較「語言的優劣」。
中文,一開始是用了雙字節的(即16比特),滿存儲是6萬多,現在中文用了
約1/3(當然其他文種還要用)。這和中文的效率並無直接的聯繫。如果,用一個
漢字表達的「意思」的量,如果(平均起來)和一個英文字母一樣多,那漢字就真
太落後了!
真是這樣?我們的漢字真會這麼落後?比如「我」是兩個字節,「I」是一
個字節。這就是中文不如英文的「唯一例子」了。但是「人、是、起、而、日、
月、用、無、……」這幾百成千個單字(嚴格說所有漢字)英文裡都只要一個字母
嗎?不是。英文的字母只有26個,充其量只能有這26個比中文好——可惜英文的單
字母詞只有一個「I」,一個「a」(意義太簡單,還無獨立使用權)其他的(例如
of,on,to,we,me,go,……)能和漢字打平就好。請注意,在用26個字母構成
的676種二字母組合中,有意義的少之又少(比如aa,ab,ac,ad,ae,……就幾
乎全無意義)。所以,如果有人用漢字對比英文(在同樣意義的詞彙)的byte數,
十有八九漢字要「節約」得多!
自然英文通過製造縮寫的辦法解決了不少問題——UN,USA,WTO,所以說漢字
絕對優越也要謹慎。
最最可笑的是,如果要按照「用拼音」的建議把中文翻譯成拼音(即使那聲調
的符號省去、詞彙連寫等方法全用上),那byte數要大大增加了,雖然那「平均信
息熵」也許還降低了(總不超過5)。打個比方,改用拼音的張先生可以告訴別
人,我的平均信息量已經降低到4多一點(就是說『我現在終於只要用一分的硬幣
買東西了,雖然我每年的開支因此增加了三倍,我才不在乎!』)。因為拼音裡除
了a、e以外,是不許單獨字母成字的,就是a、e,還留空格。所以如果說要用拼音
作文字,在浪費字節上是天下第一的「文字」——看不易懂還暫且不說!在這個意
義上說,「從一九八九年開始,《人民日報》等報刊就用同樣的手法抨擊中文改
革,連續發表文章鼓吹『漢字優越』,說中文改革是盲目西化和導致中國文化傳統
消亡,等等。」真是做得對極了,好極了!
張先生又說:
中文的平均信息熵是 9.65比特,在計算機信息作業的時候,漢字的每個字符
需》要兩個字節的空間,因而中文的信息處理和傳遞的整體效率比英文等拼音文字
的效率要低得多。
這是完全違背基本常識的。套用他的汽車比喻,這好像是說:「獨輪車無疑比
12輪大卡車節省10倍,走的路只有1/10」;又好比說「用一元錢的鈔票買東西比用
五角錢的貴一倍」;等等……
儘管我們已經說明漢字實際上比英文和其他拼音文字只簡不冗(從佔用字節數
的角度看),語言學上的問題仍然相當複雜,誰簡誰繁似乎也還難以成為一種語言
優劣的絕對定論。比如世界語、數學語言、電腦的彙編,顯然都極簡單而且規範,
可是要代替自然的生活語言明明是不行的。這個問題我們暫且不討論。
張先生的文章還存在許多其它問題,比如他說:
不管誰在使用和在哪裡使用,也不管使用者的民族感情如何,這些文字的信息
熵還是它們的信息熵。
他根本就不知道,除了整個「民族」的平均信息熵以外,人人的語言都有其獨
特的信息熵。比如「不高興」先生,碰到事情一般都是不高興;總說「喳」的太
監,他們的語言中的平均信息熵都很小。同樣的字符集而熵小,這絕對不是什麼先
進,是貧乏。
附帶說一句,張先生犯的這個錯誤,國內某一派的「著名語言學家」在十多年
前已經犯過,也被人尖刻批評過。他們既無法理解(大概對於數學絕緣)也不吱
聲,以至於十年過去後,他們的文改信徒還不斷重複這錯誤。可悲又可歎,若把語
言文字工作交給這等「既不內行又不熱心」的人!
[中國研究/zgyj1999/xiamian.htm]
--
Reference:
http://boole.cs.iastate.edu/book/5-%BC%AF(%CE%C4%D1%A7)/2-%CD%F8%C2%E7%D4%D3%D6%BE/%D6%D0%B9%FA%D1%D0%BE%BF/%D6%D0%B9%FA%D1%D0%BE%BF/www.topsin.net/zgyj/zgyj1999/zgyj9910/g991007e.htm
沒有留言:
張貼留言