日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

An Algorithm Summary of Programming Collective Intelligence (1)

發布時間:2023/12/1 编程问答 45 豆豆
生活随笔 收集整理的這篇文章主要介紹了 An Algorithm Summary of Programming Collective Intelligence (1) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

就按照最后一章的順序來說吧。很多名字都不知道中文該怎么說,就直接用英文名稱了。

Naive Bayesian Classifier 樸素貝葉斯分類器
nb算法是通過學習樣本中已經分類的條目,計算生成條目中的特性相對于類別的概率矩陣,然后根據待分類條目中特性在這個矩陣中的值來反向計算條目的類別概率。

P(Category|Item)=P(Item|Category)*P(Category)/P(Item)

在靜態樣本中,P(Item)是固定的,所以可以去掉簡化計算。但是如果樣本集是動態的,就需要考慮進來。

P(Item|Category)=P(Feature1|Category)*P(Feature2|Category)*...

優點:
速度快
增量訓練時可以不使用舊樣本
容易理解
分類效果往往比想象的好
缺點:
對于內容龐雜的大分類來說效果不太好,特別是出現比較中性的特性組合時更是如此。

Decision Tree Classifier 決策樹
dt算法進行分類計算是很簡單直觀的,它的技巧在于決策樹的構造過程。樣本是已知的條件結果數據矩陣,需要決定的是用來分類的條件順序。為了得到這個順序,就要針對每個條件計算單純應用這個條件分類后結果的混合度,也就是看用哪個條件來分可以分得更清楚一些。確定了最好的分類條件,就把數據分開成若干子集,對每個子集再計算最佳分類條件,以此類推,直到子集只包含一個結果或者達到某些終止條件。

dt算法有兩個有意思的地方。一是如何計算應用某個條件得到的分類結果的混合度。書里面給了一個簡單的計數算法和一個熵算法(好親切啊)。

p(i)=frequency(outcome)=count(outcome)/count(total rows)
Entropy=sum of p(i)*log(p(i) for all outcomes

進一步計算information gain:
weight1 = size of subset1 / size of original set
weight2 = size of subset2 / size of original set
gain = entropy(original) – weight1*entropy(set1) – weight2*entropy(set2)

另外一個有意思的地方是對不同類型的條件數據如何選擇分類點。對于是否問題這個比較容易解決,但是對于數值或者字符串或者更復雜的類型就要特殊情況特殊處理了。

優點:
結果簡潔直觀
可以處理不同的條件數據類型
缺點:
不能通過增量訓練來改進,生成決策樹必須使用整個已知樣本集。
大數據集可能存在的眾多條件會產生巨大繁雜的決策樹,分類計算會變得緩慢。

轉載于:https://www.cnblogs.com/ysjxw/archive/2008/04/11/1148887.html

總結

以上是生活随笔為你收集整理的An Algorithm Summary of Programming Collective Intelligence (1)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。