Model Inversion
Model inversion, model tahminlerinden ve iç temsillerinden hassas girdileri veya eğitim verilerini yeniden oluşturan bir gizlilik saldırısıdır.
Model inversion; modelin tahminlerinden, öğrendiği parametrelerden veya iç temsillerinden modelin girdileri ya da eğitim verileri hakkında bilgi elde edilmesidir. Basitçe anlatmak gerekirse tahmini geriye doğru işler: Bir makine öğrenimi modelinin açığa çıkardığı bilgiler; bir yüzü yeniden oluşturmak, hassas bir özelliği tahmin etmek veya metni kurtarmak için kanıta dönüşür. Yetkisiz kullanımı bir veri gizliliği saldırısı oluşturur.
Matthew Fredrikson, Eric Lantz, Somesh Jha, Simon Lin, David Page ve Thomas Ristenpart, güvenlik terimini 2014'te kişiselleştirilmiş varfarin dozlama modellerine yönelik model inversion çalışmalarıyla ortaya koydu. Bir modelden, demografik bilgilerden ve hastanın kararlı dozundan yararlanarak ilaç yanıtıyla ilişkili genetik belirteçleri çıkardılar. Değerlendirmede Uluslararası Varfarin Farmakogenetiği Konsorsiyumu verileri kullanıldı.
Model Inversion Nasıl Çalışır#
Bir saldırganın gözlemlenebilir bir sinyale ve yeniden oluşturma hedefine ihtiyacı vardır. Bir sınıflandırıcının güven puanları, aday girdilerin hedef sınıfla ne kadar güçlü eşleştiğini gösterir. Beyaz kutu erişiminde saldırgan model ağırlıklarını da görür ve gradyanları hesaplayabilir. Kara kutu erişimi, bir sorgu arayüzü üzerinden tahminler sunar. Girdilerin sayısal temsilleri olan ara gömme vektörleri de yeniden oluşturma hedefi sağlar.
Optimizasyon tabanlı inversion, bir aday girdiyle başlar ve girdiyi kayıp fonksiyonunu (örneğin hedef sınıf olasılığının bir eksiğini) azaltacak şekilde tekrar tekrar değiştirir. Eğitimli model sabit kalırken gradyan inişi girdiyi günceller. Sonuçta tanınabilir bir sınıf örneği elde edilebilir; girdinin tam olarak yeniden oluşturulabilmesi, erişilebilir sinyalde tutulan bilgilere bağlıdır.
Ultralytics YOLO, görüntü temsillerini model.embed() üzerinden sunarak özellik çıkarma iş akışlarını destekler. Bu vektörlerin paylaşılması, inversion odaklı gizlilik testlerine eklenmesi gereken bir arayüz oluşturur.
Yüzün Yeniden Oluşturulması ve Çalıştırılabilir Bir Örnek#
Fredrikson, Jha ve Ristenpart 2015'te MI-Face'i de içeren güven puanına dayalı inversion saldırılarını ve temel karşı önlemleri tanıttı. Yüz tanıma deneylerinde 40 kişiye ait 400 görüntü içeren AT&T/ORL yüz veri tabanı kullanıldı. Bir kişinin kimlik etiketine göre pikselleri optimize etmek, tanınabilir yüzlerin yeniden oluşturulmasını sağladı ve kimlikle bağlantılı görünüş bilgilerini açığa çıkardı.
Adversarial Robustness Toolbox'taki MIFace uygulaması, sürekli özellik kullanan sınıflandırıcıları da destekler. Bu örnek, scikit-learn'ün paketlenmiş el yazısı rakamları üzerinde eğitilmiş lojistik regresyona uygular. Bağımlılıkları pip install adversarial-robustness-toolbox scikit-learn matplotlib ile yükle.
import matplotlib.pyplot as plt
import numpy as np
from art.attacks.inference.model_inversion import MIFace
from art.estimators.classification import SklearnClassifier
from sklearn.datasets import load_digits
from sklearn.linear_model import LogisticRegression
images, labels = load_digits(return_X_y=True)
images = images.astype(np.float32) / 16
model = LogisticRegression(max_iter=1000)
model.fit(images, labels)
classifier = SklearnClassifier(model=model, clip_values=(0, 1))
# # Hedef rakam sınıfı için pikselleri yeniden oluştur.
attack = MIFace(classifier, max_iter=1000, verbose=False)
reconstructions = attack.infer(x=None, y=np.array([3]))
reconstruction = reconstructions[0]
plt.imshow(reconstruction.reshape(8, 8), cmap="gray")
plt.axis("off")
plt.show()Gösterilen yeniden oluşturma, eğitilmiş sınıflandırıcının gradyanları kullanılarak üç rakamı sınıfı için optimize edilmiş pikselleri gösterir.
Dil sistemlerinde inversion, istemleri de geri çıkarabilir. John X. Morris ve çalışma arkadaşlarının 2024 tarihli Dil Modeli Inversion yöntemi, sonraki token olasılık dağılımlarından önceki metni yeniden oluşturdu. İş birlikçi çıkarımda istem inversion saldırıları, katılımcılar arasında aktarılan ara etkinleştirmelerden girdi metnini yeniden oluşturarak dağıtık hesaplama sınırından geçen istemleri açığa çıkarır.
İlgili Kavramlar ve Ayrımlar#
Bu terimler, saldırganların farklı hedeflerini tanımlar:
- Üyelik çıkarımı, bilinen bir kaydın eğitim verilerinde yer alıp almadığını belirler; inversion ise bilinmeyen içeriği veya özellikleri tahmin eder.
- Özellik çıkarımı, bir kayda ait hassas bir alanı, kayıt hakkındaki diğer bilgileri kullanarak doldurur. Özgün varfarin saldırısı hem özellik çıkarımı hem de model inversion örneğidir.
- Adversarial saldırılar, yanlış bir tahmin elde etmek için girdiyi değiştiren kaçınma saldırılarını içerir. Inversion ise bilgi ifşasını hedefler.
- Ters modelleme, genel olarak gözlemlerden nedenleri veya parametreleri tahmin eder. Örneğin ters işleme, görüntülerden sahne özelliklerini tahmin eder.
Maruziyeti Azaltma#
Erişim denetimleri, modelleri kimlerin sorgulayabileceğini veya iç temsilleri elde edebileceğini kısıtlar. Model izleme, olağan dışı sorgu örüntülerini tespit edebilir; güven puanlarının hassasiyetini azaltmak ise güvene dayalı saldırıların yararlandığı bilgiyi ortadan kaldırır. Gizlilik değerlendirmeleri, gerçekten verilen erişim düzeyi altında yeniden oluşturma kalitesini ölçer.
Diferansiyel gizlilik, kalibre edilmiş rastgelelik yoluyla bir kişinin eğitim kayıtlarının etkisini sınırlar. Gizlilik garantisi, veri kümesine katılımın eklediği bilgilerle ilgilidir. Tersine çıkarım, genetik belirteçlerle ilaç dozajı arasındaki ilişki gibi popülasyon düzeyindeki korelasyonlardan da yararlanabilir.










