1. Soalan
Satu aliran onboarding baharu sedang berada dalam ujian A/B. Selepas dipecahkan mengikut jenis pengguna, rawatan (treatment) mempunyai kadar penukaran yang lebih tinggi untuk kedua-dua pengguna baharu dan pengguna kembali; selepas menggabungkan strata tersebut, rawatan mempunyai kadar penukaran keseluruhan yang lebih rendah. Pemilik produk mahukan keputusan pelancaran hari ini.
Bina contoh bilangan konkrit yang menunjukkan bagaimana pembalikan ini boleh berlaku, kemudian berikan aliran analisis daripada penyebut mentah dan keseimbangan rawakan kepada penganggar berstratum dan ujian interaksi. Akhir sekali, nyatakan bukti yang diperlukan untuk pelancaran global, pelancaran berstratum, menjeda eksperimen, atau mengumpul lebih banyak data.
2. Kekangan dan penjelasan
- Ini ialah eksperimen dalam talian rawak; "baharu" dan "kembali" ialah strata yang ditakrifkan sebelum eksperimen bermula.
- Metrik utama ialah sama ada setiap pengguna melengkapkan penukaran teras dalam tetingkap masa yang tetap. Peristiwa berulang daripada seorang pengguna bukanlah sampel bebas.
- Angka dalam soalan ialah data latihan, bukan hasil syarikat sebenar atau ambang pelancaran sejagat.
- Terlebih dahulu selaraskan tetingkap pemerhatian, penyahduplikasian, definisi pendedahan, dan tanda air data (data watermark). Jika sesuatu stratum dipengaruhi oleh rawatan, ia tidak boleh digunakan secara langsung untuk pembahagian subkumpulan kausal.
3. Penaakulan teras: campuran penyebut boleh membalikkan hasil
Penukaran keseluruhan ialah purata wajaran saiz sampel bagi kadar penukaran stratum. Jika bahagian stratum berbeza antara cabang (arms), rawatan boleh menjadi lebih baik dalam setiap stratum sementara agregatnya berbalik.
Pertimbangkan contoh yang ekstrem tetapi jelas. Dalam stratum garis dasar tinggi, kawalan ialah 990/1000 = 99% dan rawatan ialah 100/100 = 100%. Dalam stratum garis dasar rendah, kawalan ialah 1/100 = 1% dan rawatan ialah 20/1000 = 2%. Rawatan bertambah baik sebanyak satu mata peratusan dalam kedua-dua strata, namun kawalan agregat ialah 991/1100 = 90.1% dan rawatan agregat ialah 120/1100 = 10.9%. Perbezaan ini berpunca daripada meletakkan sebahagian besar pemerhatian dalam strata garis dasar yang berbeza, bukan daripada rawatan yang menjadikan mana-mana stratum lebih buruk.
Dalam eksperimen sebenar, perbezaan campuran yang begitu besar biasanya menandakan masalah rawakan, pendedahan, persampelan, atau tetingkap masa. Ia tidak membuktikan bahawa setiap purata keseluruhan adalah salah. Apabila bahagian stratum diseimbangkan mengikut reka bentuk, atau piawaian populasi sasaran yang telah dipratentukan digunakan, anggaran keseluruhan masih boleh mewakili kesan rawatan purata bagi populasi sasaran.
4. Diagnosis dan pseudokod rujukan
Agregatkan penyebut dan pengangka peringkat pengguna mengikut cabang, stratum, dan bendera penukaran. Bandingkan bahagian stratum, kesan, dan selang keyakinan. Jangan mulakan dengan peratusan keseluruhan yang menguntungkan dan kemudian mencuba hirisan sewenang-wenangnya sehingga penjelasan muncul.
for arm in [control, treatment]:
for stratum in [new, returning]:
n[arm, stratum] = count_distinct_users(arm, stratum)
y[arm, stratum] = count_users_with_conversion(arm, stratum)
rate[arm, stratum] = y[arm, stratum] / n[arm, stratum]
share[arm, stratum] = n[arm, stratum] / sum_s(n[arm, s])
check_exposure_and_assignment_balance()
check_missing_users_duplicates_and_window()
report_stratum_effects_and_confidence_intervals()
weights = preregistered_target_population_shares()
standardized_effect = sum_s(weights[s] * (rate[treatment, s] - rate[control, s]))
test_arm_by_stratum_interaction()Jika strata tersedia sebelum perawakan, lakukan perawakan berstratum atau sekurang-kurangnya pantau peruntukan dalam setiap stratum. Pelan analisis harus mempra-daftar strata utama, wajaran populasi sasaran, metrik utama, dan peraturan henti supaya hasilnya tidak menentukan hirisan mana yang perlu dipilih.
5. Ketepatan, statistik, dan keputusan pelancaran
Penganggar berstratum meletakkan setiap kesan stratum kembali ke atas wajaran populasi sasaran yang sama, jadi perbezaan campuran sampel tidak disalah anggap sebagai kesan rawatan. Wajaran mesti datang daripada definisi populasi pra-eksperimen atau reka bentuk perawakan, bukan disimpulkan daripada hasil yang diperhatikan.
Uji interaksi antara rawatan dan stratum untuk menentukan sama ada perbezaan kesan melebihi hingar persampelan. Jika interaksi adalah ketara dan stabil, pelancaran berbeza untuk pengguna baharu dan kembali boleh dijustifikasikan. Jika ia tidak ketara, utamakan anggaran keseluruhan yang telah dipratentukan berbanding memilih stratum yang kelihatan terbaik.
Keertian statistik sahaja tidak mewajarkan pelancaran. Gabungkan kesan minimum yang boleh diterima, metrik penghadang (guardrail metrics), tempoh eksperimen, saiz sampel, penukaran tertunda, dan kesempurnaan data. Jika pengelogan pendedahan, pencemaran rentas cabang, perawakan, atau kematangan tetingkap rosak, jeda keputusan dan baiki data dan bukannya menyembunyikan isu dengan melakukan lebih banyak penghirisan.
6. Tindakan susulan dan perangkap
- Bilakah stratum boleh mewujudkan masalah kausal? Jika ia dihasilkan selepas pendedahan, mengkondisikannya boleh mewujudkan bias pengabur (collider bias); gunakan pemboleh ubah pra-pendedahan atau analisis mekanisme yang telah dipratentukan sebagai ganti.
- Mengapa tidak menghiris tanpa had? Setiap hirisan yang tidak didaftarkan menambah peluang untuk hasil ketara secara kebetulan; kawal kemajmukan dan labelkan penemuan penerokaan sebagai hipotesis.
- Adakah setiap perbezaan agregat merupakan paradoks Simpson? Tidak. Mula-mula periksa penyebut, kelayakan pendedahan, tetingkap masa, penyahduplikasian, dan data yang hilang, kemudian sahkan bahawa arah benar-benar berbalik dalam strata.
- Bagaimana jika rawatan mempunyai campuran stratum yang berbeza? Siasat perawakan dan penghalaan terlebih dahulu. Jika wajaran populasi sasaran diketahui, gunakan anggaran piawai yang telah dipratentukan; jangan sekali-kali memilih wajaran selepas melihat keputusan.
7. Rujukan
- Panduan Analisis Data yang Baik dan Perangkap analisis daripada Google for Developers.
- Penjelasan Optimizely tentang paradoks Simpson dan hasil eksperimen bersegmen.
- Soalan temu duga sains data awam yang merangkumi pembalikan dalam ujian A/B.
8. Mata pemarkahan temu duga
Boleh mengira penyebut dan wajaran
Calon harus menggunakan bilangan untuk menunjukkan "menang dalam setiap stratum, kalah secara keseluruhan" dan mengenal pasti bahagian stratum yang tidak sama sebagai petunjuk utama.
Boleh memisahkan diagnosis daripada keputusan
Mereka harus menyemak perawakan, pendedahan, tetingkap masa, dan kualiti data sebelum membincangkan penganggar, interaksi, dan peraturan pelancaran.
Boleh menyatakan sempadan kausal
Mereka harus mengenal pasti strata pasca-pendedahan, bias pengabur (collider bias), dan risiko kemajmukan dan bukannya menganggap setiap hirisan sebagai kesimpulan bebas.
Boleh memberikan pelan yang boleh dilaksanakan
Mereka harus mencadangkan perawakan berstratum, wajaran yang dipra-daftar, penghadang, dan syarat untuk pelancaran berstratum atau ujian berterusan dan bukannya sekadar berkata "kumpul lebih banyak data."