Sözde Rastgele Sayı Üretimi'nde tohumların ayarlanması için referanslar ve en iyi uygulamalar


11

Gelen bu belgede , bu kaygılar "set tohum" komutu Stata insanlar sözde rasgele sayılar üreten tohumların ayarına ilişkin konuları tartışmak.

Dikkate değer bir “yapma” , seri olarak doğal sayı dizisini tohum olarak kullanmaz, çünkü bu bir desene sahiptir ve sahte rasgele tehlikeye atar ”.

Sadece bir çeyrek şaka gibi kayda değer "yapmak" , yaşamınız boyunca sadece bir tohum ayarlamak ve daha sonra her deneyin sonunda üretilen sürecin "durumunu" kaydetmek, böylece bir sonraki deney noktada devam edecek süreç durdu.

Açıktır ki, yukarıdaki tavsiye kişinin araştırma ömrü boyunca üreteceği beklenen rasgele sayı sayısına bağlıdır. Belki de Mersenne twister , birçok araştırmacının yaşam boyu ihtiyaçlarını karşılayacaktır ...

Ben -they Bu önerilerin tartışmamakta böylece Şimdi, büyük ölçüde, teoride ve uygulamada saygılarımla PRNGs olarak deneyimli değilim gerektiğini teorik zemin ve sert matematiksel istatistiklere geçerli veya geçersiz kanıtlanmış.

Yani, sorularım

1) Yukarıda verilen tavsiyelerin açıklanmasına veya geçersiz kılınmasına yardımcı olabilir veya bu tür sorunlarla ilgilenen bir referansı gösterebilir misiniz?

2) Tohumların yerleştirilmesinde "en iyi uygulamalar" sunan referanslar sağlayabilir misiniz?

3) Kendi çalışmanızda nasıl başlıyorsunuz ve neden?

Sorusuna 3 için bir örnek) gibi bir Monte Carlo çalışması için varsayalım oluşturmak istediğiniz her boyuttaki örnekleri sizin ve bu yeterince daha büyük bir süreye sahip . Tüm sözde rastgele sayıları tek bir tohumla mı üretiyorsunuz , yoksa örnek başına tohum değiştirme alışkanlığınız mı var? (ama bu sadece gösterim amaçlıdır -burada daha genel cevaplara değer olduğuna inanıyorum). n PRNG m n m nmnPRNGmnmn

İlişkili bir iş parçacığı (çok daha odaklanmış olsa da)
Her kod bloğundan önce mi yoksa proje başına bir tane mi ayarlandı?

Bunun bir topluluk wiki'si olması gerektiğini hissediyorum, modlar lütfen buna karar verin.


4
Bu Stata kılavuz sayfası, bir kişinin neden tohum kullandığına dair önemli örtülü varsayımlar yapar . Tohumları kullanmamın temel nedeni (buradaki CV'deki yayınlarımda) tekrarlanabilir örnekler oluşturmaktır . Örnek benim beğenme (!) Olana kadar tohumla uğraşmadığımı göstermek için, (neredeyse) her zaman aynı tohumu kullanıyorum. Stata tavsiyesiyle bu kadar garip bir şekilde çelişiyor çünkü aklımda olması gerekenden farklı bir amacı var (ki bu da belirtilmemiş). Buradaki ahlaki, en iyi uygulamaların amaca bağlı olmasıdır.
whuber

@whuber Benim duygu olduğunu ben de "rastgeleliğine" korumayı amaç söz konusu belgenin verilen danışma ve (dedikleri gibi, sürecin "devlet" kayıt yoluyla) kullanılan serilerin tekrarlanabilirlik. Bu hedefler, araştırmanın amacı ne olursa olsun, herhangi bir kurulumda gerçekleştirilmeye değer görünüyor, değil mi?
Alecos Papadopoulos

1
Tabii ki değerli - ama bu onları manuel sayfa tarafından ifade edildiği gibi belirli "dos" ve "donts" haline getirmek haklı değildir. Bu tür kategorik olmayan diktatörlerle ilgili sorun, avukatlar gibi başkalarının , amaç veya koşullardan bağımsız olarak, herhangi bir ters uygulamanın doğal olarak yanlış olduğunu düşünmesine yol açmasıdır. İstatistik pratiğinde yargılanmak için yer bırakmak önemlidir! Özellikle, "en iyi uygulamalarla" yazılım kullanımı için önerileri karıştırmayalım.
whuber

@whuber Belirli bir yazılıma bağlı bir belgeyi "uyarıcı" olarak kullanmam gerçeği, sorumun "yazılım kullanımına ilişkin öneriler" hakkında olmasını sağlamaz. Sorulan sorular açıkça araştırmacıların istatistiksel araştırma yaparken kullandıkları politikalar hakkında , bu yüzden burada karışıklık görmüyorum.
Alecos Papadopoulos

3
PRNG'nizin iyi olduğunu varsayarsak, tohumları bir desenle ayarlamak neden bir fark yaratır, PRNG'lerin bütün mesele bu değil mi?
purple51

Yanıtlar:


3

Değeri için, bu matematiksel analize değil deneyime dayanır:

İnce desenlerin çok kötü olabileceği şifreleme yapmadıkça, ayarladığınız tohumun, Mersenne Twister gibi kabul edilmiş iyi PRNG'leri kullandığınız ve lineer konjügasyon jeneratörleri gibi eski olanları kullanmadığınız sürece bir fark yaratmadığını düşünüyorum. Gibi bildiğim kadarıyla, rastgele sayı belirli tohumdan çıkıp ne söyleyebilirim yolu yoktur aslında PRNG çalıştırmadan aksi takdirde sadece o yeni algoritma ve kullanımını alacaktı, (o iyi biri varsayarak) o kadar senin rastgele numara üreticisi.

Başka bir bakış açısı: Sizce Monte-Carlo simülasyonunuzdaki ince modellerin, diğer modelleme varsayımlarının getirdiği tüm ölçüm hatası, karıştırıcı ve hatadan daha büyük bir boyutta olacağını düşünüyor musunuz?

İki farklı algoritmanın tam olarak aynı giriş verileri için aynı sonucu ürettiğinden emin olmam gerekiyorsa, hata ayıklama yapmadıkça, başlangıçta sadece bir rastgele tohum kullanır ve her çağrıdan önce bir tane ayarlamazdım.

Feragatname: Nükleer reaktörleri veya füze kontrol sistemlerini veya hava tahminlerini simüle ediyorsanız, alan uzmanlarına danışmak en iyisi, bu durumda sorumluluk kabul etmiyorum.

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.