1. 程式人生 > >文字上的演算法讀書筆記一--基礎知識

文字上的演算法讀書筆記一--基礎知識

1.1 概率論

概率描述一些事情發生的可能性。

大數定理:

當試驗次數(樣本)足夠多的時候,事件出現的頻率無限接近於該事件真實發生的概率。

來表示隨機變數的概率,那麼就要滿足如下兩個特性:

聯合概率

表示兩個事件共同發生的概率,如果相互獨立,則

條件概率

是指在已知事件x已發生的情況下,事件y發生的概率。且有。如果這兩個事件相互獨立,那麼相等。

聯合概率和條件概率分別對應兩個模型:生成模型和判別模型。

期望:

概率分別的均值稱為期望:

期望就是對每個可能的的取值x,與其對應的概率值,進行相乘求和。假如一個隨機變數的概率分散式均勻分佈,期望就等於均值。

方差:

概率分佈的方差為:

方差表示隨機變數偏離期望的大小。衡量資料的波動性,方差越小表示資料越穩定,反之波動性越大。

概率分佈有:均勻分佈,正態分佈,二項分佈,泊松分佈,指數分佈等


1.2 資訊理論

外面下雨了,很平常

見到外星人了,很稀奇

同樣兩條資訊。一條資訊量很少,一條資訊量很大,很有價值,如何量化呢

資訊熵

需要資訊熵,一個隨機變數X的資訊熵如下:

資訊越少,事件的不確定性越大,資訊熵很大。

資訊熵表示不確定性的度量

聯合熵:

描述的是一對隨機變數X和Y的不確定性。

條件熵:

條件熵衡量的是在一個隨機變數X已知的情況下,另一個隨機變數Y的不確定性。

互資訊:

衡量兩個隨機變數的相關程度,當X和Y完全相關時,互資訊就是1,完全無關時,互資訊就是0。

互資訊與熵的關係:

相對熵(KL距離):

相對熵是衡量相同時間空間裡兩個概率分佈(函式)的差異程度(不同於熵和互資訊,它們衡量的是隨機變數的關係)

分佈相同,相對熵為0,當差異增加,則相對熵增加。

物理意義在於如果用Q分佈來編碼P分佈(一般是真實分佈)的話,平均每個基本事件編碼長度增加了多少位元。

交叉熵:

可以理解為p的資訊熵+

舉例

計算機和硬體的互資訊就比計算機和杯子的互資訊要大,因為更相關。

計算方法,,x獨立出現的概率,y獨立出現的概率,x和y同時出現的概率。

文件中計算詞出現的個數,相除就可以了

1.2 貝葉斯法則

定義如下:

是後驗概率,是似然概率,是先驗概率,稱為標準化常量。

應用:

分詞是自然語言處理的最底層,最基本的一個技術了。

對一句話分詞,最簡答的就是查字典,使用的策略是最大值匹配。

查字典法有兩種:

正向最大匹配法和反向最大匹配法。一個是從前向後匹配,一個是從後向前匹配。

棘手問題:

歧義問題。

如學歷史知識

前向:學歷/史/知識

後向:學/歷史/知識

存在二義性。

基於統計的方法:

假設使用者輸入的句子用S表示,把S分詞後結果表示為:

那麼我們求得是達到最大值的那個分詞結果,這個概率不好求,於是通過貝葉斯:

是一個標準化常量,公式改寫為

表示這種分詞生成句子S的可能性,表示這種分詞本身的可能性。

可以認為就是1,因為必然能生成S,那麼剩下的就是計算

在數學中,要簡化數學模型,那就是假設

假設句子中一個詞的出現概率只依賴於它前面的那個詞,根據全概率公式:

可以改寫成:

接下來就是估計這樣問題變得簡單,只要統計這對詞在統計文字中前後相鄰出現了多少次,以及在同樣的文字中出現了多少次。

平滑,防止概率為0

實際系統中,由於效能等原因,很少使用語言模型來分詞消歧,而是使用序列標註、共現和一些規則等方法來消歧。