Bahasa Melayu

Reka Bentuk Eksperimen yang Tahan Ulasan Pihak Berkepentingan

Pasukan yang pernah saya bekerjasama menjalankan ujian warna sepanduk pada suku tahun lalu. Tiga hari. Kira-kira 200 pengguna setiap cabang. PM melihat papan pemuka, melihat p = 0.07 pada kadar klik-lalu, dan menulis dalam Slack: "arah positif, mari hantar." Enam minggu kemudian metrik utama tidak berubah, model pemperibadian ML hiliran telah melatih semula secara senyap pada trafik yang dirawak pada peringkat sesi untuk objektif peringkat pengguna, dan apabila VP bertanya apa hipotesis asal, tiada siapa yang dapat menemuinya.

Eksperimen itu mempunyai empat masalah yang bertindan: saiz sampel yang kurang berkuasa, tiada pengiraan kesan minimum yang boleh dikesan, unit rawak yang salah, dan sekilas pandang pada hari ke-2 yang mempengaruhi keputusan. Setiap satu sahaja sudah cukup untuk memusnahkan hasilnya. Bersama-sama mereka menghasilkan keputusan yang penuh keyakinan yang dibina atas tiada apa-apa.

Panduan ini ialah penangkalnya. Ia ialah Playbook reka bentuk yang menjadikan kisah itu mustahil untuk berulang. Yang di mana PM, ketua kejuruteraan, dan VP yang skeptikal semuanya boleh membaca dokumen pembacaan dan sampai kepada kesimpulan yang sama dengan anda.

Templat Hipotesis

Kebanyakan eksperimen gagal sebelum sebarang data dikumpulkan kerana hipotesis tidak boleh disangkal. "Perbaiki UX." "Buat pembayaran lebih baik." "Tingkatkan penglibatan." Tiada satu pun daripada ini boleh salah, yang bermakna tiada satu pun yang boleh betul.

Hipotesis yang boleh anda pertahankan mempunyai empat bahagian:

  • Masalah: angka spesifik yang tidak anda sukai, hari ini, dengan garis asas.
  • Perubahan yang diramalkan: perkara yang akan anda lakukan, dalam satu ayat.
  • Metrik kejayaan: satu angka utama tunggal yang akan anda gunakannya sebagai pertimbangan.
  • MDE: saiz kesan terkecil yang akan mengubah keputusan perniagaan anda.

Apabila diisi, ia kelihatan seperti ini:

Kadar penyelesaian pembayaran ialah 38% (garis asas 90 hari, n lebih kurang 1.2 juta sesi). Menambah bar kemajuan 4 langkah pada aliran pembayaran akan mengurangkan pengguguran selepas langkah alamat. Metrik utama: kadar penyelesaian, diukur per pengguna, tetingkap 14 hari. MDE: peningkatan mutlak 1.5 mata peratusan (4% relatif). Apa-apa yang lebih kecil tidak membenarkan kos kejuruteraan.

Perhatikan apa yang templat ini paksa. Anda berkomitmen kepada angka garis asas, supaya anda tidak boleh berhujah selepas fakta bahawa metriknya berbeza. Anda berkomitmen kepada satu metrik utama, supaya anda tidak boleh beralih kepada metrik sekunder apabila utama mengecewakan. Anda berkomitmen kepada MDE, supaya anda tidak boleh mendakwa peralihan 0.3 mata peratusan "penting." Dan MDE itu berasaskan keputusan perniagaan (peningkatan terkecil yang sebenarnya akan mengubah tindakan anda seterusnya), bukan kemudahan statistik.

Tolak hipotesis yang kabur dari awal. Jika pihak berkepentingan berkata "kami mahu menguji susun atur baru untuk melihat apa yang berlaku," tugas anda ialah menolak balik: angka mana yang berubah, sebanyak mana, dan mengapa angka itu penting? "Mari lihat apa yang berlaku" adalah soalan penyelidikan, bukan eksperimen.

Matematik MDE dan Saiz Sampel

Bahagian ini, lebih daripada mana-mana bahagian lain, akan menyelamatkan anda daripada menghantar hasil yang tidak bermakna. Matematik ini bukan pilihan.

Untuk ujian dua sampel terhadap perkadaran dengan α = 0.05 (dua hala) dan kuasa statistik = 0.80, saiz sampel per cabang adalah kira-kira:

n lebih kurang 16 × σ² / δ²

Di mana σ² ialah varians metrik dan δ ialah saiz kesan mutlak yang ingin anda kesan (MDE anda). Untuk metrik binari seperti penukaran, σ² lebih kurang p(1 − p) di mana p ialah kadar garis asas.

Mari lakukan contoh pembayaran dari awal hingga akhir.

  • Kadar penyelesaian garis asas: p = 0.38
  • Varians: σ² = 0.38 × 0.62 lebih kurang 0.2356
  • MDE: δ = 0.015 (1.5 mata peratusan mutlak)
  • δ² = 0.000225
n lebih kurang 16 × 0.2356 / 0.000225
n lebih kurang 16,755 per cabang

Jadi kira-kira n = 17,000 pengguna per cabang, n = 34,000 jumlah, untuk mengesan peningkatan 1.5 mata peratusan secara boleh dipercayai pada garis asas 38% dengan kuasa statistik 80%. Jika volum pengguna harian yang layak ialah 5,000, itu minimum ujian 7 hari. Jika anda mahukan MDE 1 mata peratusan sebaliknya, penyebut turun kira-kira 2.25 kali dan anda memerlukan n lebih kurang 38,000 per cabang, hampir 16 hari ujian.

Sekarang lihat ujian sepanduk dari pembukaan: 200 pengguna per cabang, kadar klik-lalu garis asas kira-kira 8%. Varians lebih kurang 0.074. Untuk mengesan peningkatan 1 mata peratusan dengan kuasa statistik 80%, n lebih kurang 16 × 0.074 / 0.0001 = 11,840 per cabang. Mereka ada 200. Ujian itu secara matematik tidak mampu mengesan kesan yang mereka harapkan. P = 0.07 yang mereka petik bukan isyarat hampir signifikan, ia ialah hingar rawak pada sampel yang tidak mampu memberi isyarat apa-apa.

Beberapa nota praktikal:

  • Angka 16 dalam formula berasal dari (z_α/2 + z_β)² × 2 untuk α = 0.05, kuasa statistik = 0.80. Untuk kuasa statistik 90% gunakan kira-kira 21. Untuk α = 0.01 (diperbetulkan Bonferroni untuk 5 metrik, katakanlah), pemalar meningkat lagi.
  • Untuk metrik berterusan (hasil sesesi, panjang sesi), gunakan varians sampel sebenar, dan berhati-hati dengan ekor berat. Mengehadkan atau log-mengubah metrik sering merupakan langkah yang betul, lakukan sebelum anda menjalankan, bukan selepas.
  • Saiz sampel berskala dengan 1/δ². Mengurangkan separuh MDE melipatgandakan sampel yang diperlukan sebanyak empat kali. Itulah sebabnya "mari kita jalankan lebih lama jika ia tidak terserlah" adalah fantasi.

Jika kalkulator saiz sampel anda mengatakan anda memerlukan 38,000 pengguna per cabang dan pasukan hanya mempunyai 5,000 setiap minggu, pilihan anda ialah: jalankan selama 8 minggu, terima MDE yang lebih besar (dan akui anda tidak dapat mengesan kemenangan yang lebih kecil), atau pilih eksperimen yang berbeza. Tiada pilihan keempat di mana matematik bengkok.

Unit Rawak: Pengguna vs Sesi vs Kluster

Memilih unit rawak yang salah ialah pembunuh senyap bagi A/B test. Anda akan mendapat nilai p yang bersih untuk soalan yang salah.

Penrawak peringkat pengguna ialah lalai untuk kebanyakan eksperimen produk. Pengguna ditugaskan kepada varian kali pertama mereka mengenai eksperimen, dan mereka kekal dalam varian tersebut selama-lamanya (atau sekurang-kurangnya untuk tetingkap ujian). Ini betul apabila metrik dikira per pengguna: pengekalan, LTV, kekerapan pembelian, kadar pulangan 7 hari.

Penrawak peringkat sesi menugaskan setiap sesi secara bebas. Ini berfungsi untuk metrik sesi tunggal yang tidak berstatus seperti masa muat halaman atau penukaran sesi tunggal pada halaman pendaratan di mana pengguna tidak kembali. Ia gaguk teruk apabila metrik bertambah merentasi sesi. Jika anda merawak algoritma cadangan pada peringkat sesi dan mengukur pengekalan 30 hari, anda baru sahaja menunjukkan kepada pengguna tiga pengalaman cadangan berbeza selama 30 hari, anda mengukur purata A dan B, bukan A berbanding B.

Penrawak kluster adalah untuk kesan pasaran, rangkaian, dan sosial. Jika varian mengubah cara bekalan bertemu permintaan (algoritma kedudukan baharu dalam pasaran, perubahan suapan yang mempengaruhi apa yang pengguna lain lihat), anda tidak boleh merawak pengguna individu. Mereka melimpah ke dalam pengalaman antara satu sama lain. Rawak pada peringkat geo, peringkat pasaran, atau kluster sosial. Kos: n berkesan anda turun kepada bilangan kluster, bukan bilangan pengguna, dan pengiraan saiz sampel anda perlu menggunakan varians peringkat kluster (yang biasanya jauh lebih tinggi daripada varians peringkat pengguna).

Soalan diagnostik: "Jika saya menugaskan pengguna A kepada kawalan dan pengguna B kepada rawatan, bolehkah hasil pengguna A dipengaruhi oleh pengalaman pengguna B?" Jika ya, anda mempunyai gangguan, dan anda memerlukan penrawak kluster atau reka bentuk switchback.

Kesilapan peringkat sesi dari ujian pembukaan adalah tepat seperti ini. Kadar klik-lalu ialah metrik sesi secara teknikalnya, jadi penrawak peringkat sesi lulus pemeriksaan. Tetapi model hiliran yang melatih semula pada data itu memerlukan isyarat peringkat pengguna. Unit rawak mesti sepadan dengan unit analisis, dan kedua-duanya mesti sepadan dengan unit keputusan.

Metrik Pelindung

Metrik utama memberitahu anda sama ada perubahan itu berhasil. Metrik pelindung memberitahu anda sama ada ia memecahkan perkara lain.

Pradaftar dua hingga empat metrik pelindung yang tidak boleh merosot melebihi ambang, walaupun utama menang. Metrik pelindung standard:

  • Kependaman (masa muat halaman p95, masa respons API): banyak "kemenangan" adalah kemenangan kerana varian baharu dimuatkan lebih cepat, bukan kerana perubahan itu baik.
  • Kadar ralat (ralat 5xx, ralat JS pihak klien): rawatan yang menggandakan kadar ralat menghantar pepijat, tanpa mengira apa yang dilakukan penukaran.
  • Hasil sesisi pengguna: jika anda mengoptimumkan kadar klik-lalu dan hasil sesisi pengguna turun, anda menemui cara membuat orang mengklik pada perkara yang bernilai lebih rendah. Jangan hantar.
  • Kadar tiket sokongan: perubahan UX yang mengelirukan pengguna muncul di sini, bukan dalam metrik penukaran.

Ambang itu penting. Corak biasa: "metrik pelindung tidak boleh merosot lebih daripada 1% relatif, atau eksperimen gagal tanpa mengira hasil utama." Pradaftar ambang tersebut. Jika tidak, apabila kependaman masuk 2% lebih perlahan, perbualan menjadi "adakah 2% benar-benar bermakna," dan anda berunding dengan diri sendiri.

Tujuan metrik pelindung ialah untuk menangkap eksperimen yang memenangi utama tetapi merosakkan perniagaan. Ia ialah alat yang paling kurang digunakan dalam kerja DS, dan insurans termurah yang boleh anda beli.

Dokumen Pembacaan

Bentuk yang sama, setiap kali. Dokumen pembacaan yang tahan ulasan ialah satu halaman, boleh diimbas dalam 90 saat, tanpa kejutan dalam lampiran. Berikut ialah templatnya:

  • Hipotesis: satu perenggan, templat empat bahagian di atas, ditulis sebelum eksperimen bermula.
  • Reka bentuk: unit rawak, sasaran saiz sampel, MDE, metrik utama, metrik pelindung, peruntukan trafik.
  • Tarikh dan sampel: tarikh mula, tarikh tamat, saiz sampel sebenar yang dicapai per cabang.
  • Hasil utama: anggaran titik, selang keyakinan 95%, nilai p. Satu baris.
  • Metrik pelindung: jadual metrik pelindung dengan delta, selang keyakinan, dan lulus/gagal berbanding ambang pradaftar.
  • Potongan segmen pradaftar: metrik yang sama, dipecahkan mengikut segmen yang anda komitmen terlebih dahulu.
  • Keputusan: hantar / tidak hantar / ulang, dengan rasional yang terikat langsung kepada hasil.
  • Pelan pengembalian semula: jika dihantar, bagaimana kami memantau dalam pengeluaran, dan apa yang mencetuskan pengembalian semula?

Yang tidak ada dalam pembacaan: potongan segmen selepas fakta yang dibentangkan sebagai penemuan, pembingkisan semula naratif hipotesis, atau panggilan "berarah." Jika potongan segmen bersifat penerokaan, labelkan sebagai penerokaan dalam bahagian yang ditandakan dengan jelas. Pengulas seharusnya dapat menentukan sekilas pandang angka mana yang dirancang dan mana yang penerokaan.

Disiplin ialah templat. Apabila setiap eksperimen dalam organisasi menggunakan satu halaman yang sama, pengulas berhenti perlu mempelajari gaya peribadi setiap DS dan mula dapat menilai kerja itu dengan sebenarnya.

Mengapa Kebanyakan Eksperimen Gagal

Selepas cukup banyak pembacaan, mod kegagalan berkumpul ke dalam senarai pendek:

  • Kurang berkuasa. Matematik MDE tidak dilakukan, atau dilakukan dan diabaikan. Ujian tidak mampu mengesan kesan yang dituntut.
  • Hipotesis tidak jelas. Tiada ramalan yang boleh disangkal, tiada metrik utama yang dikomitkan, tiada MDE. Eksperimen "berjaya" tidak kira apa yang data katakan.
  • Unit rawak yang salah. Peringkat sesi untuk soalan peringkat pengguna, atau peringkat pengguna untuk soalan pasaran dengan gangguan.
  • Tiada metrik pelindung. Utama menang, pasukan menghantar, kependaman merosot 8%, dan tiga minggu kemudian seseorang menyedari hasil menurun.
  • Tiada pelan pengembalian semula. Kod dihantar, eksperimen diisytiharkan selesai, dan tiada siapa yang memantau pengeluaran. Perubahan melayang dan tiada siapa yang dapat mengaitkan layu itu kembali kepada pelancaran.
  • Terganggu dengan keluaran lain. Eksperimen dijalankan semasa kempen pemasaran atau penyegaran UI yang mengenai kedua-dua cabang. Kesan yang dianggarkan ialah eksperimen ditambah gangguan, dan anda tidak boleh memisahkannya.

Setiap satu daripada ini boleh dicegah dalam fasa reka bentuk. Tiada satu pun yang boleh diperbaiki selepas pengumpulan data.

Mengelak HARKing

HARKing (Hypothesizing After Results are Known, atau Membuat Hipotesis Selepas Keputusan Diketahui) ialah bentuk penipuan diri yang paling biasa dalam eksperimen. Coraknya: anda menjalankan ujian pada seluruh asas pengguna, utama adalah nul, tetapi varian kelihatan hebat untuk "pengguna pada iOS di AS yang tiba melalui carian berbayar." Jadi itu menjadi tajuk berita.

Masalahnya adalah statistik semata-mata. Jika anda memotong data anda kepada 20 segmen, anda akan menjangkakan salah satu daripada mereka mencapai p < 0.05 secara kebetulan sahaja. Memilih pemenang selepas melihat semua 20 dan membentangkannya sebagai hasil yang disahkan adalah, secara matematik, penipuan. Anda akan menemui "kesan" yang sama pada lontaran syiling jika anda memotong dengan cukup halus.

Penyelesaiannya ialah pradaftar. Sebelum eksperimen bermula, tulis:

  1. Metrik utama.
  2. Potongan segmen tepat yang akan anda laporkan (contohnya, pengguna baharu vs pengguna yang kembali, mudah alih vs desktop, 3 pasaran teratas), dan hanya itu.
  3. Mana-mana subkumpulan yang anda komitkan sebagai analisis pengesahan.

Apa yang anda temui kemudian masuk ke dalam bahagian "Penerokaan" yang dilabelkan dengan jelas, dengan nota bahawa nilai p tidak diperbetulkan untuk ujian berganda dan bahawa penemuan itu memerlukan eksperimen susulan untuk mengesahkan. Jangan pernah menyebut hasil subkumpulan selepas fakta sebagai "signifikan." Sebutnya sebagai hipotesis untuk ujian seterusnya.

Pembetulan budaya lebih sukar daripada teknikal. Apabila pihak berkepentingan sangat memerlukan kemenangan dan potongan selepas fakta memberikannya, tekanan untuk mengesahkannya sebagai hasil yang disahkan adalah nyata. Disiplin pradaftar (menulis terlebih dahulu) ialah yang memberi anda kedudukan untuk menolak balik.

Disiplin Menjenguk

Berikut ialah angka yang mengejutkan orang: jika anda menyemak A/B test anda untuk kepentingan statistik setiap hari selama dua minggu, kadar positif palsu berkesan anda bukan 5%. Ia lebih hampir kepada 14%. Mungkin lebih tinggi, bergantung pada seberapa agresif anda tentang berhenti lebih awal.

Sebabnya ialah masalah ujian berurutan. Ujian t atau ujian z standard dikalibrasi untuk satu kali melihat data, selepas sampel yang telah dikomitkan dikumpulkan. Setiap pandangan tambahan ialah satu lagi peluang untuk hingar rawak melepasi ambang. Jika anda menjenguk dan berhenti, anda memilih saat yang paling melampau dalam suatu perjalanan rawak dan melaporkannya sebagai hasil tetap.

Anda mempunyai dua pilihan bersih:

  1. Komit kepada saiz sampel. Kira n, jalankan ujian sehingga anda mencapai n, kemudian lihat hasilnya sekali sahaja. Tiada papan pemuka harian yang mendorong keputusan berhenti/hantar. Memantau metrik pelindung untuk keselamatan adalah baik; menggunakan metrik utama untuk menamatkan eksperimen lebih awal tidak.
  2. Gunakan kaedah ujian berurutan. mSPRT (mixture sequential probability ratio test), reka bentuk berurutan berkumpulan dengan fungsi perbelanjaan alfa, atau kaedah Bayesian yang dilaksanakan dengan betul dengan prior bermaklumat. Ini membolehkan anda menjenguk sesekerap yang anda mahu dengan inferens yang sah, dengan kos saiz sampel yang diperlukan sedikit lebih tinggi untuk pampasan.

Yang tidak boleh anda lakukan ialah menjalankan ujian ufuk tetap, menjenguk setiap hari, dan berhenti apabila p melintasi 0.05. Itulah penjana positif palsu yang paling biasa dalam eksperimen industri, dan itulah sebab "kemenangan yang dihantar" secara rutin gagal untuk direplikasi apabila diukur dengan betul kemudian.

Penyelesaiannya adalah prosedur. Tulis peraturan berhenti ke dalam dokumen reka bentuk. "Kami akan menjalankan untuk n = 17,000 per cabang, dijangkakan 8 hari, dan membaca sekali sahaja." Jika pasukan tidak dapat melawan papan pemuka, sembunyikan metrik utama dari pandangan langsung dan hanya tunjukkan metrik pelindung. Disiplinnya ialah reka bentuk.

Penutup

Dokumen pembacaan yang tahan ulasan ialah yang di mana keputusan reka bentuk dibuat sebelum pengumpulan data dimulakan. Hipotesis itu spesifik. Saiz sampel dikira. Unit rawak dibenarkan. Metrik pelindung dipradaftar. Potongan segmen dikomitkan terlebih dahulu. Peraturan berhenti ditulis.

Selebihnya adalah penceritaan. Dan penceritaan adalah baik untuk bahagian naratif pembacaan, tetapi ia tidak boleh menjadi asas keputusan penghantaran.

Pertarungan yang anda menang ialah yang dilawan sebelum pengumpulan data. Luangkan masa sejam untuk dokumen reka bentuk. Ia ialah jam paling murah yang akan anda habiskan sepanjang suku tahun, dan ia ialah yang menentukan sama ada eksperimen anda tahan ulasan atau diam-diam menyertai longgokan ujian "berarah positif" yang tiada siapa dapat merekonstruksinya enam bulan kemudian.

Ketahui Lebih Lanjut