10.5 Etkili Örnekler (Influential Instances)
Last updated
Last updated
Makine öğrenimi modelleri nihayetinde eğitim verilerinin bir ürünüdür ve eğitim örneklerinden birini silmek, ortaya çıkan modeli etkileyebilir. Bir eğitim örneğine, eğitim verilerinden silindiğinde modelin parametrelerini veya tahminlerini önemli ölçüde değiştirdiğinde “etkili” diyoruz. Etkili eğitim örneklerini belirleyerek, makine öğrenimi modellerini “hata ayıklayabilir” ve davranışlarını ve tahminlerini daha iyi açıklayabiliriz.
Bu bölüm, etkili örnekleri belirlemek için iki yaklaşımı gösterir: silme diagnostikleri ve etki fonksiyonları. Her iki yaklaşım da, aykırı değerlerden veya model varsayımlarının ihlallerinden daha az etkilenen istatistiksel yöntemler sağlayan sağlam istatistiklere dayanmaktadır. Sağlam istatistikler ayrıca verilerden elde edilen tahminlerin (örneğin ortalama tahmini veya bir tahmin modelinin ağırlıkları) ne kadar sağlam olduğunu ölçmek için yöntemler sağlar.
Şehirdeki insanların ortalama gelirini tahmin etmek istediğinizi ve sokaktaki on rastgele kişiye ne kadar kazandıklarını sorduğunuzu hayal edin. Örneğin, örnekleminizin muhtemelen gerçekten kötü olmasının yanı sıra, ortalama gelir tahmininiz bir kişi tarafından ne kadar etkilenebilir? Bu soruyu cevaplamak için, bireysel yanıtları hariç tutarak ortalama değeri yeniden hesaplayabilir veya ortalama değerin nasıl etkilenebileceğini “etki fonksiyonları” aracılığıyla matematiksel olarak türetebilirsiniz. Silme yaklaşımı ile ortalama değeri on kez yeniden hesaplar, her seferinde bir gelir beyanını hariç tutar ve ortalama tahminin ne kadar değiştiğini ölçeriz. Büyük bir değişiklik, bir örneğin çok etkili olduğunu gösterir. İkinci yaklaşım, kişilerin birini son derece küçük bir ağırlıkla yeniden ağırlıklandırır, bu da bir istatistiğin veya modelin ilk türevinin hesaplanmasına karşılık gelir. Bu yaklaşım ayrıca “sonsuz küçük yaklaşım” veya “etki fonksiyonu” olarak da bilinir. Bu arada cevap, ortalama tahmininizin tek bir yanıt tarafından çok güçlü bir şekilde etkilenebileceğidir, çünkü ortalama tek değerlerle doğrusal olarak ölçeklenir. Daha sağlam bir seçenek medyandır (yarısının daha çok, diğer yarısının ise daha az kazandığı değer), çünkü örneklemdeki en yüksek gelire sahip kişi on kat daha fazla kazansa bile, ortaya çıkan medyan değişmez.
Silme diagnostikleri ve etki fonksiyonları, makine öğrenimi modellerinin parametrelerine veya tahminlerine de uygulanabilir, böylece davranışlarını daha iyi anlayabilir veya bireysel tahminleri açıklayabiliriz. Etkili örnekleri bulmak için bu iki yaklaşımı incelemeden önce, bir aykırı değer ile etkili bir örnek arasındaki farkı inceleyeceğiz.
Aykırı Değer
Aykırı değer, veri setindeki diğer örneklerden uzak olan bir örnektir. “Uzak” olmak, örneğin Öklid mesafesi ile, diğer tüm örneklere olan mesafenin çok büyük olması anlamına gelir. Yenidoğanlardan oluşan bir veri setinde, 6 kg ağırlığındaki bir yenidoğan bir aykırı değer olarak kabul edilir. Çoğunlukla çek hesaplarının bulunduğu banka hesapları veri setinde, özel bir kredi hesabı (büyük negatif bakiye, az sayıda işlem) bir aykırı değer olarak kabul edilir. Aşağıdaki şekil, 1 boyutlu bir dağılım için bir aykırı değeri göstermektedir.
Aykırı değerler ilginç veri noktaları olabilir (örneğin eleştiriler). Bir aykırı değer model üzerinde etkili olduğunda, aynı zamanda etkili bir örnek de olur.
Etkili Örnek
Etkili bir örnek, kaldırıldığında eğitilmiş model üzerinde güçlü bir etkiye sahip olan bir veri örneğidir. Bir model, eğitim verilerinden belirli bir örnek çıkarıldığında model parametreleri veya tahminleri ne kadar değişiyorsa, o örnek o kadar etkilidir. Bir örneğin eğitilmiş bir model için etkili olup olmadığı aynı zamanda hedef y için değerine de bağlıdır. Aşağıdaki şekil, doğrusal regresyon modeli için etkili bir örneği göstermektedir
Etkili örnekler modeli anlamamıza nasıl yardımcı olur?
Etkili örneklerin yorumlanabilirlik için temel fikri, model parametrelerini ve tahminlerini her şeyin başladığı yere, yani eğitim verilerine geri izlemektir. Bir öğrenici, yani makine öğrenimi modelini üreten algoritma, özellikler X ve hedef y'den oluşan eğitim verilerini alan ve bir makine öğrenimi modeli üreten bir fonksiyondur. Örneğin, bir karar ağacının öğrenicisi, bölünme özelliklerini ve bölünecek değerleri seçen bir algoritmadır. Bir sinir ağı için öğrenici, en iyi ağırlıkları bulmak için geri yayılım kullanır.
Model parametrelerinin veya tahminlerinin, eğitim sürecinde eğitim verilerinden örnekler kaldırılırsa nasıl değişeceğini soruyoruz. Bu, örneğin kısmi bağımlılık grafikleri veya özellik önemi gibi, tahmin edilecek örneklerin özelliklerini manipüle ettiğimizde tahminin nasıl değiştiğini analiz eden diğer yorumlanabilirlik yaklaşımlarının aksine bir yaklaşımdır. Etkili örneklerle, modeli sabit olarak değil, eğitim verilerinin bir fonksiyonu olarak ele alıyoruz. Etkili örnekler, küresel model davranışı ve bireysel tahminler hakkında soruları yanıtlamamıza yardımcı olur. Model parametreleri veya tahminleri genel olarak en etkili örnekler hangileridir? Belirli bir tahmin için en etkili örnekler hangileridir? Etkili örnekler, modelin sorun yaşayabileceği örnekleri, hangi eğitim örneklerinin hatalar için kontrol edilmesi gerektiğini ve modelin sağlamlığı hakkında bir izlenim verir. Tek bir örnek model tahminleri ve parametreleri üzerinde güçlü bir etkiye sahipse, modele güvenmeyebiliriz. En azından bu, daha fazla araştırma yapmamızı sağlar.
Etkili örnekleri nasıl bulabiliriz? Etkiyi ölçmenin iki yolumuz var: İlk seçeneğimiz, örneği eğitim verilerinden silmek, azaltılmış eğitim veri seti üzerinde modeli yeniden eğitmek ve model parametrelerindeki veya tahminlerindeki farkı gözlemlemektir (hem bireysel olarak hem de tam veri seti üzerinde). İkinci seçenek, model parametrelerinin gradyanlarına dayalı olarak parametre değişikliklerini yaklaşık hesaplayarak bir veri örneğini yeniden ağırlıklandırmaktır. Silme yaklaşımı daha kolay anlaşılır ve yeniden ağırlıklandırma yaklaşımını motive eder, bu yüzden önceki ile başlıyoruz.
10.5.1 Silme Diagnostikleri
İstatistikçiler, özellikle (genelleştirilmiş) doğrusal regresyon modelleri için etkili örnekler alanında çok fazla araştırma yapmışlardır. “Etkili gözlemler” için arama yaptığınızda, ilk arama sonuçları DFBETA ve Cook’ın mesafesi gibi ölçütler hakkındadır. DFBETA, bir örneğin silinmesinin model parametreleri üzerindeki etkisini ölçer. Cook’ın mesafesi (Cook, 1977) bir örneğin silinmesinin model tahminleri üzerindeki etkisini ölçer. Her iki ölçüt için de modeli tekrarlayarak, her seferinde bireysel örnekleri hariç tutarak yeniden eğitmemiz gerekir. Tüm örneklerle modelin parametreleri veya tahminleri, eğitim verilerinden bir örnek silindiğinde modelin parametreleri veya tahminleriyle karşılaştırılır.
DFBETA şu şekilde tanımlanır:
burada β tüm veri örnekleri üzerinde model eğitildiğinde ağırlık vektörüdür ve β ( − i ) örnek i çıkarılarak model eğitildiğinde ağırlık vektörüdür. Oldukça sezgisel olduğunu söyleyebilirim. DFBETA, lojistik regresyon veya sinir ağları gibi ağırlık parametrelerine sahip modeller için çalışır, ancak karar ağaçları, ağaç ansambları, bazı destek vektör makineleri gibi modeller için çalışmaz.
Cook’ın Mesafesi, doğrusal regresyon modelleri için icat edilmiştir ve genelleştirilmiş doğrusal regresyon modelleri için yaklaşık değerleri vardır. Bir eğitim örneği için Cook’ın mesafesi, model eğitimi sırasında i'inci örnek kaldırıldığında tahmin edilen sonuçtaki (ölçeklendirilmiş) kare farkların toplamı olarak tanımlanır.
payda, veri seti üzerindeki toplam sayıda özellik p ile ortalama kare hatadır. Pay, modelin i'inci örnekle birlikte ve olmadan yapılan tahminleri arasındaki kare farkın toplamıdır. Payda, hangi örnek i çıkarılırsa çıkarılsın tüm örnekler için aynıdır. Cook’ın mesafesi, bir doğrusal modelin tahmin edilen çıktısının, i'inci örnek eğitimden kaldırıldığında ne kadar değiştiğini bize söyler.
Cook’ın mesafesini ve DFBETA’yı herhangi bir makine öğrenimi modeli için kullanabilir miyiz? DFBETA, model parametreleri gerektirir, bu yüzden bu ölçüt yalnızca parametreleştirilmiş modeller için çalışır. Cook’ın mesafesi herhangi bir model parametresi gerektirmez. İlginç bir şekilde, Cook’ın mesafesi genellikle doğrusal modeller ve genelleştirilmiş doğrusal modeller bağlamı dışında görülmez, ancak belirli bir örnek kaldırılmadan önce ve sonra model tahminleri arasındaki farkı alma fikri çok genel bir kavramdır. Cook’ın mesafesinin tanımındaki bir sorun, MSE’nin (ortalama kare hata) tüm tahmin modeli türleri için anlamlı olmamasıdır (örneğin sınıflandırma).
Model tahminleri üzerindeki etkinin en basit ölçüsü şu şekilde yazılabilir:
Bu ifade esas olarak Cook’ın mesafesinin payıdır, fark sadece kare farklar yerine mutlak farkların toplanmasıdır. Bunu yaptım çünkü sonraki örnekler için mantıklı oluyor. Silme diagnostik ölçütlerinin genel formu, bir ölçüt seçmek (örneğin tahmin edilen sonuç) ve tüm örneklerle eğitilmiş model ile örnek silindiğinde modelin ölçütündeki farkı hesaplamaktır.
Etkili örnekleri j'inci tahmin için i'inci eğitim örneğinin etkisini açıklamak için kolayca bölebiliriz:
Bu, model parametrelerindeki fark veya kayıp farkı için de çalışır. Aşağıdaki örnekte bu basit etki ölçütlerini kullanacağız.
Silme Diagnostikleri Örneği
Aşağıdaki örnekte, risk faktörlerine bağlı olarak servikal kanseri tahmin etmek için bir destek vektör makinesi eğitiyoruz ve hangi eğitim örneklerinin genel olarak ve belirli bir tahmin için en etkili olduğunu ölçüyoruz. Kanser tahmini bir sınıflandırma problemi olduğu için, etkiyi kanser için tahmin edilen olasılıktaki fark olarak ölçüyoruz. Bir örnek, model eğitimi sırasında örnek kaldırıldığında tahmin edilen olasılık ortalama olarak güçlü bir şekilde artıyor veya azalıyor ise etkili olarak kabul edilir. Tüm 858 eğitim örneği için etkinin ölçülmesi, modeli tüm veriler üzerinde bir kez eğitmeyi ve her seferinde bir örnek çıkarılarak 858 kez yeniden eğitmeyi gerektirir (= eğitim verisinin boyutu).
En etkili örneğin etki ölçütü yaklaşık 0.01’dir. 0.01'lik bir etki, 540'ıncı örneği kaldırırsak tahmin edilen olasılığın ortalama olarak %1 puan değiştiği anlamına gelir. Bu, kanser için ortalama tahmin edilen olasılık %6.4 olduğu düşünüldüğünde oldukça önemlidir. Tüm olası silmeler üzerindeki etki ölçütlerinin ortalama değeri %0.2 puandır. Artık hangi veri örneklerinin model için en etkili olduğunu biliyoruz. Bu, veriyi hata ayıklamak için bilmek zaten faydalıdır. Sorunlu bir örnek var mı? Ölçüm hataları var mı? Etkili örnekler, hataların kontrol edilmesi gereken ilk örneklerdir çünkü her bir hatası model tahminlerini güçlü bir şekilde etkiler.
Model hata ayıklamanın yanı sıra, modeli daha iyi anlamak için bir şeyler öğrenebilir miyiz? Sadece en etkili 10 örneği yazdırmak çok faydalı değildir çünkü bu, birçok özellikle birlikte bir örnek tablosudur. Çıktı olarak örnekler döndüren tüm yöntemler ancak onları temsil etmenin iyi bir yolu varsa anlamlıdır. Ancak, etkili bir örneğin etkisiz bir örnekten neyin ayırdığını sorduğumuzda, hangi tür örneklerin etkili olduğunu daha iyi anlayabiliriz. Bu soruyu bir regresyon problemine dönüştürebilir ve bir örneğin etkisini özellik değerlerinin bir fonksiyonu olarak modelleyebiliriz. Bölümdeki Yorumlanabilir Makine Öğrenimi Modelleri bölümünden herhangi bir modeli seçme özgürlüğüne sahibiz. Bu örnek için, destek vektör makinesi için en etkili olan 35 yaş ve üzerindeki kadınlardan gelen verileri gösteren bir karar ağacı (aşağıdaki şekil) seçtim. Veri setindeki tüm kadınların 858'inden 153'ü 35 yaşın üzerindeydi. Kısmi Bağımlılık Grafikleri bölümünde, 40 yaşından sonra kanserin tahmin edilen olasılığında keskin bir artış olduğunu ve Özellik Öneminin de yaşı en önemli özelliklerden biri olarak tespit ettiğini gördük. Etki analizi, modelin daha yüksek yaşlar için kanseri tahmin ederken giderek daha istikrarsız hale geldiğini bize söylüyor. Bu, kendiliğinden değerli bir bilgidir. Bu, bu örneklerdeki hataların model üzerinde güçlü bir etkiye sahip olabileceği anlamına gelir.
Bu ilk etki analizi genel olarak en etkili örneği ortaya çıkardı. Şimdi, en etkili eğitim veri örneklerini bularak tahmini açıklamak istediğimiz örneklerden biri olan 7. örneği seçiyoruz. Bu, karşılıklı bir soru gibidir: Eğitim sürecinden i örneğini çıkarırsak, 7. örneğin tahmini nasıl değişir? Bu çıkarma işlemini tüm örnekler için tekrarlıyoruz. Ardından, eğitimden çıkarıldıklarında 7. örneğin tahmininde en büyük değişikliğe neden olan eğitim örneklerini seçiyoruz ve bunları modelin o örnek için yaptığı tahmini açıklamak için kullanıyoruz. Tahmini açıklamak için 7. örneği seçtim çünkü bu, kanserin en yüksek tahmin edilen olasılığına (7,35%) sahip olan örnekti ve bu durumu daha derinlemesine analiz etmenin ilginç bir vaka olduğunu düşündüm. Diyelim ki, 7. örneği tahmin etmek için en etkili ilk 10 örneği bir tablo olarak döndürebiliriz. Pek kullanışlı değil, çünkü pek bir şey göremeyiz. Yine, özelliklerini analiz ederek etkili örnekleri etkisiz örneklerden ayıran unsurları bulmak daha mantıklıdır. Özelliklere göre etkiyi tahmin etmek için eğitilmiş bir karar ağacı kullanıyoruz, ancak aslında bunu sadece bir yapı bulmak için kullanıyoruz, bir şey tahmin etmek için değil. Aşağıdaki karar ağacı, 7. örneğin tahmin edilmesi için hangi tür eğitim örneklerinin en etkili olduğunu gösteriyor.
18,5 yıl veya daha uzun süredir sigara içen kadınların veri örnekleri, 7. örneğin tahmininde yüksek etkiye sahiptir. 7. örneğin arkasındaki kadın 34 yıl boyunca sigara içmiştir. Veride, 12 kadın (%1,40) 18,5 yıl veya daha uzun süre sigara içmiştir. Bu kadınlardan birinin sigara içme yılı sayısını toplarken yapılan herhangi bir hata, 7. örnek için tahmin edilen sonuç üzerinde büyük bir etkiye sahip olacaktır.
Tahminde en aşırı değişiklik, 663 numaralı örneği kaldırdığımızda gerçekleşir. Hastanın iddia edildiğine göre 22 yıl sigara içtiği, karar ağacının sonuçlarıyla uyumludur. 663 numaralı örnek kaldırılırsa, 7. örnek için tahmin edilen olasılık %7,35'ten %66,60'a değişir!
En etkili örneğin özelliklerine daha yakından bakarsak, başka bir olası problemi görebiliriz. Veriler kadının 28 yaşında olduğunu ve 22 yıldır sigara içtiğini söylüyor. Ya gerçekten aşırı bir vaka ve gerçekten 6 yaşında sigara içmeye başladı ya da bu bir veri hatasıdır. Ben daha çok ikincisini düşünüyorum. Bu kesinlikle verilerin doğruluğunu sorgulamamız gereken bir durumdur.
Bu örnekler, modelleri hata ayıklamak için etkili örnekleri tanımlamanın ne kadar faydalı olduğunu gösterdi. Önerilen yaklaşımın bir problemi, modelin her eğitim örneği için yeniden eğitilmesi gerektiğidir. Tüm yeniden eğitim oldukça yavaş olabilir, çünkü binlerce eğitim örneğiniz varsa, modelinizi binlerce kez yeniden eğitmeniz gerekecektir. Modelin eğitiminin bir gün sürdüğünü ve 1000 eğitim örneğiniz olduğunu varsayarsak, etkili örneklerin hesaplanması – paralelleştirme olmadan – neredeyse 3 yıl sürecektir. Bunun için hiç kimsenin zamanı yoktur. Bu bölümün geri kalanında, modeli yeniden eğitmeyi gerektirmeyen bir yöntem göstereceğim.
10.5.2 Etki Fonksiyonları
Sen: Bir eğitim örneğinin belirli bir tahmin üzerindeki etkisini bilmek istiyorum.
Araştırma: Eğitim örneğini silebilir, modeli yeniden eğitebilir ve tahminde oluşan farkı ölçebilirsiniz.
Sen: Harika! Ama yeniden eğitmeden çalışan bir yönteminiz var mı? Çok zaman alıyor.
Araştırma: Parametrelerine göre iki kez türevlenebilir bir kayıp fonksiyonuna sahip bir modeliniz var mı?
Sen: Lojistik kayıp ile bir sinir ağı eğittim. Yani evet.
Araştırma: O zaman, etki fonksiyonları ile örneğin model parametreleri ve tahminler üzerindeki etkisini yaklaşık hesaplayabilirsiniz. Etki fonksiyonu, model parametrelerinin veya tahminlerin bir eğitim örneğine ne kadar güçlü bağlı olduğunu ölçen bir ölçüttür. Örneği silmek yerine, yöntem örneği kayıp içinde çok küçük bir adımla yeniden ağırlıklandırır. Bu yöntem, mevcut model parametreleri etrafında kaybı gradyan ve Hessian matrisi kullanarak yaklaşık hesaplamayı içerir. Kayıp yeniden ağırlıklandırma, örneği silmeye benzer.
Sen: Harika, aradığım şey bu!
Koh ve Liang (2017)104, bir örneğin model parametreleri veya tahminleri üzerindeki etkisini ölçmek için sağlam istatistiklerin bir yöntemi olan etki fonksiyonlarını kullanmayı önerdiler. Silme diagnostikleri ile birlikte, etki fonksiyonları model parametrelerini ve tahminlerini sorumlu eğitim örneğine geri izler. Ancak, eğitim örneklerini silmek yerine, yöntem örneğin ampirik riskte (eğitim verileri üzerindeki kaybın toplamı) yeniden ağırlıklandırıldığında modelin ne kadar değiştiğini yaklaşık hesaplar.
Etki fonksiyonları yöntemi, model parametrelerine göre kayıp gradyanına erişim gerektirir, bu da sadece makine öğrenimi modellerinin bir alt kümesi için çalışır. Lojistik regresyon, sinir ağları ve destek vektör makineleri buna girerken, rastgele ormanlar gibi ağaç tabanlı yöntemler dahil değildir. Etki fonksiyonları, model davranışını anlamaya, modeli hata ayıklamaya ve veri setindeki hataları tespit etmeye yardımcı olur.
Aşağıdaki bölüm, etki fonksiyonlarının arkasındaki sezgi ve matematiği açıklar.
Etki Fonksiyonlarının Arkasındaki Matematik
Etki fonksiyonlarının temel fikri, bir eğitim örneğinin kaybını sonsuz derecede küçük bir adım ϵ ile yeniden ağırlıklandırmaktır, bu da yeni model parametrelerine yol açar:
model parametre vektörüdür ve çok küçük bir sayı olan ϵ ile z'nin yeniden ağırlıklandırılmasından sonraki parametre vektörüdür. L, modelin eğitildiği kayıp fonksiyonudur, zi eğitim verisidir ve z, kaldırılmasını simüle etmek için yeniden ağırlıklandırmak istediğimiz eğitim örneğidir. Bu formülün arkasındaki sezgi şudur: Eğitim verilerinden belirli bir örnek zi'yi biraz (ϵ) yeniden ağırlıklandırırsak ve diğer veri örneklerini buna göre yeniden ağırlıklandırırsak kayıp ne kadar değişir? Bu yeni birleşik kaybı optimize etmek için parametre vektörü nasıl görünür? Parametrelerin etki fonksiyonu, yani eğitim örneği z'yi yeniden ağırlıklandırmanın parametreler üzerindeki etkisi, aşağıdaki şekilde hesaplanabilir.
Son ifade , yeniden ağırlıklandırılmış eğitim örneği için parametrelere göre kayıp gradyanıdır. Gradyan, eğitim örneğinin kaybının değişim hızıdır. Model parametrelerini biraz değiştirdiğimizde kaybın ne kadar değiştiğini bize söyler. Gradyan vektöründeki pozitif bir giriş, ilgili model parametresinde küçük bir artışın kaybı artırdığı anlamına gelirken, negatif bir giriş parametrenin artışının kaybı azalttığı anlamına gelir. İlk kısım , ters Hessian matrisidir (model parametrelerine göre kaybın ikinci türevidir). Hessian matrisi, gradyanın değişim hızıdır veya kayıp olarak ifade edilirse, kaybın değişim hızının değişim hızıdır. Aşağıdaki şekilde tahmin edilebilir:
Daha gayri resmi olarak: Hessian matrisi, belirli bir noktada kaybın ne kadar eğimli olduğunu kaydeder. Hessian bir matristir, sadece bir vektör değil, çünkü kaybın eğriliğini tanımlar ve eğrilik baktığımız yöne bağlıdır. Eğer çok sayıda parametreniz varsa, Hessian matrisinin gerçek hesaplanması zaman alıcıdır. Koh ve Liang, bunu verimli bir şekilde hesaplamak için bazı hileler önerdiler, bu da bu bölümün kapsamını aşmaktadır. Yukarıdaki formülle tanımlandığı gibi model parametrelerini güncellemek, tahmin edilen model parametreleri etrafında kuadratik bir genişleme oluşturduktan sonra tek bir Newton adımı atmakla eşdeğerdir.
Bu etki fonksiyonu formülünün arkasındaki sezgi nedir? Formül, parametreler ^θ etrafında kuadratik bir genişleme oluşturmaktan gelir. Bu, örneğin z'nin kaybının tam olarak nasıl değişeceğini bilmediğimiz veya hesaplamanın çok karmaşık olduğu anlamına gelir. Fonksiyonu, mevcut model parametre ayarındaki diklik (= gradyan) ve eğrilik (= Hessian matrisi) hakkında bilgi kullanarak yerel olarak yaklaşık hesaplarız. Bu kayıp yaklaşıklaması ile, örnek z'yi yeniden ağırlıklandırırsak yeni parametrelerin yaklaşık olarak nasıl görüneceğini hesaplayabiliriz:
Yaklaşık parametre vektörü esas olarak orijinal parametreden, z'nin kaybının gradyanı (çünkü kaybı azaltmak istiyoruz) Hessian matrisi ile çarpılarak ölçeklendirilmiş ve n'ye bölünmüş hali çıkarılır, çünkü bu tek bir eğitim örneğinin ağırlığıdır.
Aşağıdaki şekil, yeniden ağırlıklandırmanın nasıl çalıştığını göstermektedir. X ekseni parametresinin değerini ve Y ekseni yeniden ağırlıklandırılmış örnek z ile ilgili kaybın karşılık gelen değerini gösterir. Buradaki model parametresi gösterim amaçlı 1 boyutludur, ancak gerçekte genellikle yüksek boyutludur. Sadece 1/n, örnek z için kaybın iyileştirilmesi yönüne doğru hareket ederiz. Z'yi sildiğimizde kaybın gerçekten nasıl değişeceğini bilmiyoruz, ancak kaybın ilk ve ikinci türevi ile mevcut model parametresi etrafında bu kuadratik yaklaşıklamayı oluşturuyoruz ve bunun gerçek kaybın nasıl davranacağını varsayıyoruz.
Yeni parametreleri gerçekten hesaplamamıza gerek yok, ancak etki fonksiyonunu z'nin parametreler üzerindeki etkisinin bir ölçüsü olarak kullanabiliriz.
Eğitim örneği z'yi yeniden ağırlıklandırdığımızda tahminler nasıl değişir? Ya yeni parametreleri hesaplayabilir ve ardından yeni parametrelenmiş modeli kullanarak tahminler yapabiliriz, ya da zincir kuralını kullanarak doğrudan tahminler üzerindeki z örneğinin etkisini hesaplayabiliriz:
Bu denklemin ilk satırı, eğitim örneğinin belirli bir tahmin üzerindeki etkisini, örnek z'yi yeniden ağırlıklandırdığımızda ve yeni parametreler ettiğimizde test örneğinin kaybındaki değişiklik olarak ölçtüğümüz anlamına gelir. Denklemin ikinci satırı için türevlerin zincir kuralını uyguladık ve parametreler üzerindeki z'nin etkisi ile parametreler açısından test örneğinin kaybının türevidir elde ettik. Üçüncü satırda, ifadeyi parametreler için etki fonksiyonu ile değiştirdik. Üçüncü satırdaki ilk terim , test örneğinin model parametreleri açısından gradyanıdır.
Bir formüle sahip olmak harika ve şeyleri bilimsel ve doğru bir şekilde göstermenin yoludur. Ancak, formülün ne anlama geldiği konusunda bazı sezgiler elde etmenin çok önemli olduğunu düşünüyorum. için formül, eğitim örneği z'nin bir örnek üzerindeki etki fonksiyonunun, “örneğin model parametrelerindeki bir değişikliğe ne kadar güçlü tepki verdiği” ile “örnek z'yi yeniden ağırlıklandırdığımızda parametrelerin ne kadar değiştiği” çarpımı olduğunu belirtir. Formülü başka bir şekilde okumak gerekirse: Etki, eğitim ve test kaybının gradyanlarının ne kadar büyük olduğuyla orantılıdır. Eğitim kaybının gradyanı ne kadar yüksekse, parametreler üzerindeki etkisi ve test tahmini üzerindeki etkisi de o kadar yüksek olur. Test tahmininin gradyanı ne kadar yüksekse, test örneği o kadar etkilenebilir hale gelir. Tüm yapı, ayrıca eğitim ve test örneği arasındaki benzerliğin (model tarafından öğrenildiği şekilde) bir ölçüsü olarak da görülebilir.
Teori ve sezgi bu kadar. Sonraki bölüm, etki fonksiyonlarının nasıl uygulanabileceğini açıklar.
Etki Fonksiyonlarının Uygulanması
Etki fonksiyonlarının birçok uygulaması vardır, bunlardan bazıları zaten bu bölümde sunulmuştur.
Model Davranışını Anlamak
Farklı makine öğrenimi modellerinin tahmin yapma şekilleri farklıdır. İki modelin aynı performansa sahip olsa bile, özelliklerden tahmin yapma şekilleri çok farklı olabilir ve bu nedenle farklı senaryolarda başarısız olabilirler. Etkili örnekleri belirleyerek bir modelin belirli zayıflıklarını anlamak, makine öğrenimi modelinin davranışının zihninizde bir “zihinsel modelini” oluşturmanıza yardımcı olur.
Alan Uyumsuzluklarını Ele Alma / Model Hatalarını Hata Ayıklama
Alan uyumsuzluklarını ele almak, model davranışını daha iyi anlamakla yakından ilişkilidir. Alan uyumsuzluğu, eğitim ve test verilerinin dağılımının farklı olması anlamına gelir, bu da modelin test verileri üzerinde kötü performans göstermesine neden olabilir. Etki fonksiyonları hataya neden olan eğitim örneklerini tanımlayabilir. Diyelim ki ameliyat geçirmiş hastaların sonuçlarını tahmin etmek için bir tahmin modeli eğittiniz. Bu hastaların hepsi aynı hastaneden geliyor. Şimdi modeli başka bir hastanede kullanıyorsunuz ve birçok hasta için iyi çalışmadığını görüyorsunuz. Elbette, iki hastanenin farklı hastalara sahip olduğunu varsayıyorsunuz ve verilerine baktığınızda birçok özellikte farklılıklar olduğunu görebiliyorsunuz. Ancak, modeli “bozan” özellikler veya örnekler nelerdir? Burada da etkili örnekler bu soruyu yanıtlamanın iyi bir yoludur. Modelin yanlış tahmin yaptığı yeni hastalardan birini alırsınız, en etkili örnekleri bulur ve analiz edersiniz. Örneğin, bu ikinci hastanenin ortalama olarak daha yaşlı hastalara sahip olduğunu ve eğitim verilerinden en etkili örneklerin ilk hastaneden birkaç yaşlı hasta olduğunu ve modelin bu alt grubu iyi tahmin etmeyi öğrenmek için veri eksikliği yaşadığını gösterebilir. Sonuç olarak, modelin ikinci hastanede iyi çalışması için daha yaşlı hastalar üzerinde eğitilmesi gerektiği ortaya çıkabilir.
Eğitim Verilerini Düzeltme
Doğruluğu kontrol edebileceğiniz eğitim örneği sayısı konusunda bir sınırınız varsa, verimli bir seçim nasıl yapılır? En iyi yol, en etkili örnekleri seçmektir, çünkü tanım gereği, bunlar model üzerinde en fazla etkiye sahiptir. Açıkça yanlış değerler içeren bir örneğiniz olsa bile, eğer örnek etkili değilse ve sadece tahmin modeli için verilere ihtiyacınız varsa, etkili örnekleri kontrol etmek daha iyi bir seçenektir. Örneğin, bir hastanın hastanede kalması veya erken taburcu edilip edilmeyeceğini tahmin etmek için bir model eğitiyorsunuz. Modelin sağlam ve doğru tahminler yaptığından emin olmak istiyorsunuz, çünkü bir hastanın yanlış bırakılması kötü sonuçlar doğurabilir. Hasta kayıtları çok dağınık olabilir, bu yüzden verilerin kalitesine tam güveniniz yoktur. Ancak hasta bilgilerini kontrol etmek ve düzeltmek çok zaman alıcı olabilir, çünkü hangi hastaları kontrol etmeniz gerektiğini bildirdiğinizde, hastane gerçekten seçilen hastaların kayıtlarını daha yakından incelemek için birini göndermelidir, bu kayıtlar el yazısı olabilir ve bazı arşivlerde saklanıyor olabilir. Bir hastanın verilerini kontrol etmek bir saat veya daha fazla sürebilir. Bu maliyetler göz önüne alındığında, sadece birkaç önemli veri örneğini kontrol etmek mantıklıdır. En iyi yol, tahmin modeli üzerinde yüksek etkiye sahip hastaları seçmektir. Koh ve Liang (2017) bu tür seçimin rastgele seçime veya en yüksek kayıp ya da yanlış sınıflandırmaya sahip olanların seçimine göre çok daha iyi çalıştığını göstermiştir.
10.5.3 Etkili Örnekleri Belirlemenin Avantajları
Silme diagnostikleri ve etki fonksiyonları yaklaşımları, Model-Agnostik bölümünde sunulan çoğunlukla özellik bozulmasına dayalı yaklaşımlardan çok farklıdır. Etkili örneklere bir bakış, öğrenme sürecinde eğitim verilerinin rolünü vurgular. Bu, etki fonksiyonlarını ve silme diagnostiklerini makine öğrenimi modelleri için en iyi hata ayıklama araçlarından biri yapar. Bu kitapta sunulan teknikler arasında, hataların kontrol edilmesi gereken örnekleri doğrudan tanımlamaya yardımcı olan tek yöntemlerdir.
Silme diagnostikleri model-agnostiktir, yani yaklaşım herhangi bir modele uygulanabilir. Ayrıca türevlere dayalı etki fonksiyonları geniş bir model sınıfına uygulanabilir.
Bu yöntemleri farklı makine öğrenimi modellerini karşılaştırmak ve sadece tahmin performansını karşılaştırmanın ötesinde farklı davranışlarını daha iyi anlamak için kullanabiliriz.
Bu konuda bu bölümde konuşmadık, ancak türevler aracılığıyla etki fonksiyonları adversarial eğitim verileri oluşturmak için de kullanılabilir. Bu, modelin bu manipüle edilmiş örnekler üzerinde eğitildiğinde belirli test örneklerini doğru tahmin edememesini sağlayacak şekilde manipüle edilen örneklerdir. Adversarial Örnekler bölümündeki yöntemlerden farkı, saldırının eğitim zamanında gerçekleşmesi, yani zehirleme saldırıları olarak bilinir. İlgileniyorsanız, Koh ve Liang (2017) makalesini okuyabilirsiniz.
Silme diagnostikleri ve etki fonksiyonları için, tahmin farkını ve etki fonksiyonu için kaybın artışını ele aldık. Ancak, gerçekten, yaklaşım şu formda herhangi bir soruya genellenebilir: “Örnek z'yi sildiğimizde veya yeniden ağırlıklandırdığımızda … ne olur?”, burada “…” modelinizin istediğiniz herhangi bir fonksiyonu ile doldurulabilir. Bir eğitim örneğinin modelin genel kaybını ne kadar etkilediğini analiz edebilirsiniz. Bir eğitim örneğinin özellik önemini ne kadar etkilediğini analiz edebilirsiniz. Bir eğitim örneğinin karar ağacı eğitirken ilk bölünme için hangi özelliğin seçilmesini ne kadar etkilediğini analiz edebilirsiniz.
Etkili örnek gruplarını da tanımlamak mümkündür 105.
10.5.4 Etkili Örnekleri Belirlemenin Dezavantajları
Silme diagnostikleri hesaplamak çok maliyetlidir çünkü yeniden eğitmeyi gerektirir. Ancak tarih, bilgisayar kaynaklarının sürekli arttığını göstermiştir. 20 yıl önce kaynaklar açısından düşünülemeyen bir hesaplama, akıllı telefonunuzla kolayca gerçekleştirilebilir. Binlerce eğitim örneği ve yüzlerce parametreye sahip modelleri bir dizüstü bilgisayarda saniyeler/dakikalar içinde eğitebilirsiniz. Bu nedenle, silme diagnostiklerinin 10 yıl içinde büyük sinir ağlarıyla bile sorunsuz çalışacağını varsaymak büyük bir sıçrama değildir.
Etki fonksiyonları, silme diagnostiklerine iyi bir alternatiftir, ancak yalnızca sinir ağları gibi parametrelerine göre ikinci dereceden türevlenebilir bir kayıp fonksiyonuna sahip modeller için geçerlidir. Rastgele ormanlar, artırılmış ağaçlar veya karar ağaçları gibi ağaç tabanlı yöntemler için çalışmazlar. Parametreleri ve kayıp fonksiyonu olan modelleriniz olsa bile, kayıp türevlenebilir olmayabilir. Ancak son problem için bir hile vardır: Örneğin, altta yatan model türevlenebilir bir kayıp yerine Hinge kaybını kullanıyorsa, etki fonksiyonlarını hesaplamak için türevlenebilir bir kayıp kullanın. Kayıp, etki fonksiyonları için problemli kaybın yumuşatılmış bir versiyonuyla değiştirilir, ancak model hala türevlenmeyen kayıp ile eğitilebilir.
Etki fonksiyonları yalnızca yaklaşık hesaplamalardır, çünkü yaklaşım parametreler etrafında kuadratik bir genişleme oluşturur. Yaklaşım yanlış olabilir ve bir örnek kaldırıldığında etkisi aslında daha yüksek veya daha düşük olabilir. Koh ve Liang (2017), bazı örnekler için etki fonksiyonuyla hesaplanan etkinin, model gerçekten silindikten sonra yeniden eğitildiğinde elde edilen etki ölçüsüne yakın olduğunu göstermiştir. Ancak, yaklaşık hesaplamanın her zaman bu kadar yakın olacağına dair bir garanti yoktur.
Bir örneği etkili veya etkisiz olarak adlandırdığımız etki ölçüsü için net bir sınır yoktur. Örnekleri etkiye göre sıralamak faydalıdır, ancak örnekleri sadece sıralamakla kalmayıp aslında etkili ve etkisiz arasında ayrım yapma aracına sahip olmak harika olurdu. Örneğin, bir test örneği için en etkili ilk 10 eğitim örneğini belirlediğinizde, bunların bazıları, örneğin sadece ilk 3'ü gerçekten etkili olduğundan etkili olmayabilir.
10.5.5 Yazılım ve Alternatifler
Silme diagnostikleri uygulamak çok basittir. Bu bölümdeki örnekler için yazdığım koda bir göz atın.
Doğrusal modeller ve genelleştirilmiş doğrusal modeller için Cook’ın mesafesi gibi birçok etki ölçütü R'deki stats paketinde uygulanmıştır.
Koh ve Liang, makalelerinden etki fonksiyonları için Python kodunu bir depoda yayımladılar. Bu harika! Ne yazık ki, bu sadece makalenin kodudur ve bakımı yapılan ve belgelenmiş bir Python modülü değildir. Kod, Tensorflow kütüphanesine odaklanmıştır, bu yüzden sci-kit learn gibi başka çerçeveleri kullanan black box modeller için doğrudan kullanamazsınız.
Cook, R. Dennis. “Detection of influential observation in linear regression.” Technometrics 19.1 (1977): 15-18.↩︎
Koh, Pang Wei, and Percy Liang. “Understanding black-box predictions via influence functions.” arXiv preprint arXiv:1703.04730 (2017).↩︎
Koh, Pang Wei, Kai-Siang Ang, Hubert HK Teo, and Percy Liang. “On the accuracy of influence functions for measuring group effects.” arXiv preprint arXiv:1905.13289 (2019).↩︎