Sıralamaları nasıl hesaplıyoruz?
Veri kaynakları
Dört sipariş platformu + Google — her kaynak ayrı saklanır, birlikte yorumlanır.
Restoran, menü ve fiyat verisi Yemeksepeti, Getir Yemek, Trendyol GO ve Migros Yemek'ten günlük taranır. Aynı restoranın dört platformdaki kaydı isim + şube + konum eşleştirmesiyle tek profilde birleştirilir. Paket servisi olmayan meşhur restoranlar için fotoğraf ve yorumlar Google'dan gelir ve ayrı bir rozet olarak gösterilir — sipariş platformu puanıyla karıştırılmaz.
hessap puanı (restoran yıldızı)
Yıldızın yanındaki sayı platformların ham puanı değil, bizim hesabımızdır.
Listelerde gördüğün ★ değeri hessap puanıdır ve iki adımda hesaplanır. 1) Restoranın dört platformdaki genel puanları, her platformun oy sayısıyla ağırlıklandırılaraktek ortalamada birleştirilir (10.000 oylu 4.4, 80 oylu 4.9'dan daha çok söz sahibidir). 2) Bu ortalamaya güven düzeltmesi uygulanır: n / (n + 50) · R + 50 / (n + 50) · 4.0— yani her restorana 4.0 değerinde 50 "sanal oy" eklenmiş gibi davranırız. Oy azsa puan sektör ortalaması 4.0'a çekilir; oy çoğaldıkça restoranın kendi ortalaması baskın olur.
Örnek: 2.500 oyla 4.8 alan bir restoranın hessap puanı 4.8'de kalır; 5 oyla 5.0 alanınki 4.1'e iner. Amaç açık: az oyla alınmış mükemmel puan, binlerce oyla kanıtlanmış iyi puanı geçemez."Önerilen" sırasında bu puana bir de log-ölçekli popülerlik katsayısı (en fazla +%35) eklenir — eşit kalitede çok değerlendirilen restoranı öne alır, tek başına düşük puanlı bir yeri asla tepeye taşımaz. Platformların ham puanlarını gizlemeyiz: restoran sayfasındaki uygulama karşılaştırmasında her platformun kendi puanı ayrı ayrı görünür.
Lezzet skoru (Bayesian)
Az yorumlu mükemmel puan, çok yorumlu iyi puanı geçemesin.
"Kadıköy'de en iyi pide" gibi bir sıralamada her restoranın pide yorumlarından türetilmiş bir lezzet ortalaması (R) ve yorum sayısı (n) vardır. Skor, n / (n + M) · R + M / (n + M) · C formülüyle hesaplanır: yorum azsa skor, o restoranın genel lezzet puanına (C, ön-ortalama) çekilir; yorum çoksa kendi ortalaması baskın olur. O yemeğe dair hiç kanıt yoksa restoran o sıralamaya girmez.
Fiyat ve güncellik
Fiyat = platformlar arası en düşük güncel porsiyon.
Menü fiyatları her sabah tazelenir; sayfada gördüğün fiyat, ürünün dört platformdaki en düşük güncel fiyatıdır ve son gözlem tarihiyle sunulur. Bir restoranın menüsü 24 saatten eskiyse sayfa açıldığında bir kez canlı yenilenir. Fiyatlar platformda her an değişebilir — sipariş öncesi platformdaki fiyat esastır. Restoran sayfasındaki fiyat aralığı(₺/₺₺/₺₺₺) da aynı veriden türetilir: restoranın en ucuz ana-yemek porsiyonu, ilçesindeki tüm restoranların medyanıyla kıyaslanır — medyanın %80'inin altı Ekonomik, %135'ine kadarı Orta segment, üstü Üst segment. Kendi fiyat verimiz yetersizse platformun fiyat sınıfı gösterilir.
Veri yeterliliği
Boş ya da yetersiz veriyle sayfa yayınlamayız.
Her programatik sayfa (ör. "X ilçesinde en iyi Y") yayına girmeden önce restoran sayısı, fiyatı bilinen menü, yemek adı geçen yorum ve bağımsız kaynak sayısı üzerinden bir veri yeterliliği skoru alır. Eşiği geçmeyen sayfalar arama motorlarına gönderilmez. Amaç az ama güvenilir cevap — çok ama boş sayfa değil.
Tarafsızlık ve sınırlar
Puanları kimden aldığımızı açıkça söyleriz.
Sıralama algoritması paralı olarak değiştirilemez; sponsorlu bir görünürlük olursa açıkça etiketlenir. Platform puanlarını kendi puanımız gibi işaretlemeyiz (yapılandırılmış veride üçüncü-taraf AggregateRating basmayız). Yorum metinlerini kopyalamayız; yorumlardan türetilmiş sinyal (hangi yemek ne kadar övülüyor) kullanırız.