跳到主要內容
Cypher's Practical Coding
正在啟動 Python 環境(首次約 15 秒)...

為什麼不能憑感覺?

主管問:「免運活動跟打 85 折,哪個效果比較好?」你回答:「我覺得免運比較好,上次做免運的時候業績有變好。」

但真的是「免運」讓業績變好的嗎?還是剛好碰上發薪日、天氣變冷大家在家購物、或是競品剛好缺貨?

A/B 測試就是用來回答「到底是不是這個改動造成的」的科學方法。

什麼是 A/B 測試?

把訪客隨機分成兩組:

組別看到的版本目的
A 組(對照組)原本的頁面當作基準線
B 組(實驗組)改動過的頁面測試新方案

關鍵字是「隨機」——不是讓 VIP 看 B 版、新客看 A 版,而是完全隨機分配,這樣兩組的「其他條件」才會大致相同。

用 Python 模擬一個簡單的 A/B 測試

假設我們的電商網站原本的轉換率是 3%,我們想測試新的商品頁設計能不能提高轉換率:

「感覺有效」vs「統計上有效」

看到 B 組比 A 組高,你可能會說「B 版比較好!」但想像一下:

你丟一枚硬幣 10 次,出現 7 次正面。你會說這枚硬幣「偏向正面」嗎?

大概不會,因為 10 次太少了,7:3 的結果很可能只是運氣。

A/B 測試的核心問題就是:觀察到的差異,到底是真實的改善,還是隨機波動?

A/B 測試的三個關鍵概念

概念白話解釋類比
樣本數需要多少訪客才夠丟硬幣要丟幾次才能判斷是否公平
顯著性(p-value)觀察到的差異有多「不可能是巧合」丟 100 次出現 80 次正面,大概不是運氣
效果量(Effect Size)差異有多大,值不值得改即使統計顯著,0.01% 的提升可能不值得工程成本

接下來幾課我們會逐一學會這些概念,並用 Python 實際計算。

AI 協作:學了這個,跟 AI 怎麼配合?

A/B 測試的設計需要人類的商業判斷,但計算和分析可以交給 AI。

你的人類優勢:

  • 你知道哪個指標對業務最重要(轉換率?客單價?回購率?)
  • 你理解用戶行為的脈絡(為什麼這個按鈕顏色可能有影響)

可以這樣跟 AI 說:

我們電商網站月流量 5 萬,目前結帳轉換率 2.5%,想測試新的結帳流程。幫我算需要多少樣本數,以及測試要跑多久才夠。

小練習

互動示範

DEMO 1可以修改程式碼試玩
DEMO 2可以修改程式碼試玩

挑戰任務

Task 1

用 Python 模擬一個 A/B 測試:A 組 2000 人、轉換率 5%,B 組 2000 人、轉換率 6%。印出兩組的轉換人數和轉換率。

Task 2

模擬 10 次實驗,兩組轉換率都是 4%、各 300 人。計算 B 組「看起來贏」的次數,印出「B 看起來贏的次數:X / 10」。

Next Lesson →