有想認識世界的慾望,有認識的能力,這是人與其他生物在生理上的最大區別,而這個慾望和能力也導致了科學和技術的產生,徹底改變了人類的生存面貌。如何認識這個世界呢?這就是認識論,認知論涵蓋很多方面的內容,要回答最關鍵的問題,針對這些關鍵問題,我試著給出粗略答案,供大家參考。
世界是不是可以被認識,世界的執行是因果性的,還是隨機性的?
答案:世界的執行有很多方面,人類只能分別去認識,各種因素的組合無窮無盡,人類的認識也無窮無盡,科學研究沒有終點,物理學的所謂聖盃解決後還會有下個聖盃。
世界的執行既有因果性的,也有隨機性的,整體上是隨機性的,多個具有因果性的因素組合在一起,經過多級演化,計算量幾何增加,到一定程度就會超過計算能力,也就相當於隨機性了。因果關係可以是100%的,也可以低於100%,又叫相關性,用機率描述
科學理論是反映了世界的本質,還是僅僅是個人類能理解的解釋工具?
答案:現在的科學都是解釋工具,至於未來能否找到世界本質,不知道。科學的進步就是把解釋工具變得更適用些。為了適用範圍更大,常常需要更抽象的概念,更統一的規則,理解難度會大大增加。
是世界導致心智的產生,還是心智產生世界?
答案:世界的一部分產生心智,心智的一部分生成世界,心智無法用科學解釋,1000億個神經細胞產生心智,1000億個二極體只是機器。
人類發明的推理工具是否可靠?
答案:不一定可靠。推理有歸納和演繹兩種。
歸納是從有限個命題總結出一般性命題,無法保證特例不出現。只有歸謬和遞推式歸納才可以保證結論正確。
演繹是從一般命題推匯出特殊命題,但一般命題要麼是直覺判斷的,要麼是歸納總結的,都不能保證一定正確。而且一般命題常常有嚴格的條件限制,尤其是社會科學,其假設的前提侷限性都很強,現實中很少存在,所以其理論一般沒多大實用價值,典型的如計量經濟學。
雖然推理大多不可靠,但只要沒有發現推理的特殊結論有錯誤的,我們就要認可。推理工具可以大大拓展我們的知識,人類的感官只能感受有限的資訊,而且是雜亂的,矛盾的,而推理可以發現背後的規律,消除矛盾。利用規律就可以預測和把握無窮資訊。人腦也無法記憶太多結論,把結論公理化,人腦就不需要記憶太多結論,只需記住最基本公理和定理即可,其他的需要時很容易就能推匯出來。
推理方法及其重要,是人類認識世界的根本方法,下面做些詳細介紹。
推理的兩種方式:歸納和演繹
歸納推理:
因為常常不能窮盡該領域內的所有命題,所以無法證明該領域內所有命題正確。如:中國的天鵝是白色的,美國的天鵝是白色的,英國的天鵝是白色了,然後推匯出所有天鵝是白色的。這個就沒辦法保證是正確的,人類不可能把地球上所有天鵝都抓來看下顏色。
另外一個歸納的問題是有隱含假設條件,而這個條件沒辦法保證正確。比如:太陽前天是從東方升起,昨天也是從東方升起,今天也是從東方升起,所以明天太陽也會從東方升起。這裡就有個隱含條件:太陽不會變化。但這個隱含條件是無法保證正確的,所以這種歸納得出的新結論依然無法保證正確。
歸納本質上沒法保證正確,但只要沒有反例,我們只能假設正確。但如果可以透過歸謬和遞推證明,結論就可以保證正確,這種歸納只適用於極少數問題。歸謬的本質是邏輯矛盾,邏輯是世界投射到心智上的基本秩序。遞推歸納是初始命題正確,如果第n個命題也正確,下一個一定也正確,這樣就推理出所有命題都正確。
演繹推理:
由大結論推導子結論,本質上沒有產生新知識。大結論常常又稱為假設或公理,它們的得出是透過歸納。
舉例1:歐式幾何學:所有結論都是10個公理的子結論,10個公理是頭腦中歸納出來的,想象不出反例,如兩點確定一條直線,想象不出確定2條的例子。
舉例2:牛頓的萬有引力定律: 是由開普勒3定律和牛頓三定律推理出來的子結論,但萬有引力定律更簡潔,因而才是更本質的結論。開普勒3定律是透過觀察資料歸納出來的。
舉例3:狹義相對論:所有結論是由兩個大結論演繹出來的子結論,兩個大結論:光速不變和相對性原理,光速不變是麥克斯韋方程推匯出來的也是實驗驗證出來的結論,麥克斯韋方程是歸納出來的,相對性原理是總結經驗得出的,並且是大結論(自然規律是統一的)的子結論(如果這個結論不成立,大自然就是雜亂的,無法認識和總結,人類的思考就無意義)。
從演繹的開始原點看,人類認識自然的更源頭更本質的方法是歸納。歸納出幾個大結論,然後演繹出所有子結論,形成一個理論體系,解釋和預測所有該領域現象,只要大結論正確,所有子結論就正確,我們就可放心使用該理論。
大結論和演繹出來的子結論間是一種因果關係,這種因果關係有兩種:100%因果關係和低於100%因果關係,通常的理論體系都是指100%因果關係的。
符合100%因果關係的佔比極少,大多存在於完全抽象的數學世界中和簡化的物理模型中。這個就不再詳細講解,
現實世界的因果關係絕大部分是低於100%的,又叫相關性。這就涉及到推匯出的結論可靠度問題。貝葉斯定理就是研究這個問題:由已知的結論,推匯出另外結論成立的機率。可以說生活工作中所有方面都能用到,但大多人並不掌握這個簡單的數學工具。如:各種決策判斷,炒股,找工作,疾病判斷等,現在的熱門應用有:語言翻譯,影象識別,人工智慧等。下面就重點講下這個理論工具:貝葉斯定理。
貝葉斯定理詳細講解:
貝葉斯定理就是條件機率,假設有兩類事件,A事件發生導致一定機率的B事件發生,類中事件間互斥,即A1,A2,A3,..互斥(機率之和等於1),B類事件相互間沒有關聯。A1發生可以導致產生B1,B2..;A2發生也可以導致產生B1,B2....。已知B1發生了,求A1發生的機率,首先要算出B1發生的總頻次,然後在這裡面找A1的頻次,後一個頻次除以前一個頻次就得出 A1發生的機率。接著又發生B2,這時A1發生機率是多少,同樣的方法,在剛才已算出B1發生A1機率的基礎上再算。這個定律是英國神父貝葉斯在18世紀發現的。
網上有大量介紹資料,但很多都有錯誤和誤導。
有關貝葉斯定理的常見錯誤和誤導:
§ 認為貝葉斯定理是人類認識真實世界的逼近手段,可以先隨便假設一個機率,稱為先驗機率或主觀機率,然後根據拿到的真實樣本,重新計算機率,稱為後驗機率或客觀機率。正確看法:貝葉斯定理不是逼近手段,是真實的機率,先驗機率是有可能對結果造成巨大偏差的,不可隨便假設一個先驗機率,必須透過大樣本統計得出。
§ 使用名詞:主觀機率,客觀機率,先驗機率,後驗機率。我的看法:這種稱呼和名詞不適合,容易造成誤導,主觀機率或先驗機率就是所有樣本的統計機率,不是主觀或先驗的。
§ 認為貝葉斯定理的結論違反直覺。正確看法:不是違反直覺,是忽視了某個因素,只要語言不造成誤解,關注所有資料,直覺和貝葉斯定理的結論是一致的。
§ 醫學診斷,第一次發現問題,必須要再檢測。正確做法:如果是失誤造成的,二次檢測意義重大,若不是就沒有意義。如艾滋病人某蛋白為陽性,但正常人也有極少量為陽性,則二次檢測沒意義。
§ 演算法:先算總機率,再算分機率,兩個相除得出第一次發生機率,若又有新事實,在前一個算出的發生機率的基礎上再同樣算一次,這種演算法太繁瑣。簡潔的演算法:比值演算法,直接分類算頻次,然後相除得出比值,透過比值相加得出總頻次,分類頻次除以總頻次即得出另一事件發生機率。如果發生的事件有多次,計算更為簡潔。比值演算法有個關鍵要求:分類算的頻次相加等於總頻次,或者各分類的機率之和等於1。
針對這些錯誤和誤導,有必要在這裡做個較詳細的講解,為了讓所有人看懂,全部使用小學算術知識講解,並用多個例子說明。
例子一:
郵件箱中收到大量郵件,有詐騙郵件,有正常郵件。根據統計,詐騙郵件中出現文字:“中獎”佔30%,出現“www.”佔40%;正常郵件出現“中獎”佔1%,出現“www.”佔2%。資料統計顯示郵箱中詐騙郵件佔比為20%,隨機抽取一封郵件發現含有“中獎”和“www.”,這封郵件是詐騙郵件的機率是多少。
分析:
A類事件就是郵件型別:詐騙和正常,B類事件就是發現欄位:“中獎”,“www.”
先介紹網上和教課書上的解法,再介紹一種非常簡單的比值解法。
分兩步求解:先算髮現“中獎”後,詐騙郵件的機率,然後在這個基礎上又發現“www.”機率又提升到多少。
例子中所用的“頻次”是指發生的次數,在總次數是1時內涵完全和機率相同,只是有時樣本有具體數量時用頻次更好理解。
第一步:算髮現“中獎”文字時判斷是詐騙郵件的機率
有“中獎”文字的郵件的總頻次:
正常郵件有“中獎”+ 詐騙郵件有“中獎”=
80% x 1% + 20% x 30% = 6.8%
詐騙郵件中有“中獎”文字的郵件頻次:
20% x 30% = 6%
發現了“中獎”文字的郵件,這個郵件是詐騙郵件的機率:
6% / 6.8% = 88.23529%
第二步:又發現這個郵件還含有“www.”,這封郵件是詐騙郵件的機率是多少
這裡的關鍵就是:這時透過發現“中獎”字樣已確定詐騙郵件的可能是88.2%,不再是初始的20%,又發現“www.”要按88.23529%算新頻次。
有“www.”文字的郵件的總頻次:
正常郵件有“www.”+ 詐騙郵件有“www.”=
(1-88.23529%) x 2% + 88.23529% x 40% = 35.5294%
詐騙郵件中有“www.”文字的郵件頻次:
88.23529% x 40% = 35.2941%
這個郵件是詐騙郵件的機率提高到:
35.2941% / 35.5294% = 99.3377%
上面就是通常所見的條件機率演算法,網上和教科書上介紹的都是這種演算法。其實有一個可以大大簡化的方法:
把機率轉化為比值:詐騙郵件的機率換成詐騙郵件和正常郵件的比值(兩個比值的事件必須互斥,即機率和等於1),含義等效,但可以大大簡化演算法和理解:
詐騙郵件發現“中獎”和“www.”的頻次:
20% x 30% x 40%
正常郵件中發現“中獎”和“www.”的頻次:
80% x 1% x 2%
兩者的比值:
20% x 30% x 40% /(80% x 1% x 2%) = 150:1
因為兩者是相斥事件,機率之和等於1,所以比值可以轉化為單獨事件的機率: 150/(150+1) = 99.3377%
透過比值演算法,可以很輕易看出初始機率值即垃圾郵件佔比20%對結果有影響,所以那種說先驗機率後驗機率,甚至說先隨意假設個先驗機率,然後不斷修正,這個說法有很大誤導,除非後續的發生機率都很低,導致最終的機率接近100%,否則所謂先驗機率,或者叫主觀機率也好,對所謂後驗機率影響巨大。
透過比值演算法,也可以輕易看出先檢查哪個文字,判斷詐騙郵件的結果都一樣,這個如果是增加很多文字檢查,比值演算法的優勢更大。
垃圾郵件判斷的例子用來解釋貝葉斯定理網上很多,但其實這類例子不合適,因為有個暗含的條件導致第二次檢測不能用貝葉斯定理,但大家都無視它,即欄位“中獎”和“www.”一般不是無關的,含有“中獎”的郵件一般也會含有“www.”,所以不應該用全部樣本的機率值:詐騙郵件40%和正常郵件2%。假如統計的結果是:含有“中獎”的郵件有50%含有“www.”。頻值計算就應該是:
詐騙郵件頻次:
20% x 30% x 50% (40%,50%取較大者)
正常郵件的頻次:
80% x 1% x 50% (2%,50%取較大者)
兩者的比值: 7.5 :1
可以看出,一旦第二類事件間有關聯,除了第一次檢測,後續增加文字檢測失去意義。
例子二(網上常見的一個例子):
兩個盒子,A裝了30個紅球70個白球;B裝了30個紅球70個白球,隨意拿出一個盒子,從中拿出一個球看顏色,記下然後放回,再拿一個看顏色記下放回。如果拿了12次,8次紅球,4次白球,問是盒子A的機率是多少。中間不換盒子(這一點常常不提醒)。
解法:
網上的解法都是一次次來驗算,然後代入下一次,甚至用到python程式設計,用電腦算,非常繁瑣,並且不能輕易看出先算紅球或白球的順序對結果的影響。用比值演算法就簡單很多。
假設拿盒子隨機,都有50%機率拿到,從A盒子拿8次紅球4次白球的頻次:
50% x (70/100)^8 x (30/100)^4
從B盒子拿8次紅球4次白球的頻次:
50% x (30/100)^8 x (70/100)^4
上面的頻次相除,得出頻次比值:2401 :81
只在一個盒子中拿球,要麼是在A盒拿球,要麼是在B盒拿球,機率之和等於1,所以兩個盒子的頻次比值可以轉化為盒子A的機率:
2401 / (2401+81) = 96.7 %
如果我們不是隨機拿盒子,或者兩個盒子的球數不同,例如初始拿A盒子的機率是20%:
比值就變成了:
20% x 2401 : 80% x 81
12次驗證後A盒子機率為88%。
透過比值演算法很容易理解:紅球和白球,先驗算哪個就是先乘哪個機率因子,結果都一樣,同樣得出所謂先驗機率或主觀機率或叫基礎機率肯定是有影響的,如果兩個盒子的球比差別不大,這個影響就是巨大的。
例子三(網上常見的例子):
艾滋病人某個蛋白檢測為陽性的機率是99.99%
正常人某個蛋白檢測為陽性的機率為0.1%
社會上患艾滋的人佔比為0.01%
現檢測出某人這個蛋白顯示為陽性,問這個人患艾滋的機率多大?
社會中艾滋病人檢測出該蛋白為陽性的頻次:
0.01% x 99.99%
社會中正常人檢測為陽性的頻次:
99.99% x 0.1%
檢測出陽性的艾滋病人頻次和檢測出陽性的正常人比值:
0.01% x 99.99% : 99.99% x 0.1%
= 1:10
檢測為陽性的人得艾滋病的機率為1/(1+10) = 9.1%
這個例子常常用來說人的直覺是錯的,其實不是直覺錯,而是對資料不敏感,不能關注所有資料,稍微的數學訓練,願意簡單計算的人直覺也不會錯。
檢查為陽性,醫生一定會要求再檢查一次,又檢測為陽性時患病的機率是多少?
社會中艾滋病人兩次檢測該蛋白為陽性的頻次:
0.01% x 99.99% x 99.99%
社會中正常人兩次檢測為陽性的頻次:
99.99% x 0.1% x 0.1%
二次檢測為陽性的艾滋病人與二次檢測為陽性的正常人頻次比值:
0.01% x 99.99% x 99.99% : 99.99% x 0.1% x 0.1%
= 99.99 : 1
二次檢測為陽性患病的機率為: 99.99/(99.99 +1) = 99%
二次檢測意義重大,但前提是正常人檢測為陽全是檢測失誤所致,而不是正常人也有陽性的。若正常人也有陽性的,那麼第一次檢測為陽性的正常人,第二次也是陽性,則二次檢測為陽性的患病人和正常人的比值:
0.01% x 99.99% x 100% : 99.99% x 0.1% x 100%
和第一次檢測相同,第二次檢測無意義。
總結:
透過上面3個例子,大家應該可以瞭解如何計算條件機率,以及容易出錯和誤解的地方。網上的介紹資料全部採取按次的演算法,不但繁瑣,而且難於理解,還喜歡用標記符號:P(Ai|Bi), i=1,2,3...。道理上並沒錯,但為什麼不用簡潔易懂的比值演算法?這其實涉及到對數學工具的正確使用。數學本質上是形式推理系統,幫助降低大腦推理難度,符號代替數量,運算律代替推理邏輯,推理過程不再考慮實際意義,直接按運算律演算。數學工具最能發揮優勢的地方:物件間的關係複雜,如:用微分方程組表達變化率方面的數量關係,透過積分運算就能得出物件解。如果物件間的關係簡單,再用複雜數學工具反而添亂。
隨著大資料時代的到來,各種統計資料會越來越多,條件機率的應用會更加頻繁。我們每個人都應該掌握這個基本工具,這樣才能對外界有更準確的判斷和認識。
綜合上述所講,我們如何認識這個世界呢?首先,我們要知道幾個關鍵的認識論問題,然後掌握推理的工具。推理工具有兩個:歸納和演繹。它們是我們認識這個世界的根本方法,否則雜亂和矛盾的資訊,我們的大腦無法把握。推理可以讓我們只需掌握少量命題(資訊),其他命題(資訊)需要時推理得出。推理也讓我們把握了命題間的關係,有少量是100%的因果關係,更多的是小於100%的相關關係。要把握相關性需要用到條件機率。條件機率應用很廣,每個人都應該學會使用。
有想認識世界的慾望,有認識的能力,這是人與其他生物在生理上的最大區別,而這個慾望和能力也導致了科學和技術的產生,徹底改變了人類的生存面貌。如何認識這個世界呢?這就是認識論,認知論涵蓋很多方面的內容,要回答最關鍵的問題,針對這些關鍵問題,我試著給出粗略答案,供大家參考。
世界是不是可以被認識,世界的執行是因果性的,還是隨機性的?
答案:世界的執行有很多方面,人類只能分別去認識,各種因素的組合無窮無盡,人類的認識也無窮無盡,科學研究沒有終點,物理學的所謂聖盃解決後還會有下個聖盃。
世界的執行既有因果性的,也有隨機性的,整體上是隨機性的,多個具有因果性的因素組合在一起,經過多級演化,計算量幾何增加,到一定程度就會超過計算能力,也就相當於隨機性了。因果關係可以是100%的,也可以低於100%,又叫相關性,用機率描述
科學理論是反映了世界的本質,還是僅僅是個人類能理解的解釋工具?
答案:現在的科學都是解釋工具,至於未來能否找到世界本質,不知道。科學的進步就是把解釋工具變得更適用些。為了適用範圍更大,常常需要更抽象的概念,更統一的規則,理解難度會大大增加。
是世界導致心智的產生,還是心智產生世界?
答案:世界的一部分產生心智,心智的一部分生成世界,心智無法用科學解釋,1000億個神經細胞產生心智,1000億個二極體只是機器。
人類發明的推理工具是否可靠?
答案:不一定可靠。推理有歸納和演繹兩種。
歸納是從有限個命題總結出一般性命題,無法保證特例不出現。只有歸謬和遞推式歸納才可以保證結論正確。
演繹是從一般命題推匯出特殊命題,但一般命題要麼是直覺判斷的,要麼是歸納總結的,都不能保證一定正確。而且一般命題常常有嚴格的條件限制,尤其是社會科學,其假設的前提侷限性都很強,現實中很少存在,所以其理論一般沒多大實用價值,典型的如計量經濟學。
雖然推理大多不可靠,但只要沒有發現推理的特殊結論有錯誤的,我們就要認可。推理工具可以大大拓展我們的知識,人類的感官只能感受有限的資訊,而且是雜亂的,矛盾的,而推理可以發現背後的規律,消除矛盾。利用規律就可以預測和把握無窮資訊。人腦也無法記憶太多結論,把結論公理化,人腦就不需要記憶太多結論,只需記住最基本公理和定理即可,其他的需要時很容易就能推匯出來。
推理方法及其重要,是人類認識世界的根本方法,下面做些詳細介紹。
推理的兩種方式:歸納和演繹
歸納推理:
因為常常不能窮盡該領域內的所有命題,所以無法證明該領域內所有命題正確。如:中國的天鵝是白色的,美國的天鵝是白色的,英國的天鵝是白色了,然後推匯出所有天鵝是白色的。這個就沒辦法保證是正確的,人類不可能把地球上所有天鵝都抓來看下顏色。
另外一個歸納的問題是有隱含假設條件,而這個條件沒辦法保證正確。比如:太陽前天是從東方升起,昨天也是從東方升起,今天也是從東方升起,所以明天太陽也會從東方升起。這裡就有個隱含條件:太陽不會變化。但這個隱含條件是無法保證正確的,所以這種歸納得出的新結論依然無法保證正確。
歸納本質上沒法保證正確,但只要沒有反例,我們只能假設正確。但如果可以透過歸謬和遞推證明,結論就可以保證正確,這種歸納只適用於極少數問題。歸謬的本質是邏輯矛盾,邏輯是世界投射到心智上的基本秩序。遞推歸納是初始命題正確,如果第n個命題也正確,下一個一定也正確,這樣就推理出所有命題都正確。
演繹推理:
由大結論推導子結論,本質上沒有產生新知識。大結論常常又稱為假設或公理,它們的得出是透過歸納。
舉例1:歐式幾何學:所有結論都是10個公理的子結論,10個公理是頭腦中歸納出來的,想象不出反例,如兩點確定一條直線,想象不出確定2條的例子。
舉例2:牛頓的萬有引力定律: 是由開普勒3定律和牛頓三定律推理出來的子結論,但萬有引力定律更簡潔,因而才是更本質的結論。開普勒3定律是透過觀察資料歸納出來的。
舉例3:狹義相對論:所有結論是由兩個大結論演繹出來的子結論,兩個大結論:光速不變和相對性原理,光速不變是麥克斯韋方程推匯出來的也是實驗驗證出來的結論,麥克斯韋方程是歸納出來的,相對性原理是總結經驗得出的,並且是大結論(自然規律是統一的)的子結論(如果這個結論不成立,大自然就是雜亂的,無法認識和總結,人類的思考就無意義)。
從演繹的開始原點看,人類認識自然的更源頭更本質的方法是歸納。歸納出幾個大結論,然後演繹出所有子結論,形成一個理論體系,解釋和預測所有該領域現象,只要大結論正確,所有子結論就正確,我們就可放心使用該理論。
大結論和演繹出來的子結論間是一種因果關係,這種因果關係有兩種:100%因果關係和低於100%因果關係,通常的理論體系都是指100%因果關係的。
符合100%因果關係的佔比極少,大多存在於完全抽象的數學世界中和簡化的物理模型中。這個就不再詳細講解,
現實世界的因果關係絕大部分是低於100%的,又叫相關性。這就涉及到推匯出的結論可靠度問題。貝葉斯定理就是研究這個問題:由已知的結論,推匯出另外結論成立的機率。可以說生活工作中所有方面都能用到,但大多人並不掌握這個簡單的數學工具。如:各種決策判斷,炒股,找工作,疾病判斷等,現在的熱門應用有:語言翻譯,影象識別,人工智慧等。下面就重點講下這個理論工具:貝葉斯定理。
貝葉斯定理詳細講解:
貝葉斯定理就是條件機率,假設有兩類事件,A事件發生導致一定機率的B事件發生,類中事件間互斥,即A1,A2,A3,..互斥(機率之和等於1),B類事件相互間沒有關聯。A1發生可以導致產生B1,B2..;A2發生也可以導致產生B1,B2....。已知B1發生了,求A1發生的機率,首先要算出B1發生的總頻次,然後在這裡面找A1的頻次,後一個頻次除以前一個頻次就得出 A1發生的機率。接著又發生B2,這時A1發生機率是多少,同樣的方法,在剛才已算出B1發生A1機率的基礎上再算。這個定律是英國神父貝葉斯在18世紀發現的。
網上有大量介紹資料,但很多都有錯誤和誤導。
有關貝葉斯定理的常見錯誤和誤導:
§ 認為貝葉斯定理是人類認識真實世界的逼近手段,可以先隨便假設一個機率,稱為先驗機率或主觀機率,然後根據拿到的真實樣本,重新計算機率,稱為後驗機率或客觀機率。正確看法:貝葉斯定理不是逼近手段,是真實的機率,先驗機率是有可能對結果造成巨大偏差的,不可隨便假設一個先驗機率,必須透過大樣本統計得出。
§ 使用名詞:主觀機率,客觀機率,先驗機率,後驗機率。我的看法:這種稱呼和名詞不適合,容易造成誤導,主觀機率或先驗機率就是所有樣本的統計機率,不是主觀或先驗的。
§ 認為貝葉斯定理的結論違反直覺。正確看法:不是違反直覺,是忽視了某個因素,只要語言不造成誤解,關注所有資料,直覺和貝葉斯定理的結論是一致的。
§ 醫學診斷,第一次發現問題,必須要再檢測。正確做法:如果是失誤造成的,二次檢測意義重大,若不是就沒有意義。如艾滋病人某蛋白為陽性,但正常人也有極少量為陽性,則二次檢測沒意義。
§ 演算法:先算總機率,再算分機率,兩個相除得出第一次發生機率,若又有新事實,在前一個算出的發生機率的基礎上再同樣算一次,這種演算法太繁瑣。簡潔的演算法:比值演算法,直接分類算頻次,然後相除得出比值,透過比值相加得出總頻次,分類頻次除以總頻次即得出另一事件發生機率。如果發生的事件有多次,計算更為簡潔。比值演算法有個關鍵要求:分類算的頻次相加等於總頻次,或者各分類的機率之和等於1。
針對這些錯誤和誤導,有必要在這裡做個較詳細的講解,為了讓所有人看懂,全部使用小學算術知識講解,並用多個例子說明。
例子一:
郵件箱中收到大量郵件,有詐騙郵件,有正常郵件。根據統計,詐騙郵件中出現文字:“中獎”佔30%,出現“www.”佔40%;正常郵件出現“中獎”佔1%,出現“www.”佔2%。資料統計顯示郵箱中詐騙郵件佔比為20%,隨機抽取一封郵件發現含有“中獎”和“www.”,這封郵件是詐騙郵件的機率是多少。
分析:
A類事件就是郵件型別:詐騙和正常,B類事件就是發現欄位:“中獎”,“www.”
先介紹網上和教課書上的解法,再介紹一種非常簡單的比值解法。
分兩步求解:先算髮現“中獎”後,詐騙郵件的機率,然後在這個基礎上又發現“www.”機率又提升到多少。
例子中所用的“頻次”是指發生的次數,在總次數是1時內涵完全和機率相同,只是有時樣本有具體數量時用頻次更好理解。
第一步:算髮現“中獎”文字時判斷是詐騙郵件的機率
有“中獎”文字的郵件的總頻次:
正常郵件有“中獎”+ 詐騙郵件有“中獎”=
80% x 1% + 20% x 30% = 6.8%
詐騙郵件中有“中獎”文字的郵件頻次:
20% x 30% = 6%
發現了“中獎”文字的郵件,這個郵件是詐騙郵件的機率:
6% / 6.8% = 88.23529%
第二步:又發現這個郵件還含有“www.”,這封郵件是詐騙郵件的機率是多少
這裡的關鍵就是:這時透過發現“中獎”字樣已確定詐騙郵件的可能是88.2%,不再是初始的20%,又發現“www.”要按88.23529%算新頻次。
有“www.”文字的郵件的總頻次:
正常郵件有“www.”+ 詐騙郵件有“www.”=
(1-88.23529%) x 2% + 88.23529% x 40% = 35.5294%
詐騙郵件中有“www.”文字的郵件頻次:
88.23529% x 40% = 35.2941%
這個郵件是詐騙郵件的機率提高到:
35.2941% / 35.5294% = 99.3377%
上面就是通常所見的條件機率演算法,網上和教科書上介紹的都是這種演算法。其實有一個可以大大簡化的方法:
把機率轉化為比值:詐騙郵件的機率換成詐騙郵件和正常郵件的比值(兩個比值的事件必須互斥,即機率和等於1),含義等效,但可以大大簡化演算法和理解:
詐騙郵件發現“中獎”和“www.”的頻次:
20% x 30% x 40%
正常郵件中發現“中獎”和“www.”的頻次:
80% x 1% x 2%
兩者的比值:
20% x 30% x 40% /(80% x 1% x 2%) = 150:1
因為兩者是相斥事件,機率之和等於1,所以比值可以轉化為單獨事件的機率: 150/(150+1) = 99.3377%
透過比值演算法,可以很輕易看出初始機率值即垃圾郵件佔比20%對結果有影響,所以那種說先驗機率後驗機率,甚至說先隨意假設個先驗機率,然後不斷修正,這個說法有很大誤導,除非後續的發生機率都很低,導致最終的機率接近100%,否則所謂先驗機率,或者叫主觀機率也好,對所謂後驗機率影響巨大。
透過比值演算法,也可以輕易看出先檢查哪個文字,判斷詐騙郵件的結果都一樣,這個如果是增加很多文字檢查,比值演算法的優勢更大。
垃圾郵件判斷的例子用來解釋貝葉斯定理網上很多,但其實這類例子不合適,因為有個暗含的條件導致第二次檢測不能用貝葉斯定理,但大家都無視它,即欄位“中獎”和“www.”一般不是無關的,含有“中獎”的郵件一般也會含有“www.”,所以不應該用全部樣本的機率值:詐騙郵件40%和正常郵件2%。假如統計的結果是:含有“中獎”的郵件有50%含有“www.”。頻值計算就應該是:
詐騙郵件頻次:
20% x 30% x 50% (40%,50%取較大者)
正常郵件的頻次:
80% x 1% x 50% (2%,50%取較大者)
兩者的比值: 7.5 :1
可以看出,一旦第二類事件間有關聯,除了第一次檢測,後續增加文字檢測失去意義。
例子二(網上常見的一個例子):
兩個盒子,A裝了30個紅球70個白球;B裝了30個紅球70個白球,隨意拿出一個盒子,從中拿出一個球看顏色,記下然後放回,再拿一個看顏色記下放回。如果拿了12次,8次紅球,4次白球,問是盒子A的機率是多少。中間不換盒子(這一點常常不提醒)。
解法:
網上的解法都是一次次來驗算,然後代入下一次,甚至用到python程式設計,用電腦算,非常繁瑣,並且不能輕易看出先算紅球或白球的順序對結果的影響。用比值演算法就簡單很多。
假設拿盒子隨機,都有50%機率拿到,從A盒子拿8次紅球4次白球的頻次:
50% x (70/100)^8 x (30/100)^4
從B盒子拿8次紅球4次白球的頻次:
50% x (30/100)^8 x (70/100)^4
上面的頻次相除,得出頻次比值:2401 :81
只在一個盒子中拿球,要麼是在A盒拿球,要麼是在B盒拿球,機率之和等於1,所以兩個盒子的頻次比值可以轉化為盒子A的機率:
2401 / (2401+81) = 96.7 %
如果我們不是隨機拿盒子,或者兩個盒子的球數不同,例如初始拿A盒子的機率是20%:
比值就變成了:
20% x 2401 : 80% x 81
12次驗證後A盒子機率為88%。
透過比值演算法很容易理解:紅球和白球,先驗算哪個就是先乘哪個機率因子,結果都一樣,同樣得出所謂先驗機率或主觀機率或叫基礎機率肯定是有影響的,如果兩個盒子的球比差別不大,這個影響就是巨大的。
例子三(網上常見的例子):
艾滋病人某個蛋白檢測為陽性的機率是99.99%
正常人某個蛋白檢測為陽性的機率為0.1%
社會上患艾滋的人佔比為0.01%
現檢測出某人這個蛋白顯示為陽性,問這個人患艾滋的機率多大?
解法:
社會中艾滋病人檢測出該蛋白為陽性的頻次:
0.01% x 99.99%
社會中正常人檢測為陽性的頻次:
99.99% x 0.1%
檢測出陽性的艾滋病人頻次和檢測出陽性的正常人比值:
0.01% x 99.99% : 99.99% x 0.1%
= 1:10
檢測為陽性的人得艾滋病的機率為1/(1+10) = 9.1%
這個例子常常用來說人的直覺是錯的,其實不是直覺錯,而是對資料不敏感,不能關注所有資料,稍微的數學訓練,願意簡單計算的人直覺也不會錯。
檢查為陽性,醫生一定會要求再檢查一次,又檢測為陽性時患病的機率是多少?
社會中艾滋病人兩次檢測該蛋白為陽性的頻次:
0.01% x 99.99% x 99.99%
社會中正常人兩次檢測為陽性的頻次:
99.99% x 0.1% x 0.1%
二次檢測為陽性的艾滋病人與二次檢測為陽性的正常人頻次比值:
0.01% x 99.99% x 99.99% : 99.99% x 0.1% x 0.1%
= 99.99 : 1
二次檢測為陽性患病的機率為: 99.99/(99.99 +1) = 99%
二次檢測意義重大,但前提是正常人檢測為陽全是檢測失誤所致,而不是正常人也有陽性的。若正常人也有陽性的,那麼第一次檢測為陽性的正常人,第二次也是陽性,則二次檢測為陽性的患病人和正常人的比值:
0.01% x 99.99% x 100% : 99.99% x 0.1% x 100%
和第一次檢測相同,第二次檢測無意義。
總結:
透過上面3個例子,大家應該可以瞭解如何計算條件機率,以及容易出錯和誤解的地方。網上的介紹資料全部採取按次的演算法,不但繁瑣,而且難於理解,還喜歡用標記符號:P(Ai|Bi), i=1,2,3...。道理上並沒錯,但為什麼不用簡潔易懂的比值演算法?這其實涉及到對數學工具的正確使用。數學本質上是形式推理系統,幫助降低大腦推理難度,符號代替數量,運算律代替推理邏輯,推理過程不再考慮實際意義,直接按運算律演算。數學工具最能發揮優勢的地方:物件間的關係複雜,如:用微分方程組表達變化率方面的數量關係,透過積分運算就能得出物件解。如果物件間的關係簡單,再用複雜數學工具反而添亂。
隨著大資料時代的到來,各種統計資料會越來越多,條件機率的應用會更加頻繁。我們每個人都應該掌握這個基本工具,這樣才能對外界有更準確的判斷和認識。
綜合上述所講,我們如何認識這個世界呢?首先,我們要知道幾個關鍵的認識論問題,然後掌握推理的工具。推理工具有兩個:歸納和演繹。它們是我們認識這個世界的根本方法,否則雜亂和矛盾的資訊,我們的大腦無法把握。推理可以讓我們只需掌握少量命題(資訊),其他命題(資訊)需要時推理得出。推理也讓我們把握了命題間的關係,有少量是100%的因果關係,更多的是小於100%的相關關係。要把握相關性需要用到條件機率。條件機率應用很廣,每個人都應該學會使用。