Epistemik vs Aleatorik: Bir Getiri Modelinin Bilmediğini Ölçmek
Bu blogdaki her pozisyon boyutlandırma kuralı belirsizliği tek bir skaler indirger. Kelly varyansla böler. Conformal prediction aralık genişliğiyle böler. Volatility targeting bir GARCH tahminiyle böler. Üçü de doğru ve hepsi trading için önemli olan ayrımı göz ardı eder: gürültülü bir piyasa ile cahil bir model arasındaki fark.
Bu aynı riskler değildir. Piyasa gürültüsü fiyatlandırılır — onu taşıdığınız için ödüllendiğiniz şeydir. Model cehaleti fiyatlandırılmaz, telafi edilmez ve tam olarak avantaj tahmininizin en güvenilmez olduğu durumdur. İkisini eşit şekilde cezalandıran bir boyutlandırma kuralı masada para bırakır.
Bu yazı, bu ayrımı ölçülebilir hale getirmek hakkındadır. Somut olarak:
Bunu Kelly paydasında toplam varyans yerine koyun. Makalenin geri kalanı, iki bileşenin nasıl tahmin edileceği (MC Dropout, derin ansambller) ve ayrmanın gerçek verilerde nasıl göründüğüdür.
Tez: İki Belirsizlik İki Yanıt Gerektirir
| Epistemik | Aleatorik | |
|---|---|---|
| Kaynak | Sınırlı veri / model | Verideki doğal gürültü |
| Azaltılabilir? | Evet (daha fazla veri yardımcı olur) | Hayır |
| Trading eylemi | Pozisyonu azaltın veya kaçının | Stopları genişletin, kaldıraçı düşürün |
| Sinyal | "Bu rejimi görmedim" | "Bu piyasa şu an gürültülü" |
"Trading eylemi" satırındaki asimetri, tüm argümandır. Yüksek aleatorik varyans, bilinen bilinmeyendir: bunun için boyut belirleyebilir, hedge edebilir ve onu tutmak için bir risk primi bekleyebilirsiniz. Yüksek epistemik varyans, bilinmeyen bilinmeyendir: model dıştiriuyor, ortalama tahmini varyans tahmini kadar şüpheli ve kendi parametrelerinizde yanılmanın bağlı olduğu bir prim yoktur.
İkisini karıştıran bir model, ya tanıdık olmayan rejimlerde fazla işlem yapar (epistemik belirsizliği göz ardı eder) ya da tanıdık ama gürültülü olanlarda az işlem yapar (aleatorik belirsizliği fazla cezalandırır). 'a uygulanan standart Kelly, hangi bileşenin baskın olduğuna bağlı olarak ikisini de yapar.
Ayrıştırma
Epistemik belirsizlik, model parametreleri üzerindeki belirsizlikten gelir. Tek bir yerine (maksimum olasılıkta olduğu gibi), bir dağılım sürdürürüz ve entegre ederiz:
üzerinden entegrasyonla induše edilen yayılma epistemiktir. giriş bölgesini kapsayacak şekilde büyüdükçe küçülür.
Aleatorik belirsizlik, veri oluşturma sürecinin koşullu gürültüsüdür. Bir sinir ağında, giriş bağımlı bir varyans salan ikinci bir çıktı başı ile modellenir:
Bu heteroscedastik baş, GARCH'ın klasik olarak tahmin ettiği aynı şeyi tahmin eder — gece yüksek ve pik saatlerde düşük durum bağımlı koşullu varyans. Bunun kripto üzerinde empiriklerini istiyorsanız, kripto volatilitesi için GARCH(1,1) bunu uygun şekilde kapsar, including why canlı koşullu tahmin (unconditional sample variance değil) Kelly paydasına aittir. NN başı, aynı niceliğin sadece farklı bir tahminedicisi, ortalama ile ortak olarak fit edilir.
GARCH'ın size veremediği şey diğer terimdir. Bu yazının geri kalanı bunundur.
Zaten Yayınlanmış Olanlara Göre Konumu
İki önceki yazı bitişik alanları kapsar ve önce okunmaya değer, çünkü bu bunları kasıtlı olarak tekrarlamaz:
- Risk farkında pozisyon boyutlandırma için conformal prediction size sonlu örnek kapsama garantisine sahip aralıklar verir, dağılım varsayımı yok, artı ters genişlik boyutlandırma ve edge-ratio no-trade filtresi. Sadece doğru boyutlandırılmış bir aralık istiyorsanız daha güçlü araç budur.
- Temporal Fusion Transformers nicelikleri doğrudan salar ve zaten pinball-loss niceliklerinin örnek dışı kalibre edilmediği konusunda uyarır.
Takas temizdir. Conformal size bir garanti verir ama bir sayı — aralık genişliği ayrıştırılamaz, bu yüzden neden genişlediğini size söyleyemez. Bayesian yöntemler size bir ayrıştırma verir ama garanti yok — MC Dropout'un aralıkları yaklaşık posterior kadar iyidir. Bu makale ayrıştırmayı satın almak hakkındır; kapsama için muhtemelen conformal yöntemini üstünde tutmalısınız.
Yöntem 1: Varyasyonel Çıkarım (Bayes by Backprop)

Bayesian bir sinir ağı, ağırlıklar üzerine bir prior koyar ve posterioru arar. Normalleştirici, her ağırlık konfigürasyonu üzerinden entegrasyon gerektirir, bu da bir avuçtan fazla parametresi olan her şey için işlenemezdir.
Varyasyonel çıkarım, işlenemez posterioru işlenebilir bir aile ile — genellikle çarpanlanmış bir Gauss — değiştirir ve minimize eder:
Bu bilinmeyen posterioru içerdiğinden, bunun yerine Evidence Lower Bound'ı maksimize ederiz:
İlk terim 'yı veriyi açıklamaya iter; ikinci terim onu priorın yakınında tutar. Bayes by Backprop (Blundell et al., 2015) bunu reparameterization trick ile türevlenebilir hale getirir: örnek , koyun.
Pratikte VI parametre sayısını ikiye katlar, gradient varyansını yükseltir (her forward pass farklı ağırlıklar kullanır) ve ortalama alan varsayımı ağırlık korelasyonlarını göz ardı eder, bu genellikle epistemik belirsizliği gönderir. Zaten eğitilmiş deterministik bir modele sahip olduğunuz bir trading yığını için, aşağıdaki iki daha ucuz yöntem genellikle daha iyi giriş noktasıdır.
Yöntem 2: MC Dropout

Gal ve Ghahramani (2016), dropout ile eğitilen ve dropout test zamanında hala aktifken değerlendirilen bir ağın, derin bir Gauss sürecinde yaklaşık varyasyonel çıkarım prosedürü olduğunu gösterdi. Dropout zaten alt ağlar üzerinde bir dağılım induše eder; çıkarım sırasında açık tutmak ve forward pass çalıştırmak, bu örtük posteriordan örnekler.
Bu blogun başka hiçbir yerinde yok. Burada yayınlanan kod dropout'u sadece eğitim zamanı düzenleyicisi olarak kullanır (spread modelleme, TFT dropout=0.1–0.3'te). Çıkarım sırasında açık tutmak, tamamen farklı bir anlama gelen tek satırlık bir değişikliktir.
Tahminsel İstatistikler
stokastik forward pass ve pass başına varyanslar ürettiğinde:
Tahminsel ortalama:
Epistemik (pass arasındaki anlaşmazlık):
Aleatorik (tahmin edilen gürültünün ortalaması):
Ayrıştırma tam olarak toplam varyans yasasıdır: koşullu ortalamanın varyansı artı koşullu varyansın ortalaması. Toplam tahminsel varyansları toplamlarıdır.
PyTorch Uygulaması
import torch
import torch.nn as nn
import numpy as np
class MCDropoutNet(nn.Module):
"""
Belirsizlik tahmini için MC Dropout içeren getiri tahmini ağı.
Hem tahmin edilen ortalamayı hem de log-varyansı (aleatorik) çıkarır.
"""
def __init__(self, input_dim: int, hidden_dim: int = 128, dropout_p: float = 0.1):
super().__init__()
self.net = nn.Sequential(
nn.Linear(input_dim, hidden_dim),
nn.ReLU(),
nn.Dropout(p=dropout_p),
nn.Linear(hidden_dim, hidden_dim),
nn.ReLU(),
nn.Dropout(p=dropout_p),
)
self.head_mu = nn.Linear(hidden_dim, 1) # tahmin edilen getiri
self.head_logvar = nn.Linear(hidden_dim, 1) # log(aleatorik varyans)
def forward(self, x: torch.Tensor):
h = self.net(x)
return self.head_mu(h), self.head_logvar(h)
def heteroscedastic_loss(mu, log_var, target):
"""Giriş bağımlı varyansı öğrenilmiş bir Gaussian için negatif log-likelihood."""
precision = torch.exp(-log_var)
return torch.mean(0.5 * precision * (target - mu) ** 2 + 0.5 * log_var)
@torch.no_grad()
def mc_predict(model: MCDropoutNet, x: torch.Tensor, n_samples: int = 100):
"""
MC Dropout çıkarımı: dropout AÇIK tutun, T forward pass toplayın,
tahminsel varyansı epistemik ve aleatorik parçalara ayırın.
"""
model.train() # eval() DEĞİL -- bu dropout'u aktif tutan şeydir
mus, log_vars = [], []
for _ in range(n_samples):
mu, log_var = model(x)
mus.append(mu)
log_vars.append(log_var)
mus = torch.stack(mus) # (T, batch, 1)
log_vars = torch.stack(log_vars) # (T, batch, 1)
pred_mean = mus.mean(dim=0)
epistemic_var = mus.var(dim=0) # pass üzerinden varyans
aleatoric_var = log_vars.exp().mean(dim=0) # pass üzerinden beklenti
return {
"mean": pred_mean.squeeze(-1),
"epistemic_std": epistemic_var.sqrt().squeeze(-1),
"aleatoric_std": aleatoric_var.sqrt().squeeze(-1),
"total_std": (epistemic_var + aleatoric_var).sqrt().squeeze(-1),
}
Eğitim, varyans başına bir anlam kazandıran heteroscedastic kayıp fonksiyonunu kullanır. Kendini düzenleyen yapıya dikkat edin: 0.5 * precision * (target - mu)**2 terimi küçük varyans ister, 0.5 * log_var terimi onu cezalandırır ve denge noktası koşullu gürültü seviyesidir.
model = MCDropoutNet(input_dim=50, hidden_dim=128, dropout_p=0.1)
optimizer = torch.optim.AdamW(model.parameters(), lr=1e-3, weight_decay=1e-4)
for epoch in range(200):
model.train()
for x_batch, y_batch in train_loader:
mu, log_var = model(x_batch)
loss = heteroscedastic_loss(mu, log_var, y_batch)
optimizer.zero_grad()
loss.backward()
optimizer.step()
Yöntemi sessizce öldüren gotcha: mc_predict içinde model.eval() çağırmak. Bu dropout'u devre dışı bırakır, her pass aynı değeri döndürür, epistemic_var tamamen sıfıra çöker ve boyutlandırma kuralınız sessizce aleatorik varyans üzerinde düz Kelly'ye döner. Hata vermeden başarısız olur. Çıkarım yolunuzda epistemic_var > 0 assert edin.
Forward Pass Sayısını Seçmek
- : kararlı bir ortalama için mantıklı alt sınır
- : ortalama ve varyans için çalışabilir varsayılan
- : kuyruk niceliklerine ihtiyacınız yoksa azalan getiriler
Yöntem 3: Derin Ansambller

Lakshminarayanan et al. (2017), farklı rastgele başlatmalardan bağımsız ağı eğitir ve toplar. Biçimsel olarak Bayesian olmamasına rağmen, derin ansambller belirsizlik kalibrasyonu benchmarklarında daha prensipli yöntemleri consistently yener.
Üyeler arasındaki anlaşmazlık epistemik tahminindedir. Ansambller bu blogun başka yerlerinde aggregation cihazları olarak görünür — anomali tespiti, HMM rejim tespiti, conformal'ın EnbPI block bootstrap — ama hiçbir zaman üyeler arası yayılma yoluyla bir belirsizlik tahminedicisi olarak değil. Kullanım buradadır.
Ansamb Uygulaması
Çeşitlilik bağımsız eğitimden gelir, nesne inşa etmekten değil. Eğitilmemiş veya aynı eğitilmiş üyelerin ansambli ya gürültü ya da sıfır epistemik varyans döndürür:
class DeepEnsemble:
def __init__(self, input_dim: int, n_models: int = 5, hidden_dim: int = 128):
self.models = []
for seed in range(n_models):
torch.manual_seed(seed) # her üye için farklı başlangıç
self.models.append(
MCDropoutNet(input_dim, hidden_dim, dropout_p=0.0)
)
def fit(self, train_loader, epochs: int = 200, lr: float = 1e-3):
"""Her üye bağımsız olarak eğitilir. Çeşitlilik buradan gelir
-- farklı başlangıç, farklı karıştırma sırası. Bunu atlamak
epistemic_var == 0 (aynı üyeler) veya saf gürültü (eğitilmemiş) verir."""
for seed, model in enumerate(self.models):
torch.manual_seed(1000 + seed) # farklı karıştırma/dropout akışı
opt = torch.optim.AdamW(model.parameters(), lr=lr, weight_decay=1e-4)
model.train()
for _ in range(epochs):
for x_batch, y_batch in train_loader:
mu, log_var = model(x_batch)
loss = heteroscedastic_loss(mu, log_var, y_batch)
opt.zero_grad()
loss.backward()
opt.step()
return self
@torch.no_grad()
def predict(self, x: torch.Tensor):
mus, variances = [], []
for model in self.models:
model.eval() # burada doğru: dropout sampling yok
mu, log_var = model(x)
mus.append(mu.squeeze(-1))
variances.append(log_var.exp().squeeze(-1))
all_mus = torch.stack(mus)
all_vars = torch.stack(variances)
epistemic_var = all_mus.var(dim=0) # üyeler ARASI yayılma
aleatoric_var = all_vars.mean(dim=0)
return {
"mean": all_mus.mean(dim=0),
"epistemic_std": epistemic_var.sqrt(),
"aleatoric_std": aleatoric_var.sqrt(),
"total_std": (epistemic_var + aleatoric_var).sqrt(),
}
model.eval()'in DeepEnsemble.predict içinde doğru ve mc_predict içinde yanlış olduğuna dikkat edin. Stokastisite kaynağı farklıdır: ansambller bağımsız eğitimden alır, MC Dropout canlı dropout maskelerinden alır.
Takaslar: MC Dropout vs Derin Ansambller
| MC Dropout | Derin Ansambller | |
|---|---|---|
| Eğitim maliyeti | 1x (tek model) | x ( model) |
| Çıkarım maliyeti | forward pass | forward pass |
| Bellek | 1x parametre | x parametre |
| Belirsizlik kalitesi | Epistemiyi underestimate etme eğiliminde | Genel olarak daha iyi kalibre edilmiş |
| Uygulama kolaylığı | Önemsiz (bayrağı çevirin) | Önemsiz ( model eğitin) |
| Paralellik | Ardışık passlar (aynı model) | Utanmaz derecede paralel |
Pragmatik bir hibrit: küçük bir ansamb () eğitin, burada her üye ayrıca MC Dropout kullanır, hem inter-model anlaşmazlığını hem de intra-model stokastisiteyi yakalar.
Ödül: Asimetrik Boyutlandırma

İşte gerçek katkı. Gaussian Kelly 'dir; türetme, büyüme parabolü, drawdown olasılık tablosu ve fractional yerine tam Kelly çalıştırmanın dört nedeni — hepsi Stratejiler için Kelly Kriteri'nde ve burada tekrar edilmez. 'yi quarter-Kellow fraction olarak verilen alın.
Değişiklik paydadır. Toplam tahminsel varyans yerine:
için argüman: aleatorik varyans piyasanın gürültüsüdür, fiyatlandırılmıştır ve onu taşımak bir stratejinin kazanma yoludur. Epistemik varyans sizin cehaletinizdir — buna bağlı prim yoktur ve daha da kötüsü, tahmininizin yanlış olması ile korelizedir. büyük olduğunda, Kelly'nın paydası ile aynı anda güvenilmezdir, bu yüzden boyutlandırma hatası bileşir. Piyasa gürültüsüne göre süper-lineer cezalandırmak, bunun doğrudan ifadesidir.
def uncertainty_adjusted_position_size(
pred_mean: float,
epistemic_std: float,
aleatoric_std: float,
max_position: float = 1.0,
lam: float = 2.0, # epistemik ceza; validation'da ayarlayın
max_epi_ratio: float = 0.5, # bu epi/alea oranının üstünde kaçının
base_kelly_fraction: float = 0.25,
) -> float:
"""Epistemik varyans aleatorikten daha sert cezalandırılan Kelly sizing."""
effective_var = aleatoric_std ** 2 + lam * epistemic_std ** 2
if effective_var < 1e-10:
return 0.0
position = (pred_mean / effective_var) * base_kelly_fraction
epi_ratio = epistemic_std / (aleatoric_std + 1e-8)
if epi_ratio > max_epi_ratio:
position *= max(0.0, 1.0 - epi_ratio)
return float(np.clip(position, -max_position, max_position))
Kapı bir notu hak eder. Bir güven eşikinin altında pozisyonları sıfırlamak burada yeni değil — conformal makalesi genel no-trade filtresini ve min_edge eşiği olarak belirtir ve kodlar, including how to pick the threshold and the geometric reading of an interval straddling zero. Bu machinery için conformal prediction bkz. Yeni olan şey paydadır: üzerindeki kapım özellikle model kendi parametrelerinde piyasa gürültülü olduğundan daha kafayı karıştırdığında ateşler — toplam belirsizlik gating'inin tespit edemeyeceği bir durum, çünkü sakin ama yabancı bir rejim düşük toplam varyansa ve kötü bir epistemik oranına sahip olabilir.
Kalibrasyon: Bunu Teslim Edin
Bir belirsizlik tahmini sadece kalibre edilmişse yararlıdır: nominal %95 aralığı ~%95 zaman gerçeği içermelidir. Buraya kendi Gaussian-quantile可靠性 kontrolünüzü yapmayın — kalın kuyruklu getiri residuals üzerinde parametrik bir aralık, tam olarak conformal prediction var olma gereği duyan başarısızlık modudur ve arkasında sonlu örnek garantisi ile çalışan bir evaluate() shipping. TFT postu quantile heads için aynı noktayı yapar.
Post-hoc rescaling ( bir validation set üzerinde fit) ucuz bir düzeltmedir ve Adaptive Conformal Inference'ın daha zayıf kuzenidir, ki bu statik bir rescale yerine uzun vadeli kapsama bound ile online miscoverage level sürdürür. ACI daha güçlü seçenektir; lineer rescale tercih etmenin tek nedeni, ACI'nin tek genişliğinin yapmadığı epistemik/aleatorik oranı korumasıdır.
Yayınlamadan Önce Ölçülmesi Gerekenler
Yukarıdaki yöntemler kurulmuştur. Ayrıştırmanın trading'de bir şey satın aldığı iddiası değildir ve bu blog argümana dayalı boyutlandırma kuralları yayınlamaz. Bar:
1. Dataset ve hedef. Enstrümanı, bar boyutunu, açık tarih aralığını, özellik setini ve tahmin hedefini adlandırın.
2. Ayrıştırma kendisi. Toplam tahminsel varyansın ne kadarının epistemik vs aleatorik olduğu ve bu oranının adlandırılmış sakin bir pencere ile adlandırılmış volatil bir pencere arasında nasıl hareket ettiği. Bu para tablosu ve henüz yok. Falsify değeri worth hipotezi: oran realized volatiliteden önce pike, çünkü yabancılık türbülansı önceden gelir.
3. Coverage vs conformal. MC Dropout aralıklarının ölçülen out-of-sample coverage'ı nominale karşı, aynı verilerde yayınlanmış makalenin split-conformal aralıklarına kıyasla. Bu head-to-head kendisi yeni bir sonuç ve iki post arasındaki doğal köprüdir.
4. bir şey satın alıyor mu? Validation üzerinde epistemik cezasını sweep ve PnL ve max drawdown'u baseline'a karşı raporlayın. Hiçbir şey satın almıyorsa, öyle deyin — The Honest Negative bu sonuç için şablondur ve yayınlanabilir bir sonuçtur.
5. Çıkarım maliyeti. Her 'de hedef donanım üzerinde ölçülmüş.
Buradaki her değerlendirme walk-forward optimization disiplini altında çalışır — bir hiperparametredir ve full sample üzerinde ayarlanmış bir bir sonuç değildir.
Prodüksiyon İçin Pratik İpuçları
1. Prior'ı ısıtın. Varyasyonel çıkarım ile, varyasyonel ortalamayı rastgele yerine önceden eğitilmiş bir deterministik ağdan başlatın. Tipik olarak yakınsama süresini yarıya indirir.
2. Varyans çöküşünü izleyin. Öğrenilen varyanslar neredeyse sıfıra sürebilir, BNN'yi sessizce deterministik bir ağa revert eder. Eğitim sırasında ortalama izleyin; gerekirse KL annealing ekleyin.
3. Sabit bir validation set üzerinde değil, rolling basis üzerinde yeniden kalibre edin. Piyasalar dengesizdir ve bir kez fit edilmiş kalibrasyon decay olur. Ya walk-forward disiplini altında bir rolling window üzerinde retrain yapın ya da ACI model staleness'i online absorbe etsin — conformal postu retraining frequency trade-off'unu doğrudan kapsar.
4. Ansamb çeşitliliği önemlidir. Farklı seedler, farklı shuffles, opsiyonel olarak her üye için farklı hiperparametreler. Başlatma çeşitliliği ansaml kalitesinin primary driver'ıdır, bu yüzden yukarıdaki fit() döngüsü optional değildir.
5. Ayrıştırmayı loglayın, sadece total değil. Her iki bileşeni de realized outcomes ile birlikte saklayın. Bunun olmadan, incelemede önemli olan tek soruyu yanıtlayamazsınız: sizer pozisyonu kestiğinde, bu piyasa gürültülü olduğu için mi yoksa model kaybolduğu için mi — ve o doğru muydu?
6. Belirsizlik bir özellik olarak. Rolling epistemik istatistikleri kendileri drawdown'lar için predictive olabilir. Plausible, ölçülmemiş ve ayrı bir post worth.
Sınırlamalar ve Samimi Çekinceler
- Yaklaşık posteriorlar hala yaklaşıktır. MC Dropout ve VI gerçek posterior'un sınırlı bir görünümünü verir. Hiçbir şeyden iyi, ground truth değil ve her ikisine de kapsama garantisi gelmez.
- Kalibrasyon ihtiyaç duyduğunuzda bozulur. Gerçekten yeni bir rejimde model yine de miscalibrated olabilir — sadece deterministik olandan daha az miscalibrated olma eğilimindedir. Out-of-distribution input'tan gelen belirsizlik tahminleri kendileri out-of-distribution outputlardır.
- Aleatorik varyans epistemik sinyali absorbe edebilir. Heteroscedastik baş yeterince esnekse, model belirsizliğini veri gürültüsü olarak açıklamayı öğrenir, 'yi sıfıra çöker ve sessizce tüm ayrıştırmayı yener. Bu, bu yazıdaki en önemli başarısızlık modudur ve kendini duyurmaz. Rejimler arasında oranı izleyin; asla hareket etmeyen bir oran, kırık bir ayrıştırmadır, kararlı bir piyasa değil.
- serbest bir parametredir. Tuning edilebilir bir düğmeyi boyutlandırma kuralına sokmak, overfit boyutlandırma kurallarının nasıl oluşturulduğudur. Walk-forward justification'a ihtiyacı vardır veya 1'de sabitlenmelidir.
Sonuç
Conformal prediction zaten bu bloga kapsama garantisi olan aralık genişliklerini ve Kelly zaten bir boyutlandırma kuralını verir. Ne de neden aralığın geniş olduğuna cevap vermez. Tahminsel varyansı epistemik ve aleatorik parçalara ayırmak buna cevap verir ve cevap total'in olmadığı şekilde eylem yapılabilir: piyasa gürültüsü telafi edilen risk, model cehaleti değildir ve boyutlandırma paydası bunu söylemelidir.
MC Dropout ayrıştırmayı neredeyse bedavaya yapar — çıkarımda tek bir satır (model.train()) her dropout ağını yaklaşık bir Bayesian'e dönüştürür. Derin ansambller x pahasındadır ve daha iyi kalibre edilir. İkisi de aynı asimetrik payda besler.
'in gerçekten ödeme yapıp yapmadığı, bu taslak henüz yanıtlamadığı ampirik bir sorudur. Yukarıda listelenen ölçümler yayınlamanın bedelidir.
References:
- Blundell, C., Cornebise, J., Kavukcuoglu, K., & Wierstra, D. (2015). Weight Uncertainty in Neural Networks. ICML.
- Gal, Y. & Ghahramani, Z. (2016). Dropout as a Bayesian Approximation: Representing Model Uncertainty in Deep Learning. ICML.
- Lakshminarayanan, B., Pritzel, A., & Blundell, C. (2017). Simple and Scalable Predictive Uncertainty Estimation using Deep Ensembles. NeurIPS.
- Kendall, A. & Gal, Y. (2017). What Uncertainties Do We Need in Bayesian Deep Learning for Computer Vision? NeurIPS.
- Gibbs, I. & Candes, E. (2021). Adaptive Conformal Inference Under Distribution Shift. NeurIPS.
- Kelly, J. L. (1956). A New Interpretation of Information Rate. Bell System Technical Journal.
Yazarlar
Trading-systems engineer
Trading-systems engineer building bots since 2017: cross-exchange arbitrage (connected up to 30 venues), cointegration-based pairs arbitrage across spot and futures, scalping, news and sentiment-driven strategies, trend algorithms, and portfolio management and balancing algorithms. Also builds sub-millisecond order execution, big-data warehouses, backtesting engines, AI agents, and trading interfaces (incl. open-source profitmaker.cc). Stack: JS/TS, Python, Rust/Zig/Go, DevOps, backend, frontend, architecture.