Özellik Deposu, makine öğrenmesi özelliklerini merkezi olarak depolayan, paylaşan ve yeniden kullanan MLOps veri yönetim platformudur.

Özellik Deposu (Feature Store), makine öğrenmesi projelerinde özellik mühendisliği sürecini merkezi olarak yöneten, özelliklerin hesaplanmasını, saklanmasını, paylaşılmasını ve yeniden kullanılmasını sağlayan veri yönetim platformudur. Kısaca, ML modelleri için 'tek gerçek kaynak' işlevi görür. Tipik bir makine öğrenmesi iş akışında veri bilimciler zamanlarının büyük kısmını ham veriden özellik üretmeye harcar. Aynı özellikler farklı ekipler tarafından bağımsız biçimde yeniden hesaplanır, bu da hem hesaplama kaynağını israf eder hem de tutarsızlıklara yol açar. Üstelik eğitim ortamında hesaplanan özellikler ile servis (inference) ortamında hesaplanan özellikler arasında farklar oluşabilir — buna 'training-serving skew' denir ve model performansını ciddi ölçüde düşürebilir. Özellik deposu bu sorunları tek bir merkezi platform altında çözer. Modern bir özellik deposunun temel bileşenleri şunlardır: Çevrimdışı Mağaza (Offline Store), tarihsel özellik verilerini toplu işleme ve model eğitimi için saklar; bu katman genellikle bir veri ambarına (BigQuery, Snowflake) veya veri gölüne (S3, GCS) bağlanır. Çevrimiçi Mağaza (Online Store), düşük gecikmeli servis için anlık özellik değerlerini Redis, Cassandra veya DynamoDB gibi anahtar-değer depolarında tutar. Özellik Kayıt Defteri (Feature Registry), hangi özelliklerin kim tarafından tanımlandığını, nasıl hesaplandığını ve hangi modeller tarafından kullanıldığını belgeleyen katalog katmanıdır. Özellik Boru Hattı (Feature Pipeline), ham veriden özellik değerlerine ulaşan ETL/ELT süreçlerini otomatikleştirir ve özellik güncelliğini (freshness) yönetir. Özellik deposu kullanmanın temel faydaları şunlardır: Kod tekrarını önler ve hesaplama maliyetini azaltır; training-serving skew sorununu ortadan kaldırır; model yeniden üretebilirliğini (reproducibility) artırır; özellik keşfini kolaylaştırır ve veri bilimciler arasındaki iş birliğini güçlendirir. Popüler açık kaynak seçenekler arasında Feast ve Hopsworks yer alır. Bulut sağlayıcılar da bu alana girmiştir: AWS SageMaker Feature Store, Google Vertex AI Feature Store ve Databricks Feature Engineering en yaygın kullanılan yönetilen hizmetlerdir.

settings_suggest Özellik Deposu Nasıl Çalışır?

Özellik deposu, ham veriyi alıp dönüştüren özellik boru hatlarıyla başlar. Bu boru hatları Apache Spark, Flink veya dbt gibi araçlarla çalışabilir ve çevrimdışı mağazaya (tarihsel veriler için) ve çevrimiçi mağazaya (gerçek zamanlı servis için) eş zamanlı yazabilir. Model eğitimi sırasında veri bilimci, belirli bir zaman noktasındaki özellik değerlerini (point-in-time correct features) çevrimdışı mağazadan sorgular; bu yöntem gelecek bilgisinin eğitime sızmasını (data leakage) önler. Servis sırasında ise mikrosaniye gecikmeli istek için çevrimiçi mağazadan özellikler sorgulanır. Özellik kayıt defteri, özelliğin anlamını, sahibini, veri tipini ve kullanıldığı modelleri belgeleyerek keşfedilebilirliği sağlar.

Temel Bileşenler

storage Offline Store

Tarihsel özellik değerlerini saklar. Parquet, Hive tabloları veya BigQuery üzerinde barındırılır. Model eğitimi ve toplu tahmin (batch scoring) için kullanılır.

bolt Online Store

Anlık, düşük gecikmeli servis için Redis veya Cassandra'da güncel özellik değerlerini tutar. Gerçek zamanlı tahmin (real-time inference) senaryoları için hayati öneme sahiptir.

menu_book Feature Registry

Özelliklerin meta verilerini (tanım, veri tipi, sahip takım, kullanılan modeller) kataloglayan dizin. Keşfedilebilirlik ve veri yönetişimi için kritiktir.

account_tree Feature Pipeline

Ham veriden özellik değerlerine ulaşan ETL süreçleri. Spark, Flink veya dbt ile oluşturulur; hem toplu (batch) hem de akış (streaming) modunda çalışabilir.

apps Faydaları ve Kullanım Senaryoları

  • check_circle Training-serving skew önleme: Eğitim ve servis ortamlarında aynı özellik hesaplama mantığı kullanıldığından model performans kayıpları azalır.
  • check_circle Özellik yeniden kullanımı: Bir ekip tarafından hesaplanan özellik, diğer ekipler tarafından sıfırdan yeniden yazılmadan katalogdan keşfedilip kullanılabilir.
  • check_circle Gerçek zamanlı tahmin: Dolandırıcılık tespiti, öneri sistemleri ve arama sıralaması gibi milisaniye düzeyinde gecikme gerektiren uygulamalar için online store kritik bir altyapı sağlar.
  • check_circle Model yeniden üretebilirliği: Point-in-time correct özellik sorgulaması sayesinde geçmiş bir tarihin özellik değerleri tekrar üretilebilir; bu da model denetimi ve hata ayıklaması için önemlidir.
  • check_circle Veri yönetişimi: Özellik kayıt defteri, hangi özelliklerin hangi modellerde kullanıldığını ve kimin sorumlu olduğunu belgeleyerek veri yönetişimi gerekliliklerini karşılar.

quiz Sıkça Sorulan Sorular

  • check_circle Özellik deposu hangi ölçekte gerekli olmaya başlar?: Genellikle birden fazla ML ekibinin ortak özellikler kullandığı, onlarca modelin canlıda çalıştığı veya gerçek zamanlı tahmin SLA'larının milisaniye düzeyinde olduğu ortamlarda kritik hale gelir. Küçük ekipler için önce Feast gibi hafif bir çözüm yeterlidir.
  • check_circle Training-serving skew neden sorun yaratır?: Eğitim sırasında kullanılan özellik hesaplama mantığı ile servis sırasında kullanılan mantık farklılaşırsa model, eğitildiği dağılımdan farklı veriler görür ve performansı düşer. Özellik deposu ikisini aynı hesaplama koduna bağlar.
  • check_circle Feast ile Hopsworks arasındaki temel fark nedir?: Feast, minimal ve esnek açık kaynak bir özellik deposudur; depolama katmanını kullanıcı seçer. Hopsworks ise daha kapsamlı bir MLOps platformu olup entegre model kayıt defteri, Jupyter ortamı ve veri yönetişim araçları sunar.
  • check_circle Özellik deposu vektör veritabanından nasıl ayrılır?: Özellik deposu genel sayısal ve kategorik ML özelliklerini yönetmek için tasarlanmıştır. Vektör veritabanı ise gömme vektörlerini (embeddings) benzerlik araması için optimize edilmiş bir yapıda saklar. İkisi tamamlayıcıdır ve birlikte kullanılabilir.