支援度和置信度

2021-10-21 18:26:40 字數 1308 閱讀 4651

找出對於資料集的規則, 可以看作是一種關係的**, 比如"如果物件執行了動作a, 那該物件可能願意執行動作b".

支援度指資料集中規則應驗的次數, 即對於一條"如果物件執行了動作a, 那該物件可能願意執行動作b"這樣的規則, 在特定資料集中被驗證的詞數.

置信度表示規則準確率, 對於特定規則, 在所有相同(與這個特定規則的前提相同)前提假設下的所佔比例.

說得比較抽象, 直接看**理解.

from collections import defaultdict

# 上面"買了蘋果又買香蕉"是一種情況,現在把所有可能的情況都做一遍

valid_rules = defaultdict(

int)

invalid_rules = defaultdict(

int)

num_occurences = defaultdict(

int)

for sample in x:

for premise in

range

(n_features)

:if sample[premise]==0

:continue

# 先買premise,premise代表一種食物,記做x

num_occurences[premise]+=1

for conclusion in

range

(n_features)

:if premise == conclusion:

continue

# 跳過買x又買x的情況

if sample[conclusion]==1

:# 又買了conclusion,conclusion代表一種食物,記做y

valid_rules[

(premise, conclusion)]+=

1# 買x買y

else

: invalid_rules[

(premise, conclusion)]+=

1# 買x沒買y

support = valid_rules

confidence = defaultdict(

float

)for premise, conclusion in valid_rules.keys():

confidence[

(premise, conclusion)

]= valid_rules[

(premise, conclusion)

]/ num_occurences[premise]

支援度與置信度

支援度 support 的公式是 support a b p a u b 支援度揭示了a與b同時出現的概率。如果a與b同時出現的概率小,說明a與b的關係不大 如果a與b同時出現的非常頻繁,則說明a與b總是相關的。置信度 confidence 的公式式 confidence a b p a b 置信度...

支援度和置信度理解與實戰

coding utf 8 in 35 importnumpyasnp fromcollectionsimportdefaultdict dataset filename c users liang datafind code rewrite chapter 1 affinity dataset.tx...

關聯分析中的支援度 置信度和提公升度

自 1.支援度 support 支援度表示項集在總項集裡出現的概率。公式為 support x y p x,y p i p x y p i num xuy num i 其中,i表示總事務集。num 表示求事務集裡特定項集出現的次數。比如,num i 表示總事務集的個數 num x y 表示含有的事務...