Apriori算法是一種用於關聯規則學習的經典算法,主要用於在交易數據集中發現項目集的頻繁出現模式。Apriori算法的核心思想是通過迭代找出頻繁項目集,即在數據集中經常一起出現的項目的集合。它的基本流程如下:
設置最小支持度閾值:這是算法的一個參數,用來判斷一個項目集是否足夠「頻繁」以包括在進一步分析中。
生成頻繁項目集:
第一步:識別所有單一項目的支持度,並刪除低於最小支持度閾值的項目。
第二步:結合剩餘的頻繁單一項目形成長度為2的項目集,再次計算這些項目集的支持度並刪除不符合支持度閾值的項目集。
重複此過程:每次增加項目集的長度,直到無法生成更長的頻繁項目集為止。
生成關聯規則:從頻繁項目集中生成規則。這通常涉及將一個頻繁項目集分割成兩部分,並計算這些規則的信賴度和提升度等指標。
篩選規則:根據設定的信賴度閾值,刪除低於此閾值的規則。
結果評估:評估所生成的規則的質量,這可以通過各種方式進行,如考慮其支持度、信賴度、提升度等指標。
Apriori算法的關鍵在於它使用了「先驗性質」(即如果一個項目集不是頻繁的,那麼包含該項目集的任何更大的項目集也不會是頻繁的),這有助於大幅減少需要檢查的項目集的數量,從而提高效率。然而,當面對大型數據集時,Apriori算法仍可能面臨效率和擴展性問題。