Apriori算法是一種用于挖掘數(shù)據(jù)集中頻繁項集的關(guān)聯(lián)規(guī)則學(xué)習(xí)的經(jīng)典算法。它基于“Apriori原理”,即如果一個項集是頻繁的,那么它的所有子集也必須是頻繁的。該算法通過不斷生成新的頻繁項集來實現(xiàn)。
Apriori算法的基本步驟如下:
- 設(shè)置最小支持閾值(例如總交易額的2%)并掃描數(shù)據(jù)集以生成符合閾值的頻繁項集的列表。
- 使用第1步中的頻繁項集生成下一級的候選項集列表,這些項集至少具有一個共同的項目。
- 再次掃描數(shù)據(jù)集,確定哪些候選項集實際上是頻繁的,即檢查它們是否符合支持閾值。
- 重復(fù)步驟2和3,直到不能生成更多的頻繁項集。
- 使用之前步驟生成的頻繁項集生成關(guān)聯(lián)規(guī)則。
Apriori算法具有較高的時間復(fù)雜度,因此不適合大型數(shù)據(jù)集。但是,已經(jīng)開發(fā)了幾種優(yōu)化版本來提高其效率。
import itertools
def apriori(transactions, min_support):
# 創(chuàng)建事務(wù)中唯一項目的列表
items = set([item for transaction in transactions for item in transaction])
# 初始化頻繁項集列表
frequent_itemsets = []
# 遍歷唯一項目
for item in items:
# 統(tǒng)計每個項目在事務(wù)中出現(xiàn)的次數(shù)
item_count = sum([1 for transaction in transactions if item in transaction])
# 如果項目的支持度大于等于最小支持度
if item_count/len(transactions) >= min_support:
# 將項目添加到頻繁項集列表中
frequent_itemsets.append((item, item_count))
# 遍歷頻繁項集列表
for i in range(1, len(frequent_itemsets)):
# 創(chuàng)建所有可能的項集組合列表
combinations = list(itertools.combinations(frequent_itemsets, i))
# 遍歷組合
for combination in combinations:
# 統(tǒng)計組合在事務(wù)中出現(xiàn)的次數(shù)
combination_count = sum([1 for transaction in transactions if set(combination).issubset(transaction)])
# 如果組合的支持度大于等于最小支持度
if combination_count/len(transactions) >= min_support:
# 將組合添加到頻繁項集列表中
frequent_itemsets.append(combination)
# 返回頻繁項集列表
return frequent_itemsets
# 示例用法
transactions = [[‘A’, ‘B’, ‘C’], [‘B’, ‘C’, ‘D’], [‘A’, ‘B’, ‘D’], [‘B’, ‘C’, ‘E’]]
min_support = 0.5
print(apriori(transactions, min_support))

★關(guān)于WorkWin公司電腦監(jiān)控軟件★
WorkWin的使命是打造Work用途的Windows 電腦系統(tǒng),有效規(guī)范員工上網(wǎng)行為,讓老板知道員工每天在做什么(監(jiān)控包括屏幕、上網(wǎng)在內(nèi)的一舉一動),限制員工不能做什么(禁止網(wǎng)購、游戲、優(yōu)盤等)。
WorkWin基于純軟件設(shè)計,非常容易使用,無需添加或改動任何硬件,使用一臺管理機監(jiān)控全部員工機電腦。歷經(jīng)南京網(wǎng)亞十余年精心打造,此時此刻每天都有成千上萬企業(yè)電腦正在運行WorkWin,選擇WorkWin選擇“贏”。
WorkWin監(jiān)控首頁 短視頻講解 下載免費試用版
版權(quán)所有,南京網(wǎng)亞計算機有限公司 。本文鏈接地址: Apriori算法,挖掘數(shù)據(jù)集中項集的關(guān)聯(lián)規(guī)則學(xué)習(xí)經(jīng)典