yoklateknik mülakat

ML Engineer Dl Normalization Regularization Mülakat Soruları

75 doğrulanmış ML Engineer Dl Normalization Regularization mülakat sorusu — cevaplarıyla çöz, açıklamalarıyla öğren, gerçek simülasyonda kendini test et.

Gerçek simülasyonu dene →

Örnek sorular

Dl Normalization RegularizationZorluk 1
Eğitim sırasında (N, C) şeklindeki bir aktivasyon tensörüne BatchNorm uygulanıyor; N batch boyutu, C özellik boyutu. Katman bu tensörü standartlaştırmak için hangi istatistikleri hesaplar?
  • aTüm N x C girdi üzerinden tek bir global ortalama ve tek bir global varyans; tensörün tamamı tek bir sayı çiftiyle standartlaştırılır
  • bHer özellik için bir ortalama ve bir varyans; her biri batch'teki N örnek üzerinden kestirilir
  • cHer örnek için bir ortalama ve bir varyans; her biri o satırın C özelliği üzerinden kestirilir
  • dC x C boyutunda tam bir kovaryans matrisi; böylece ilişkili özellikler birlikte whitening'e tabi tutulur
Açıklama:BatchNorm her özellik kanalı için tek bir istatistik çifti tutar ve bunu batch boyutunu indirgeyerek kestirir. Satır içindeki özellikleri indirgeyen seçenek aslında LayerNorm'u tarif eder; tek global çift ise özellikler arası ölçek farklarını yok ederdi. Kovaryans matrisiyle whitening ise BatchNorm'un yapmadığı, çok daha pahalı ayrı bir işlemdir.
Dl Normalization RegularizationZorluk 2
PyTorch 2.8'de:

bn = nn.BatchNorm2d(3)   # varsayılan affine=True
bn.train()
x = torch.randn(4, 3, 5, 5) * 2 + 1
y = bn(x)
print(y.mean(dim=(0, 2, 3)), y.std(dim=(0, 2, 3), unbiased=False))


Bu kod float toleransı içinde ne yazdırır?
  • aOrtalamalar 1 civarı, standart sapmalar 2 civarı; katman gelen konum ve ölçeği korur, yalnızca bir düzeltme öğrenir
  • bOrtalamalar 0 civarı, standart sapmalar 2 civarı; ilk ileri geçişte yalnızca ortalama çıkarma uygulanır
  • cOrtalamalar 1 civarı, standart sapmalar 1 civarı; öğrenilebilir kaydırma batch ortalamasına ilklenir
  • dOrtalamalar 0 civarı, standart sapmalar 1 civarı; çünkü gamma ve beta 1 ve 0 olarak başlar
Açıklama:Train modunda katman her kanalın batch ortalamasını çıkarır, batch standart sapmasına böler ve ardından affine parametreleri uygular; bunlar gamma=1, beta=0 olarak ilklenir. Bu varsayılanlarla affine adım kimlik dönüşümü olur, dolayısıyla yazdırılan istatistikler standartlaştırılmış olanlardır. Girdideki 1 konumu ve 2 ölçeği korunmaz, silinir.
Dl Normalization RegularizationZorluk 2
BatchNorm katmanları içeren bir evrişimli ağ, tek bir görüntüyü skorlamadan önce evaluation moduna alınıyor. Bu çağrıda her BatchNorm katmanı girdisini standartlaştırmak için hangi büyüklükleri kullanır?
  • aEğitim batch'leri boyunca biriktirilmiş running mean ve running variance buffer'larını
  • bTam eğitimdeki gibi mevcut girdinin ortalama ve varyansını; çünkü katmanın moda bağlı bir dalı yoktur
  • cGörülen son eğitim batch'inin ortalama ve varyansını; katman bunu birebir önbelleğe alır
  • dYalnızca öğrenilmiş gamma ve beta'yı; eğitim bitince standartlaştırma atlanır
Açıklama:Evaluation modunda katman istatistikleri gelen tensörden kestirmeyi bırakır ve eğitim sırasında biriktirdiği buffer'ları okur; tek görüntülük çıkarımı anlamlı kılan da budur. Standartlaştırma atlanmaz, affine parametreler onun üzerine uygulanır. Buffer'lar son batch'in birebir kopyası değil, çok sayıda batch üzerinden hareketli bir kestirim taşır.
Dl Normalization RegularizationZorluk 2
Yeni oluşturulmuş bir BatchNorm katmanının running mean buffer'ı 0 tutuyor. momentum hiperparametresi 0.1. İlk eğitim ileri geçişinde bir kanalın batch ortalaması 5.0 çıkıyor. PyTorch 2.8'de bu kanalın running mean değeri sonrasında ne olur?
  • a5.0; ilk gözlemin harmanlanacağı bir geçmişi yoktur, ilk değerin yerini alır
  • b4.5; buffer eski değerine 0.1, yeni değere 0.9 ağırlık verir
  • c0.5; yeni batch istatistiği 0.1 ağırlıkla girer, eski buffer 0.9 ağırlığını korur
  • d0.05; momentum iki kez uygulanır, biri batch istatistiğine biri güncellemeye
Açıklama:Buffer üstel hareketli bir ortalamadır ve bu ilk geçişte güncelleme 0.9 0 + 0.1 5.0 değerini hesaplar. Saklanan değerin batch ortalamasıyla üzerine yazılması 5.0, iki katsayının yer değiştirmesi ise 4.5 verirdi. Katsayı kurala iki kez değil bir kez girer, dolayısıyla sonucu ikinci kez küçülten bir adım yoktur.
Dl Normalization RegularizationZorluk 2
Bir servis, Dropout katmanları içeren eğitilmiş bir ağdan aynı isteği iki kez geçiriyor ve iki farklı tahmin vektörü alıyor. İki çağrı arasında ağırlıklar güncellenmedi. En olası sebep nedir?
  • aDropout olasılığı istek sayısı arttıkça otomatik olarak düşürülür, sonraki çağrılarda daha çok birim korunur
  • bModül hâlâ training modundadır, bu yüzden her ileri geçiş yeni bir dropout maskesi örnekler
  • cDropout çıktısını rastgele bir hassasiyete yuvarlar, tekrarlı çağrılar düşük bitlerde farklılaşır
  • dDropout önceki isteğin maskesini saklar ve bir sonrakinde tersine çevirir
Açıklama:Dropout yalnızca modül training modundayken stokastiktir; o durumda her ileri geçiş bağımsız bir Bernoulli maskesi çeker, bu yüzden aynı girdi farklı çıktı verir. Evaluation moduna geçildiğinde katman kimlik dönüşümüne döner ve tekrarlı çağrılar birebir aynı olur. Olasılık kendiliğinden değişmez ve çağrılar arasında maske taşınmaz.
Dl Normalization RegularizationZorluk 1
PyTorch 2.8'de:

d = nn.Dropout(p=0.5)
d.train()
y = d(torch.ones(10000))
print(torch.unique(y))


y içinde hangi farklı değerler görülür?
  • aYalnızca 0. ve 2.; hayatta kalan girdiler koruma olasılığına bölünür
  • bYalnızca 0. ve 0.5; hayatta kalan girdiler koruma olasılığıyla çarpılır
  • cYalnızca 0. ve 1.; maske girdileri sıfırlar, hayatta kalanlara dokunmaz
  • d0. ile 1. arasında sürekli değerler; her girdi kendi Bernoulli örneğiyle çarpılır
Açıklama:Uygulama inverted dropout'tur: düşürülen girdiler sıfırlanır, hayatta kalanlar 1 - p'ye bölünür; burada bu 0.5 olduğu için sonuç 2 olur. Maske ikili olduğundan ara değer üretilmez. Hayatta kalanları koruma olasılığıyla çarpmak 2 yerine 0.5, onlara hiç dokunmamak ise 1 yazdırırdı.

1500 soruluk ML Engineer bankasında kendini sına.

Mülakata başla