Sayfalar

12 Aralık 2024 Perşembe

Zaman serisi tahmini ve açıklanabilirlik

Yıllar önce (7 yıl önce!) zaman serisi tahmini hakkında ARIMA ve LSTM ile Zaman Serisi Tahmini başlıklı iki makale yazmıştım, aşağıda bağlantıları paylaşıyorum.

Aradan geçen sürede zaman serileri konusunda literatüre birçok yöntem eklendi. Günümüzde sürekli olarak zamana bağlı veri üretildiği ve  verinin en önemli şey olduğu düşünüldüğünde, bu konunun ne kadar popüler olduğunu anlatmaya gerek olmadığını düşünüyorum. Bu yazıda, zaman serisi analizinde güncel yaklaşımları, özellikle de Açıklanabilir Yapay Zeka (Explainable AI *XAI*) çerçevesinde ele almayı amaçlıyorum.

Derin Öğrenme Modellerinin Açıklanabilirlik İhtiyacı

Derin öğrenme yöntemleri, karmaşık yapıları nedeniyle sıklıkla "kara kutu" olarak adlandırılır. Özellikle sağlık, karar destek sistemleri ve endüstriyel uygulamalar gibi güvenilirliğin kritik olduğu alanlarda, bu tür modellerin sorgusuz sualsiz kullanımı her zaman mümkün değildir. Modelin bir sonuca ulaşırken hangi girdileri dikkate aldığı, bu girdilerin sonuç üzerindeki etkisi, yapılan tahminin ne kadar güvenilir olduğu gibi sorular, bu modellerin kullanım alanlarını sınırlayan önemli faktörlerdir. Bu bağlamda açıklanabilirlik ihtiyacı ortaya çıkar. Amaç, modelin kararlarını daha anlaşılır hale getirerek hangi girdilerin veya zaman serilerinde hangi zaman dilimlerinin sonuç üzerinde etkili olduğunu göstermektir. Özellikle endüstriyel uygulamalarda, operatörlere karar destek sistemi olarak sunulabilmesi için, modelin yalnızca doğru tahminler yapması değil, aynı zamanda hangi girdilerin veya zaman dilimlerinin sonuçları etkilediğini de açıklayabilmesi gerekir. Endüstriyel uygulamalar söz konusu olduğunda, modelin hem yüksek performans göstermesi hem de bu tür açıklamaları sağlaması, onu sadece doğru tahminler yapmakla kalmayıp, aynı zamanda güvenilir bir karar destek aracı haline getirir. Bu özellikler olmadan, modelin kullanım alanı ve etkisi sınırlı kalır.

Ancak, burada vurgulamak gerekir ki, modelin karar verirken hangi girdileri veya hangi zaman aralıklarını önemli bulduğunu anlamak, modelin tam olarak ne yaptığı ve nasıl çalıştığı hakkında net bir açıklama sağlamak anlamına gelmez. Örneğin, attention mekanizmaları, modelin hangi girdilere daha fazla ağırlık verdiğini gösteriyor olabilir, ancak bu, modelin kararlarının tam anlamıyla açıklanması anlamına gelmez. Bu tür teknikler, yalnızca bazı çıkarımlar yapmamıza yardımcı olabilir ve en azından belirli girdiler için "kara kutu"nun içinde neler döndüğüne dair bir ipucu sağlar. Yani, yapılan şey çoğunlukla verilen bir kararın nedenini girdilere göre sorgulamaktır; modelin "tamamen" açıklanması için mevcut yöntemlerin yeterli olduğu söylenemez.


Zaman Serisi Analizinde XAI: Neden Önemli?

Zaman serisi analizinde açıklanabilirlik, modellerin verdiği kararların nedenlerini anlamak ve bu kararların hangi özelliklere dayandığını görmek açısından kritik bir rol oynar. Geleneksel olarak, ARIMA gibi istatistiksel modeller belirli bir geçmiş penceresini kullanarak tahminler yaparken, son yıllarda LSTM, GRU ve Transformer tabanlı derin öğrenme yöntemleri bu alanda yaygın bir şekilde kullanılmaya başlanmıştır. Ancak bu karmaşık modellerin çalışma prensiplerini anlamak, güvenilirliğini ve pratikteki uygulanabilirliğini artırmak için büyük önem taşır.

Zaman serisi verilerinde, örneğin endüstriyel süreçler veya ekonomik göstergeler gibi sistemlerin analizinde, modelin hangi zaman dilimlerini veya girdileri daha baskın gördüğünü anlamak oldukça değerlidir. Bu sayede, yalnızca geçmiş verilerin etkisini incelemekle kalmaz, aynı zamanda modelin tahmin sürecinde dikkate aldığı temel özellikleri ortaya çıkarabiliriz. Zaman serisi verilerinin yüksek boyutlu yapısı ve değişkenler arası bağımlılıklar göz önüne alındığında, her bir özelliğin tahminlere etkisini anlamak, modelin davranışını değerlendirmek, dayanıklılığını artırmak ve değişkenler arası ilişkileri öğrenmek hem zorlayıcı hem de bazı sektörlerde uygulanabilirlik için gerekli bir adımdır.


Zaman Serisi Analizinde XAI İçin Mevcut Yöntemler

Açıklanabilir yapay zeka (XAI) yöntemleri, farklı perspektiflerden sınıflandırılabilir: post-hoc ve ante-hoc, küresel (global) ve yerel (local) açıklamalar, ve modelden bağımsız (model-agnostic) ile model-özel (model-specific) yaklaşımlar. Post-hoc yöntemler, bir model eğitildikten sonra açıklamalar sağlayarak, genellikle "kara kutu" modelleri yorumlamayı amaçlar. Buna karşılık, ante-hoc yöntemler, açıklanabilirliği doğrudan model tasarımına entegre eden, yapıları itibarıyla anlaşılır olan modellerdir.

Açıklanabilirlik sağlamak amacıyla kullanılan bazı iyi bilinen teknikler, her bir tahmini farklı özelliklere dayandırır. Bu yöntemler arasında özellik çıkarma (feature ablation), özellik maskeleme (feature occlusion), ShapTimeentegre gradyanlar (integrated gradients), gradyan-SHAP, ve zamansal pencereleme ile özellik önemi (windowed feature importance in time -WinIT-) bulunur. Bu tekniklerin kısa açıklamaları aşağıda verilmiştir:

  • Feature Ablation: Bu yöntem, her seferinde bir özelliği giriş verisinden sistematik olarak çıkararak modelin performansı üzerindeki etkisini değerlendirir. Tahmin doğruluğundaki veya çıktıdaki değişimi ölçerek, hangi özelliklerin model kararlarına en fazla katkıda bulunduğunu belirler. Özellikle karmaşık modellerin davranışlarını anlamada faydalıdır.
  • Feature Occlusion: Giriş verisinin bir kısmını maskelemek veya sıfır ile değiştirmek gibi yöntemlerle model çıktısındaki değişiklikler gözlemlenir. Bu yöntem, özellikle zaman serisi ve görüntü verisi analizlerinde, uzamsal veya zamansal önem taşıyan özellikleri belirlemek için yaygın olarak kullanılır. Gelişmiş maskeleme yaklaşımları, sadece maskeleme yapmakla kalmayıp, gerçekçi varyasyonlar ekleyerek veriyi değiştirme yöntemlerini de içerir.
  • ShapTime: Zaman serisi tahmin modellerinin açıklanabilirliğini artırmak için SHAP (SHapley Additive exPlanations) değerlerini kullanan bir yöntemdir. Shapley değerlerini zaman serisine özgü hale getirerek belirli bir zaman aralığının model tahminine olan etkisini ölçmek için ortak kümeleri kullanır. Bu yöntem, bir zaman aralığındaki adımları gruplar halinde değerlendirir ve bu grupların modele olan katkısını, diğer olası kombinasyonlarla kıyaslayarak adil bir şekilde hesaplar.
  • Integrated Gradients: Bu yöntem, bir başlangıç durumundan (örneğin, sıfır değerli bir girdi) gerçek girdiye k adar olan yol boyunca gradyanları toplar. Modelin çıktısının giriş özelliklerine göre gradyanlarını entegre ederek, her bir özelliğin katkısını hesaplar. 
  • Gradient SHAP: SHAP değerlerini gradyan tabanlı yöntemlerle birleştiren bir açıklanabilirlik tekniğidir. Rastgele örnekleme kullanarak, giriş örneklerinin bir aralığı boyunca gradyanları entegre eder ve her bir özelliğin SHAP değerlerini yaklaşık olarak hesaplar. Bu yöntem, özellikle karmaşık ve doğrusal olmayan modellerde, her bir özelliğin tahmin üzerindeki etkisini anlamada güçlü bir araçtır.
  • Windowed Feature Importance in Time (WinIT): Zaman serisi modellerinin açıklanabilirliğini artırmak için belirli zaman dilimlerinde önem derecelerini yeniden ölçeklendirir. Bu yöntem, girdinin tamamı yerine daha küçük, lokalize bölgelere odaklanarak açıklamaların ayrıntılı hale gelmesini sağlar. Özellikle tahmin ve anomali tespiti görevlerinde, zamanla değişen değişken önemlerini belirlemek için faydalıdır.
  • Attention: Özellikle Transformer tabanlı modellerde kullanılan dikkat (attention) mekanizmaları, modelin hangi girişleri önem sırasına koyduğunu ortaya çıkarır. Ancak, bu mekanizmaların gerçekten modelin karar sürecindeki önem sırasını mı yansıttığı, yoksa sadece öğrenme sürecinde modelin dikkatini belirli girişlere odaklamak için bir araç mı olduğu konusunda tartismalar oldugunu da söyleyebiliriz. Dikkat skorlarının açıklanabilirlik için doğrudan bir ölçüt olup olmadığı tartışmalıdır, çünkü dikkat mekanizmalarının çıktıları, modelin eğitimi sırasında kullanılan kayıp fonksiyonu ve optimizasyon süreçlerinden etkilenebilir.

Zaman Serisi Modelleri İçin Açıklanabilirlik Araçları

Zaman serisi modellerinin açıklanabilirliği için kullanabileceginiz araçlardan biri, zaman serisi sınıflandırmasına  odaklanan ve bu modellere birden fazla açıklanabilirlik yönteminin uygulanabilmesi için kapsamlı bir çerçeve sunan TSInterpret'tir Daha geniş bir uygulama alanı için, Captum, PyTorch'tan genel bir açıklanabilirlik kütüphanesidir. Başlangıçta görüntü sınıflandırma gibi diğer alanlar için tasarlanmış olsa da, zaman serisi modelleri için de uyarlanabilir. Captum, entegre gradyanlar (integrated gradients), DeepLIFT ve özellik ablation gibi bir dizi XAI yöntemini destekler ve uygun özelleştirmelerle zaman serisi sınıflandırma ve tahmin modellerine de uygulanabilir. Time Interpret (tint), Captum'u genişleten ve özellikle zaman serisi açıklanabilirliği için tasarlanmış bir araçtır. Bu araç, zaman serisi verilerinde zamansal bağımlılıkları ve özellik önemini keşfetmeye odaklanmaktadır.

Zaman Serisi Tahmin Yöntemleri ve ShapTime ile Açıklanabilirlik


Aşağıda, üzerinde çalıştığım sentetik veri seti üzerinde uyguladığım bazı zaman serisi tahmin yöntemlerinin sonuçları ile ShapTime yöntemi ile üretilen zaman aralığı önem haritalarının gerçek değerlerle karşılaştırmasını gösteren bir örnek görsel paylaşıyorum.



Sonuç

Zaman serisi analizi alanında XAI kullanımı, modeli veya coğunlukla verilen bir kararı yalnızca daha anlaşılır hale getirmekle kalmaz, aynı zamanda endüstriyel uygulamalarda pratik bir destek aracı olarak işlev görmesini sağlar. XAI yöntemlerinin gelişimi ile bu alandaki modeller, daha şeffaf ve güvenilir bir hale gelecektir.

Hiç yorum yok:

Yorum Gönder