找出對於資料集的規則, 可以看作是一種關係的**, 比如"如果物件執行了動作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 表示含有的事務...