Emirhan Karatepe

Uygulamalı ML ve Veri Mühendisliği · İstanbul

Karar veren ve o karara ne kadar güvendiğini söyleyebilen sistemler kuruyorum — kendi rakamlarını doğrulayan LLM ajanları, kapasiteyi boyutlandıran talep tahminleri, ve sonuçları kadar sınırlarını da net söyleyebildiğim modeller.

Aşağıdaki her madde nasıl yapıldığına, daha önemlisi nerede doğru olmaktan çıktığına açılıyor.

Deneyim

A101 Yeni Mağazacılık A.Ş. AI & Ar-Ge Mühendisi

Ağustos 2026 – Halen

Perakende operasyonu üzerine Ar-Ge merkezi işleri — tahminleme, eniyileme ve kurum içi ajan platformu.

İç denetim biriminin sürekli sorduğu soruları doğal dilde yanıtlayan bir LLM ajanını canlıya aldım.

yürüttümllm-agentsdata-engevaluation

Nasıl yapıldı

Şirketin kendi ajan platformu üzerine LangGraph, FastAPI, PostgreSQL ile kuruldu. Ajan üretim verisine serbest sorgu üreterek değil, sabit ve salt-okunur bir SQL araç kümesi üzerinden ulaşıyor; rapor ettiği her rakam insana ulaşmadan önce bağımsız bir sorguyla yeniden doğrulanıyor. Araç kümesi büyüdükçe yanıtların dürüst kalmasını sağlayan değerlendirme düzeneğini ve iş yükünün sütunlu bir veritabanına taşınması için ölçülmüş gerekçeyi de ben kurdum.

Bu iddia nerede biter

Doğrulama katmanı işin ayrıntısı değil, tam da kendisi. Kendinden emin biçimde yanlış cevap veren bir ajan, hiç ajan olmamasından kötüdür — bu yüzden tasarım modelin yanılacağını varsayıp kontrol ediyor. Ajanın denetçinin yerini aldığını söylemiyorum; soruyla cevap arasındaki sorgu yazma adımını kaldırıyor.

Elle belirlenen sabit teslimat slot kotasını, newsvendor quantile'ı ile boyutlandırılan bir talep tahminiyle değiştirdim.

yürüttümforecastingoptimisation

Nasıl yapıldı

Python, LightGBM, PostgreSQL ile uçtan uca kurdum: talep dağılımı modeli, onu her gece çalıştıran iş ve operasyon ile gelir tarafı için iki canlı pano. İşin ilginç yeri quantile seçimi — boş kalan bir slotun maliyetiyle geri çevrilen bir siparişin maliyeti simetrik değil, dolayısıyla doğru kota beklenen talep değil.

Bu iddia nerede biter

Bu bir kapasite boyutlandırma kararı, tahmin yarışı değil. Tahminin yalnızca bir quantile'ı yerleştirecek kadar iyi olması yeterli; daha iyi bir nokta tahmini kotayı ille de değiştirmezdi.

Mağaza konumu ve hizmet poligonu eniyilemesi üzerine Ar-Ge merkezi projesini Sanayi ve Teknoloji Bakanlığı denetim komitesine sundum.

katkı verdimoptimisationforecasting

Nasıl yapıldı

Sistem talebi XGBoost, LightGBM, p-median / p-center ile puanlıyor, çıkan skoru mağazaların ve hizmet poligonlarının nereye oturacağını seçen kapasiteli konum–atama modellerine veriyor.

Bu iddia nerede biter

Bu projeye katkı verdim ve sunumunu yaptım; tek başıma tasarlamadım. Denetim, yapılan işin sunumuydu; ölçülmüş sonuçlar ekibin.

Çabuk bozulan meyve-sebzede stok ve ikmal politikası üzerine bir TÜBİTAK 2209-B araştırma projesi yürütüyorum.

yürüttümresearchforecasting

Nasıl yapıldı

Bilerek aşamalı: önce tedarikçi yönetimli stok ve gradyan artırmalı talep tahmini, sonra pekiştirmeli öğrenme politikası katmanı — akademik danışmanlıkla.

Bu iddia nerede biter

Devam ediyor. Henüz ölçülmüş bir sonuç yok, olmadan da bir sonuçtan söz etmeyeceğim.

Emlakjet A.Ş. Veri Bilimci

Temmuz 2025 – Ağustos 2026

Büyük bir emlak platformunda uygulamalı ML: değerleme, arama ve kullanıcı davranışı araştırması.

İstanbul konut fiyatları için dört uzmanlı çok modlu bir model — 0.884 log R², XGBoost temeline göre +6.1%.

tek yazardeep-learningforecastingresearch

Nasıl yapıldı

PyTorch, DCN-v2, GRU, BERT, attention pooling ile kuruldu. Dört uzman ağ — tablosal veri, üç yıllık makro ve mahalle fiyat serileri üzerinde bir GRU, ilan metni üzerinde Türkçe BERT, ve 2 km yarıçaptaki ilgi noktaları üzerinde dikkat havuzlaması — uzman başına öğrenilen bir kapıyla birleşiyor. Galatasaray Üniversitesi'ndeki bitirme projemin yarısı; diğer yarısı aşağıdaki arama chatbot'u.

Aynı görevde, temel modellere karşı
modellog R²MAPE
Decision Tree0.71630.8%
Random Forest0.80225.0%
XGBoost0.83316.2%
4-expert gated fusion0.88419.0%
Her uzman tek başına
Tabular (DCN-v2)0.773
Text (BERT)0.656
POI (attention)0.530
Temporal (GRU)0.408

Bu iddia nerede biter

Bir mülakatçının bulacağı iki şey var, o yüzden önce ben söyleyeyim. XGBoost MAPE'de hâlâ önde (16.2% vs 19.0%) — model R² ve mutlak hatada kazanıyor, göreli hatada kaybediyor. Ablation da kazancı asıl tablosal uzmanın taşıdığını gösteriyor: diğer üç modalite gerçek ama mütevazı bir pay ekliyor. Ayrıca hiç üretime çıkmadı — platformdaki canlı değerleme üçüncü bir tarafın.

Türkçe doğal dil emlak sorgularını yapılandırılmış aramalara çeviren bir chatbot'un geliştirilmesini yürüttüm.

yürüttümllm-agentsdata-eng

Nasıl yapıldı

4 mikroservis API'si üzerinde LLM araç çağırma ve Python, function calling, PostgreSQL pg_trgm; konumları, ilan tiplerini ve 40+ süzgeci trigram bulanık eşleşmeyle çözüyor. Zor kısım Türkçe konum adları — çekim ekleri, birbirine benzeyen ilçe adları ve aynı yerin altı farklı yazımı. Konteynerlendi ve CI üzerinden dağıtıldı.

Bu iddia nerede biter

Yürüttüm, tek başıma yapmadım — commit'lerin yaklaşık yarısı benim ve dört kişilik bir ekipti. Konum çözümlemesi için test kümesi var ama bir sorgu kümesi üzerinde yayımlanmış doğruluk oranı yok; dolayısıyla bu bir yetenek iddiası, kalite iddiası değil.

Oturum kimliği hiç olmayan bir tıklama akışından kullanıcı oturumlarını geri kurdum, sonra farklı birlikte-ziyaret graflarının neye yaradığını ölçtüm.

yürüttümrecsysresearchevaluation

Nasıl yapıldı

Kayıtta yalnızca ilan, tarayıcıya özgü bir kimlik ve zaman damgası var — oturum yok, gezinme yolu yok. Üstel sönümlü bir model oturum sınırlarını çıkarıyor; ardından üç farklı kenar ağırlıklandırmasıyla ilan–ilan birlikte-ziyaret grafları kuruluyor ve hem topluluk yapısı hem öneri kalitesi bakımından, derece koruyan bir boş modele karşı değerlendiriliyor. 45 days pencerede: 449,774 ilan üzerinde 2,727,327 tıklama olayı.

Hangi kenar ağırlıklandırması neye yarıyor
weightingmodularityRecall@20NDCG@20
count0.9850.1130.063
jaccard0.8910.4080.231
PMI0.8300.5080.285

Bu iddia nerede biter

Bulgu bir kazanan değil, bir ödünleşim. Sayım ağırlıklandırması en tutarlı toplulukları veriyor ve öneri için neredeyse işe yaramıyor; PMI en iyi öneriyi veriyor ve en dağınık topluluğu. Bir kayıt kesiti üzerinde çevrimdışı araştırma — canlıya alınmış bir öneri sistemi değil.

Ham eylem kaydını okunabilir kullanıcı davranışına çeviren hattı ve panoyu kurdum — bir de onu çizmek için yeni bir kenar demetleme düzeni.

yürüttümdata-engresearch

Nasıl yapıldı

Hexagonal mimaride bir Spring Boot 3.5, Java 24, PostgreSQL, Elasticsearch, D3, deck.gl, Leaflet servisi; sanal iş parçacıkları ve iki katmanlı önbellek ile bir PostgreSQL eylem kaydını Elasticsearch ilan indeksine bağlıyor. Yedi eşgüdümlü görünüm: mekânsal ısı haritaları, 3B altıgen talep yüzeyi, il bazlı renk haritaları, dönüşüm hunileri ve iki kenar demetlenmiş köken–varış grafı. Yöntem katkısı, coğrafi kalkış ve varış açılarını sabit koordinatlarda koruyan uç-çıpalı bir kuvvet yönelimli kenar demetleme varyantı.

Bu iddia nerede biter

under 200 ms çizim süresi ≤ 200 city pairs/day ölçeğinde geçerli — makale, bin kenarın ötesinde farklı bir algoritmanın doğru seçim olduğunu açıkça yazıyor. Kurum içi bir analist aracı; dört kullanım senaryosu da gösterim, analist çıktısını ölçen bir çalışma değil.

Görsel ve metin sinyallerini öğrenilmiş ağırlıklandırmayla birleştiren bir mükerrer ilan tespiti kurdum.

yürüttümrecsysevaluation

Nasıl yapıldı

Kapak görseli ve öznitelik gömmeleri üzerinde çok sinyalli bir benzerlik skoru, görsel–başlık örtüşmesiyle birlikte; öğrenilmiş ve kural tabanlı bileşenlerin melezi bir ağırlıklandırma, ve istendiğinde verilen bir ilanın mükerrerlerini döndüren bir ajan. Python, scikit-learn, embeddings.

Bu iddia nerede biter

Etiketli bir küme üzerinde yayımlanmış kesinlik veya duyarlılık değerim yok; bu yüzden neyi birleştirdiğini anlatıyorum, ne kadar iyi skorladığını değil.

İlan fotoğraflarına yazılmış telefon numaralarını bulup bulanıklaştıran bir OCR hattı kurdum.

yürüttümdata-eng

Nasıl yapıldı

İlan görselleri üzerinde tespit, konumlandırma ve bulanıklaştırma; iletişimi platform dışına taşımak için kullanılan bir yolu kapatıyor.

Bu iddia nerede biter

Bu davranışın ne kadar yaygın olduğuna ya da hattın onu ne kesinlikte yakaladığına dair bir ölçümüm yok. Dolayısıyla bu, ne yapıldığının anlatımı; etkisi hakkında bir şey söylemiyor.

BigQuery'yi besleyen bir üretim Airflow platformuna satış veri martı hattı ekledim.

katkı verdimdata-eng

Nasıl yapıldı

Dönüşüm SQL'ini yazdım ve ambarın bağımlılık grafiğine bağladım; platformun sahibi olan veri mühendisliği ekibinin yanında. Apache Airflow, BigQuery, SQL.

Bu iddia nerede biter

Katkı, sahiplik değil. Platform benden yıllar önce kurulmuş ve bakımı başkasında — bu satırı yazmadan önce depo geçmişini kontrol ettim, kendi CV'min daha eski bir taslağı bunu fazla iddialı anlatıyordu.

Yayınlar

Emlakjet'teki işlerden çıkan iki bildiri; ikisinde de ilk yazarım, ikisi de hakem sürecinde.

Implicit Session Reconstruction and Co-Visitation Graph Analysis in Large-Scale Listing Clickstreams

E. Karatepe, M. Sözdinler, Y. Doksanbir, G. Akpınar, E. Aktan, A. H. Işık

ASYU 2026 — Innovations in Intelligent Systems and Applications · Özyeğin University, Istanbul · 9–11 September 2026

gönderildi, hakem sürecinde

Visualizing User Behavior on Real-Estate Platforms: A Case Study in Sessionization, Spatial Aggregation, and Self-Organizing Edge Bundling

E. Karatepe, M. Sözdinler, Y. Doksanbir, E. Aktan, G. Akpınar, A. H. Işık

ASYU 2026 — Innovations in Intelligent Systems and Applications · Özyeğin University, Istanbul · 9–11 September 2026

gönderildi, hakem sürecinde

Eğitim

Galatasaray University Bilgisayar Mühendisliği Lisans

2019 – 2026 · GPA 3.01 / 4.00

Bitirme projesi: İstanbul konut fiyat tahmini için çok modlu bir derin öğrenme modeli ve üstüne kurulan doğal dilli emlak arama chatbot'u.

İletişim

Bana en hızlı LinkedIn üzerinden ulaşabilirsiniz.

LinkedIn

CV talep üzerine paylaşılır.