Adil Yazı-Tura Yetmez: Rastgele Deneyde Analiz Neden Çöker
Kriptografik olarak adil bir rastgele atama, eksik join anahtarı, test/prod ayrımı ve güç analizi olmadan neden analiz edilemez bir deneye dönüşür?
Bir mühendislik ekibi, sistemdeki bir kararı nedensel olarak savunabilmek için görevleri rastgele iki koldan birine yönlendiren bir deney kurar. Rastgele atayıcı kriptografik olarak sağlam bir kaynak kullanır ve dağılımı istatistiksel olarak adildir; bu kısım sorunsuzdur. Ancak haftalar sonra yapılan bir denetim, deneyin baştan sona analiz edilemez olduğunu ortaya çıkarır: atama işlevi hangi görevin hangi kola gönderildiğini kayıt altına almamıştır. Atama ile sonuç arasında birleştirici bir anahtar (join key) olmadığı için, hangi çekilişin hangi sonucu ürettiği geriye dönük olarak asla kurulamaz.
Denetim üç ek zafiyet daha bulur: aynı birim için ikinci kez rastgele atama yapılmasını önleyecek veya en azından tespit edecek bir mekanizma yoktur; geliştirme sırasında yapılan test çekilişleri, veri içinde ayrı bir bayrakla değil sadece belge notuyla ayrılmıştır; ve önceden tanımlanmış "durdurma kuralı" tam da hesaplanamayan bu eşleşme oranına dayandığı için asla tetiklenemez. Tüm bu sorunlar düzeltilse bile, deneyin başından beri istatistiksel güç hesabı yapılmadığı, dolayısıyla hedeflenen örneklem büyüklüğünün yarısından azına ulaşılacağı ortaya çıkar — sonuçsuz bir deney kaçınılmazdır.
Bu vaka, mühendisler için rastgele deney kurmanın asıl zorluğunun rastgeleleştiricinin kendisi değil, onu kullanılabilir kılan sıkıcı muhasebe olduğunu gösterir: her çekilişe birim kimliği damgalamak, bu kimliği sonuç tarafına taşımak, tekrar atamayı engellemek veya görünür kılmak, test verisini veri düzeyinde ayırmak ve deneye başlamadan önce tespit edilebilir en küçük etkiyi hesaplamak. Bunlardan biri eksikse, en adil rastgeleleştirici bile analiz edilemez bir deney üretir.