Isolation Forest ile sensör anomalisi: nasıl çalışır, nerede yanılır
Sensör tablosunda işaretlenen satırları izolasyon puanına göre okumayı, contamination değerinin ne anlama geldiğini ve yöntemin nerede yanıldığını öğrenin.
Isolation Forest, veriyi rastgele eksen paralel bölmelerle parçalayan bir ağaç topluluğudur. Aykırı noktalar az sayıdadır ve farklıdır, bu yüzden az bölmeyle yalıtılır. Ortalama yol uzunluğu kısa olan nokta, skor formülünde 1’e yaklaşır ve daha aykırı sayılır. Mesafe hesaplanmaz, ölçekleme de gerekmez.
Yöntem bir tabloyu rastgele seçilen bir sütun ve rastgele bir kesme değeriyle ikiye böler. Her yaprakta tek nokta kalana ya da bir derinlik sınırına ulaşılana dek bölme sürer. Yoğun normal veri, bir noktayı komşularından ayırmak için çok bölme ister. Nadir ve farklı noktalar ise birkaç bölmede tek başına kalır.
Her ağaç, eğitim verisinden küçük bir rastgele alt kümeyle kurulur; yaygın varsayılan 256 noktadır. Bir x noktası için tüm ağaçlardaki ortalama yol uzunluğu E[h(x)] hesaplanır. Skor s(x) = 2^(−E[h(x)]/c(n)) ile bulunur. Burada c(n), n noktalık bir ikili arama ağacında başarısız bir aramanın ortalama yol uzunluğudur ve n, ağaçları kurarken kullanılan alt küme boyutudur. Skor 1’e yakınsa nokta çok yalıtılmıştır; yaklaşık 0,5 ise belirgin bir ayrım yoktur.
Varsayımsal bir pompada beş sensör var: titreşim, yatak sıcaklığı, akış, basınç ve motor akımı. Eğitim için 4 000 normal satır kullanılıyor. Mühür (seal) değiştirildikten sonra 6 satır model tarafından işaretleniyor.
Diyelim ki bu 6 satırın ortalama yol uzunluğu 4,0 çıktı. Alt küme boyutu 256 olduğu için c(256) ≈ 10,25. Skor 2^(−4,0/10,25) ≈ 0,76 olur. Tipik bir normal satırın yol uzunluğu c(n) yakınındadır, dolayısıyla skoru yaklaşık 0,50’dir. İşaretlenen satırlar normal satırlardan belirgin biçimde yüksek skorludur.
Contamination değeri 0,002 seçilirse, eşik eğitim verisinin yüzde 0,2’sinin, yani 4 000 satırın 8’inin dışarıda kalacağı yere konur. Bu değer bir ölçüm değil, mühendisin seçtiği bir ayardır.
Yöntem zamanı bilmez. Satırları bağımsız kabul eder; 6 işaretli satırın ardışık olması modelin kendisi için bir bilgi değildir. Rejim değişiminde ya da sürüklenmede model son normal verilerle yeniden eğitilmelidir. Her değişkende tek başına normal görünüp birlikte yanlış olan kombinasyonları yakalamakta da zayıftır.
Sık hatalar şunlardır. Contamination, gerçek arıza oranı sanılır; oysa o bir eşik ayarıdır. Eğitim penceresinde bakım öncesi ve sonrası rejimler karışırsa, model iki rejimin ortalamasını normal sanabilir. Bir uyarının nedenini açıklamak için, hangi sensörün medyandan en çok saptığına ya da hangisinin en az bölmeyle yalıtıldığına bakılmalıdır.
Gerekmez. Yöntem denetimsizdir ve normal kabul edilen geçmiş veriyle eğitilir. Eğitim verisinde kaydedilmemiş arıza dönemleri varsa model bunları normal sanabilir. Bu yüzden eğitim penceresi, eğitimden önce bakım kayıtları ve operatör bilgisiyle kontrol edilmelidir.
Gerekmez. Her bölme tek bir değişken üzerinde yapıldığı için farklı birimli sensörler sorun çıkarmaz. Bunun bedeli, değişkenlerin birbiriyle ilişkisini doğrudan modellememesidir. Korelasyona dayalı arızalar için Hotelling T² ve SPE gibi PCA tabanlı yaklaşımlar bu yapıyı açıkça ele alır.
Örnek sayılar varsayımsaldır; sahada doğrulanmış sonuç iddiası değildir.