freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

機器學(xué)習(xí)簡明原理-文庫吧

2025-06-02 07:13 本頁面


【正文】 介紹了支持向量機 SVM 模型的原理和實現(xiàn)。在文章一開始,筆者提到機器學(xué)習(xí)主要分為四大類,分別是分類,聚類,回歸和關(guān)聯(lián)分析。第一篇中的 SVM 就屬于分類。那么下面筆者開始介紹關(guān)聯(lián)分析。關(guān)聯(lián)分析分為頻繁項集挖掘和關(guān)聯(lián)規(guī)則挖掘。生活中的數(shù)據(jù)本身包含著各種規(guī)律,機器學(xué)習(xí)模型可以從數(shù)據(jù)中挖掘出這些規(guī)律,啤酒與尿布就是一個典型的例子。有研究發(fā)現(xiàn),在超市的訂單記錄中,啤酒和尿布總是頻繁共同出現(xiàn)在同一條訂單記錄里。換句話說,買尿布的人,往往會順手買啤酒。這就引出了本文的主題之一,即頻繁項集。頻繁項集是在數(shù)據(jù)庫中大量頻繁出現(xiàn)的數(shù)據(jù)集合。那么發(fā)現(xiàn)這些頻繁項集有什么意義呢?1. 用于制定營銷策略。如同啤酒與尿布的例子,超市如果將啤酒和尿布放在相鄰的位置,會增加兩者的銷量。還可用于制定打折促銷活動,給買了啤酒和尿布的客戶打折,也可以增加銷量。2. 用于發(fā)現(xiàn)共現(xiàn)詞。這種場景其實我們經(jīng)常會遇到。當(dāng)我們在瀏覽器中輸入頻繁項集時,瀏覽器自動彈出如頻繁項集 置信度,頻繁項集 關(guān)聯(lián)規(guī)則等備選記錄,我們每每都會感嘆瀏覽器的智能,其實這里的秘訣就是頻繁項集。也就是說,在大量的用戶搜索記錄中,頻繁項集和置信度共同出現(xiàn)在了大多數(shù)的搜索記錄中。同理,頻繁項集和關(guān)聯(lián)規(guī)則也頻繁得共同出現(xiàn)在搜索記錄中。3. 用于發(fā)現(xiàn)事物的熱點信息。從新聞報道和微博中獲取關(guān)于某事物的相關(guān)文檔,然后應(yīng)用頻繁項集挖掘算法可以得到該事物的熱點新聞。主流的頻繁項集挖掘算法有 Apriori 和 FPgrowth。其中 Apriori 算法需要多次掃描數(shù)據(jù)庫,這就使得該算法本身不適合大數(shù)據(jù)量。FPgrowth,即 Frequent Pattern Growth,它通過構(gòu)建 FP 樹(即 Frequent Pattern Tree)這樣的數(shù)據(jù)結(jié)構(gòu),巧妙得將數(shù)據(jù)存儲在 FP 樹中,只需要在構(gòu)建 FP 樹時掃描數(shù)據(jù)庫兩次,后續(xù)處理就不需要再訪問數(shù)據(jù)庫了。這種特性使得 FPgrowth 算法比 Apriori 算法速度快。FP 樹是一種前綴樹,由頻繁項的前綴構(gòu)成,具體細(xì)節(jié)會在頻繁項集挖掘原理一節(jié)介紹。挖掘出頻繁項集后,可以從頻繁項集中進一步挖掘關(guān)聯(lián)規(guī)則。. 關(guān)聯(lián)規(guī)則簡介關(guān)聯(lián)規(guī)則是在頻繁項集的基礎(chǔ)上得到的。關(guān)聯(lián)規(guī)則指由集合 A,可以在某置信度下推出集合 B。通俗來說,就是如果 A 發(fā)生了,那么 B 也很有可能會發(fā)生。舉個例子,有關(guān)聯(lián)規(guī)則如:{39。雞蛋39。, 39。面包39。} {39。牛奶39。},該規(guī)則的置信度是 ,意味著在所有買了雞蛋和面包的客戶中,有 90%的客戶還買了牛奶。關(guān)聯(lián)規(guī)則可以用來發(fā)現(xiàn)很多有趣的規(guī)律。這其中需要先闡明兩個概念:支持度和置信度。. 支持度 Support支持度指某頻繁項集在整個數(shù)據(jù)集中的比例。假設(shè)數(shù)據(jù)集有 10 條記錄,包含{39。雞蛋39。, 39。面包39。}的有 5 條記錄,那么{39。雞蛋39。, 39。面包39。}的支持度就是 5/10 = 。. 置信度 Confidence置信度是針對某個關(guān)聯(lián)規(guī)則定義的。有關(guān)聯(lián)規(guī)則如{39。雞蛋39。, 39。面包39。} {39。牛奶39。},它的置信度計算公式為{39。雞蛋39。, 39。面包39。, 39。牛奶39。}的支持度/{39。雞蛋39。, 39。面包39。}的支持度。假設(shè){39。雞蛋39。, 39。面包39。, 39。牛奶39。}的支持度為 ,{39。雞蛋39。, 39。面包39。}的支持度為 ,則{39。雞蛋39。, 39。面包39。} {39。牛奶39。}的置信度為 / = 。關(guān)聯(lián)規(guī)則用于發(fā)現(xiàn) if then 這樣的規(guī)則,并可以給出這條規(guī)則的可信度(即置信度)?,F(xiàn)實場景中可以用來發(fā)現(xiàn)很多規(guī)律,下面舉個例子。在信息安全領(lǐng)域,需要根據(jù)已有流量數(shù)據(jù)制定規(guī)則,來判斷是否觸發(fā)安全報警。如規(guī)則{39。數(shù)據(jù)包大39。,39。多個ip地址同時發(fā)送數(shù)據(jù)39。} {39。異常39。},該規(guī)則的置信度為 。這條規(guī)則表示,當(dāng)流量數(shù)據(jù)包大,并有多個ip地址同時向目標(biāo)ip發(fā)送數(shù)據(jù)時,則有 85%的概率存在異常,需要觸發(fā)報警。. 頻繁項集挖掘原理頻繁項集挖掘分為構(gòu)建 FP 樹,和從 FP 樹中挖掘頻繁項集兩步。本節(jié)用如下表所示的數(shù)據(jù)集作為例子展開,該示例數(shù)據(jù)集共四條數(shù)據(jù)。表格 1 示例數(shù)據(jù)集數(shù)據(jù)集a,b,cc,d,b,ad,e,ab,a. 構(gòu)建 FP 樹構(gòu)建 FP 樹時,首先統(tǒng)計數(shù)據(jù)集中各個元素出現(xiàn)的頻數(shù),將頻數(shù)小于最小支持度的元素刪除,然后將數(shù)據(jù)集中的各條記錄按出現(xiàn)頻數(shù)排序,剩下的這些元素稱為頻繁項;接著,用更新后的數(shù)據(jù)集中的每條記錄構(gòu)建 FP 樹,同時更新頭指針表。頭指針表包含所有頻繁項及它們的頻數(shù),還有每個頻繁項指向下一個相同元素的指針,該指針主要在挖掘 FP 樹時使用。下面用上文提到的數(shù)據(jù)集展開說明,假設(shè)最小支持度為 2。首先,統(tǒng)計數(shù)據(jù)集中各元素出現(xiàn)的次數(shù),得 a 出現(xiàn) 4 次, b 出現(xiàn) 3 次, c 出現(xiàn) 2 次, d 出現(xiàn) 2 次, e 出現(xiàn) 1 次。接著,將出現(xiàn)次數(shù)小于最小支持度 2 的元素(即 e)在數(shù)據(jù)集中刪除,并將數(shù)據(jù)集按出現(xiàn)次數(shù)由高到低排序,得表格 2。表格 2 示例數(shù)據(jù)集數(shù)據(jù)集a,b,ca,b,c,da,da,b然后,用更新后的數(shù)據(jù)集中的記錄創(chuàng)建 FP 樹,并同時更新頭指針表。創(chuàng)建 FP 樹時,當(dāng)待添加的記錄與 FP 樹中的路徑相同,則只需更新元素對應(yīng)的頻數(shù);如果待添加的記錄與 FP 樹存在不一致,則在不一致的地方分叉,創(chuàng)建新的結(jié)點。如圖 6~圖 9所示。注意,F(xiàn)P 樹的根節(jié)點是 null。圖 6 向FP樹添加第一條記錄{ a,b,c }圖 7向FP樹添加第二條記錄{ a,b,c,d }圖 8向FP樹添加第三條記錄{ a ,d }圖 9向FP樹添加第四條記錄{ a ,b }. 挖掘頻繁項集得到 FP 樹后,需要對每一個頻繁項,逐個挖掘頻繁項集。具體過程為:首先獲得頻繁項的前綴路徑,然后將前綴路徑作為新的數(shù)據(jù)集,以此構(gòu)建前綴路徑的條件 FP 樹。然后對條件 FP 樹中的每個頻繁項,獲得前綴路徑并以此構(gòu)建新的條件 FP 樹。不斷迭代,直到條件 FP 樹中只包含一個頻繁項為止。下面以元素 c 為例,從上文圖 9創(chuàng)建好的 FP 樹中挖掘頻繁項集。首先,獲得以 c 元素的前綴路徑{a:2,b:2},注意此處 a 和 b 的頻數(shù)為 2 是因為 c 的頻數(shù)為 2,所以與 c 共同出現(xiàn)的 a 和 b 的頻數(shù)就都為 2。接著,創(chuàng)建條件 FP 樹,具體的創(chuàng)建過程和上一節(jié)創(chuàng)建 FP 樹的過程一樣,如圖 10所示。圖 10 c元素的前綴路徑構(gòu)成的條件 FP 樹注意此時頭指針表中包含兩個元素,所以對每個元素,需要獲得前綴路徑,并將前綴路徑創(chuàng)建成條件 FP 樹,直到條件 FP 樹中只包含一個元素時返回。1. 對元素 a,獲得前綴路徑為{ },則頻繁項集返回{c,a}。2. 對元素 b,獲得前綴路徑{a},則將前綴路徑創(chuàng)建成條件 FP 樹,如圖 11所示。注意此時條件 FP 樹中只包含一個元素,故返回頻繁項集{c,b,a}。由于元素 b 也是頻繁項,所以{c,b}也是頻繁項集。再加上{c}本身就是頻繁項集,所以 c 對應(yīng)的頻繁項集有:{c} {c,a} {c,b} {c,b,a}。圖 11 b元素的前綴路徑構(gòu)成的條件FP樹將其他元素 a,b,d 同樣按照上述對 c 的操作,得到表格 3所示頻繁項集。表格 3 元素a,b,c,d對應(yīng)的頻繁項集元素頻繁項集a{ a }b{ b } { b,a }c{ c } { c,a } { c,b } { c,b,a }d{ d } { d,a }. 關(guān)聯(lián)規(guī)則挖掘原理關(guān)聯(lián)規(guī)則挖掘首先需要對上文得到的頻繁項集構(gòu)建所有可能的規(guī)則,然后對每條規(guī)則逐個計算置信度,輸出置信度大于最小置信度的所有規(guī)則。以頻繁項集{a,b,c}為例,構(gòu)建所有可能的規(guī)則:{b,c} {a}, {a,c} ,{a,b} {c},{c} {a,b}, {a,c},{a} {b,c}。對每條規(guī)則計算置信度后,輸出滿足要求的規(guī)則即可。5. NaiveBayes基本原理樸素貝葉斯模型主要用來分類,但是與 SVM 模型不同的的是,樸素貝葉斯模型不需要針對目標(biāo)變量建立模型,而是借助貝葉斯公式計算樣本屬于各個類別的概率,然后取概率值大的類別作為分類類別。之所以稱之為樸素,是因為樸素貝葉斯模型假設(shè)各屬性之間是條件獨立的,該假設(shè)極大得簡化了運算,使得樸素貝葉斯模型變得非常簡單。樸素貝葉斯模型主要應(yīng)用在文本分類方面。這里需要用到向量空間模型,即將文本轉(zhuǎn)換成詞向量。詞向量的每一項是該詞出現(xiàn)的頻數(shù)。在樸素貝葉斯中會將頻數(shù)進一步轉(zhuǎn)換成頻率。這樣就完成了文本到數(shù)值上的轉(zhuǎn)化,方便后期計算條件概率和先驗概率。樸素貝葉斯模型也有它的優(yōu)缺點,優(yōu)點是模型簡單,計算快;缺點是依賴于屬性之間條件獨立這一假設(shè),但是現(xiàn)實場景下很多情況并不滿足這一假設(shè),使得樸素貝葉斯的準(zhǔn)確率受到影響。這種情況需要考慮半樸素貝葉斯,即放松屬性之間條件獨立這一假設(shè),一定程度上考慮屬性之間的依賴關(guān)系。由于篇幅有限,對半樸素貝葉斯感興趣的話可自行參照文末參考資源學(xué)習(xí),本文重點介紹樸素貝葉斯的原理和實現(xiàn)。. 樸素貝葉斯原理樸素貝葉斯模型主要利用貝葉斯公式進行展開。貝葉斯公式如下:公式中 P(C|X)表示 X 屬于類別 C 的概率,P(X|C)表示類別 C 中 X 出現(xiàn)的概率,P(C)表示類別 C 出現(xiàn)的概率。其中 P(C)稱為先驗概率,P(X|C)是條件概率,P(C|X)稱為后驗概率,將后驗概率最大的類作為 X 的類別輸出。假設(shè)有 C0 和 C1 兩個類,由于 P(X)都是一樣的,所以不需要考慮 P(X),只需考慮如下:1. 如果P(X|C0) *P(C0) P(X|C1) *P(C1),則 P(C0|X) P(C1|X),可得 X 屬于 C0 類;2. 如果P(X|C0) *P(C0) P(X|C1) *P(C1),則 P(C0|X) P(C1|X),可得 X 屬于 C1 類。由上述可知,需要計算 P(X|C)和 P(C)。樸素貝葉斯假設(shè)屬性之間條件獨立,可得:P(X|C) =P(X0|C) *P(X1|C) *P(X2|C) *P(X3|C) *… *P(Xn|C)令 Dc 表示訓(xùn)練集 D 中第 C 類樣本組成的集合,可得:P(Xi|C) = |Dc,xi| / |Dc,x|,表示類別為 C 的樣本在第 i 個屬性上頻數(shù)總和除以類別為 C 的樣本集合中所有屬性頻數(shù)總和。為了避免 P(Xi|C)為 0 造成 P(X|C)為 0 而影響分類結(jié)果,在此引入拉普拉斯平滑,本文分別給分子和分母加上 1 和 2,即 P(Xi|C) = (|Dc,xi| + 1) / (|Dc,x| + 2)。又有 P(C) = |Dc| / |D|, 表示類別為 C 的樣本集合大小除以數(shù)據(jù)集 D 的樣本集合大小。至此,通過 P(X|C0) *P(C0) 和P(X|C1) *P(C1)的大小比較,可得 X 所屬類別。但是小數(shù)連乘會造成所得值幾乎等于 0 的結(jié)果,從而無法比較大小。鑒于此,往往在實際運算中,會借助 log 函數(shù),比較 log(P(X|C0) *P(C0)) 和 log(P(X|C1) *P(C1))的大小來判斷 X 所屬類別。從而得:log(P(X|C0) *P(C0) ) = lo
點擊復(fù)制文檔內(nèi)容
研究報告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1