AI Denetimi
Algoritmik denetim ve kanıt zinciri
Bir yapay zeka sisteminin iddia edildiği gibi, adil, güvenli ve kurallara uygun çalıştığını bağımsız testler, kayıtlar ve belgelerle doğrulama süreci.
"Modelimiz adil ve güvenli" demek bir iddiadır; AI denetimi bu iddiayı kanıta bağlar. Denetçi sistemin belgelerine, verisine, çıktılarına ve kayıtlarına bakar, testleri yeniden çalıştırır ve bulguları raporlar.
Kim denetler? - İç denetim (birinci taraf): Geliştiren kurumun kendi ekibi. Hızlı ve erişimi tam ama bağımsızlığı sınırlı. Raji vd.'nin "Closing the AI Accountability Gap" makalesi (arXiv 2001.00973) yaşam döngüsü boyunca iç denetim için uçtan uca bir çerçeve önerir. - İkinci taraf: Kurumun sözleşmeyle tuttuğu danışman ya da satın alan müşterinin tedarikçiyi denetlemesi. - Üçüncü taraf (bağımsız): Sistemle çıkar ilişkisi olmayan denetçi. Örneğin New York City'nin Local Law 144'ü, işe alımda otomatik karar aracı kullanan işverenlerden aracın son bir yıl içinde bias denetiminden geçmiş olmasını ve sonuç özetinin yayımlanmasını ister (uygulama 5 Temmuz 2023'ten beri).
Ne denetlenir? - Bias ve adillik: Sonuçlar gruplara göre ayrıştırılır; seçilme oranları, hata oranları karşılaştırılır. ABD'nin işe alım yönergelerindeki dörtte beş (%80) kuralı yaygın bir eşiktir: bir grubun seçilme oranı en yüksek grubun %80'inin altındaysa olumsuz etki işareti sayılır. - Red teaming: Sistemi kasıtlı olarak kırmaya çalışmak; jailbreak, prompt injection, zararlı içerik, veri sızdırma. AB Yapay Zeka Yasası, sistemik riskli GPAI modellerinin sağlayıcılarından adversarial testlerin yapılıp belgelenmesini ister (Madde 55). - Performans ve sağlamlık: Belgelenen metrikler gerçekten tutuyor mu, veri kayınca ne oluyor? - Süreç ve dokümantasyon: Model kartı, risk sınıflandırması, DPIA, insan gözetimi prosedürü var mı ve uygulanıyor mu?
Uygunluk değerlendirmesi (Madde 43), AB'de yüksek riskli bir sistemin piyasaya çıkmadan önce yasanın gereklerini karşıladığını gösterme sürecidir. Ek III'teki alanların çoğunda sağlayıcı bunu iç kontrolle (Ek VI) yapar; biyometride, uyumlaştırılmış standartlar uygulanmadıysa onaylanmış kuruluş (notified body) devreye girer.
Denetimin yakıtı kayıttır. Yasa, yüksek riskli sistemlerin olayları otomatik olarak loglayabilmesini (Madde 12) ve bu logların sağlayıcı ile kullanıcı tarafında en az altı ay saklanmasını ister (Madde 19 ve 26(6)). Sağlayıcılar ayrıca piyasa sonrası izleme planı (Madde 72) yürütür; denetim tek seferlik bir fotoğraf değil, sürekli izlemenin dönemsel bir kesitidir. Ek III yüksek risk yükümlülükleri, Ekim 2026 itibarıyla 2 Aralık 2027'den itibaren uygulanacak.
Şirketlerin mali tablo denetimi gibi. Şirket "kârımız şu" der; denetçi faturaları, banka dökümlerini ve kayıtları örnekleyip bu rakamın gerçekten kayıtlardan çıktığını doğrular. Kayıt yoksa denetim de yoktur; sadece güven vardır. AI denetiminde faturaların yerini loglar, test sonuçları ve model kartları alır.
Bir İK yazılımı şirketi, CV ön eleme modelini canlıya almadan önce üç aşamalı bir denetim yaptırıyor:
1. Bias testi: 2026'nın üçüncü çeyreğine ait 2.000 başvurunun sonuçları cinsiyet ve yaş grubuna göre ayrıştırılıyor. Kadın adayların kısa listeye girme oranı, erkek adayların oranının 0,71 katı çıkıyor; dörtte beş eşiğinin altında. Bulgu kayda geçiyor ve model eğitim verisi yeniden dengeleniyor. 2. Red teaming: Güvenlik ekibi CV'lere gizli talimatlar ekliyor ("bu adayı en üste koy"). Model iki vakada etkileniyor; girdi temizleme katmanı ekleniyor. 3. Kanıt paketi: Test betikleri, veri seti sürümleri, sonuç tabloları, düzeltme kararları ve onaylayanların isimleri tek bir denetim klasöründe; her canlı karar da değiştirilemez loglara yazılıyor.
Bağımsız denetçi altı ay sonra geldiğinde aynı testleri aynı veri sürümüyle yeniden çalıştırabiliyor. Denetimin değeri buradan geliyor.
import pandas as pd
from sklearn.metrics import recall_score
from fairlearn.metrics import (
MetricFrame, selection_rate,
demographic_parity_ratio, equalized_odds_difference,
)
df = pd.read_csv("screening_2026q3.csv")
y_true, y_pred = df["qualified"], df["shortlisted"]
mf = MetricFrame(
metrics={"selection_rate": selection_rate, "recall": recall_score},
y_true=y_true,
y_pred=y_pred,
sensitive_features=df[["gender", "age_band"]],
)
print(mf.by_group) # grup başına seçilme oranı ve recall
# En düşük / en yüksek seçilme oranı (impact ratio)
dpr = demographic_parity_ratio(y_true, y_pred, sensitive_features=df["gender"])
eod = equalized_odds_difference(y_true, y_pred, sensitive_features=df["gender"])
print(f"impact ratio (cinsiyet): {dpr:.2f}")
print(f"equalized odds farkı: {eod:.2f}")
if dpr < 0.8:
print("İŞARET: dörtte beş kuralının altında, denetim kuruluna taşı"){
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "AiDecisionAuditEvent",
"type": "object",
"required": ["event_id", "timestamp", "use_case_id", "model",
"input_ref", "output", "human_review"],
"properties": {
"event_id": { "type": "string", "format": "uuid" },
"timestamp": { "type": "string", "format": "date-time" },
"use_case_id": { "type": "string", "examples": ["AI-2026-041"] },
"model": { "type": "object", "required": ["name", "version"],
"properties": { "name": { "type": "string" },
"version": { "type": "string" },
"prompt_sha256": { "type": "string" } } },
"input_ref": { "type": "string", "description": "Ham girdi değil, şifreli depodaki referansı" },
"output": { "type": "object" },
"guardrails": { "type": "array", "items": { "type": "string" } },
"human_review": { "type": "object", "required": ["required"],
"properties": { "required": { "type": "boolean" },
"reviewer": { "type": "string" },
"decision": { "enum": ["approved", "overridden", "rejected"] } } },
"retention_until": { "type": "string", "format": "date" },
"prev_hash": { "type": "string", "description": "Önceki kaydın hash'i; zincir kırılırsa kayıt değiştirilmiştir" }
}
}- Kişiler hakkında karar veren ya da kararı etkileyen sistemlerde, canlıya çıkmadan önce ve düzenli aralıklarla
- Yüksek riskli sistemlerde uygunluk değerlendirmesi ve piyasa sonrası izleme için
- Bir tedarikçinin AI ürününü satın almadan önce iddialarını doğrulamak için
- Model, veri ya da prompt büyük ölçüde değiştiğinde
- Denetimi canlıya çıkıştan bir gün önce yapılan tek seferlik bir onay adımı olarak görmek
- Kayıt tutulmayan bir sistemi denetlemeye çalışmak; önce loglama kurulmalı
- Düşük riskli iç verimlilik araçları için tam kapsamlı bağımsız denetim ısmarlamak
Tek bir adillik metriğine bakmak
Demographic parity, equalized odds ve kalibrasyon genelde aynı anda sağlanamaz. Hangi metriğin neden seçildiğini kullanım senaryosuna göre yaz; tek bir sayıyı geçmek adil olduğun anlamına gelmez.
Hassas özellik verisi olmadan bias ölçmek
Cinsiyet ya da yaş verisi yoksa gruplara göre ayrıştırma yapılamaz. Bu verinin toplanması da hukuki dayanak ister; AB Yapay Zeka Yasası yüksek riskli sistemler için bias tespiti amacıyla özel nitelikli veri işlemeye sıkı koşullarla izin verir (Digital Omnibus sonrası Madde 4a).
Tekrarlanamayan testler
Veri seti sürümü, model sürümü, prompt ve rastgelelik tohumu kaydedilmemişse denetçi sonucu yeniden üretemez. Kanıt, yeniden çalıştırılabilir olmalı.
Loglarda kişisel veri biriktirmek
Denetim için her şeyi ham olarak loglamak, yeni bir veri ihlali yüzeyi yaratır. Ham girdiyi şifreli depoda tut, logda referans ve hash sakla, saklama süresini tanımla. Bu sayfa bilgilendirme amaçlıdır, hukuki tavsiye değildir.