第一章 文字和語言vs數(shù)字和信息###
數(shù)字、文字和自然語言一樣,都是信息的載體。
語言和數(shù)學(xué)的產(chǎn)生都是為了同一個目的——記錄和傳播信息。
信息論 香農(nóng)——數(shù)學(xué)和信息聯(lián)系起來
聚類
隨著文明的進步,信息量的增加,沒有人能夠?qū)W會和記住那么多的文字,概念的第一次概
括和歸類就開始了。
概念的聚類在原理上與今天的自然語言處理或者機器學(xué)習(xí)的聚類有著很大的相似性。
歧義性
文字的聚類,最終會帶來歧義性。
多義字在特定環(huán)境下表示那種意思。解決這一問題的方法:依靠上下文。
羅塞塔石碑的破譯帶來的意義
信息的冗余是信息安全的保障。羅塞塔石碑的內(nèi)容是同一信息重復(fù)三次。
語言的數(shù)據(jù),我們稱之為語料,尤其是雙語或者多語的對照語對翻譯至關(guān)重要。
對信息編碼
從象形文字到拼音文字是一個飛躍,因為人類在描述物體的方式上,從物體的外表進化到了抽象的概念,同時不自覺地采用了對信息的編碼。
信道
書寫文字不是一件容易的事情。在通信時,如果信道較寬,信息不必壓縮就可以直接傳遞;而如果信道較窄,信息在傳遞前需要盡可能的壓縮,然后在接收端進行解壓縮。
校驗碼
猶太人抄圣經(jīng)
第二章 自然語言處理###
自然語言在演變的過程中,產(chǎn)生了詞義和上下文相關(guān)的特性,文法是比較復(fù)雜的上下文有關(guān)文法。
而程序語言是我們?nèi)藶樵O(shè)計的、便于計算機解碼的上下文無關(guān)文法,相比自然語言簡單的多。
在上世紀70年代,基于規(guī)則的句法分析(包括文法分析和語義分析)很快走到了盡頭,轉(zhuǎn)變到基于統(tǒng)計的方法。
第三章 統(tǒng)計語言模型###
數(shù)學(xué)的魅力就在于將復(fù)雜的問題簡單化。
統(tǒng)計語言模型產(chǎn)生的初衷是為了解決語言識別問題——二元模型,N元模型(數(shù)學(xué)依據(jù):馬爾科夫假設(shè),大數(shù)定理(只要統(tǒng)計量足夠,相對頻率就等于概率),條件概率)
模型的參數(shù):語言模型中需要知道的所有的條件概率。
模型的訓(xùn)練:通過對語料的統(tǒng)計,得到參數(shù)的過程。
如果直接用比值計算概率,大部分條件概率依然是零,這種模型“不平滑”。
第四章 談?wù)劮衷~###
對于一些亞洲語言(如中、日、韓、泰),詞之間沒有明確的分界符。因此需要對句子進行分詞,才能做進一步自然語言處理。
最好的一種分詞方法應(yīng)該保證分完詞后這個句子出現(xiàn)的概率最大(動態(tài)規(guī)劃)。
第五章 隱含馬爾科夫模型###
通信的本質(zhì)是編解碼和傳輸?shù)倪^程。
到了十九世紀,概率論的發(fā)展從相對靜態(tài)的隨機變量的研究發(fā)展到對隨機變量的時間序列,即隨機過程動態(tài)的研究。
隱含馬爾科夫鏈成功應(yīng)用于機器翻譯,拼寫糾錯,手寫識別體,圖像處理,基因序列分析等很多IT領(lǐng)域。近年來,還廣泛應(yīng)用于股票預(yù)測和投資。
隱含馬爾科夫模型是機器學(xué)習(xí)的重要工具之一,和幾乎所有機器學(xué)習(xí)模型工具一樣,需要一個訓(xùn)練算法(鮑姆-韋爾奇算法)和使用時的解碼算法(維特比算法)。
第六章 信息的度量和作用###
信息的度量:信息熵
例:H=-(p1·㏒p1+ p1·㏒p1+……p32·㏒p32
H(X)=-∑ P(X)㏒P(X)
信息論:“比特”(BIT)度量信息量
變量的不確定性越大,熵也就越大。
冗余度:重復(fù)的信息越多,信息量越小,冗余度越大。
信息的作用:信息的作用在于消除不確定性,自然語言處理的大量問題就是尋找相關(guān)消息。
互信息:兩個隨機事件“相關(guān)性”的量化度量。
在自然語言處理中,互信息被廣泛應(yīng)用于度量一些語言現(xiàn)象的瞎相關(guān)性。
相對熵
三條結(jié)論:
1.對于兩個完全相同的函數(shù),它們的相對熵等于零。
2.相對熵越大,兩個函數(shù)的差異越大;反之,相對熵越小,兩個函數(shù)差異越小。
3.對于概覽分布或者概率密度函數(shù),如果取值均大于零,相對熵可以度量兩個隨機分布的差異性。
應(yīng)用:衡量兩端信息的相似程度。
信息熵是對不確定性的衡量,能直接用于衡量統(tǒng)計語言模型的好壞。
信息熵不僅是對信息的量化度量,而是整個信息論的基礎(chǔ)。
第七章 賈里尼克和現(xiàn)代語言處理###
當今物欲橫流的中國社會,學(xué)術(shù)界浮躁,年輕人焦慮,少數(shù)有著遠大志向的年輕人實際上是非常孤獨的。這很像羅曼·羅蘭筆下一戰(zhàn)后的法國。《巨人三傳》
教育的誤區(qū):
1.小學(xué)生和中學(xué)生其實沒必要花那么多時間讀書,而他們的社會經(jīng)驗、生活能力以及在那時樹立起的志向?qū)椭麄円簧?br>
2.中學(xué)階段花很多時間比同伴多讀的課程,上大學(xué)以后用很短時間就能讀完,因為在大學(xué)階段,人的理解能力要強得多。
3.學(xué)習(xí)(和教育)是持續(xù)一輩子的過程。
4.書本的內(nèi)容可以早學(xué),也可以晚學(xué),但是錯過了成長階段卻是無法補回來的。
第八章 簡單之美——布爾代數(shù)和搜索引擎###
搜索引擎的原理:下載,索引,排序 ——搜素引擎的道
所有的搜索服務(wù)都可以在這三個基本服務(wù)的基礎(chǔ)上實行 ——搜索引擎的術(shù)
數(shù)學(xué)的發(fā)展實際上是不斷抽象和概括的過程,這些抽象的方法看似離生活越來越遠,但是它們最終能找到適用的地方,布爾代數(shù)即是如此。
布爾代數(shù)對于數(shù)學(xué)的意義等同于量子力學(xué)對于物理學(xué)的意義,它們將我們對世界的認識從連續(xù)狀態(tài)擴展到離散狀態(tài)。在布爾代數(shù)的“世界”里,萬物都是可以量子化的,從連續(xù)的變成一個個分離的,它們的運算“與、或、非”也就和傳統(tǒng)的代數(shù)運算完全不同了。
布爾運算的意義在于把邏輯和數(shù)學(xué)合二為一。
第九章 圖論和網(wǎng)絡(luò)爬蟲###
互聯(lián)網(wǎng)雖然很復(fù)雜,但是說穿了其實就是一張大圖而已——可以把每一個網(wǎng)頁當作一個節(jié)點,把那些超鏈接(Hyperlinks)當作連接網(wǎng)頁的弧。
網(wǎng)絡(luò)爬蟲:用圖論的遍歷算法自動地訪問到每一個網(wǎng)頁并把它們存起來的程序
圖論:遍歷算法:廣度優(yōu)先搜索BFS 深度優(yōu)先搜索DFS
第十章 PageRank——Google的民主表決式網(wǎng)頁排名技術(shù)###
搜索引擎的排名取決于網(wǎng)頁的質(zhì)量信息Quality和相關(guān)性信息Relevance。
如何度量網(wǎng)頁的質(zhì)量?
Google的革命性發(fā)明是它名為“PageRank”的網(wǎng)頁排名算法。
核心思想:互聯(lián)網(wǎng)中,如果一個網(wǎng)頁被很多其他網(wǎng)頁所鏈接,說明它受到普遍的承認和信賴,那么它的排名就高。
網(wǎng)頁排名算法的高明之處在于它把整個互聯(lián)網(wǎng)當作一個整體來對待,這無意中符合了系統(tǒng)論的觀點。
第十一章 如何確定網(wǎng)頁和查詢的相關(guān)性###
如何度量網(wǎng)頁的相關(guān)性?
TF-IDF是對搜索關(guān)鍵詞的重要性的度量,有很強的理論依據(jù)。
第十二章 有限狀態(tài)機和動態(tài)規(guī)劃
有限狀態(tài)機是一個特殊的有向圖,包括一些狀態(tài)(節(jié)點)和連接這些狀態(tài)的弧。
全球?qū)Ш降年P(guān)鍵算法是計算機科學(xué)圖論中的動態(tài)規(guī)劃DP的算法。
解決最短路徑問題——動態(tài)規(guī)劃
原理:將尋找最短路線問題分解成一個個局部最短路線的小問題。
應(yīng)用:識別地址,導(dǎo)航,語言失敗,工業(yè)控制等
第十三章 Google AK-47的設(shè)計者——阿米特辛格博士
辛格做事情的哲學(xué):先幫助用戶解決80%的問題,再慢慢解決剩下20%的問題,是在工業(yè)界成功的秘訣之一。許多失敗并不是因為人不優(yōu)秀,而是做事情的方式不對,一開始追求大而全的解決方案,之后長時間不能完成,最后不了了之。
辛格一直堅持簡單有效的解決方案,因為他奉行簡單哲學(xué)。
辛格要求對于搜索質(zhì)量的改進方法要能說明清楚理由,說不清理由的改進,即使看上去有效也不會采用,因為這將來可能是個隱患。
辛格非常鼓勵年輕人要不怕失敗,大膽嘗試。他堅持每天分析一些搜索結(jié)果不好的例子,簡單有效的解決方啊常常是深思熟慮去偽存真的結(jié)果啊。
第十四章 余弦定理和新聞的分類
如果兩篇新聞屬于同一類,它們的特征向量在某幾個維度的值都比較大,而在其他維度的值都比較小。
美國人總是傾向于用機器代替人完成任務(wù)。雖然短期內(nèi)需要做一些額外的工作,但是從長期看可以節(jié)省很多時間成本。
一句話:讓計算機承擔很大的計算量時需要減少運算數(shù)量,提高運算速度。
第十五章 矩陣運算和文本處理中的兩個分類問題
新聞分類乃至各種分類其實是一個聚類問題,關(guān)鍵是計算兩篇新聞的相似度。
矩陣運算的奇異值分解可以一次把所有新聞相關(guān)性計算出來,不需要一次次迭代。不過分類結(jié)果略顯粗糙,適合處理超大規(guī)模文本的粗分類。
一句話:任何一門數(shù)學(xué)知識都有它的用處,充分在適當?shù)膱龊匣旌侠镁湍馨l(fā)揮它們的最大價值。
第十六章 信息指紋及其應(yīng)用
所謂信息指紋,可以簡答理解為將一段信息(文字、圖片、音頻、視頻等)隨機映射到一個多維二進制空間中的一個點(一個二進制數(shù)字)。
信息指紋的用途:網(wǎng)頁搜索中集合相同的判定,反盜版。
一句話:信息指紋的主要技術(shù)依賴偽隨機數(shù)產(chǎn)生器(CSPRNG),具有不可逆性,主要用來查看信息的重復(fù)。
第十七章 由電視劇《暗算》所想到的——談?wù)劽艽a學(xué)的數(shù)學(xué)原理
密碼學(xué)的最高境界是無論敵方獲得多少密文,也無法消除己方情報的不確定性。
我們今天所謂最可靠的加密方法,背后的數(shù)學(xué)原理就這么簡單,無非是找?guī)讉€大素數(shù)做一些乘除和乘法運算,不過想破解幾乎不可能。
一句話:任何技術(shù)背后都是極其簡單的數(shù)學(xué)原理。
第十八章 閃光的不一定是金子——談?wù)勊阉饕娣醋鞅讍栴}和搜索結(jié)果的權(quán)威性問題
噪音存在于任何通信系統(tǒng)。搜索引擎是一個特殊的通信系統(tǒng),免不了會有噪音,反作弊和確定權(quán)威性就是去噪音的過程。
搜索引擎作弊從本質(zhì)上看如同對排序的信息加入噪音。
搜索引擎反作弊的實質(zhì)是增強排序算法的抗噪能力,還原真實排名。
對搜索引擎權(quán)威性的度量完全是建立在各種數(shù)學(xué)模型的基礎(chǔ)上的,方法有句法分析、利用互信息、短語聚類、對網(wǎng)頁進行聚合。
第十九章 談?wù)剶?shù)學(xué)模型的重要性
1.一個正確的數(shù)學(xué)模型應(yīng)當在形式上是簡單的
2.一個正確的模型一開始可能還不如精雕細琢的錯誤模型來的準確,但是如果我們認定大方向是對的就應(yīng)該堅持下去
3.大量準確的數(shù)據(jù)對研發(fā)很重要
4.正確的模型也可能是受噪音干擾,而顯得不準確;這時不應(yīng)該用一種湊合的修正方法加以彌補,而是要找到噪音的根源,這也許能通往重大的發(fā)現(xiàn)。
第二十章 不要把雞蛋放到一個籃子里——談?wù)勛畲箪啬P?/h3>
最大熵原理:保留全部的不確定性,將風(fēng)險降到最小
最大熵模型:最大熵原理指出,對一個隨機事件的概率分布進行預(yù)測時,我們的預(yù)測應(yīng)當滿足全部已知條件,而對未來的情況不要做任何主管假設(shè)。(不做主觀假設(shè)這點很重要。)在這種情況下,概率分布最均勻,預(yù)測的風(fēng)險最小。因為這時概率分布的信息熵最大,所以人們把這種模型叫做“最大熵模型”。
當我們遇到不確定性時,就要保留所有可能性。
最大熵模型的良好特性:從形式上看,它非常簡單,非常優(yōu)美;從效果上看,它是唯一一種既滿足各個信息源的限制條件,又能保證平滑性的模型。
第二十一章 拼音輸入法的數(shù)學(xué)原理
拼音轉(zhuǎn)漢字的算法和在導(dǎo)航中尋找最短路徑的算法相同,都是動態(tài)規(guī)劃。
數(shù)學(xué)的妙處在于它的每一個工具都具有相當?shù)钠毡樾?,在不同的?yīng)用中都可以發(fā)揮最大的作用。
第二十二章 自然語言處理的教父馬庫斯和他的優(yōu)秀子弟們
馬庫斯的主張一貫是建立世界上最好的專業(yè),而不是專業(yè)最齊全的系。
追求完美的“繁瑣哲學(xué)”vs追求簡單的“簡單哲學(xué)
打造世界上最完美的產(chǎn)品vs成為一個領(lǐng)域的領(lǐng)軍者
柯林斯vs布萊爾
第二十三章 布隆過濾器
用于判斷一個元素是否在一個集合里。
背后的數(shù)學(xué)原理在于兩個完全隨機的數(shù)字相沖突的概率很小,因此,可以在概率很小的誤識別率下,用很少的空間存儲大量信息。
第二十四章 馬爾科夫鏈的擴展——貝葉斯網(wǎng)絡(luò)
應(yīng)用:在詞分類中,圖像處理等
第二十五章 條件隨機場、文法分析及其他
應(yīng)用:模式識別、機器學(xué)習(xí)、生物統(tǒng)計、預(yù)防犯罪等
第二十六章 維比特和他的維比特算法
維比特算法是現(xiàn)代通信中最常用的算法,同時也是很多自然語言處理采用的解碼算法。
維比特算法是一個特殊但應(yīng)用最廣的動態(tài)規(guī)劃算法,它之所以重要是因為凡是可以使用隱含馬爾科夫鏈模型描述的問題都可以用它來解碼
第二十七章 上帝的算法
第二十八章 邏輯回歸和搜索廣告
第二十九章 各個擊破算法和Google云計算的基礎(chǔ)
第三十章 Google大腦和人工神經(jīng)網(wǎng)絡(luò)
第三十一章 大數(shù)據(jù)的威力——談?wù)剶?shù)據(jù)的重要性
附錄 計算復(fù)雜度
后序
無論在美國還是中國,我經(jīng)??吹酱蟛糠周浖こ處熢谝粋€未知領(lǐng)域都是從直觀感覺出發(fā),用“湊”的方法解決問題,在中國尤其如此。這樣的書法不好聽,就是山寨。
人人要認識到正確的理論和方法,總是一個漸近的過程。任何事物都有它的發(fā)展規(guī)律,而這些規(guī)律都是可以認識的。
目的:向非IT行業(yè)的從業(yè)人員普及一些IT領(lǐng)域的數(shù)學(xué)知識,透過對IT規(guī)律性的認識,運用到自己的工作中,提升自己的境界。
世界上最好的學(xué)者總是有辦法深入淺出地把大道理講給外行聽,而不是故弄玄虛地把簡單的問題復(fù)雜化。