İki bağımsız oranın güç analizinde nasıl bir durma kuralı geliştirilebilir?


18

A / B test sistemleri üzerinde çalışan bir yazılım geliştiricisiyim. Sağlam bir istatistik geçmişim yok, ancak son birkaç aydır bilgi topluyorum.

Tipik bir test senaryosu, bir web sitesindeki iki URL'nin karşılaştırılmasını içerir. Bir ziyaretçi ziyaret eder LANDING_URLve daha sonra rasgele URL_CONTROLveya ' ya yönlendirilir URL_EXPERIMENTAL. Bir ziyaretçi bir örnek oluşturur ve ziyaretçi bu sitede arzu edilen bir eylem gerçekleştirdiğinde bir zafer koşulu elde edilir. Bu bir dönüşüm oluşturur ve dönüşüm oranlarının oranı dönüşüm oranıdır (genellikle yüzde olarak ifade edilir). Belirli bir URL için tipik bir dönüşüm oranı,% 0,01 ila% 0,08 aralığında bir şeydir. Yeni URL'lerin eski URL'lerle nasıl karşılaştırıldığını belirlemek için testler yapıyoruz. Daha URL_EXPERIMENTALiyi performans göstermesi durumunda URL_CONTROL, URL_CONTROLile değiştiririz URL_EXPERIMENTAL.

Basit hipotez test tekniklerini kullanarak bir sistem geliştirdik. Bu sistemi geliştirmek için burada başka bir CrossValidated sorunun yanıtlarını kullandım .

Bir test aşağıdaki gibi yapılır:

  • Dönüşüm oranı tahmini CRE_CONTROL ait URL_CONTROLtarihsel verileri kullanılarak hesaplanır.
  • İstenen hedef dönüşüm oranı CRE_EXPERIMENTAL arasında URL_EXPERIMENTALkümesidir.
  • Tipik olarak 0.95'lik bir anlam seviyesi kullanılır.
  • Tipik olarak 0.8'lik bir güç kullanılır.

Birlikte, bu değerlerin tümü istenen numune boyutunu hesaplamak için kullanılır. power.prop.testBu örnek boyutu elde etmek için R işlevini kullanıyorum .

Tüm numuneler toplanana kadar bir test yapılacaktır. Bu noktada, güven aralıkları CR_CONTROLve CR_EXPERIMENTALhesaplanır. Eğer örtüşmezlerse, kazanan 0.95 önem seviyesi ve 0.8 gücü ile ilan edilebilir.

Testlerimizin kullanıcıları iki önemli kaygıya sahiptir:

1. Test sırasında bir noktada, açık bir kazananı gösterecek kadar numune toplanırsa test durdurulamaz mı?

2. Testin sonunda kazanan ilan edilmezse, kazanan bulmak için yeterli numune toplayıp toplayamayacağımızı görmek için testi daha uzun süre yapabilir miyiz?

Unutulmamalıdır ki, kullanıcılarına tam olarak kendi kullanıcılarının istediklerini yapmalarını sağlayan birçok ticari araç bulunmaktadır. Yukarıdakilerle ilgili birçok yanlışlık olduğunu okudum, ancak aynı zamanda bir durdurma kuralı fikrine rastladım ve böyle bir kuralı kendi sistemlerimizde kullanma olasılığını araştırmak istiyorum.

İşte dikkate almak istediğimiz iki yaklaşım:

1. Kullanarak power.prop.test, ölçülen geçerli dönüşüm oranlarını mevcut örnek sayısıyla karşılaştırın ve kazanan ilan etmek için yeterli örnek toplanıp toplanmadığını görün.

Örnek: Sistemimizde aşağıdaki davranışın var olup olmadığını görmek için bir test ayarlandı:

  • CRE_CONTROL: 0.1
  • CRE_EXPERIMENTAL: 0,1 * 1,3
  • Bu parametrelerle örnek büyüklüğü N1774'tür.

Bununla birlikte, test ilerledikçe ve 325 örneğe ulaştığında CRM_CONTROL(kontrol için ölçülen dönüşüm oranı) 0.08 ve CRM_EXPERIMENTAL0.15'tir. power.prop.testbu dönüşüm oranları üzerinden çalıştırılır ve N325 olarak bulunur. Tam CRM_EXPERIMENTALolarak kazanan olduğunu beyan etmek için gereken örnek sayısı ! Bu noktada testin sona erdirilmesi umudumuz. Benzer şekilde, test 1774 örneğe ulaşır, ancak kazanan bulunmaz, ancak daha sonra 2122 örneğe ulaşır, bu CRM_CONTROLda 0.1 ve CRM_EXPERIMENTAL0.128'in bir kazananın beyan edilebileceği bir sonuç olduğunu göstermek için yeterlidir .

Bir de ilgili soruya kullanıcıların bu tür bir test sonucu tehlikesine maruz kalmalarına da erken teşvik durdurur az örnekleri olan ve daha az inandırıcı tavsiye tahmin önyargı ve Tip I ve Tip II hataları sayısında artış. Bu durdurma kuralını çalıştırmanın bir yolu var mı? Bu bizim tercih ettiğimiz yaklaşımdır çünkü bizim için daha az programlama zamanı demektir. Belki de bu durdurma kuralı, testin güvenilirliğini ölçen bir tür sayısal puan veya puanlar sunarak erken durdurulmalı mı?

2. Sıralı analiz veya SPRT kullanma .

Bu test yöntemleri tam olarak kendimizde bulduğumuz durum için tasarlanmıştır: Kullanıcılarımız bir testi nasıl başlatabilir ve testte fazla zaman kaybetmeyecek şekilde nasıl bitirebilirler? Bir testi çok uzun süre çalıştırmak veya farklı parametrelerle testi başlatmak zorunda kalmak.

Yukarıdaki iki yöntemden, SPRT'yi tercih ediyorum çünkü matematiği kavramak benim için biraz daha kolay ve programlamak daha kolay olabilir. Ancak, olasılık bağlamının bu bağlamda nasıl kullanılacağını anlamıyorum . Birisi olabilirlik oranının, olabilirlik oranının kümülatif toplamının nasıl hesaplanacağına dair bir örnek oluşturabilir ve kişinin sıfır hipotezi ve alternatif hipotezi ne zaman kabul edeceğini izlemeye devam edeceği bir durumu gösteren bir örnekle devam edebilirse, SPRT'nin doğru yol olup olmadığını belirlememize yardımcı olur.


2
Senin vudu için başvurmadığını takdir ediyorum. Bir aracı kullanırken ve ne yaptığını ya da nasıl çalıştığını tam olarak anlamadığınızda, aracın sonuçlarını yorumlamak için gerekli niteliklere sahip değilsinizdir. Bir analiz bir iş kararını yönlendirdiğinde ve sonuca zaman ve para koyduğunuzda, veri kaynağını anlamak için zaman ayırırsanız sahiplik gösterir. Bu, "sürüde" olmak yerine size daha fazla fırsat tanıyan türden bir çalışma.
EngrStudent - Monica

Yanıtlar:


7

Bu ilginç bir sorundur ve ilgili tekniklerin birçok uygulaması vardır. Genellikle "ara izleme" stratejileri veya "sıralı deneysel tasarım" (bağlandığınız wikipedia makalesi maalesef biraz seyrek) olarak adlandırılır, ancak bunun için birkaç yol vardır. @ User27564, bu analizlerin mutlaka Bayesci olması gerektiğini söylerken yanlış olduğunu düşünüyorum - geçici izleme için de kesinlikle sık kullanılan yaklaşımlar var.

AsBsABP(A)=P(B)=0.558x such that 1F(x;100;0.5)<αF

Benzer mantık, aşağıdaki durumlarda diğer testler için "kaçınılmazlık noktalarını" bulmanızı sağlar:

  1. Toplam örnek boyutu * sabittir ve
  2. Her gözlem numuneye sınırlı miktarda katkıda bulunur.

Bu muhtemelen uygulamanız için kolay olacaktır - durdurma ölçütlerini çevrimdışı olarak hesaplayın ve ardından sitenizin koduna takın - ancak yalnızca sonuç kaçınılmaz olduğunda denemeyi sonlandırmak istiyorsanız daha da iyi yapabilirsiniz. , ama aynı zamanda değişme olasılığı düşük olduğunda.

ABA

Başka yaklaşımlar da var. Grup sıralı yöntemleri , belirli sayıda konu elde edemeyeceğiniz durumlar ve konular değişken oranlarda damlayabileceğiniz durumlar için tasarlanmıştır. Sitenizin trafiğine bağlı olarak, buna bakmak isteyebilir veya istemeyebilirsiniz.

Analiziniz için kullanıyorsanız, CRAN'ın etrafında yüzen çok sayıda R paketi vardır. Başlamak için iyi bir yer aslında Klinik Araştırmalar Görev Görünümü olabilir , çünkü bu çalışmanın çoğu bu alandan çıktı.


[*] Sadece bazı kolay öneriler: çok sayıda veri noktasından hesaplanan önem değerlerine bakarken dikkatli olun. Daha fazla veri topladıkça , sonuçta önemli bir sonuç bulacaksınız, ancak etki önemsiz derecede küçük olabilir. Örneğin siz bütün gezegeni sordum, onlar bir tercih olup olmadığını veya B, bu kadar çok size tam 50:50 bölünmüş görecekti olası, ancak bölünmüş 50,001 ise muhtemelen ürününüzü retooling değmez: 49.999. Etki boyutunu da kontrol etmeye devam edin (yani dönüşüm oranlarındaki fark)!


1
Kullanıcılarınızın endişelerini açık bir şekilde ele almak için: Evet, analizi erkenden sonlandırabilirsiniz. Bu, klinik denemeler için her zaman olur - ilaç, etkinliği için yeterli veriye sahip oldukları ve kontrol grubunda sıkışmış olan insanlara vermek istedikleri (veya daha büyük olasılıkla, ilaç çok büyük bir büstü / işleri daha da kötüleştirir). Bununla birlikte, denemeyi genişletmek daha çekişmeli - birden fazla "görünümü" düzeltmek için yöntemler var, ancak maksimum N'yi önceden düzeltmek daha iyi olur - her zaman erken durabilirsiniz!
Matt Krause

2
Bunun için teşekkürler, eğer deney kaçınılmazsa, bu gerçekten mantıklıysa durmaya tamamen katılıyorum! Bu 'gerçekten olası değilse durdurma' ile gerçek bir frekansçı aynı fikirde olacaktır. Söylemekten daha az bir şey yok: Hey,% 95? % 93'ün de iyi olduğunu söyleyebilirim! Demek istediğim, sadece% 90 güven ile tatmin olmanın iyi olacağını, ancak verilere bakmadan önce bir sıkıcı olarak!
SebastianNeubauer

1
Ben bir kemer frekanscısı değilim, ne de televizyonda bir tane oynuyorum, ama sanırım erken bir durdurma kuralının makul bir frekansçı yorumuna sahip olabilirsiniz - eğer bu deneyi 100 kez çalıştırsaydım, durduysam tamam mı yoksa tamamlamaya koştum mu? Bağlantı verdiğim inceleme, bunun aynı zamanda Bayes'leri ve Frequentistleri tatmin etmenin mümkün olduğu güzel durumlardan biri olduğuna dikkat çekiyor ...
Matt Krause

α

1
@ RussellS.Pierce: Sanırım buna bağlı. Açıkçası, kısaltma olmaz, ancak diğer bazı yöntemler yapar. Örneğin, O'Brein ve Flemming testi daha fazla veri kullanabilir, ancak daha erken reddedebilir ve Pocock'un testi daha da fazla olabilir. Belli ki spesifikasyonlara bağlıdır: yukarıda bağlantılı kitabın bazı makul değerlere sahip bir örneği vardır (etki boyutu: 0.25, alfa = 0.05, güç = 0.9, 5 görünüm). Sabit N versiyonu reddetmek için 170 kişiye ihtiyaç duyar; OBF versiyonunun maksimum 180'e ihtiyacı vardır ve Pocock'un en fazla 205'e ihtiyacı vardır, ancak beklenen konu sayısı sırasıyla 130 ve 117'dir.
Matt Krause

1

Erken durabilirsiniz, ancak bunu yaparsanız p değerleriniz kolayca yorumlanamaz. P-değerinizin yorumlanmasıyla ilgilenmiyorsanız, ilk iki sorunuzun cevabının 'hayır' olma şekli önemli değildir (çok fazla). Müşteriniz pragmatik görünüyor, bu yüzden bir p-değerinin gerçek yorumu muhtemelen önem verdiğiniz iyi bir nokta değil.

Önerdiğiniz ikinci yaklaşımla konuşamam.

Ancak, ilk yaklaşım sağlam bir temelde değildir. Binom dağılımlarının normal yaklaşımları, düşük olan oranlar için geçerli değildir (power.prop.test'in kullandığı yöntem, ayrıca Cohen tarafından iktidardaki klasik kitabında kullanılan yöntem). Dahası, bildiğim kadarıyla, iki örnek oranlı testler için kapalı form güç analizi çözümü yoktur (bkz. Normal yaklaşımlar kullanılmadan iki gruplı bir binom güç analizi nasıl yapılabilir? ). Bununla birlikte, oranların güven aralıklarını tahmin etmenin daha iyi yöntemleri vardır (bkz. Paket binomu)). Çakışmasız güven aralıklarını kısmi bir çözüm olarak kullanabilirsiniz ... ancak bu, p değerini tahmin etmekle aynı şey değildir ve bu nedenle doğrudan güce giden bir yol sağlamaz. Umarım birileri geri kalanımızla paylaşacakları güzel bir kapalı form çözümüne sahiptir. Birine rastlarsam, yukarıda belirtilen soruyu güncelleyeceğim. İyi şanslar.

Edit: Ben düşünürken, bir an için burada tamamen pragmatik olsun. Müşteriniz, deney alanının kontrol sitesinden daha iyi çalıştığından emin olduklarında bu deneyin sona ermesini istiyor. İyi bir örnek aldıktan sonra, bir karar vermeye hazır değilseniz, rastgele atamanızın 'kazanan' herhangi bir tarafa oranını ayarlamaya başlayın. Sadece bir çarpma olsaydı, ortalamaya doğru gerileme kaymaya başlayacak, daha az kesinleşecek ve oranı hafifleteceksiniz. Oldukça emin olduğunuzda, çıkın deyin ve bir kazanan ilan edin. Optimal yaklaşım muhtemelen Bayesian güncellemeyi içerecektir, ancak sizi yönlendirmek için başımın üst kısmındaki bu konu hakkında yeterince bilgim yok. Ancak, zaman zaman sezgisel gibi görünse de, matematiğin kendisinin o kadar da zor olmadığını garanti edebilirim.


0

Sorularınız, istatistiksel testlerde ortaya çıkan tipik sorulardır. Orada, istatistiklerin iki 'lezzeti' var, sık ve bayes. Her iki soruya da sıkça cevap vermek kolaydır:

  • HAYIR
  • Hayır, erken duramazsın
  • Hayır, daha uzun ölçüm yapamazsınız

Kurulumunuzu tanımladıktan sonra, verilere bakmanıza bile izin verilmez (kör analiz). Sık sık bakış açısından, hiçbir yolu yoktur, hile yok hile yok! (DÜZENLEME: Tabii ki, bunu yapmaya yönelik girişimler var ve doğru kullanıldıklarında da çalışacaklar, ancak çoğunun önyargı sağladığı biliniyor.)

Ancak bayesci bir bakış açısı var ki bu oldukça farklı. Bayesci yaklaşımın, frekansçıların aksine ek bir girdiye, a priori olasılık dağılımına ihtiyacı vardır. Buna önceki bilgi ya da önyargı da diyebiliriz. Buna sahip olarak, bilgimizi a-posteriori olasılığına güncellemek için verileri / ölçümü kullanabiliriz. Mesele şu ki, verileri kullanabiliriz ve daha da fazlası, verileri ölçümün her ara noktasında kullanabiliriz. Her güncellemede, son posterior yeni önceliğimizdir ve güncel bilgilerimize yeni bir ölçümle güncelleyebiliriz. Hiç erken durdurma sorunu yok!

Yaşadığınız problemlere oldukça benzer bir tartışma tartıştım ve yukarıda açıkladım: http://biostat.mc.vanderbilt.edu/wiki/pub/Main/JoAnnAlvarez/BayesianAdaptivePres.pdf

Ama bunun yanında, buna gerçekten ihtiyacınız olduğundan emin misiniz? Görünüşe göre, bir bağlantıyı nereye bağlayacağınıza karar veren bazı sistemleriniz var. Bunun için hipotez testi ile istatistiksel anlamda kararlarınızın doğru olduğunu kanıtlamanız gerekmez. Hiç bir kola satın aldınız, çünkü pepsi'nin% 95 olasılıkla 'doğru' olduğunu hariç tutabiliyor musunuz? Bir hipotezi dışlamak yerine, sadece daha iyi olanı almak yeterlidir. Bu önemsiz bir algoritma olacaktır: A oranı belirsizliğini hesaplayın, B belirsizliğini hesaplayın. Sonuç sigmadaki farkın önemi gibi bir şeydir. Sonra sadece iki veya üçten fazla sigma farkı olan tüm bağlantıları alın. dezavantajı,


1
İlk dört paragrafınızın biraz kırmızı bir ringa balığı olduğunu düşünüyorum - ara izlemeye sık sık yaklaşan yaklaşımlar var. (Bayes) posterior güncellemesinin buna güzel bir şekilde verdiği doğrudur, ancak bu sorunu birçok farklı şekilde çerçeveleyebilirsiniz. Slaytlara işaretçi için teşekkürler!
Matt Krause

Her neyse +1 - Bayesci yaklaşım muhtemelen burada herhangi bir sıklık düzeltmesinden daha açıktır.
russellpierce

2
Eh, işte bu ... meme ... Bayesci yöntemlerin hiç kimseye herhangi bir sorun yaşamadan verilere bakmasına izin veriyor. Ancak, genel Tip I hata oranı gerçekte kontrol edilmez (neden olsun?) Ve birçok "görünümden" sonra keyfi olarak büyüyebilir. Bunu uygun bir öncekiyle iyileştirebilir veya Tip I hatasını kontrol etmenin topal olduğunu iddia edebilirsiniz, ancak tüm Bayes tekniklerinin her derde deva olduğu düşünülemez.
Matt Krause

0

belki orada bazı yöntemler kullanılabilir

  • Pocock
  • O'Brien ve Flemming
  • Peto

bu, P kesimini sonuçlara göre ayarlayacak ve veri toplamayı bırakmanıza ve kaynakları ve zamanı tasarruf etmenize yardımcı olacaktır.

belki buraya başka işler de eklenebilir.


madde işaretleriniz için bağlantılar veya daha fazla bilgi verebilir misiniz?
Antoine

Ben bu tam makaleleri yok çünkü ben bu alıntılar bir inceleme makalesi kullandım, ben yaklaşımlar farklı demek ama tıbbi alanda soruyu yöneten makaleyi taht önerebilir: klinik çalışmalarda Adaptif örnek boyutu modifikasyonu: sonra küçük başlayın daha fazlasını iste? Christopher Jennisona * † ve BruceW. Turnbullb
HappyMan
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.