48/100 關聯規則學習(Apriori, FP-Growth) 🛍 「買了 A,可能會買 B」,用來做市場籃分析!

更新於 發佈於 閱讀時間約 8 分鐘

AI時代系列(3) 機器學習三部曲: 🔹 第一部:《機器學習 —— AI 智慧的啟航》


48/100 第五週:非監督學習


48. 關聯規則學習(Apriori, FP-Growth) 🛍 「買了 A,可能會買 B」,用來做市場籃分析!


🛍 關聯規則學習(Apriori, FP-Growth)

「買了 A,可能會買 B」── 探索購物習慣,應用於市場籃分析!

________________________________________


🔎 一、什麼是關聯規則學習(Association Rule Learning)?


一種典型的非監督學習技術

從大量交易或行為資料中挖掘「物品間的關聯性」

核心目標:找出「如果 A 發生,B 也可能發生」的潛在規則

________________________________________


🧠 二、關鍵名詞解釋(務必理解)


支持度(Support): 同時購買 A 與 B 的機率,出現頻率高才值得關注

信賴度(Confidence): 購買 A 的顧客中,有多少比例會買 B(條件機率)

提升度(Lift): A 發生後購買 B 的可能性提升了多少(>1 表示正相關)


✅ 範例:{牛奶} → {麵包}


Support = 15%

Confidence = 75%(買牛奶的人 75% 會買麵包)

Lift = 1.8(正相關)

________________________________________


📈 三、經典應用場景


✅ 超商、電商購物分析(Market Basket Analysis)

✅ 推薦系統(Buy Together)

✅ 保險理賠詐欺偵測

✅ 醫療診斷(症狀關聯分析)

✅ 網路點擊流分析(哪些頁面常一起被看)

________________________________________


🛠 四、Apriori 演算法介紹


1970 年代提出的經典關聯規則演算法

核心邏輯:若一個集合是頻繁的,則其子集也必定頻繁(逐層遞增)

步驟:


1️⃣ 產生頻繁項目集(Frequent Itemsets)

2️⃣ 計算支持度

3️⃣ 過濾低支持度的項目

4️⃣ 生成關聯規則並計算 Confidence 和 Lift

________________________________________


🪄 五、FP-Growth(Frequent Pattern Growth)優化版


✅ 解決 Apriori 需要反覆掃描資料的效率問題

✅ 利用 壓縮的 FP-Tree 結構 儲存資料

✅ 遞迴地產生頻繁項目集,速度大幅提升

✅ 適用於資料量大或商品項目多的場景

_______________________________________

_

💻 六、Python 簡易範例(mlxtend 套件)

python


from mlxtend.frequent_patterns import apriori, association_rules

import pandas as pd


# 假設一份簡單的購物交易紀錄

dataset = pd.DataFrame([

['牛奶', '麵包', '尿布'],

['可樂', '尿布', '啤酒'],

['牛奶', '尿布', '啤酒', '可樂'],

['麵包', '牛奶', '尿布'],

['麵包', '牛奶', '可樂']

])


# One-hot 編碼

oht = pd.get_dummies(dataset.apply(pd.Series).stack()).sum(level=0)


# Apriori 挖掘

frequent_items = apriori(oht, min_support=0.4, use_colnames=True)

rules = association_rules(frequent_items, metric="lift", min_threshold=1)


print(rules[['antecedents', 'consequents', 'support', 'confidence', 'lift']])



這段程式碼展示了如何使用 mlxtend 套件對購物交易資料進行 關聯規則分析,具體流程如下:


首先,利用 pandas 建立了一份交易紀錄,每列代表一筆購物行為,接著透過 apply + stack 將每筆交易攤平成一欄,再用 get_dummies() 將商品轉換為 one-hot 編碼,並用 sum(level=0)(或 groupby(level=0).sum() 替代)彙總為每筆交易對各商品的有無紀錄。


接下來,使用 apriori() 函數以最小支持度 0.4(表示商品組合至少出現在 40% 的交易中)找出頻繁項目集,再透過 association_rules() 函數挖掘出這些項目集之間的關聯規則,並以 lift >= 1 為條件篩選。


最後,輸出包含前件 (antecedents)、後件 (consequents)、支持度 (support)、信賴度 (confidence) 與提升度 (lift) 的結果,用於判斷哪些商品有強關聯性,適合應用於行銷推薦或購物籃分析。



✅ 分析結果:

第 0 筆交易:牛奶、麵包、咖啡 ✅


第 1 筆交易:牛奶、尿布 ✅


第 2 筆交易:啤酒、尿布、麵包 ✅


________________________________________


📊 七、Apriori vs. FP-Growth 比較


Apriori 與 FP-Growth 是兩種常見的關聯規則挖掘演算法。Apriori 採用逐層擴展的方式,不斷重複掃描資料庫以找出頻繁項目集,邏輯簡單但效率較低,較適合處理小型資料;相對地,FP-Growth 則透過構建壓縮結構的 FP-Tree,利用遞迴方式快速生成模式,運算效率高,更適合大規模資料分析。然而,Apriori 的主要缺點是需大量計算與多次掃描資料,而 FP-Growth 雖快,但其樹狀結構較複雜,記憶體需求也較高。

________________________________________


🧠 八、關聯規則應用亮點


✅ 商品組合推薦(如蝦皮/淘寶「常一起買」)

✅ 廣告投放組合優化

✅ 跨品類行為分析(買嬰兒用品→買啤酒)

✅ 健康醫療決策輔助(症狀、藥品關聯)

________________________________________


📌 九、結論與精華


✔ 關聯規則學習是電商、零售、行銷的核心技術之一

✔ 幫助企業精準洞察消費者購物習慣,設計更有效的行銷策略

✔ FP-Growth 解決大數據下效率瓶頸,成為產業實務主流

________________________________________


📌 一句話精華


🛍 關聯規則學習 = 讓 AI 幫你找出「買了A,也會買B」的黃金組合,全面提升銷售力!

________________________________________


如果你需要:





留言
avatar-img
留言分享你的想法!
avatar-img
Hansen W的沙龍
3會員
106內容數
AIHANS沙龍是一個結合AI技術實戰、產業策略與自我成長的知識平台,主題涵蓋機器學習、生成式AI、創業經驗、財務規劃及哲學思辨。這裡不只提供系統化學習資源與實作案例,更強調理性思維與行動力的結合。無論你是AI初學者、創業者,還是追求人生升維的行者,都能在這裡找到前進的方向與志同道合的夥伴。
Hansen W的沙龍的其他內容
2025/05/28
LDA 主題模型宛如無師自通的內容編輯,可在龐大文本中自動抽取「隱藏主題」與關鍵詞,輸出文章-主題及主題-詞權重分佈,助你快速完成新聞分類、輿情監測與自動標籤。結合 TF-IDF 前處理與 pyLDAvis 視覺化,能進一步提升解析深度與趨勢洞察力。
Thumbnail
2025/05/28
LDA 主題模型宛如無師自通的內容編輯,可在龐大文本中自動抽取「隱藏主題」與關鍵詞,輸出文章-主題及主題-詞權重分佈,助你快速完成新聞分類、輿情監測與自動標籤。結合 TF-IDF 前處理與 pyLDAvis 視覺化,能進一步提升解析深度與趨勢洞察力。
Thumbnail
2025/05/28
GAN 透過生成器與判別器對抗學習,無需標註即可生成高逼真圖片、語音與音樂,並應用於深偽、藝術創作、數據增強;理解對抗機制、損失函數與常見變種即掌握生成式AI核心,從 DCGAN、CycleGAN 到 StyleGAN 的演進,雖訓練不穩定但潛力驚人,是生成式 AI 的入門必修。
Thumbnail
2025/05/28
GAN 透過生成器與判別器對抗學習,無需標註即可生成高逼真圖片、語音與音樂,並應用於深偽、藝術創作、數據增強;理解對抗機制、損失函數與常見變種即掌握生成式AI核心,從 DCGAN、CycleGAN 到 StyleGAN 的演進,雖訓練不穩定但潛力驚人,是生成式 AI 的入門必修。
Thumbnail
2025/05/28
SVD透過分解矩陣找出潛藏特徵,能精準填補稀疏評分、壓縮影像、抽取文本主題。保留少數奇異值即可降維與去雜訊,同時揭露使用者與物品之間的隱含關係,讓推薦更貼心、洞察更清晰。此技術計算量大,可搭配截斷SVD加速,現已廣泛應用於 Netflix、Spotify 等協同過濾與 LSA 語意分析。
Thumbnail
2025/05/28
SVD透過分解矩陣找出潛藏特徵,能精準填補稀疏評分、壓縮影像、抽取文本主題。保留少數奇異值即可降維與去雜訊,同時揭露使用者與物品之間的隱含關係,讓推薦更貼心、洞察更清晰。此技術計算量大,可搭配截斷SVD加速,現已廣泛應用於 Netflix、Spotify 等協同過濾與 LSA 語意分析。
Thumbnail
看更多
你可能也想看
Thumbnail
每年4月、5月都是最多稅要繳的月份,當然大部份的人都是有機會繳到「綜合所得稅」,只是相當相當多人還不知道,原來繳給政府的稅!可以透過一些有活動的銀行信用卡或電子支付來繳,從繳費中賺一點點小確幸!就是賺個1%~2%大家也是很開心的,因為你們把沒回饋變成有回饋,就是用卡的最高境界 所得稅線上申報
Thumbnail
每年4月、5月都是最多稅要繳的月份,當然大部份的人都是有機會繳到「綜合所得稅」,只是相當相當多人還不知道,原來繳給政府的稅!可以透過一些有活動的銀行信用卡或電子支付來繳,從繳費中賺一點點小確幸!就是賺個1%~2%大家也是很開心的,因為你們把沒回饋變成有回饋,就是用卡的最高境界 所得稅線上申報
Thumbnail
全球科技產業的焦點,AKA 全村的希望 NVIDIA,於五月底正式發布了他們在今年 2025 第一季的財報 (輝達內部財務年度為 2026 Q1,實際日曆期間為今年二到四月),交出了打敗了市場預期的成績單。然而,在銷售持續高速成長的同時,川普政府加大對於中國的晶片管制......
Thumbnail
全球科技產業的焦點,AKA 全村的希望 NVIDIA,於五月底正式發布了他們在今年 2025 第一季的財報 (輝達內部財務年度為 2026 Q1,實際日曆期間為今年二到四月),交出了打敗了市場預期的成績單。然而,在銷售持續高速成長的同時,川普政府加大對於中國的晶片管制......
Thumbnail
重點摘要: 6 月繼續維持基準利率不變,強調維持高利率主因為關稅 點陣圖表現略為鷹派,收斂 2026、2027 年降息預期 SEP 連續 2 季下修 GDP、上修通膨預測值 --- 1.繼續維持利率不變,強調需要維持高利率是因為關稅: 聯準會 (Fed) 召開 6 月利率會議
Thumbnail
重點摘要: 6 月繼續維持基準利率不變,強調維持高利率主因為關稅 點陣圖表現略為鷹派,收斂 2026、2027 年降息預期 SEP 連續 2 季下修 GDP、上修通膨預測值 --- 1.繼續維持利率不變,強調需要維持高利率是因為關稅: 聯準會 (Fed) 召開 6 月利率會議
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 回顧 AI說書 - 從0開始 - 87 說:Wang 等人 2019 年的論文,提供了合理答案的選擇 (Choice of Plausible Answers, COP
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 回顧 AI說書 - 從0開始 - 87 說:Wang 等人 2019 年的論文,提供了合理答案的選擇 (Choice of Plausible Answers, COP
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 從 AI說書 - 從0開始 - 82 到 AI說書 - 從0開始 - 85 的說明,有一個很重要的結論:最適合您的模型不一定是排行榜上最好的模型,您需要學習 NLP 評
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 從 AI說書 - 從0開始 - 82 到 AI說書 - 從0開始 - 85 的說明,有一個很重要的結論:最適合您的模型不一定是排行榜上最好的模型,您需要學習 NLP 評
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 繼 AI說書 - 從0開始 - 82 與 xxx ,我們談論了衡量 AI 模型的方式,那當你訓練的模型比 State-of-the-Art 還要好並想要進行宣稱時,需要
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 繼 AI說書 - 從0開始 - 82 與 xxx ,我們談論了衡量 AI 模型的方式,那當你訓練的模型比 State-of-the-Art 還要好並想要進行宣稱時,需要
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 Transformer 可以透過繼承預訓練模型 (Pretrained Model) 來微調 (Fine-Tune) 以執行下游任務。 Pretrained Mo
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 Transformer 可以透過繼承預訓練模型 (Pretrained Model) 來微調 (Fine-Tune) 以執行下游任務。 Pretrained Mo
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 目前我們已經完成: Single-Head Attention 數學說明:AI說書 - 從0開始 - 52 Multi-Head Attention 數學說明:
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 目前我們已經完成: Single-Head Attention 數學說明:AI說書 - 從0開始 - 52 Multi-Head Attention 數學說明:
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 目前我們已經完成: Single-Head Attention 數學說明:AI說書 - 從0開始 - 52 Multi-Head Attention 數學說明:AI
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 目前我們已經完成: Single-Head Attention 數學說明:AI說書 - 從0開始 - 52 Multi-Head Attention 數學說明:AI
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 目前我們已經完成: Single-Head Attention 數學說明:AI說書 - 從0開始 - 52 Multi-Head Attention 數學說明:AI
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 目前我們已經完成: Single-Head Attention 數學說明:AI說書 - 從0開始 - 52 Multi-Head Attention 數學說明:AI
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 目前我們已經完成: Single-Head Attention 數學說明:AI說書 - 從0開始 - 52 Multi-Head Attention 數學說明:AI
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 目前我們已經完成: Single-Head Attention 數學說明:AI說書 - 從0開始 - 52 Multi-Head Attention 數學說明:AI
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 目前我們已經完成: Single-Head Attention 數學說明:AI說書 - 從0開始 - 52 Multi-Head Attention 數學說明:AI
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 目前我們已經完成: Single-Head Attention 數學說明:AI說書 - 從0開始 - 52 Multi-Head Attention 數學說明:AI
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News