做者:Vamei 出處:http://www.cnblogs.com/vamei 歡迎轉載,也請保留這段聲明。謝謝!html
終於寫完機率論部分的內容。寫一個總結,同時算是導讀。這兩天花了些時間,對原文進行修訂。本身預期的目標,是將機率論的理論和編程結合起來。這裏選擇的編程工具是Python和一些第三方的包。我看過一些機率的書籍。有一些在數學上處理得好,但太偏重於純粹數學;機率和編程結合的書,又過「實用」,沒有把機率論的數學本質講清楚。理論是最好的實用。爲何不能把簡潔優美的數學理論和一樣美妙的編程合在一塊兒呢?有了這個疑問,也就有了這一系列文章的探索。程序員
總的來講,機率論的體系是比較簡單的。我以爲能夠概括爲下面幾個點:1. 公理體系,2. 典型分佈,3. 描述量,4. 普適定律。在機率論的系列文章,或者是任何機率論的教材中,都會涉及這四個方面。算法
機率論的難點可能在於它的公理體系。它的敘述很是簡單,但不容易把握。要知道,在機率論初期發展的一兩百年裏,公理體系並不存在。當時的機率論研究很碎片化。公理化體系是創建在現代數學的基礎上,特別依賴於集合論和測度論的發展。所以它等到20世紀才創建起來。一些基本的機率論術語,如樣本、實驗、事件、隨機變量,放在集合論的大環境裏,就比較容易理解。公理化體系的難點在於機率測度的概念,也就是通俗說的「機率」。測度論自己爲了探索「長度」、「面積」和「體積」這樣一些表明集合「大小」而產生的數學學科。機率論是在事件集合上,增長一個稱爲「機率」的測度,對應起來。機率測度表明事件這樣一個集合的「大小」。集合越大,越可能出現。咱們隨後引入的一些概念和工具,好比條件機率和連續分佈,都是創建在機率測度的基礎上的。因此,儘管測度論通常被認爲是一門抽象學科,但必定程度的測度論知識很是有助於機率論的學習。編程
機率論的典型分佈大多來源於古典研究,也就是出如今公理體系以前。這些典型分佈大多基於一些具體的現實過程,好比連續打靶10次,中靶次數的分佈。它們對應現實過程的一些經典事件的分佈,所以很是實用。咱們在研究許多機率論問題時,並不須要從最基本的公理從頭開始,而更多的是根據問題的特性,來直接引用具體分佈的結論。所以,這些經典分佈就像一本「電磁學千題解」,咱們須要掌握的,是問題所在的具體頁碼。這些經典分佈最先都是爲了解決機率論中的難題產生的。最經典和早期的一些數學分佈來自於賭博這一現實活動。好比最先的機率論研究就來自於帕斯卡和費馬的一系列通訊,而這些通訊都是爲了解決帕斯卡的賭徒朋友所碰到的問題。數學的許多理論體系都來自於解題過程當中產生的思想,好比高次多項式解這一數學難題,就孕育了抽象代數中的許多重要概念。若是沒有了數學難題,好比千禧年七大問題,數學就喪失了它賴以生存的動能。機器學習
描述量有很強的實用意義。經過參照典型分佈,咱們已經能夠大大簡化工做量。但做爲須要做出決定的普通人,咱們每每只須要最重要的一些結果來參考。指望和方差就能夠提供很重要、又很容易把握的分佈信息。以前有一個報道,是美國一對老夫婦發現,某個彩票的設計上有問題。在一些特定的購買時期,買家的指望值是正值。他們因而根據指望來買彩票,結果不聲不響的賺了幾百萬美圓,還開公司教別人買彩票。下次打三國殺的時候,能夠嘗試考慮一下斷定牌的指望。再好比說,做爲股票買家,很容易分辨股價比較「震盪」和股價比較「平靜」的時期,這就是方差的概念。在理論上,咱們能夠繼續求其它的描述量,它們也有各自的具體意義,好比斜度。但無疑,指望和方差是生活中最常遇到,也最常處理的一些描述量。在矩概念上創建起的矩生成函數,是一種很經常使用的機率論理論研究工具。編程語言
最後,是一些普適定律,好比Chebyshev不等式和中心極限定律。這些定律不依賴於具體分佈的類型,對全部分佈都成立。這些定律就好象拿木棍作兵器,雖然糙了些,但勝在能夠就地取材。但若是真的沒有進一步信息,有一根木棍總賽過赤手空拳。這些定律能夠參考它們的具體敘述。函數式編程
機率論是許多學科的基礎,好比咱們後面要進入的統計。統計是對一大票人口的數據的研究。統計的「機率性」來自於,許多時候,因爲收集信息的困難,咱們沒法得到全部人口的具體信息,咱們須要經過採樣來推斷整我的口的信息。這樣一種管中窺豹的研究方法,就具備很強的機率性。好比咱們想了解程序員的比例,能夠經過對500人採樣來進行估計。儘管總人口中的程序員是肯定的,但這500人的採樣中,有多少個程序員,是一個機率事件。函數
機率論一樣是隨機過程的基礎。隨機過程的學習特別有助於理解一些具體分佈的生成過程。此外,隨機過程在計算機科學中也很重要,好比scheduler的線程,能夠看做是隨機的排隊過程。咱們能夠經過對隨機過程的瞭解,來優化scheduler。工具
程序員並不須要特別高深的數學,但數學能夠是程序員武器庫中同樣有力的武器。在我以爲,拋開須要必定直覺和運氣的數學研究,數學自己徹底能夠看做一個固定的、有肯定規則的思惟「編程」工具,它和程序員日常鑽研的「操做系統」、「編程語言」,有很大的相似性:基於必定的規則,並沿着這樣的規則,能夠有一個肯定的結果。計算機的一些領域是和數學緊密相關的,好比算法、函數式編程、計算機圖形、數據挖掘、機器學習。許多編程書籍中「附贈」的數學節選,每每太過碎片化。看起來提供了所須要的數學,但將整個數學體系拋到腦後,只取結論。由於這個跳躍,讓自己不是特別複雜的數學顯得異常高深。其實,程序員這個異常好學的羣體,爲本身增長一個新的技能——數學,也是爲本身打開許多計算機領域的門。學習
但願讀過這一系列文章,能夠「新技能get」。OK,下一步,統計。
歡迎繼續閱讀「數據科學」系列文章