- İş değiştirme, bir iş fikrinin uygulanabilirliği ya da yatırım gibi girdi değerlerinin oynak olduğu hesaplarda, tek bir sayıdan çok olası sonuç aralığı karar vermede daha faydalıdır
- Unsure Calculator,
4~6 gibi aralıklar girerek belirsiz değerlerle hesap yapar; 10~15 ise gerçek değerin bu aralıkta olduğuna %95 emin olunduğu anlamına gelir
- Sonuçlar tek bir sayı olarak değil; aralık, olasılık dağılımı ve yüzdelikler olarak sunulur. Yurt dışına taşınarak iş değiştirme örneğinde aylık bakiyenin
-$60~+$220 arasında olabileceğini gösterir
- Girdileri basit tutmak için dağılım türü, güven düzeyi ve kovaryans gibi gösterimler çıkarılmıştır; iç hesaplama ise Monte Carlo yöntemi kullandığı için yavaştır ve hata mesajları da pek yardımcı değildir
- İstatistik uzmanları için bir araç değil; iş fikri, zaman tasarrufu, pandemi riski, pazarlama ROI’si gibi peçetenin arkasına yapılacak hesaplar için uygundur. Daha karmaşık analizlerde profesyonel araçlar gerekir
Belirsiz sayıları hesaba katmak
- Unsure Calculator, kesin olmayan sayılarla çalışmak için hazırlanmış erken aşama bir belirsizlik hesaplayıcısıdır
- İstatistiği, “sayılar kesin olmasa da onlarla çıkarım yapmak istiyorum” sorununa indirger
- Günlük hesaplarda da belirsiz girdiler çok olduğu için, istatistik uzmanı olmasanız bile belirsizliği içeren hesaplara ihtiyaç duyabilirsiniz
Aralık gösterimi
- Sadece
4, 3.14, 43942 gibi normal sayıları değil; 4~6, 3.1~3.2, 40000~45000 gibi aralık girdilerini de destekler
~, iki uç değer arasına giren tilde işaretidir ve hesap makinesi tuş takımında da bulunur
- Aralık gösterimi, “tam değeri bilmiyorum ama gerçek değerin bu aralığın içinde olduğuna %95 eminim” anlamına gelir
10~15, “10 ile 15 arası” diye okunabilir
- Farklı olasılık dağılımları, farklı güven düzeyleri, truncation ve kovaryans gibi gösterimler de mümkün olurdu ama anlaşılmayı zorlaştıracağı için dışarıda bırakılmıştır
- Bu tür kavramlara aşina kullanıcıların zaten daha gelişmiş araçlar kullanmasının daha uygun olduğu varsayılır
- Amaç, geniş bir kullanıcı kitlesinin istatistiksel hesaplamanın gücünü kolayca kullanabilmesidir
Tek sayıyla hesap yapmanın tuzağı
- Belirsiz bir değerle karşılaşınca, “nasıl olsa ikisi de kesin değil, çok önemli değildir” deyip geçmek kolaydır
- Makul görünen tek bir sayıyı seçip hesap yapmak, tek bir cevabın sadeliğine kapılmaya yol açar; ama gerçekte mümkün olan sonuç tek bir tane olmayabilir
- Unsure Calculator, birçok olası sonucu hesaba katarak hem riski hem de fırsat alanını birlikte gösterir
Yurt dışına taşınarak iş değiştirme için finans hesabı örneği
- Çıkış noktası, 2015’te yurt dışında bir iş fırsatının aile bütçesine etkisini hesaplama durumuydu
- Maaş, genellikle işe alım sürecinin büyük kısmı geçildikten sonra öğrenilir
- Yaşam maliyeti konusunda arkadaşlardan ve internetten gelen rakamlar birbirinden çok farklıydı
- Vergi oranını da tek bir yüzdeyle ifade etmek kolay değildi
- İlk başta muhafazakâr görünen tekil değerlerle hesap yapıldı
1500 * 0.6 - 650 - 150 - 30 - 20 = 50
- Bu hesap, ayda
+$50 kaldığını gösteren tek bir sonuç üretir
- Aralıklar eklenip yeniden hesaplandığında sonuç değişir
1400~1700 * 0.55~0.65 - 600~700 - 100~200 - 30 - 20 = -60~220
- Her kalemin gerçek değerinin ilgili aralık içinde olduğuna %95 eminsek, gerçek aylık bakiyenin de
-$60 ile +$220 arasında olabileceği söylenebilir
- Bunun tekil
+$50 değerinden daha faydalı olmasının nedeni, para kaybetme ihtimalini de göstermesidir
- Yüzdelikler karar verme açısından daha somut bilgi sunar
-
- yüzdelik
-$8 ise, aylık bakiyenin -$8 ya da daha düşük olma olasılığı %10’dur
- Tersinden bakarsak, sonuçların %90’ı
-$8 değerinin üzerindedir
- Ayda
-$33 ya da daha fazla kaybetme yönünde %5 risk de ayrıca değerlendirilebilir
- Bu riski kabul edip etmemek aileye ve koşullara göre değişir
- Çocuk ve konut kredisi yokken alınacak risk ile varken alınacak risk aynı olmayabilir
- Bir yedek plan yoksa, %10 zarar olasılığı daha temkinli değerlendirilebilir
Drake denklemi örneği
- Araç pratik hesaplamaları hedeflese de, galaksideki dünya dışı uygarlık sayısını tahmin eden Drake denklemi (Drake equation) de örneklerden biridir
- Bu denklem, iletişim kurabilecek uygarlıkların sayısını tahmin etmek için kullanılan bir astrofizik formülüdür
- Frank Drake’in 1961’deki özgün değerleri şu çarpanlardan oluşuyordu
- Galakside yılda 1 yıldız oluşur
- Bunların 1/5’inin yaklaşık 3 gezegeni vardır
- Bu gezegenlerin %100’ünde yaşam gelişir
- Bu yaşamın %100’ü zekâ geliştirir
- Bunların %10’u iletişim kurabilir
- İletişim kurulabilir durum 1 milyon yıl sürer
- Bu değerler çarpıldığında
60,000 elde edilir; yani herhangi bir anda galakside iletişim kurmaya çalışan 60 bin uygarlık olması gerektiği sonucu çıkar
- 1961’den bu yana her parametreye ilişkin tahminler astrofizikçiler arasında ciddi biçimde değişmiştir
- Güncel tahminlerin aralık olarak girildiği örnek şöyledir
1.5~3 x 0.9~1.0 x 0.1~0.4 x 0.1~1.0 x 0.1~1.0 x 0.1~0.2 x 304~10000
- Unsure Calculator sonucu, beklenebilecek uygarlık sayısının
0 ile 450 arasında olabileceğini gösterir
- Olasılık daha düşük değerlere doğru eğimlidir; histogram da alt tarafta daha geniş görünür
- Histogramda
-5 gibi negatif değerler görülebilir
- Bu, sadelik tercihinin bir sınırıdır
- Hesaplayıcı, ek bilgi olmadan uygarlık sayısının negatif olamayacağı kısıtını bilemez
Olası kullanım örnekleri
- Bir iş fikrinin potansiyeli hesaplanabilir
- Pazar büyüklüğü, pazar payı, kişi başına aylık gelir ve işletme giderleri belirsiz olduğunda
50000~80000 x 0.10~0.20 x 5~10 - 20000~50000
- Gelecekteki gelir tahmin edilebilir
- Aylık gelir, sözleşme süresi ve vergi oranı belirsiz olduğunda
1000~1500 x 10~12 x (30~50 / 100)
- Bulaşık makinesi gibi bir teknolojinin ne kadar zaman kazandırdığı hesaplanabilir
- Haftalık kullanım sayısı, kullanım başına zaman tasarrufu, ömür ve kurulum maliyeti belirsiz olduğunda
(3~5 * 5~10 * 51 * 7~15) / 60 - 10~15
- Bir yatırım hesabının toplam getirisi tahmin edilebilir
- Faiz oranı ve yatırım süresi belirsiz olduğunda
5000 x (-2~5 / 100) x 5~10
- Pandemide ölüm olasılığı kabaca hesaplanabilir
- Enfeksiyon oranı ve ölümcüllük oranı belirsiz olduğunda
(10~30 / 100) * (0.1~1.0 / 100) * 100
- Yüksek bir binanın yüksekliği tahmin edilebilir
- Binanın tabanına olan mesafe ve tepeyi görme açısı belirsiz olduğunda
100 x tan(70 ~ 80)
- Bir pazarlama kampanyasının ROI’si tahmin edilebilir
- Gösterim, tıklama oranı, dönüşüm oranı ve harcama belirsiz olduğunda
1000000 x (2~3 / 100) x (3~5 / 100) x (10~15)
Desteklenen fonksiyonlar
- Tuş takımında yalnızca
+, -, x, / bulunsa da, erken aşamada olmasına rağmen daha fazla hesaplama desteklenir
- Örnek fonksiyonlar ve işlemler şunlardır
2~3 ^ 4: 2 ile 3 arasındaki bir değerin 4. kuvveti
sqrt(10~12): 10 ile 12 arasındaki bir değerin karekökü
sin(90~95): 90 ile 95 derece arasındaki bir değerin sinüsü
Sınırlamalar ve paylaşım biçimi
- Tek kişilik bir proje olduğu için bozulmalar beklenmelidir
- Formül ayrıştırıcısı kırılgandır ve hata mesajları yardımcı değildir
- Hesaplama oldukça yavaştır
- Esnekliği korumak için Monte Carlo yöntemi kullanılır
- Girilen her hesap için AST tabanlı yaklaşık 250 bin hesaplama yürütülür
- Arayüz çok basittir ve görsel olarak da pek iyi değildir
- Formülleri paylaşmanın tek yolu URL’yi elle oluşturmaktır
range her zaman normal dağılım anlamına gelir
- Düşük sayı, ortalamanın 2 standart sapma altıdır
- Yüksek sayı, ortalamanın 2 standart sapma üstüdür
- Girdi olasılık dağılımı açısından daha karmaşık yöntemler desteklenmez
- Bu bir istatistik uzmanı aracı değildir
- Peçetenin arkasına yapılacak hesaplar için Unsure Calculator kullanılabilir
- Daha karmaşık işler için ücretsiz ya da ücretli istatistik araçları, tam bir programlama ortamı veya bir istatistik uzmanı gerekir
Proje ve güncellemeler
- Aracı geliştirmeye katkı vermek veya komut satırı sürümünü edinmek isterseniz github.com/filiph/unsure kullanılabilir
- 2025 güncellemesine göre, bu gösterim ve araç 5 yıldır kullanılıyor ve yeni bir projeye başlarken iş akışının vazgeçilmez bir parçası haline gelmiş durumda
- Daha yeni notebook tarzı uygulama sürümü burada görülebilir
- Yeni başlayanlar için daha az uygun olsa da ileri düzey kullanıcılar için daha faydalıdır
- Projeyle ilgileniyorsanız Filip Hracek takip edilebilir veya mailing listesine abone olunabilir
1 yorum
Hacker News yorumları
Bu aracı sevdim. Ancak HN geleneğine uygun olarak, yazıdaki tek bir kelimeye takılıp neredeyse-ama-aslında-tamamen yan konuya sapacak olursam, bu tür hesaplamalarda en az üç ayağına sıkma noktası var
Araç ve uygulama iyi, ama istatistiği ilk kez eline alan insanların bir parmağını kaybettiğini çok gördüm
İnsanların %90’dan fazlası %70 güven aralığına bile ulaşamıyor. Kendiniz test edebilirsiniz: https://blog.codinghorror.com/how-good-an-estimator-are-you/
Paydaşlar görev sürelerini t_i ~ PERT(min, mode, max) olarak belirtme yöntemini gerçekten sevdi. Çünkü düşünme biçimlerine benziyor ve gerçek hayatta yaygın olan asimetrik dağılımları da ele alabiliyor
Bu arada PERT, kullanıcı dostu ve sezgisel şekilde yeniden parametreleştirilmiş bir beta dağılımından ibaret: https://rpubs.com/Kraj86186/985700
$50 sonucu iyiydi; buna artı/eksi bir aralık ekleyince kabaca başa baş noktasına yakın olduğunu hissedebilirsiniz. Buna karşılık “gerçek bakiyenin -$60 ile +$220 aralığında olma olasılığı %95” ifadesi, her adımda yalnızca belirsizliklerin bileşimini eklemiş olmasına rağmen daha somut bilgi elde edilmiş yanılsaması yaratıyor
Her kalemin gerçekten %95 olup olmadığını, gerçek minimum/maksimum değerlerin ne olduğunu bilmiyorsanız, yanlış olabilecek daha fazla tahmin eklemiş oluyorsunuz. Bu yüzden Drake denklemini de pek sevmiyorum. Her adım kaba tahminlerin birikimi; gerçekten işe yarar bir sayı üretip üretmediği şüpheli
Zaten böyle şeyleri hesaba katmak isteyecek noktadaysanız, düzgün Bayesçi istatistik yapmalısınız
“Normal dağılım, değerleri zorlayan bir tür kısıtlayıcı etken gerektirir” sözünün de nereden çıktığını bilmiyorum. Gereken şey korele olmayan hatalardır; bu da “kısıt” ya da “negatif geri besleme” değildir
Benzer bir araç yapmıştım
Komut satırı için fermi: https://git.nunosempere.com/NunoSempere/fermi
Android için dağılım hesaplayıcısı: https://f-droid.org/en/packages/com.nunosempere.distribution...
Daha karmaşık sürüm olan https://www.squiggle-language.com/ de ilginizi çekebilir. Ya da daha hızlı ama çok daha laf kalabalığına sahip C sürümü olan <https://git.nunosempere.com/personal/squiggle.c> de var
a~bsöz dizimini desteklemesi hoş bir detay olurdu :^)Harika. Yazıyı beğendiyseniz “Dissolving the Fermi Paradox” makalesi de ilginizi çekebilir. Yaygın nokta tahminleri yerine gerçekten olasılık yoğunluk fonksiyonlarını çarpma tarafını daha derin ele alıyor
Biraz şaşırtıcı biçimde, belki de gerçekten yalnız olabileceğimiz sonucuna varıyor
https://arxiv.org/abs/1806.02404
Benzer bir araç yaptım; komut satırı için[1] ve motivasyonu da benzer, ama biraz daha iddialı[2]
Daha fazla insanın bu şekilde düşünmesi gerçekten hoşuma gidiyor. Değişkenliğin kaynakları hakkında akıl yürütebilmek herkesin eğitimini aldığı ya da geliştirdiği bir şey değil, ama giderek daha önemli hale geliyor[3]
[1]: https://git.sr.ht/~kqr/precel
[2]: https://entropicthoughts.com/precel-like-excel-for-uncertain...
[3]: https://entropicthoughts.com/statistical-literacy
ASCII art histogram, daha doğrusu ANSI art histogram harika. Hızlıca bir şeyler ortaya çıkarmak için iyi bir hack
Ben olsam birkaç grafik kütüphanesi dener, 5 kat daha fazla zaman harcar ve vazgeçerdim
[1] https://github.com/stefanhengl/histogram
https://www.getguesstimate.com/ bunun elektronik tablo haline getirilmiş biçimi
Skaler çarpma olmayan bir çarpma yapmanın yolu var mı? Örneğin “üç zar atışının toplamı” demek istersem, normal dağılım olmamasını bir kenara bırakırsak
1~6 * 3 = 1~6 + 1~6 + 1~6 = 6~15olmasını isterimAma gerçekte
1~6 * 3 = 3~18oluyor. “Her biri 10~100 gün süren 1000 işi tamamlamak ne kadar sürer?” gibi hesapları yapmayı gerçekten zorlaştırıyorÇıktıyı tekrar bir aralığa veya Gauss dağılımına dönüştürebilmek güzel olurdu
Not: Histogramda neden negatif değer (-5) olduğunu merak ediyorsanız, bu Unsure Calculator’ın basitliğinden kaynaklanan kaçınılmaz bir dezavantaj. Ek bilgi olmadan hesap makinesi negatifin imkânsız olduğunu bilemez
Drake denklemi veya olasılıkları çarpan denklemler log uzayında da görülebilir. Her olasılığın ölçeğinde belirsizlik vardır ve nihai olasılık, log olasılıkların üstel değerlerinin çarpımının sonucudur. O zaman böyle negatif değer sorunu oluşmaz
100 / 4~6, çıktı olarak17~25veriyorİlk başta oyuncak gibi geliyor, ama beklenmedik derecede kullanışlı görünüyor. Normal hesap makinesinin yanında kullanılabilecek bir uygulama olarak çıksa kesinlikle kurardım
Tam olarak ne zaman ihtiyaç duyduğumu hatırlayamıyorum, ama klavyede bir kısayola bağlarsam kullanacak yerler bulmaya başlamam oldukça olası görünüyor
Trigonometrik fonksiyonlar da olduğuna göre, basit ölçümlerle karmaşık parçaları tersine mühendislik etmek için de iyi olabilir. Örneğin şekil hacmi, kenar açıları, kesit alanı gibi şeyler
Çok tepeli dağılım desteği olsa iyi olurdu ama şart değil. Ters trigonometrik fonksiyonlar da ilginç olurdu ama karmaşık ve şart değil
Her hâlükârda, yanıt aralığını tahmin etmem gerektiğinde Python açmaktan daha kullanışlı
Özellik isteği: olasılık dağılımı belirtilebilse güzel olurdu. Örneğin
~normal dağılım,_uniform dağılım gibiG(50, 1), λ=3 olan negatif üstel dağılımN(3), 0 ile 1 arasında uniform dağılımU(0, 1), 1’den 6’ya kadar uniform tamsayı dağılımıUI(1, 6)gibiÇok daha esnek ve hatırlaması da daha kolay görünüyor