Google PDE: Makine Öğrenmesi, AI ve Veri Sunumu — Çalışma kılavuzu
Şunun bir parçası: Google Professional Data Engineer — Çalışma kılavuzu. Doğrulanmış cevaplarla şurada pratik yapın: Google sınav merkezi, veya şurada süreli deneme sınavları çözün: ExamRoll.io.
Genel Bakış
Google Cloud üzerinde üretim seviyesinde makine öğrenimi ve veri sunum sistemleri oluşturmak, disiplinli veri modellemesi, sağlam işlem hatları ve operasyonel koruma mekanizmaları gerektirir. Bu bölüm, BigQuery ML’de model geliştirme, Vertex AI üzerinde yönetilen yaşam döngüsü (veri setleri, eğitim, işlem hatları, uç noktalar, özellik mühendisliği ve izleme), tahmin yolu tasarımı (topluya karşı çevrimiçi), özellik depoları ve zamana bağlı doğruluk (point-in-time correctness), etiketleme ve yanlılık kontrolleri, vektör arama ve artırılmış geri getirmeli üretim (retrieval-augmented generation) desenleri, soy (lineage) ve yönetişim, sapma (drift) izleme ve yeniden eğitim tetikleyicileri, analitik sunum katmanları ve gizliliğe duyarlı veri kullanımını kapsar. Tasarım kararlarına, ölçeklendirme stratejilerine ve kaçınılması gereken yaygın hata modlarına vurgu yapılmaktadır.
BigQuery ML ve Özellik Mühendisliği
BigQuery ML, doğrudan SQL içinde eğitim, değerlendirme ve tahmin yapmayı sağlayarak veri hareketini ortadan kaldırır ve model geliştirmeyi analitik veri setleriyle aynı hizaya getirir.
Model oluşturma: veri sızıntısını önlemek ve girdileri standartlaştırmak için açık etiket sütunları ve özellik dönüşümleri ile CREATE MODEL kullanın. Örnek: CREATE OR REPLACE MODEL ds.churn_model OPTIONS( model_type=‘logistic_reg’, input_label_cols=[‘churned’], l1_reg=0.0, l2_reg=1.0, data_split_method=‘AUTO’ ) TRANSFORM( standardize(tenure_months) AS tenure_std, quantile_bucketize(monthly_spend, 10) AS spend_bkt, one_hot_encoder(region) AS region_ohe, ml.feature_cross(struct(bucketize(lat, 60), bucketize(lon, 60))) AS latlon_cross, (xx + yy) AS r2 – yararlı olduğunda dairesel karar sınırı desteği ekleyin ) AS SELECT churned, tenure_months, monthly_spend, region, lat, lon, x, y FROM ds.customer_features;
Değerlendirme: model türüne uygun metrikleri (ör. sınıflandırma için ROC AUC, regresyon için RMSE) almak için ML.EVALUATE kullanın. Temel çizgileri (baseline) ve güven aralıklarını takip edin; gelecekteki performansı tahmin etmek için değerlendirme veri setlerini zamana göre sıralı tutun. SELECT * FROM ML.EVALUATE(MODEL ds.churn_model, TABLE ds.eval_features);
Tahmin: BigQuery’de çevrimiçi benzeri puanlama için ML.PREDICT kullanın veya modelleri başka bir yerde sunmak üzere dışa aktarın. Senkron puanlama için BigQuery kullanırken model gecikme bütçelerini göz önünde bulundurun; yüksek QPS’li API’ler için yönetilen uç noktalara (managed endpoints) dağıtım yapın. SELECT user_id, predicted_churn FROM ML.PREDICT(MODEL ds.churn_model, TABLE ds.scoring_candidates);
Özellik dönüşümleri: tekrarlanabilirliği sağlamak ve ön işlemeyi model yapıtına (artifact) kilitlemek için bildirimsel (declarative) TRANSFORM fonksiyonlarını (standardize, one_hot_encoder, bucketize, quantile_bucketize, ml.feature_cross) tercih edin. Dönüşümleri birim etkili (idempotent) ve deterministik tutun.
Operasyonel hususlar ve hata modları:
- Akış (streaming) eklemeleri ve sorgu güncelliği: BigQuery akış (streaming) özelliği nihai tutarlılığa (eventual consistency) sahiptir. Yeni yazılmış satırları içermesi gereken gerçek zamanlı agregasyonlar için, sorguları ölçülen akış arabellek (streaming buffer) gecikmesini aşan bir zaman gecikmesiyle çalıştırın. İhtiyatlı bir başlangıç noktası olarak, gözlemlenen ortalama kullanılabilirlik gecikmesinin kabaca 2 katı kadar beklemek veya BigQuery’ye yazmadan önce Dataflow’da filigranlar (watermarks) ve geç gelen veri yönetimi tasarlamak gerekir.
- Maliyet ve eşzamanlılık: isteğe bağlı (on-demand) slot eşzamanlılık limitleri bir darboğaz haline gelirse, sabit ücretli (flat-rate) veya esnek rezervasyonlara geçin ve öngörülebilir kapasite sağlamak için iş yükü yönetimi (rezervasyon hiyerarşileri ve atamaları) uygulayın.
- Veri kalitesi: hatalı biçimlendirilmiş satırlar içeren GCS toplu yüklemeleri için, kayıtları ayrıştırmak ve doğrulamak üzere Dataflow kullanın; doğru satırları BigQuery’ye, hatalı satırları ise incelenmek üzere bir ‘dead-letter’ tablosuna yazın. Az sayıda hatalı satır nedeniyle BigQuery’nin tüm dosyaları reddetmesinden kaçının.
Vertex AI yaşam döngüsü, tahmin yolları ve özellik depoları
Vertex AI; eğitim, ardışık düzenler (pipeline), model kaydı, uç noktalar (endpoint) ve izleme için uçtan uca yönetilen hizmetler sunar.
Veri kümeleri ve eğitim: veri kümelerini ve meta verileri kaydedin; uygun yerlerde özel eğitim işlerini veya AutoML’i kullanın. Kısıtlamalara göre algoritmaları seçin:
- Kaynak kısıtlı tek VM iş yükleri, düşük bellek/CPU talepleri nedeniyle basit modelleri (ör. doğrusal regresyon veya lojistik regresyon) tercih eder.
- Yüksek boyutlu görevler, eğitimi minimum doğruluk kaybıyla hızlandırmak için genellikle özellik seçiminden veya gereksiz özelliklerin birleştirilmesinden yararlanır.
- Gözetimsiz anomali tespiti, pozitif örneklerin nadir olduğu ve gelecekteki anormalliklerin bilinen anormal imzalara benzemesinin beklendiği durumlar için uygundur.
Ardışık Düzenler (Pipelines): veri hazırlama, eğitim, değerlendirme ve dağıtım kapılarını (gate) kodlamak için Vertex AI Pipelines’ı uygulayın. Tekrarlanabilirliği garanti etmek için parametreleri, kod commit SHA’larını, container özetlerini (digest) ve veri kümesi anlık görüntülerini (snapshot) kalıcı hale getirin.
Uç Noktalar (Endpoints) ve Tahmin:
- Düşük gecikmeli iş yükleri için çevrimiçi tahmin. Minimum ve maksimum replika sayılarını ve otomatik ölçeklendirme politikalarını yapılandırın; model gecikmesini P95’te profillendirin ve SLO’ları buna göre ayarlayın. Güvenli dağıtımlar için kanarya dağıtımları ve trafik bölme ekleyin.
- Verim öncelikli işler (ör. gecelik puanlama) için toplu tahmin. Toplu tahmin, istek başına ek yükü ortadan kaldırır ve büyük hacimler için daha ucuzdur ancak daha yüksek gecikme süresi sunar.
Özellik mühendisliği ve özellik depoları: Vertex AI Feature Store’u şunlar için kullanın:
- Eğitim için BigQuery’de çevrimdışı mağaza.
- Varlık kimliğine (entity ID) göre düşük gecikmeli aramalar için çevrimiçi mağaza. Eğitim-sunum tutarlılığını, aynı dönüşüm mantığını (ör. Dataflow kütüphanesi veya özellik tanımları) paylaşarak ve sızıntıyı önlemek için özellik zaman damgalarını kullanarak sağlayın. Zamansal birleştirmeler (temporal joins) ile zamana bağlı doğruluğu (point-in-time correctness) koruyun:
undefined
Tasarım ödünleşimleri:
- Çevrimiçi mağaza gecikmesi vs. güncellik: Bigtable destekli çevrimiçi mağazalar düşük gecikme sağlar; geçmişe dönük doldurma (backfill) ve akış yoluyla ekleme/güncelleme (upsert) işlemlerinin idempotent olduğundan emin olun. Aşırı yazma çarpıklığı (write skew) veya sıcak anahtarlar (hot keys) performansı düşürür—trafiği eşit olarak dağıtmak için varlık kimliklerini (entity ID) tasarlayın.
- Toplu vs. çevrimiçi: Toplu tahmin, sunum karmaşıklığını ve maliyetini azaltır ancak güncel olmayan tahminler sunabilir. Dinamik davranışlar (ör. öneriler) için, periyodik yeniden eğitimi sunum anında güncel özelliklerle birleştirin.
Veri kalitesi, etiketleme, yanlılık, gizlilik ve yönetişim
Yüksek kaliteli etiketler ve sıkı yönetişim, güvenilir modellerin temelini oluşturur.
Etiketleme ve dengesizlik:
- Açık etiketleme yönergeleri ve KG (Kalite Güvence) örneklemesi kullanın. Etiketleyiciler arası uyumu takip edin.
- Sınıf dengesizliğini katmanlı örnekleme, yeniden ağırlıklandırma veya yeniden örnekleme ile giderin; yalnızca genel doğruluğu değil, sınıf başına kesinlik/duyarlılık (precision/recall) metriklerini de izleyin.
- Null değerleri kasıtlı olarak koruyun. Bir model sayısal girdiler gerektiriyorsa, null değerleri açıkça kodlayın (ör. bir “was_null” göstergesi ile 0) ve sonraki adımlardaki etkisini doğrulayın; bilgi içeren eksikliği sessizce atmaktan kaçının.
Aşırı öğrenme (overfitting) ve genelleme:
- Azaltma yöntemleri arasında daha çeşitli eğitim verileri, daha küçük özellik setleri ve daha güçlü düzenlileştirme (regularization) bulunur.
- Erken durdurma ve çapraz doğrulama (cross-validation), sinir ağları için esastır; mimari veya donanım ölçeklendirmenin mümkün olmadığı durumlarda alt örnekleme (subsampling) eğitim süresini azaltabilir.
Yönetişim ve köken (lineage):
- Vertex ML Metadata, Model Registry ve Data Catalog ile kökeni (lineage) takip edin. Veri kümesi sürümlerini, dönüşümleri, hiperparametreleri ve ortamı kaydedin.
- Onay iş akışları: Dağıtımdan önce, Model Registry durumlarını ve politika kontrolleri ile Cloud Build/Deploy’u kullanarak insan onayı gerektirin. Yapıtları (artifact) Artifact Registry’de saklayın; kontrollü (gated) dağıtımlar için container’ları imzalayın ve Binary Authorization’ı zorunlu kılın.
İzleme, kayma (drift) ve yeniden eğitim:
- Tahmin çarpıklığı, özellik kayması ve performans düşüşü için model izlemeyi etkinleştirin. Dağılımsal metrikleri (ör. PSI, KL diverjansı) ve etiketlerin daha sonra geldiği durumlarda gerçek verinin gecikmesini dikkate alan (lag-aware) değerlendirmeyi kullanın.
- İstatistiksel olarak anlamlı kayma, SLO ihlalleri veya iş olayı pencerelerine dayalı olarak yeniden eğitim tetikleyicileri oluşturun. Yeniden eğitim ardışık düzenlerini otomatikleştirin ancak bir üst aşamaya geçişi (promotion) değerlendirmeler ve yanlılık kontrolleri ile denetleyin.
- Kaynaktaki (upstream) şema değişikliklerinden kaynaklanan sessiz veri kaymasına dikkat edin; şema sözleşmelerini zorunlu kılın ve eksik veya kaymış özellikler için uyarı ayarlayın.
Gizlilik odaklı tasarım:
- Data Catalog politika etiketlerini kullanarak verileri sınıflandırın; BigQuery’de veri maskeleme politikaları ile sütun ve satır seviyesinde güvenliği zorunlu kılın.
- Veri toplamayı en aza indirin; amaç sınırlamasına bağlı veri saklama ve silme SLA’ları uygulayın.
- Keşif ve kimliksizleştirme için DLP uygulayın; verileri CMEK ile şifreleyin; hizmetleri VPC Service Controls ile izole edin; ayrıntılı IAM sağlayın ve en az ayrıcalık ilkesine sahip özel hizmet hesapları kullanın.
- İzleme ve loglama için, PII (Kişisel Tanımlayıcı Bilgiler) verilerini redakte edin ve gerekli olmadıkça payload loglamasından kaçının.
Vektör arama, RAG işlem hatları ve analitik sunum katmanları
Modern bilgi getirme (retrieval) ve sunum (serving) işlemleri, hem vektöre özgü (vector-native) bileşenler hem de kendini kanıtlamış analitik depoları gerektirir.
Vektör arama ve embedding’ler:
- Büyük ölçekli, düşük gecikmeli en yakın komşu (nearest neighbor) getirme işlemleri için Vertex AI Vector Search veya BigQuery vektör aramasını kullanın; uygulama merkezli semantikleri ve işlemsel (transactional) ihtiyaçları karşılamak için pgvector ile AlloyDB for PostgreSQL’ü seçin.
- Vertex Pipelines ile toplu olarak embedding’ler oluşturun; vektörleri yoğun meta verilerle birlikte saklayın; gecikmeyi sınırlamak için akıllıca bölümleme ve indeksleme yapın (örneğin, belge alanına göre).
Artırılmış bilgi getirme ile üretim (RAG) işlem hatları:
- Dataflow veya Dataproc aracılığıyla içerik alın, metni çıkarın, parçalara ayırın (chunk), embedding oluşturun ve bir vektör deposuna indeksleyin. İzlenebilirlik için gerçeğin kaynağı (source-of-truth) referanslarını koruyun.
- Veri güncelliği (freshness) stratejileri uygulayın: periyodik olarak yeniden embedding oluşturma, kaynak güncellemelerinde geçersiz kılma ve indeksleri değiştirmeden önce kaliteyi doğrulamak için kanarya (canary) indeksleme.
- Bilgi getirme kalitesini (isabet oranı, MRR, nDCG) ve içerik güvenliğini izleyin; kısıtlanmış veriler için koruma mekanizmaları (guardrails) ve erişim kontrolleri uygulayın.
Analitik sunum katmanları ve veri ürünleri:
- BigQuery’de bronz/gümüş/altın veri ürünleri oluşturun; tarama maliyetlerini en aza indirmek için bölümleme ve kümeleme kullanın. Materyalleştirilmiş görünümler (Materialized views), yaygın sorguları hızlandırabilir.
- Düşük gecikmeli anahtar-değer (key-value) veya yüksek QPS’li sayaçlar için, iyi dağıtılmış satır anahtarlarına (row keys) sahip Bigtable kullanın; öneklere salt ekleyerek veya hash uygulayarak hot-spotting’den (tek bir noktada yoğunlaşma) kaçının.
- OLTP iş yükleri ve güçlü tutarlılık için Cloud SQL veya Spanner kullanın; analitik iş yüklerini zamanlanmış ELT aracılığıyla BigQuery’ye aktarın.
- Akış (Streaming) tasarımı: Otomatik ölçeklendirme ile Pub/Sub → Dataflow → BigQuery/Bigtable. Birikim (backlog) ve filigran (watermark) metriklerini izleyin; varsayılan otomatik ölçeklendirme, maliyetleri kontrol altında tutarken esnek yükler için yeterlidir.
Operasyonel ipucu:
- Belirli BigQuery tablo ekleme işlerinde bildirimleri tetiklemek için, gelişmiş bir filtre kullanarak ilgili Cloud Logging girişlerini Pub/Sub’a aktarın, ardından abonelikten uyarıları bağlayın: resource.type=“bigquery_resource” protoPayload.methodName=“jobservice.jobcompleted” protoPayload.serviceData.jobCompletedEvent.job.jobConfiguration.load.destinationTable.tableId=“target_table”
Pratik Problem Senaryosu
Bir moda pazaryeri olan AcmeStyle, kullanıcı tercihleri saatlik olarak değiştikçe site içi önerilerini güncel tutmak istiyor. Tıklama ve satın alma davranışlarını akış olarak alıyorlar ve düşük gecikme süresi ve kontrollü maliyetle önerileri yenilemek için bunu katalog bağlamıyla harmanlamaları gerekiyor.
Yaklaşım:
- Akışla veri alımı ve kalite kontrolleri
- Web ve mobilden olay (event) alımı için Pub/Sub kullanın. Bir Dataflow akış işi şemaları doğrular, katalog verileriyle zenginleştirir ve şunları yazar:
- Çevrimdışı analitik ve eğitim için BigQuery’deki bölümlenmiş tablolara (event_date) temizlenmiş olaylar.
- user_id ile anahtarlanmış Vertex AI Feature Store’a (online store) toplu kullanıcı-özellik güncellemeleri. Gerekçe: Pub/Sub, üreticileri ve tüketicileri birbirinden ayırır; Dataflow, bir kerelik (exactly-once) semantikleri ve etkileşimsiz (idempotent) upsert işlemleri sağlar; bölümlenmiş BigQuery maliyet ve veri saklama süresini yönetir; online store milisaniyelik aramalara olanak tanır.
- Belirli bir zamana göre doğru (point-in-time correct) özellik tanımları
- Belirgin bir event_time ile yuvarlanan TO (CTR), marka eğilimi ve güncellik gibi özellikleri tanımlayın. Şuralara materyalleştirin:
- feature_ts <= label_ts ile kısıtlanmış zamansal birleştirmelerle (temporal joins) eğitim için BigQuery’deki çevrimdışı depoya (offline store).
- Eski değerleri önlemek için TTL’ler ile sunum için çevrimiçi depoya (online store). Gerekçe: Net zaman damgaları etiket sızıntısını (label leakage) önler; çevrimdışı/çevrimiçi arasında tutarlı tanımlar, eğitim-sunum denkliğini (training-serving parity) sağlar.
- Model eğitimi ve köken takibi (lineage)
- Şunları yapan bir Vertex AI Pipeline uygulayın:
- Zaman pencereleri kullanarak (ör. son 30 gün) BigQuery’den eğitim verilerini çıkarır.
- Sunumda kullanılan aynı dönüşümleri uygular (paylaşılan kütüphane).
- Bir sıralama modeli eğitir; meta verileri (veri kümesi anlık görüntü ID’leri, kod commit SHA’sı, hiperparametreler) ML Metadata’ya kaydeder ve modeli Model Registry’ye kaydeder. Gerekçe: Pipeline’lar, çalıştırmaları tekrarlanabilir ve denetlenebilir hale getirir; Model Registry, sürümleri ve onayları merkezileştirir.
- Toplu ve çevrimiçi tahmin yolları
- Geriye dönük doldurma (backfill) ve A/B testi için tüm katalog-kullanıcı matrisini puanlayarak BigQuery’ye gecelik toplu tahminler.
- Şunları yapan bir Vertex endpoint aracılığıyla çevrimiçi tahminler:
- Online store’dan en yeni kullanıcı özelliklerini alır.
- Envanter ve stok durumuna göre filtrelenmiş en iyi K adayı puanlar.
- Ani yoğunlukları karşılamak için sonuçları kısa süreler için önbelleğe alır. Gerekçe: Toplu işlem geniş kapsam ve maliyet verimliliği sağlar; çevrimiçi işlem, yüksek değerli oturumlar için en son davranışı yakalar. Otomatik ölçeklenen endpoint’ler gecikme SLO’larını korur; önbelleğe alma, kuyruk gecikmesini (tail latency) ve maliyeti azaltır.
- İzleme, sapma tespiti ve yeniden eğitim politikası
- Özellik sapması (feature drift) ve tahmin çarpıklığı (prediction skew) için model izlemeyi etkinleştirin; dağılımları eğitim temel çizgileriyle karşılaştırın. TO/DÖ (CTR/CVR) SLO’larını takip edin ve bozulma durumunda uyarı verin.
- Geçmiş ve yeni verileri birleştiren kayan bir pencere kullanarak sürekli olarak yeniden eğitin; sapma eşikleri aştığında veya en az haftalık olarak yeniden eğitimi tetikleyin. Gerekçe: Moda trendleri hızla değişir; geçmişi en son sinyallerle harmanlamak, güncel kalırken öğrenmeyi stabilize eder.
- Gizlilik ve yönetişim
- Kişisel Tanımlayıcı Bilgi (PII) içeren sütunları Data Catalog ilke etiketleriyle (policy tags) etiketleyin; BigQuery’de sütun düzeyinde güvenliği uygulayın ve gerektiğinde maskeleyin. Ham olaylar üzerinde DLP taramaları çalıştırın; yalnızca gerekli alanları saklayın.
- Modelleri hazırlık (staging) aşamasından üretime (production) taşımak için Model Registry onay durumlarıyla entegre edilmiş Cloud Build tetikleyicileri aracılığıyla insan onayı gerektirin. Gerekçe: En az ayrıcalıkla erişim riski azaltır; dağıtımları kontrol altında tutmak uyumluluğu ve güvenliği sağlar.
- Maliyet ve kapasite kontrolleri
- Eğitim pencereleri için öngörülebilir slot kapasitesini garanti etmek amacıyla BigQuery rezervasyonlarını kullanın.
- Dataflow çalışanlarını birikime (backlog) göre otomatik olarak ölçeklendirin; hot-spotting’i önlemek için özellik deposundaki (feature store) sıcak anahtarları (hot keys) user_id öneklerini hash’leyerek parçalara ayırın (shard). Gerekçe: Öngörülebilir kapasite çekişmeyi önler; otomatik ölçeklendirme harcamayı taleple eşleştirir; dengeli anahtarlar düşük gecikmeli güncellemeleri sürdürür.
Bu tasarım, büyük ölçekte doğruluk, yönetişim ve öngörülebilir performansı korurken, sunum için akış özelliklerini en son verilerle düzenli yeniden eğitimle birleştirerek önerileri güncel tutar.
← İş Akışı Orkestrasyonu ve İşlem Hattı Otomasyonu · Tüm alanlar · Veri Yönetişimi →
Bu soruları çözün → · ExamRoll.io’da süreli pratik →
Pass the whole exam — not just this question
You found this answer. Get every verified question and explanation in one place, and save hours of prep. Free to start.
Sınavınızı geçin →