基於規則的分類

2021-08-13 23:49:31 字數 1244 閱讀 3930

if 條件 then 結論

例子: 

r:if age=youth and student=yes then buys_computer=yes 

或 r:(age=youth)∧(student=yes)=>(buys_computer=yes) 

規則前件:也稱為前提,是由乙個或多個用邏輯連線詞連線的屬性測試組成,r中指 age=youth and student=yes。 

規則的結論:包含乙個類**,r中指buys_computer=yes。 

對於給定的元組,如果規則前件中的條件都成立,則我們說規則前件被滿足,並且規則覆蓋了該元組。

覆蓋率和準確率

規則的兩個評估指數: 

這裡的n

covers

為規則r覆蓋的元組數,n

correct

為r正確分類的元組數,|d|是資料集d中元組數。 

一些名詞:

如果規則被元組x滿足,則稱該規則被

觸發。 

如果r是唯一被元組x滿足的規則,則該規則啟用。

觸發可能意味著多個規則被同時滿足,這樣就可能存在一定的問題:

如果被觸發的多個規則指向不同的類 

解決這個問題的核心思想,就是需要對不同規則進行優先順序排序,取優先順序高的規則所對應的類別作為元組的分類。 

兩種解決方案: 

規模序:把最高優先順序權賦予具有「最苛刻」要求的被觸發的規則,其中苛刻性用規則前件的規模度量。也就是說,啟用具有最多屬性測試的被觸發的規則。

規則序:指預先確定規則的優先次序。這種序的確定可以基於兩種方法:基於類的序和基於規則的序 

基於類的序 

根據類的重要性來對規則進行排序。即最重要的類對應的規則先出現,次重要的類對應的規則緊接著出現,以此類推。對於類的重要性的衡量標準有很多,比如類的普遍性、誤分類代價等。需要注意的是,在每個類中的規則是不需要排序的。

基於規則的序 

根據規則的質量進行度量。這種規則的質量可以是準確度、覆蓋率或規模等。通過規則的質量將不同的規則組織成乙個優先權列表。在使用規則序時,規則集稱為決策表。使用規則序,最先出現在決策表中的被觸發的規則具有最高優先權,因此啟用它的類**。

如果沒有規則被觸發 

對於這種情況,可以建立乙個預設或缺省規則,根據訓練集指定乙個預設類。這個類可以是多數類,也可以是不被任何規則覆蓋的元組的多數類。

分類 基於規則的分類 RIPPER演算法

在 分類 基於規則的分類技術 中已經比較詳細的介紹了基於規則的分類方法,ripper演算法則是其中一種具體構造基於規則的分類器的方法。在ripper演算法中,有幾個點是演算法的重要構成部分,需要強調一下 ripper演算法中採用的仍然是基於類的規則排序方式,不過獨特的地方是,它先將各個類按頻率 即類...

備份,基於規則行業分類

1 ids 物業 銀行 建設 化工 保險 2 物流 快遞 租賃 材料 金融 3 汽車 建築 服飾 混凝土 鞋業 4 酒店 木 開發 地產 紡織 5 電子 印刷 電器 家居 置業 6 水泥 鋼鐵 水電 酒業 種植 7 農 裝飾 通訊 玻璃 酒 8 顧問 投資 包裝 電線 電纜 9 地礦 10 vals...

基於規則的授權機制

最近在研究微軟的企業庫 entlib 時,對它的認證和授權模組很感興趣,經過仔細研究,更進一步了解了它的機制,並把它們經過修改應用到了三層的架構上,這裡不敢獨享這種優秀的解決方案,把一些最簡單的原理寫出來給大家分享,也許經過您的努力,可以輕易把它移植到別的平台上。如果您想深入了解它的實現方法,可以參...