← Projelere dön
Proje

Expected Goal Calculator

Futbolda bir maçın istatistiğine baktığında genelde şut sayısını görürsün. Ama 30 metreden umutsuzca denenen bir vuruş ile boş kaleye yapılan bir dokunuş aynı satırda "1 şut" olarak yazılınca, o sayı pek bir şey anlatmaz.

xG (expected goals), tam olarak bunu düzeltmek için var. Bir şutu, benzer pozisyonlardan atılmış geçmiş şutların gol olma oranıyla etiketliyor. 0.30 xG demek şu: bu pozisyondan atılan şutların yaklaşık %30'u gol oluyor.

Bu araç, sahadaki herhangi bir noktanın xG değerini gösteriyor.

Nasıl kullanılır

Sahaya dokun ya da işaretçiyi sürükle. Ekranda üç şey anlık güncelleniyor:

  • Mesafe — kaleye olan uzaklık
  • Açı — kale ağzının o noktadan ne kadar geniş göründüğü
  • xG — gol olma olasılığı

Sarı koni, şutörün gördüğü kaleyi gösteriyor. Kaleye yaklaştıkça ya da ortaya doğru geldikçe koninin genişlediğini, direğin dibine gittikçe daralıp neredeyse kapandığını fark edeceksin. xG'nin neye tepki verdiğini en iyi anlatan şey bu koni.

Hazır pozisyonlar için alttaki butonları kullanabilirsin. Vuruş tipini de değiştirebiliyorsun — aynı noktadan kafayla vurmak, ayakla vurmaktan belirgin şekilde daha az gol getiriyor.

Denemeye değer birkaç şey

Mesafe her şey değil. İşaretçiyi direğin hemen yanına, kale çizgisinin dibine götür. Kaleye 4 metre mesafedesin — ama xG düşük. Çünkü o noktadan kale ağzını neredeyse hiç görmüyorsun. Sonra aynı mesafede ortaya kay: değer birkaç katına çıkıyor. Açı, mesafe kadar önemli.

Penaltı sabit. Penaltıyı seçtiğinde değer her zaman 0.79. Bu bir tahmin değil, penaltıların yıllar içindeki gerçekleşmiş gol oranı. Penaltı standart bir olay olduğu için konuma göre değişmiyor.

Ceza sahası kenarı sandığından düşük. "Tehlikeli bölge" diye düşündüğümüz yerlerin çoğu 0.04 civarında — yani yirmi beş şuttan biri. Maç izlerken kaçırılan fırsatlara verdiğimiz tepki, genelde gerçek olasılıklardan biraz kopuk.

Arkasında ne var

Araç, mesafe ve açıyı girdi olarak alan bir lojistik regresyon modeli çalıştırıyor — istatistikte sonucu ikili olan (gol / gol değil) durumlar için kullanılan standart yöntem. Model Python'da kuruldu, katsayıları xG araştırmalarında yaygın olarak kullanılan referans değerlere kalibre edildi.

Bir not: bu model sadece konumu ve vuruş tipini biliyor. Savunmacıların nerede olduğunu, kalecinin yerleşimini, şuttan önceki pası görmüyor. Gerçek xG modelleri bunları da hesaba katar, dolayısıyla buradaki sayılar bir yaklaşımdır, profesyonel bir sağlayıcının değeri değil.

Teknik detaylar, model denklemi ve kod için aşağıdan indirebilirsin:

HTML CSS JavaScript SVG Python
Aracı tam ekranda aç ↗