# A/B 測試原理：用資料做決策

::: tip 核心問題
**如何科學地驗證產品改動的效果？**
你可能經歷過這樣的場景：團隊花了一個月做的新功能上線後，資料大漲！大家歡呼雀躍，可三週後資料又神秘地跌回了原貌。到底是因為新功能真的很好，還是因為剛好趕上節假日流量大？A/B 測試解決的就是如何剔除外界的干擾噪音，讓資料說出真相的問題。
:::

---

## 0. 全景圖：對抗「拍腦袋」的科學武器

在探討具體技術之前，讓我們先思考一下人類是如何做決策的。

當你面臨兩個按鈕顏色設計：一個是沉穩的藍色，一個是醒目的紅色。通常，決策者會依賴於自身的經驗、直覺、甚至是最高領導的偏好（業界戲稱其為 **HiPPO** —— Highest Paid Person's Opinion，薪水最高者的意見）。

但使用者的真實回饋往往遠超我們的想像力。也許紅色太刺眼反而導致轉換率下降，也許藍色不夠引人注目……我們怎麼能確信某種改動一定是更好的？

答案源自於經典的科學法則，這種法則和現代醫學在驗證新藥時使用的手段如出一轍：**對照實驗**。

::: tip A/B 測試的本質
**A/B 測試 = 對比 + 觀察**
這就如同醫學研究中的「雙盲測試」：
- **對照組（A組）**：吃長得像藥的澱粉片（看到舊版本的頁面）。
- **實驗組（B組）**：吃正在研發的新藥（看到新版本的頁面）。
只有當實驗組的治癒率（轉換率）極其穩定且明顯地高於對照組時，我們才能宣告新藥（新改動）確實有效。
:::

---

## 1. 流量分配：流量隔離與分層

做 A/B 測試的第一個鐵律就是：**同時、隨機、隔離**。

你絕對不能說：「前半個月所有的使用者看藍按鈕，後半個月所有使用者看紅按鈕。」因為時間跨度帶來了無數的變數——你完全無法知道後半個月轉換率上漲是因為按鈕是紅色的，還是因為碰巧到了雙十一旺季。

我們要做的是在同一時刻創造「平行宇宙」。每個進入網站的使用者，系統都在底層立刻拋出了一枚數位硬幣，決定他被分派到 A 宇宙，還是 B 宇宙。

你可以透過下面的演示，直觀地觀察系統是如何進行流量切割的：

<ABTestingDemo tab="traffic" />

### 1.1 隨機分配如此重要的動機

只有百分之百的「隨機」，才能最大程度抹平其他一切特徵帶來的差異。如果在足夠大的樣本量下進行了完美的隨機切割，那麼 A 組和 B 組的年輕使用者比例、收入水準、地域分佈原則上都會驚人的一致。

此時，如果二者的資料表現不同，那就排除了所有其他的干擾項和狡辯。唯一的不同，只能是因為你改了紅色按鈕。

---

## 2. 樣本與檢驗：戰勝假象的數學邏輯

好了，既然分了組，我們找 10 個使用者分別看看結果不就行了？這就引出了 A/B 測試裡最冷酷無情的數學法則：**大數定律與樣本量（Sample Size）**。

想像你拋了 10 次硬幣，結果 7 次正面、3 次反面，這能說明硬幣被別人做過手腳嗎？顯然不能，因為基數太小，7:3 純粹就是波動、運氣。但如果你拋了 10 萬次，發現有 7 萬次正面，那這時候就可以鐵腕斷言：硬幣一定是偏心的。

同樣，如果只是 100 個人測試，多一個人點擊都會帶來 1% 的暴漲暴跌。這就需要我們在實驗開始前，透過公式計算必須湊滿多少流量。

<ABTestingDemo tab="calculator" />

### 2.1 統計學中的兩大守護神

一旦跑滿了這些流量條件，統計學就在我們尋找真相的旅程中佈置了兩尊門神：

- **統計功效 (Power, 通常要求 80%)**：它代表如果你的新改動確實有效，你有多大的把握能把這個有效的效果偵測出來，而不是將其誤認為是一種噪音放任自流。（防止說「無效」但其實「有效」的假陰性漏網之魚）
- **顯著性水準 (P-Value, 通常要求小於 0.05)**：也就是大家常說的「P<0.05」。它的意思是，兩組出現這樣區別，如果是純靠運氣導致的機率是否小於 5%？要是運氣佔比連 5% 都不到，我們就會承認這就是**統計顯著**(Significant)，這改動真的發揮了非凡的作用。（防止說「有效」但其實只是走運的假陽性）

## 3. 結果對決：真相審判

收集完充足的資料後，我們需要透過下面這套專業的漏斗模型進行精確評判。對比結果不僅僅是一個簡單的加減法，而是牽扯到信心水準、常態分佈計算的重頭戲：

<ABTestingDemo tab="results" />

當你看到頁面上回饋了一個明確的**「顯著」**時，那意味著我們可以向全公司自豪地宣佈：拋棄我們主觀幼稚的爭論，立刻全量上線 B 方案！一切都有堅實的數學原理作為後盾。

---

## 4. 幽暗的陷阱：分析中的誤區

雖然 A/B 測試本身是理性和科學的體現，但操作它的人卻深受人性的弱點左右。人們往往只願意看到自己期望的結果，這很容易讓整個測試由於失真而陷入可怕的反噬：

<ABTestingDemo tab="pitfalls" />

### 4.1 警惕「新奇效應」

當某樣東西剛剛出現時，使用者會因為純粹的獵奇和新奇感，去點擊你那個看起來亂七八糟的新按鈕，這會讓你的轉換率在前三天呈現火箭式的拉升。

很多產品經理會在第三天果斷拿著完美的資料停止實驗並發送戰報。但如果你耐心等到兩週之後，你會發現使用者的新鮮感一過，資料又陰暗地跌到了舊版本的紅線之下。這就是為什麼實驗的週期設定尤為關鍵，切勿被短期的虛高蒙蔽雙眼。

---

## 5. 總結：培養向資料屈服的勇氣

總而言之，從「直覺式猜想」走向「A/B 測試」，對於任何一個團隊來說都是一場巨大的心智蛻變。

1. **提出謹慎假設**：基於對使用者的嚴謹觀察，建立一條可以被量化的假說。
2. **切分平行世界**：以純粹的隨機撕裂流量，剔除外在的噪音牽絆。
3. **接受樣本洗禮**：等待大數定律生效，用足量的時間和樣本降低波動。
4. **進行數學審判**：讓 P 值來宣判方案的好壞，嚴格服從顯著性的事實。

作為軟體的締造者，最大的智慧莫過於——**學會向事實屈服的勇氣。我們不用再花費幾個小時在會議室裡為藍色和紅色吵得面紅耳赤；只需靜待兩週，點擊率會向我們證明，究竟誰才是最受使用者擁簇的王者。**
