文章原創(chuàng),最近更新:2018-08-25
1.關(guān)于本書
2.關(guān)于作者
3.內(nèi)容簡(jiǎn)介
4.主要內(nèi)容
引言:網(wǎng)上找資料覺得這本書挺通俗易懂的,剛好可以跟《機(jī)器學(xué)習(xí)實(shí)戰(zhàn)》相關(guān)章節(jié)結(jié)合一起學(xué)習(xí)晶密。
1.關(guān)于本書
寫給程序員的數(shù)據(jù)挖掘?qū)嵺`指南:豆瓣評(píng)分:7.4分
作者: [美] Ron Zacharski
出版社: 人民郵電出版社
原作名: A Programmer's Guide to Data Mining
譯者: 王斌
出版年: 2015-10-24
2.關(guān)于作者
Ron Zacharski是一名軟件開發(fā)工程師,曾在威斯康辛大學(xué)獲美術(shù)學(xué)士學(xué)位哮独,之后還在明尼蘇達(dá)大學(xué)獲得了計(jì)算機(jī)科學(xué)博士學(xué)位。博士后期間哀卫,他在愛丁堡大學(xué)研究語言學(xué)母市。正是基于廣博的學(xué)識(shí)够坐,他不僅在新墨西哥州立大學(xué)的計(jì)算研究實(shí)驗(yàn)室工作,期間還接觸過自然語言處理相關(guān)的項(xiàng)目檩帐,而該實(shí)驗(yàn)室曾被《連線》雜志評(píng)為機(jī)器翻譯研究領(lǐng)域翹楚术幔。除此之外,他還曾教授計(jì)算機(jī)科學(xué)湃密、語言學(xué)诅挑、音樂等課程,是一名博學(xué)多才的科技達(dá)人泛源。
3.內(nèi)容簡(jiǎn)介
本書是寫給程序員的一本數(shù)據(jù)挖掘指南拔妥,可以幫助讀者動(dòng)手實(shí)踐數(shù)據(jù)挖掘、集體智慧并構(gòu)建推薦系統(tǒng)达箍。全書共8章没龙,介紹了數(shù)據(jù)挖掘的基本知識(shí)和理論、協(xié)同過濾缎玫、內(nèi)容過濾及分類硬纤、算法評(píng)估、樸素貝葉斯赃磨、非結(jié)構(gòu)化文本分類以及聚類等內(nèi)容筝家。本書采用“在實(shí)踐中學(xué)習(xí)”的方式,用生動(dòng)的圖示邻辉、大量的表格溪王、簡(jiǎn)明的公式腮鞍、實(shí)用的Python代碼示例,闡釋數(shù)據(jù)挖掘的知識(shí)和技能在扰。每章還給出了習(xí)題和練習(xí),幫助讀者鞏固所學(xué)的知識(shí)雷客。
4.主要內(nèi)容
4.1貝葉斯方法與k近鄰方法的優(yōu)缺點(diǎn)
利用近鄰算法芒珠,很難量化分類的置信度。而基于概率的分類算法——貝葉斯算法卻不僅能夠分類而且能夠給出分類的概率搅裙,比如這個(gè)運(yùn)動(dòng)員有80%的概率是一名籃球運(yùn)動(dòng)員皱卓,這個(gè)病人接下來的5年內(nèi)有40%的概率會(huì)得糖尿病,未來24小時(shí)Las Cruces下雨的概率為10%部逮,等等娜汁。
近鄰方法被稱為惰性學(xué)習(xí)器(lazy learner)。之所以這樣叫是因?yàn)楫?dāng)給出訓(xùn)練數(shù)據(jù)集時(shí)兄朋,這些分類器只是將它們保存或者說記錄下來掐禁。每次對(duì)實(shí)例進(jìn)行分類時(shí),這些分類器都會(huì)遍歷整個(gè)訓(xùn)練數(shù)據(jù)集颅和。如果訓(xùn)練數(shù)據(jù)包含100000首歌曲的話傅事,這些分類器會(huì)在每次對(duì)實(shí)例分類時(shí)都遍歷所有100000首歌曲。
-
貝葉斯方法稱為勤快學(xué)習(xí)器(eager learner)峡扩。給定訓(xùn)練集時(shí)蹭越,這些分類器會(huì)立即分析數(shù)據(jù)并構(gòu)建模型。當(dāng)要對(duì)某個(gè)實(shí)例進(jìn)行分類時(shí)教届,它會(huì)使用訓(xùn)練得到的內(nèi)部模型响鹃。勤快學(xué)習(xí)器的分類速度往往比惰性分類器的分類速度更快。
- 貝葉斯方法能夠進(jìn)行概率分類案训,并且是勤快學(xué)習(xí)器买置,這兩點(diǎn)是貝葉斯方法的優(yōu)點(diǎn)
4.2貝葉斯方法的理解
樸素貝葉斯的具體公式如下:
概率記為P(A|B),即給定某些數(shù)據(jù)B條件下假設(shè)A的概率强霎。例如:P(女|進(jìn)入Frank Lloyd Wright學(xué)院)=0.86
上述概率讀成“給定為Frank Lloyd Wright學(xué)院學(xué)生的條件下該學(xué)生為女性的概率是0.86”堕义。
案例1
下邊表格中我列出了一些人及其他們的筆記本電腦和手機(jī)的類型:
問題:
從該表格中隨機(jī)選擇一個(gè)人使用iPhone的概率是多少
在總共10個(gè)用戶中有5個(gè)用戶使用iPhone,因此有:
隨機(jī)選擇的一個(gè)使用Mac筆記本電腦的人使用iPhone的概率是多少脆栋?
- 首先倦卖,有4個(gè)人同時(shí)使用Mac和iPhone,于是:
- 而隨機(jī)選擇一個(gè)人使用Mac的概率為:
- 因此椿争,在給定使用Mac的情況下使用iPhone的概率為:
這就是后驗(yàn)概率的形式化定義怕膛。有時(shí)在具體實(shí)現(xiàn)時(shí),可以只使用原始的計(jì)數(shù)值進(jìn)行計(jì)算:
習(xí)題練習(xí):
擁有iPone的人擁有mac的概率,即P(mac|iPhone)是多少秦踪?
相關(guān)術(shù)語
- P(h)即某個(gè)假設(shè)h為真的概率稱為h的先驗(yàn)概率(prior probability)褐捻。
在有任何證據(jù)之前掸茅,一個(gè)人擁有Mac的概率是0.6(這里的證據(jù)可能是知道這個(gè)人也有一部iPhone)。 - P(h|d)稱為h的后驗(yàn)概率(posterior probability)柠逞,即觀察到數(shù)據(jù)d之后h的概率昧狮。
例如,在觀察到某個(gè)人擁有iPhone之后板壮,這個(gè)人擁有Mac的概率是多少逗鸣?該概率也稱為條件概率(conditional probability)。
案例2
假設(shè)購物車軟件想確定是否要向你顯示一個(gè)日本綠茶的定向廣告绰精,而它只會(huì)在你想買茶時(shí)將該廣告推送給你撒璧。
購物車系統(tǒng)從其他購物者身上積累了一個(gè)小規(guī)模的數(shù)據(jù)集(如下所示)。
P(D)為觀察到某訓(xùn)練數(shù)據(jù)的概率笨使。例如卿樱,我們知道郵政編碼為88005的概率為5/10或者說0.5。
P(D|h)為給定假設(shè)條件下得到某個(gè)數(shù)據(jù)值的概率硫椰。例如繁调,當(dāng)知道用戶購買綠茶條件下郵政編碼為88005的概率,即P(88005 | 綠茶)靶草。
習(xí)題練習(xí)1:
用戶不購買綠茶的情況下郵政編碼為88005的概率是多少涉馁?
沒有購買綠茶的實(shí)例數(shù)目為5,其中2人居住地的郵政編碼為88005爱致,于是有:
習(xí)題練習(xí)2:
在不知道其他信息的條件下烤送,某個(gè)人的郵政編碼為88001的概率是多少?
數(shù)據(jù)庫中有10條記錄糠悯,其中只有3條記錄的郵政編碼為88001帮坚,因此P(88001)=0.3。
習(xí)題練習(xí)3:
如果知道某個(gè)人購買了綠茶互艾,那么他居住的地方郵政編碼為88001的概率是多少试和?
購買綠茶的記錄數(shù)目為5,其中只有1條記錄的郵政編碼為88001纫普,因此
習(xí)題練習(xí)4:
如果知道某個(gè)人沒有購買綠茶阅悍,那么他居住的地方郵政編碼為88001的概率是多少?
有5條記錄沒有購買綠茶昨稼,其中2條的郵政編碼為88001节视,因此
4.4貝葉斯定理
貝葉斯定理(Bayes Theorem)刻畫了P(h)、P(h|D)假栓、P(D)和P(D|h)之間的關(guān)系:
貝葉斯定理是所有貝葉斯方法的基礎(chǔ)寻行。在數(shù)據(jù)挖掘當(dāng)中我們常常使用該定律在多個(gè)可能的選擇中做出決策:
- 在給定證據(jù)的情況下,判定一個(gè)人從事的運(yùn)動(dòng)到底是體操匾荆、馬拉松還是籃球拌蜘;
- 在給定證據(jù)的情況下杆烁,判斷顧客是否會(huì)購買綠茶。為在多個(gè)選擇中進(jìn)行決策简卧,我們計(jì)算每種假設(shè)的概率兔魂。
在智能購物車系統(tǒng)中,只有認(rèn)為顧客可能購買綠茶時(shí)才會(huì)將綠茶的廣告顯示給用戶举娩。我們知道顧客居住地的郵政編碼為88005析校。
有兩個(gè)假設(shè)需要進(jìn)行對(duì)比:
- 該顧客會(huì)購買綠茶,計(jì)算P(購買綠茶|88005)晓铆;
- 該顧客不會(huì)購買綠茶勺良,計(jì)算P(非購買綠茶|88005)绰播。
我們會(huì)從上述假設(shè)中選擇概率最高的那個(gè)骄噪!
因此,如果在P(購買綠茶 | 88005)=0.6且P(非購買綠茶 | 88005)=0.4的情況下蠢箩,該顧客更有可能購買綠茶链蕊,因此我們將廣告展示給他。
在分類任務(wù)中有多個(gè)可能的假設(shè):h1谬泌,h2滔韵,…,hn掌实。這些假設(shè)是我們?nèi)蝿?wù)中的多個(gè)類別(比如陪蜻,籃球運(yùn)動(dòng)員、馬拉松運(yùn)動(dòng)員贱鼻、體操運(yùn)動(dòng)員宴卖,或者會(huì)得糖尿病、不會(huì)得糖尿擦谛)症昏。
一旦計(jì)算出所有的概率,我們會(huì)選擇其中概率最大的那條假設(shè)父丰。該假設(shè)稱為最大后驗(yàn)假設(shè)(the maximum a posteriori hypothesis)或記為
可以將上述計(jì)算最大后驗(yàn)概率的描述轉(zhuǎn)換為如下公式:
其中,H是所有假設(shè)的集合蛾扇。因此攘烛,h∈H意味著“對(duì)H中的每條假設(shè)”。整個(gè)公式意味著“對(duì)假設(shè)集合中的每條假設(shè)計(jì)算P(h|D)并從中選出概率最大的那條假設(shè)”镀首。利用貝葉斯定律可以將上述公式轉(zhuǎn)
你可能會(huì)注意到医寿,對(duì)于所有的假設(shè)而言,分母中的P(D)都是相等的蘑斧。因此靖秩,它們與假設(shè)是相互獨(dú)立的须眷。如果某條特定的假設(shè)在上述公式下具有最高的概率,那么再將它除以P(D)仍然最大沟突。如果我們的目標(biāo)是計(jì)算具有最大概率假設(shè)的話花颗,就可以對(duì)上述計(jì)算過程進(jìn)行簡(jiǎn)化,從而計(jì)算:
案例1
考慮在某個(gè)醫(yī)療領(lǐng)域中想確定病人是否患有某種特定的癌癥惠拭,可以進(jìn)行一個(gè)簡(jiǎn)單的血液測(cè)試(或者說血檢)來幫助決策扩劝。該測(cè)試是一個(gè)二值測(cè)試,其返回的結(jié)果為POS(陽性)或NEG(陰性)职辅。當(dāng)患者患有該病時(shí)棒呛,測(cè)試返回正確的陽性的概率為98%;當(dāng)患者未患此病時(shí)域携,測(cè)試返回正確的陰性的概率為97%簇秒。
我們的假設(shè)為:
- 病人患有該癌癥
- 病人未患該癌癥
練習(xí)1:
假設(shè)Ann去看醫(yī)生,她進(jìn)行了血液測(cè)試來檢查是否患癌癥秀鞭,測(cè)試結(jié)果為陽性趋观。
這看起來對(duì)Ann來說并不樂觀,因?yàn)楫吘箿y(cè)試的精確率為98%(特別地锋边,如果患病返回陽性的可能性為98%)皱坛。
請(qǐng)使用貝葉斯定理確定Ann得病還是沒得病的可能性大。
已知條件如下:
下面尋找如下最大后驗(yàn)概率:
我們選擇將病人分到未得病這一類中豆巨。
如果想知道精確的概率值的話剩辟,可以將這些值進(jìn)行歸一化以便所有概率的和為1:
于是,Ann有21%的患病概率往扔。