
# Formize ile Sentetik Veri Kalite Güvencesini Hızlandırma

Sentetik veri, gerçek dünya verisinin kıt, hassas veya yoğun düzenlemelere tabi olduğu durumlarda modern makine öğrenimi modellerinin eğitilmesi için temel bir yapı taşı haline gelmiştir. Ancak, sentetik verinin değeri **kalite**ye bağlıdır—üretilen kayıtlar istatistiksel sapma, gizli önyargı veya gizlilik sızıntısı içeriyorsa, aşağı yönlü modeller bu kusurları devralır. Geleneksel kalite‑güvence (QA) süreçleri manuel, zaman alıcı ve hata eğilimli olduğundan, organizasyonların hızlı model yineleme döngülerine ayak uydurması zorlaşır.

**Formize**, düşük‑kodlu bir veri yönetişim platformu olarak **istatistiksel doğrulamayı otomatikleştirmek** ve kalite kontrollerini doğrudan sentetik veri boru hatlarına yerleştirmek için güçlü bir yol sunar. Bu makalede şunları ele alacağız:

1. Sentetik veri QA’nın neden ayrı bir zorluk olduğunu açıklamak.  
2. Formize’in otomatik doğrulamayı mümkün kılan temel bileşenlerini detaylandırmak.  
3. Mermaid diyagramı ile gösterilen uçtan‑uca bir iş akışını adım adım yürütmek.  
4. İstatistiksel testler, anomali tespiti ve uyum raporlaması için en iyi uygulamaları vurgulamak.  
5. Sağlık sektörü alanında gerçek bir vaka çalışmasını sergilemek.  

Sonunda, sentetik veri üretimini bir “kara kutu” adımından **şeffaf, denetlenebilir ve sürekli izlenen** bir sürece dönüştürmek için somut bir planınız olacak.

---

## 1. Neden Sentetik Veri Kendi QA Katmanına İhtiyaç Duyar?

| Özellik | Gerçek Veri | Sentetik Veri |
|--------|-------------|----------------|
| **Kaynak** | Sensörler, işlemler, anketlerden toplanır | Üretken modeller (GAN, difüzyon, LLM) tarafından üretilir |
| **Kontrol** | Sınırlı; veri gürültüsü, eksik değerler içerebilir | Üretim parametreleri üzerinde tam kontrol |
| **Risk** | Gizlilik ihlalleri, önyargı, uyum ihlalleri | İstatistiksel sapma, mod çökmesi, gizlilik sızıntısı |
| **Doğrulama** | Standart ETL doğrulamaları (şema, null kontrolleri) | İstatistiksel benzerlik, fayda ve gizlilik metrikleri gerekir |

Sentetik veri QA’sı üç soruya yanıt vermelidir:

1. **İstatistiksel Doğruluk** – Sentetik dağılım, gerçek‑dünya hedefiyle kabul edilebilir toleranslar içinde eşleşiyor mu?  
2. **Fayda** – Sentetik veriyle eğitilen modeller, gerçek veriyle eğitilen modellerle benzer performans gösterir mi?  
3. **Gizlilik & Uyum** – Sentetik set, yeniden tanımlama riskinden kaçınıyor ve [GDPR](https://gdpr.eu/), [HIPAA](https://www.hhs.gov/hipaa/index.html) veya [CCPA](https://oag.ca.gov/privacy/ccpa) gibi düzenlemelere uyuyor mu?

Manuel elektronik tablolar ve ad‑hoc betikler, modern AI ekiplerinin hızıyla ölçeklenemez. Otomasyon şarttır.

---

## 2. Formize’in Otomatik Kalite Güvencesini Güçlendiren Özellikleri

Formize, **deklaratif form oluşturucu**, **iş akışı motoru** ve **denetime hazır meta veri deposu** sunar. Aşağıdaki yetenekler doğrudan sentetik veri QA ile ilgilidir:

| Özellik | Sentetik QA’ya Katkısı |
|---------|------------------------|
| **Dinamik Doğrulama Kuralları** | İstatistiksel eşik değerlerini (ör. Kolmogorov‑Smirnov p‑değeri > 0.05) yeniden kullanılabilir kurallar olarak tanımlayın. |
| **Kural‑Tabanlı Tetikleyiciler** | Yeni bir sentetik veri kümesi bir kovaya düştüğünde veya bir model eğitimi tamamlandığında doğrulamayı otomatik olarak başlatın. |
| **Versiyonlu Veri Sürümü** | Her sentetik parti için üretim parametreleri, model sürümü ve doğrulama sonuçlarını bağlayan bir köken kaydı tutun. |
| **Gömülü Python/SQL Betikleri** | Özel istatistiksel testleri (ör. ki‑kare, Earth Mover’s Distance) Formize UI’dan çıkmadan çalıştırın. |
| **Gerçek‑Zamanlı Panolar** | Sapma metrikleri, geçme/başarma oranları ve uyum bayraklarını paydaşlar için görselleştirin. |
| **Değiştirilemez Denetim İzleri** | Her doğrulama sonucunu tahrif edilemez bir deftere kaydedin, denetim gereksinimlerini karşılayın. |
| **Düşük‑Kod Entegrasyonu** | Veri gölleri, model kayıtları ve CI/CD boru hatlarıyla ön‑tanımlı bağlayıcılar aracılığıyla bağlanın. |

Bu yapı taşları, **kapalı‑döngü** bir QA sistemi oluşturur: üretim → doğrulama → düzeltme → yeniden üretim, kapsamlı bir kod yazımı gerektirmeden.

---

## 3. Uçtan‑Uca İş Akışı

Aşağıda, organizasyonların Formize ile hayata geçirebileceği tipik bir boru hattı yer almaktadır. Diyagram Mermaid sözdizimini kullanır; düğüm etiketleri çift tırnak içinde çevrilmiştir.

```mermaid
flowchart TD
    A["Sentetik Veri Üretim Servisi"] --> B["Formize Alım Uç Noktası"]
    B --> C["Yeni Veri Seti Kaydı Oluştur (Versiyonlu)"]
    C --> D["Doğrulama Kural Setini Tetikle"]
    D --> E["İstatistiksel Testler (KS, EMD, Ki‑Kare)"]
    D --> F["Gizlilik Kontrolleri (DP‑Laplacian, k‑Anonimlik)"]
    E --> G["Kullanım Değerlendirmesi (Modeli Yeniden Eğit ve Karşılaştır)"]
    F --> G
    G --> H["Sonuçları Topla"]
    H --> I["Geçti/Kaldı Kararı"]
    I -->|Geçti| J["Üretim Veri Gölüne Yayınla"]
    I -->|Kaldı| K["Veri Mühendisini ve Otomatik Düzeltme Botunu Bilgilendir"]
    K --> L["Üretim Parametrelerini Ayarla"]
    L --> A
    J --> M["Süreç İzini ve Denetim Günlüğünü Güncelle"]
    M --> N["Gösterge Tablosu ve Paydaş Raporlaması"]
```

### Adım‑Adım Açıklama

1. **Sentetik Veri Üretim Servisi** – GAN, difüzyon veya LLM gibi herhangi bir model çıktısını bir bulut kovasına yazar.  
2. **Formize Alım Uç Noktası** – Hafif bir webhook olayı yakalar ve yeni bir veri seti kaydı oluşturur, otomatik olarak bir versiyon kimliği atar.  
3. **Doğrulama Kural Setini Tetikle** – Formize, birden fazla istatistiksel ve gizlilik kontrolünden oluşan ekli kuralları değerlendirir.  
4. **İstatistiksel Testler** – Yerleşik Python eylemleri, veri gölündeki referans gerçek‑dünya veri setiyle dağılım benzerliği metriklerini hesaplar.  
5. **Gizlilik Kontrolleri** – Formize, diferansiyel gizlilik tahmincileri ve k‑anonimlik hesaplamaları çalıştırarak bireylerin yeniden tanımlanmasını engeller.  
6. **Kullanım Değerlendirmesi** – Opsiyonel olarak, sentetik parti üzerinde geçici bir model eğitilir; performansı önceden tanımlı bir metrik (ör. F1‑skor farkı < %5) ile karşılaştırılır.  
7. **Sonuçları Topla** – Tüm test çıktıları tek bir doğrulama raporunda birleştirilir.  
8. **Geçti/Kaldı Kararı** – İş kuralları, partinin üretime uygun olup olmadığını belirler.  
9. **Yayınla veya Düzelt** – Geçen partiler üretim gölüne taşınır; kalan partiler otomatik bir Slack/Teams uyarısı ve üretim parametrelerini ayarlayan bir bot ile tetiklenir.  
10. **Süreç İzini ve Denetim Günlüğü** – Her adım, kullanılan kod sürümü ve parametre seti dahil, değiştirilemez şekilde kaydedilir.  
11. **Gösterge Tablosu ve Paydaş Raporlaması** – Yöneticiler, zaman içinde trendleri gösteren uyum panolarını izleyerek proaktif yönetişim sağlar.

---

## 4. Etkili Doğrulama Kuralları Tasarlama

### 4.1 İstatistiksel Doğruluk

| Metri̇k | Tipik Eşi̇k | Ne Zaman Kullanılır |
|--------|------------|---------------------|
| **Kolmogorov‑Smirnov (KS) p‑değeri** | > 0.05 | Sürekli sayısal özellikler |
| **Earth Mover’s Distance (EMD)** | < 0.1 (ölçekli) | Çok değişkenli dağılımlar |
| **Ki‑Kare (Kategorik)** | p‑değeri > 0.05 | Düşük kardinalite kategoriler |
| **Korelasyon Koruması** | Pearson r farkı < 0.1 | Özellik etkileşimi kontrolleri |

Formize, bu eşikleri **kural nesneleri** olarak kodlamanıza izin verir:

```yaml
rules:
  - name: "KS Sayısal Doğruluk"
    type: python
    script: |
      import scipy.stats as st
      p = st.ks_2samp(real['age'], synth['age']).pvalue
      assert p > 0.05, f"KS testi başarısız (p={p})"
```

### 4.2 Gizlilik Garantileri

* **Diferansiyel Gizlilik Bütçesi** – Toplam ε’nın politika‑tanımlı bir sınırın altında kalıp kalmadığını doğrulayın.  
* **k‑Anonimlik** – Her bir quasi‑tanımlayıcı grup en az *k* kayıt içermelidir.  

Formize’in yerleşik gizlilik modülü bu metrikleri anlık olarak hesaplayıp, eşik aşılırsa **gizlilik‑ihlal bayrağı** oluşturur.

### 4.3 Fayda Kıyaslamaları

Tam bir model yeniden eğitmek yerine **vekil modeller** (ör. lojistik regresyon) kullanarak faydayı hızlıca tahmin edebilirsiniz. Formize, referans performansı bir **referans varlık** olarak saklar ve basit bir delta hesabı yapar.

```python
baseline_f1 = 0.87
synth_f1 = train_and_evaluate(synth_dataset)
assert abs(baseline_f1 - synth_f1) < 0.05, "Kullanım düşüşü %5'i aşıyor"
```

### 4.4 Uyarı ve Düzeltme

Formize, popüler olay‑yanıt platformları (PagerDuty, Opsgenie) ile bütünleşir. Başarısız bir kural şu adımları otomatik olarak gerçekleştirebilir:

* Hata detaylarıyla bir bilet açar.  
* Üretim parametreleri üzerinde bir ızgara araması başlatan bir **parametre‑ayar işi** çalıştırır.  
* Yeni bir sentetik parti üretildiğinde boru hattını yeniden tetikler.

---

## 5. Sürdürülebilir Sentetik QA İçin En İyi Uygulamalar

1. **Gerçek‑Dünya Referans Verisini Versiyonlayın** – İstatistiksel karşılaştırma için kullanılan temel veri setini bir versiyon‑kontrollü gölde saklayın. Böylece gerçek veri kendini değiştirse bile “hareketli hedef” sorunu önlenir.  
2. **Yönetişim Katmanlarını Ayırın** – **Regülasyon uyumu** (gizlilik, denetim) için bir Formize çalışma alanı, **teknik kalite** (istatistiksel testler) için başka bir alan kullanın. Bu, birçok standardın gerektirdiği sorumluluk ayrımını yansıtır.  
3. **Sürekli İzleme** – Doğrulama kurallarını **gerçek‑zamanlı tetikleyiciler** olarak dağıtın; gecikmeli toplu işler yerine anlık geri bildirim üretim atıklarını azaltır.  
4. **Açıklanabilirlik** – Her kurala **insan‑okunur bir gerekçe** ekleyin (ör. “KS testi, yaş dağılımının nüfus sayım verileriyle eşleşmesini sağlar”). Bu, denetçiler ve teknik olmayan paydaşlar için faydalıdır.  
5. **Ölçeklenebilir Çalıştırma** – Formize’in sunucusuz yürütme motorunu kullanarak ağır istatistiksel testleri paralel çalıştırın; milyon‑satırlık veri setleri için gecikmeyi birkaç dakikaya düşürün.  

---

## 6. Gerçek Dünya Vaka Çalışması: Bir Hastane Ağı İçin Sentetik Hasta Kayıtları

**Arka Plan** – Büyük bir hastane sistemi, **[HIPAA](https://www.hhs.gov/hipaa/index.html)** uyumlu bir şekilde okuma tahmini modeli eğitmek için sentetik hasta kayıtlarına ihtiyaç duyuyordu. Veri bilimi ekibi, koşullu bir GAN kullanarak 5 milyon sentetik satır üretmişti.

**Sorun** – İlk partiler temel şema kontrollerini geçti ancak **yaş dağılımı sapması** ve nadir hastalık kodlarında **aşırı yeniden tanımlama riski** gösterdi.

**Formize Uygulaması**

| Bileşen | Yapılandırma |
|---------|--------------|
| **Alım** | GAN boru hattından Formize’in `/datasets` endpoint’ine webhook. |
| **Kural Seti** | KS testi (yaş), ki‑kare (teşhis kodları), ε‑bütçe ≤ 1.0, k‑Anonimlik ≥ 5. |
| **Fayda Testi** | Okuma tahmini için lojistik regresyon, ΔAUC ≤ 0.03. |
| **Düzeltme Botu** | Nadir kodlar için GAN kayıp ağırlığını artırdı ve gürültü enjeksiyonunu yükseltti. |

**Sonuçlar**

* **İlk Geçiş Oranı** – Üretilen partilerin %42’si en az bir kuralı geçemedi.  
* **Ortalama Çözüm Süresi** – Manuel (48 saat) yerine otomatik (6 saat) olarak azaldı.  
* **Uyum Skoru** – Hastanenin iç denetim kontrol listesinde “A‑” derecesi alındı.  
* **Model Performansı** – Sentetik‑eğitilmiş model %0.84 AUC elde etti; gerçek veri bazlı modele %2 fark içinde.  

Hastane, artık her sentetik sürümde Formize‑güdümlü QA boru hattını çalıştırıyor ve denetçiler, **[HIPAA](https://www.hhs.gov/hipaa/index.html)** ve **[CCPA](https://oag.ca.gov/privacy/ccpa)** gibi hem federal hem de eyalet gizlilik yasalarına uygun, **değiştirilemez bir günlük** sunan raporları doğrudan alıyor.

---

## 7. Çerçeveyi Genişletmek: Gelecek Yönelimleri

1. **LLM‑Tabanlı Test Üretimi** – Büyük bir dil modeli, veri şemasına göre yeni istatistiksel test önerileri otomatik olarak oluşturabilir.  
2. **Federated Doğrulama** – Formize, ham veriyi hareket ettirmeden birden fazla veri silosunda doğrulama kurallarını çalıştırabilir, yerel kısıtlamaları korur.  
3. **Açıklanabilir Sapma Raporları** – Formize’in denetim günlüklerini SHAP değerleri gibi görsel açıklamalarla birleştirerek hangi özelliklerin dağılım kaymasına yol açtığını gösterin.  
4. **Regülasyon Eklentileri** – **[GDPR](https://gdpr.eu/)**, **[CCPA](https://oag.ca.gov/privacy/ccpa)** ve yeni **AB AI Yasası** gibi standartlar için ön‑tanımlı kural paketleri ekleyin; tek bir tıklamayla herhangi bir boru hattına uygulanabilsin.

---

## 8. Formize ile Sentetik QA’ya Başlamak

1. **Çalışma Alanı Oluşturun** – Formize konsolunda *Yeni Çalışma Alanı* seçin ve “Sentetik Veri QA” şablonunu seçin.  
2. **Referans Veri Setlerini Tanımlayın** – Gerçek‑dünya temel veri setinizi yükleyin ve `reference` etiketiyle işaretleyin.  
3. **Kural Seti Oluşturun** – Sürükle‑bırak kural oluşturucuyu kullanın veya yukarıdaki örneklerdeki gibi Python betiklerini yapıştırın.  
4. **Üreticiyi Bağlayın** – Sentetik veri üretim betiğinize bir webhook URL’si ekleyin; Formize her çalıştırmada otomatik bir veri seti kaydı oluşturur.  
5. **Panoyu Yayınlayın** – Gerçek‑zamanlı izleme görünümünü etkinleştirin ve denetim sorumlularıyla sadece‑okuma bağlantıları paylaşın.  

**30‑gün ücretsiz deneme** ile tüm iş akışını ön ödeme yapmadan prototipleyebilir, otomatik kalite güvencesinin organizasyonunuza kattığı değeri doğrudan deneyimleyebilirsiniz.