最近在讀《集體智慧型程式設計》這本書,作了一些筆記,好讓自己印象深刻點,不過沒有記錄太多的細節和**。
第7章主要涉及決策樹分類器。相比於貝葉斯分類器、神經網路分類,決策樹分類器的好處在於模型具有易於理
解的特點,可以將結果轉換成一系列簡單的if-else語句。
乙個二維表中,行表示使用者,列表示使用者的屬性。利用決策樹演算法,我們可以知道有哪些因素表明使用者將會成為
付費顧客,那麼就可以利用這些資訊來指導我們的廣告策略制定工作,或者採取其他能夠有效增加付費顧客數量
的策略。
書中所涉及的關鍵點:
1、決策樹,顧名思義,其模型是乙個樹結構。本章採用的cart決策樹,cart演算法採用一種二分遞迴分割技術。
2、cart在每乙個分支都選擇最好的二元切分,即找出合適的屬性變數,使得生成的兩個資料集合在混雜程度上
能夠盡可能小,這裡考察了兩種方法:基尼不純度和熵。熵值降低的越多,說明這個屬性就越能增加資料集的純度。
3、樹的構造過程是乙個遞迴+貪心的過程。
4、剪枝。在決策樹建立時,由於資料中的雜訊和離群點,許多分支反映的是訓練資料中得異常,因此需要剪枝方
法處理這種過度擬合問題。
5、處理缺失屬性(針對測試集)。如果我們缺失了某些資料,而這些資料是確定分支走向必須得,那麼可以選擇
兩個分支都走。這裡我們對各分支結果值進行加權統計。
6、處理數值型目標值。如果目標值是數值型的,不可能把所有數字看作不同的分類,可以採用方差作為集合的純
度來取代熵或基尼不純度。
決策樹應用場景:
決策樹的特點是易解釋性。上面的例子,在執行完演算法之後,我們不僅可以得到一顆用於**新使用者的決策樹,
而且可以得到一些規則。這些規則可以知道我們做出一些決策,也可以知道哪些屬性對輸出結果沒有起多大作
用。決策樹也有其缺點。當資料集屬於的目標值種類太多時,演算法**效果會比較差;當決定分類的因素取決
於更多變數的複雜組合時,決策樹不太適合,比如兩個變數的差值。
總之,決策樹適合那些由大量分類資料和帶有明顯分界點的數值資料組成的資料集,另外當對決策過程的理解
至關重要時,也可以考慮決策樹。
《集體智慧型程式設計》 讀書筆記
恢復內容開始 第二章 提供推薦cf 協同型過濾 允許人們根據自己對文件的感興趣程度新增標註,並利用這一資訊為他人進行文件過濾。蒐集偏好 在python中建立乙個巢狀的字典 尋找相近的使用者 計算不同使用者間的相似度評價值 方法1 歐幾里得距離評價 以經過人們一致評價的物品作為座標軸,然後將參與評價的...
集體智慧型程式設計 讀書筆記 一
這本書豆瓣上得分很高,可以當作機器學習,資料探勘在當前web應用的入門書,我也是乙個門外漢加初學者,正在讀這本書 第二章 1.相似度,偏好 首先看例子,現在有乙個資料集 書中給出的 記錄每個人對不同電影的打分,如下所示 critics gene seymour michael phillips cl...
集體智慧型程式設計 第1章 集體智慧型導言
集體智慧型通常是指為了創造新的想法,而將一群人的行為 偏好或思想結合在一起。完成這項工作的最基礎的方法便是使用調查問卷或普查。從一大群人中搜尋的答案可以使我們得到關於群主的統計結論 組中的個體成員將會被忽視。從獨立的資料提供者那裡得到新的結論,是集體智慧型所真正關注的。機器學習是人工智慧領域中與演算...