Teknik not

Machine Unlearning Nedir? Yapay Zekâya Veriyi Unutturmak

Yapay zekâ modelinde belirli bir eğitim verisinin etkisinin ağdan kaldırılmasını gösteren görsel.

Bir kullanıcının bilgisiyle eğitilmiş bir yapay zekâ modeli düşünün. O bilgi kaynak veri tabanından silinse bile, modelin öğrendiği örüntü kendiliğinden kaybolmayabilir. Machine unlearning (makine öğrenmesinde unlearning), belirli eğitim verilerinin eğitilmiş bir model üzerindeki etkisini azaltmayı ya da uygun yöntemlerde kaldırmayı amaçlar. Kısaca, modele belirli bir veriyi “unutturma” problemidir.

Bu rehberde machine unlearning nedir, hangi yöntemlerle yapılır ve neden “sil” düğmesine basmak kadar basit değildir sorularını günlük örneklerle açıklıyoruz.

Machine unlearning nedir?

Model eğitilirken çok sayıda örnekten yararlanır. Bu örnekler, modelin parametrelerini ve verdiği yanıtları etkiler. Eğitim verisindeki belirli bir kaydın etkisini sonradan modelden çıkarmaya machine unlearning denir. NIST’in tanımı da bu yaklaşımı, seçilmiş eğitim noktalarının etkisini eğitilmiş modelden kaldırma tekniği olarak açıklar.

Buradaki “unutma”, insan belleğindeki gibi tek bir anıyı bulup silmek değildir. Amaç, çıkarılmasını istediğimiz örnek modelin davranışını etkilemesin; ideal olarak model, o örnek hiç eğitimde kullanılmamış gibi davransın. Bunun ne kadar sağlandığı kullanılan yönteme göre değişir.

Yapay zekâya veriyi neden unutturmak gerekir?

  • Veri silme talebi: Bir kişinin kaydı eğitim verisinden çıkarılmak istenebilir.
  • Hatalı bilgi: Yanlış etiketlenmiş veya güncelliğini yitirmiş örnekler modelin tahminlerini bozabilir.
  • İstenmeyen içerik: Modelin belirli bir örüntüyü öğrenmesi güvenlik ya da kalite sorunu yaratabilir.
  • Veri kaynağının değişmesi: Eğitimde kullanılan bazı kayıtların artık kullanılmaması gerekebilir.

Bu nedenler, her durumda hukuki bir gereklilik olduğu anlamına gelmez. Teknik açıdan önemli olan, modelin hangi verilerle eğitildiğini izleyebilmek ve bir silme talebinin modelde neyi değiştireceğini ölçebilmektir.

Bir yapay zekâ modeli veriyi nasıl unutur?

1. Modeli kalan verilerle yeniden eğitmek

Silinecek kayıt eğitim kümesinden çıkarılır ve model kalan verilerle baştan eğitilir. Bu yöntem anlaşılır bir karşılaştırma noktası sunar; ancak büyük modellerde işlem süresi ve maliyeti yüksek olabilir.

2. Modeli yaklaşık olarak güncellemek

Bazı yöntemler, modeli baştan kurmak yerine modelin parametrelerini güncelleyerek silinecek örneğin etkisini azaltmaya çalışır. Daha hızlı olabilir; fakat yaklaşık bir yöntem, etkinin tamamen yok olduğunu tek başına kanıtlamaz. Sonucun ayrıca test edilmesi gerekir.

3. Eğitimi en baştan parçalara ayırmak

SISA gibi yaklaşımlarda eğitim verisi parçalara bölünür ve her parça için ayrı modeller ya da ara kayıtlar tutulur. Bir kayıt silineceğinde tüm sistemi yeniden eğitmek yerine, etkilenen parçayı yeniden eğitmek mümkün olabilir. Bu tasarım, silme talepleri gelmeden önce planlanmalıdır; sonradan her modele kolayca eklenemez.

Basit bir örnek: yorumlardan eğitilen öneri modeli

Bir çevrim içi mağazanın ürün yorumlarından memnuniyet tahmini yapan bir modeli olsun. Bir yorumun silinmesi istendiğinde yalnızca yorumun veri tabanındaki satırını kaldırmak, daha önce eğitilmiş modelin o yorumdan etkilenmediğini göstermez. Ekip önce bu kaydın hangi eğitim sürümlerinde kullanıldığını bulur. Sonra seçilen yönteme göre modeli yeniden eğitir veya unlearning uygular; ardından kaldırılan örneğin hâlâ tahminleri etkileyip etkilemediğini ve diğer yorumlardaki başarımın korunup korunmadığını ölçer.

Machine unlearning için 5 pratik adım

  1. Verinin izini tutun. Hangi kayıt hangi veri kümesine, modele ve sürüme girdi; bunu kaydedin.
  2. Talebin kapsamını netleştirin. Hangi kayıt veya kayıtlar çıkarılacak? Aynı bilginin kopyaları ve türetilmiş verileri de var mı?
  3. Uygun yöntemi seçin. Küçük bir modelde yeniden eğitim daha kolay denetlenebilir olabilir. Büyük sistemlerde unlearning yöntemi zaman kazandırsa da güvence ve maliyet birlikte değerlendirilmelidir.
  4. Silme öncesi ve sonrası test edin. Hedef örneğin etkisinin azalıp azalmadığını, modelin kalan verilerdeki doğruluğunu ve istenmeyen yan etkileri ölçün.
  5. Model dışındaki kopyaları da inceleyin. Günlükler, önbellekler, yedekler, ara modeller ve başka sistemlere aktarılan veriler ayrı süreçler olabilir. Modeli güncellemek bu kopyaları otomatik olarak silmez.

Bir sohbet botuna “bunu unut” demek yeterli mi?

Genellikle hayır. Bir sohbet uygulamasındaki konuşma geçmişini silmek, o uygulamanın model ağırlıklarının yeniden eğitildiğini göstermez. Sohbet hafızası, arama indeksi ve eğitilmiş model farklı bileşenlerdir. Her birinin saklama ve silme yöntemi ayrı olabilir. Bu yüzden “modelden unlearning” ile “uygulamadaki konuşmayı silme” aynı işlem gibi düşünülmemelidir.

Sık sorulan sorular

Machine unlearning her yapay zekâ modelinde çalışır mı?

Tek bir yöntem tüm model türlerinde aynı sonucu vermez. Veri tipi, modelin nasıl eğitildiği ve istenen güvence seviyesi yöntemi etkiler.

Machine unlearning, yeniden eğitimden kesin olarak daha mı hızlıdır?

Her zaman değil. Bazı yaklaşık yöntemler daha az hesaplama gerektirebilir; yöntem tasarımı, veri yapısı ve doğrulama maliyeti toplam süreyi değiştirir.

Model unlearning, kaynak veriyi de siler mi?

Hayır. Eğitim veri tabanı, günlükler ve yedekler modelden ayrı saklanabilir. Unlearning adımına ek olarak ilgili kopyaların yaşam döngüsü de kontrol edilmelidir.

Kısaca

Machine unlearning, belirli eğitim verilerinin eğitilmiş yapay zekâ üzerindeki etkisini kaldırmayı hedefler. Baştan eğitim daha maliyetli ama karşılaştırılabilir bir temel sunarken, yaklaşık yöntemler daha hızlı olabilir ve dikkatli doğrulama ister. Sağlam bir süreç için verinin izini eğitimden silme sonrası testlere kadar takip etmek gerekir.

Daha fazla bilgi:
NIST: Machine Unlearning tanımı
An Introduction to Machine Unlearning (araştırma incelemesi)
USENIX Security: Unlearning sonuçlarının denetlenmesi üzerine

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir