Veri Madenciliği Anormallik Tespiti Bölüm 10 için Ders Notları Introduction to Data Mining by Tan, Steinbach, Kumar Çeviren Yrd. Doç. Dr. Mete ÇELİK © Tan,Steinbach, Kumar Introduction to Data Mining 05/02/2006 1
Anomali/Aykırılık (Anomaly/Outlier) Tespiti Anomaliler/aykırılıklar nelerdir? Verinin çoğunluğundan oldukça farklı olan veri kümelerine denir. Doğal olan anomaliler nispeten nadirdir Çok fazla veri var ise binde bir olan olaylardır Konteks önemlidir, örnek: Temmuzdaki aşırı soğuklar Önemli olabilir veya bir sıkıntı olabilir 2 yaşındkai bir çocuğun normalden uzun olması Alışılmadık yüksek kan basıncı
Anomali Tespitinin Önemi Ozon Deliğinin Geçmişi 1985 yılında üç araştırmacı (Farman, Gardinar ve Shanklin) Antartika için ozon seviyesinin normal seviyenin %10 altına düşmüş olduğunu gösteren İngiliz Antarktika Araştırma’sı tarafından toplanan verileri görünce şaşırdılar Ozon seviyesini kaydetmek için techizatı bulunan, Nimbus 7 uydusu neden benzer düşük ozon konsantrasyonlarını ölçmemiştir. Uydu tarafından kaydedilen ozon konsantrasyonları o kadar düşüktüki bilgisayar programı tarafından aykırılık olarak işaretlendi ve sistemden atıldı Sources: http://exploringdata.cqu.edu.au/ozone.html http://www.epa.gov/ozone/science/hole/size.html
Anomalinin Nedenleri Farklı sınıflardan gelen veri Doğal değişimler Portakalların ağırlıklarının ölçümü, fakat birkaç greyfut karışmış olabilir Doğal değişimler Alışılmadık uzun kişiler Veri hataları 100 kg ağırlığındaki işi kaşındaki çocuk
Gürültü ve Anomali Arasındaki Farklar Gürültü hatadır, belki rastgele değerler veya karışmış nesneler Ağırlıklar doğru kaydedilmemiş Greyfut, portakallar ile karışmış Gürültü olağandışı değer veya nesneleri üretmez. Gürültü ilginç değildir. Anormallikler, eğer bir gürültü sonucunda değil ise ilginç olabilir. Gürültü ve anomaliler birbirleriyle alakalıdır ancak farklı kavramlardır
Genel Konular: Özellik Sayısı Çoğu anomali genellikle tek bir özellik bakımından tanımlanır Yükseklik Şekil Renk Bütün özellikleri kullanarak anomalileri bulmak zor olabilir. Gürültülü veya ilgisiz özellikler Nesne sadece bazı özellikler gözönüne alındığında anomalidir Ancak, bir nesne herhangi bir özelliğe göre anormal olmayabilir
Genel Konular: Anomali Puanlama Çoğu anomali tespit tekniği sadece ikili sınıflandırma sağlar Bir nesne ya anomalidir veya değildir Bu özellikle sınıflandırma-tabanlı yaklaşımlar için doğrudur Diğer yaklaşımlar her noktaya bir puan atar Bu puan, nesnenin anormal olma derecesini gösterir/ölçer Bu nesnelerin sıralanmasını/derecelendirilmesini sağlar Sonuçta, genellikle ikili karar yapılması gerekir Kredi kartı işlemi yanlış olarak işaretlenmeli mi? Bir puanlama olması hala faydalı olabilir Kaç tane anomali vardır?
Anomali Tespitindeki Diğer Konular Bütün anomalileri bir seferde bulma veya her seferde bir anomali bulma Hepsini bulma (Swamping) Maskeleme (Masking) Değerlendirme Performansı nasıl ölçersiniz? Danışmanlı / Danışmansız durum Etkinlik Bağlam Profesyonel basketbok takımı
Anomali Tespit Problemlerinin Varyasyonları Verilen D veri kümesi için, t eşik değerinden daha fazla anomali puanı olan x D verilerini bul Verilen D veri kümesi için, en yüksek anomali puanına sahip n adet (top-n) x D verilerini bul Genelde normal (fakat etiketlenmemiş) veri içeren bir D veri kümesi için x test verisinin anomali puanını veritabanındakilere göre hesapla
Model-Tabanlı Anomali Tespiti Veri için bir model oluştur ve kullan Danışmansız Anomaliler iyi uymayan nokatalardır Anomaliler modeli bozan/çarpıtan noktalardır Örnekler: İstatistiksel dağılım Kümeler Regresyon Geometrik Graf (Çizge) Danışmanlı Anomaliler nadir sınıf olarak görülürler Eğitim verisine ihtiyaç vardır
Diğer Anomali Tespit Teknikleri Yakınlık-tabanlı (Proximity-based) Anomaliler diğer noktalardan çok uzakta olan noktalardır Bazı durumlarda bu durum grafiksel olarak tespit edilebilir Yoğunluk-tabanlı (Density-based) Düşük yoğunluklu noktalar anomalilerdir Örüntü eşleştirme (Pattern matching) Tipik olmayan fakat önemli olay veya nesneler için profil veya şablon oluştur Bu örüntüleri keşfeden algoritmalar genellikle basit ve etkilidir
Grafiksel Yaklaşımlar Kutuçizimler (Boxplot) veya s or dağılım çizimleri (scatter plots) Eksiklikleri Otomatik değil Öznel (Subjective)
Konveks (Convex) Hull Yöntemi Aşırı noktaların aykırılar olduğu varsayılır Aşırı değerleri bulmak için konveks hull yöntemini kullan Eğer aykırılar verinin ortasında ise ne olur?
İstatistiksel Yaklaşımlar Bir aykırılığın olasılıklı tanımı: Bir aykırılık, verinin olasılıklı dağılım modeline göre daha düşük olasılığı olan bir veri olarak tanımlanır. Genellikle verinin dağılımını tanımlayanan parametrik model varsayılır (örnek, normal dağılım) Aşağıdakilere bağlı olarak istatistiksel test uygula Veri dağılımı Dağılım parametreleri (örnek, ortalama ve varyans) Beklenen aykırılıkların sayısı (güven sınırı) Meseleler Bir veri kümesinin dağılımının belirlenmesi Ağır kuyruklu dağılımı (Heavy tailed distribution) Özellik sayısı Veri dağılımı karşım mı (mixture of distributions) ?
Normal Dağılımlar Tek-boyutlu Gaussian İki-boyutlu Gaussian
Grubbs Testi Tek değişkenli veride aykırıları tespit et Verinin normal dağılım olduğunu varsay Bir zamanda bir aykırı tespit eder, aykırıyı siler ve tekrar eder H0: Veride hiç aykırı yok HA: En az bir aykırı var Grubbs test istatistiği: Reddet H0 eğer:
İstatistiksel-tabanlı Olasılık Yaklaşımı Veri kümesi D’nin iki olasılık dağılımının karışımından örnekler içerdiğini varsay. : M (çoğunluk dağılımı) A (anormal dağılım) Genel Yaklaşım: İlk olarak, bütün verilerin M’e ait olduğunu varsay Lt(D) D’nin t zamanındaki log likelihoodunu göstersin M’ye ait olan herbir xt noktasını A’ya taşı Lt+1 (D) yeni log likelihoodu göstersin. = Lt(D) – Lt+1 (D) farkını hesap et Eğer > c (belirlenen eşik değeri ), ise xt anomali olarak etiketlenir ve M’den A’ya kalıcı olarak taşınır
İstatistiksel-tabanlı Olasılık Yaklaşımı Veri Dağılımı, D = (1 – ) M + A M, veriden tahmin edilen olasılık dağılımdır Herhangi bir model tabanlı olabilir (naïve Bayes, maksimum entropi, vs) A’nın ilk başta uniform dağılım olduğu varsayılır T zamanındaki olasılık (Likelihood):
İstatistiksel Yaklaşımların Güçlü/Zayıf Yönleri İyi bir matematiksel temel gerektirir Etkili olabilir Eğer dağılım biliniyor ise iyi sonuç verir Çoğu durumda, veri dağılımı bilinemeyebilir Yüksek boyutlu veri için, doğru dağılımı tespit etmek zor olabilir Anormaliler dağılımın parametrelerini bozabilir
Uzaklık-Tabanlı Yaklaşımlar Çok farklı teknik vardır Bir nesne veya nesne gurubu eğer belirlenen bir mesafeden daha uzakta ise aykırı olarak etiketlenir (Knorr, Ng 1998) Bazı istatistiksel tanımlar bunun özel durumudur Bir nesnenin aykırılık puanı onun k ıncı en kayın komşusuna uzaklığıdır
Bir En Yakın Komşu – Bir Aykırılık Aykırılık Puanı
Bir En Yakın Komşu – İki Aykırılık Aykırılık Puanı
Beş En Yakın Komşu – Küçük Küme Aykırılık Puanı
Beş En Yakın Komşu – Değişen Yoğunluk Aykırılık Puanı
Uzaklık-tabanlı Yaklaşımların Güçlü/Zayıf Yönleri Basit Maliyeti yüksek– O(n2) Parametrelere duyarlı Yoğunluk değişimlerine duyarlı Yüksek-boyutlu uzayda mesafe daha az manalı olur
Yoğunluk-Tabanlı Yaklaşımlar Yoğunluk-tabanlı Aykırılık: Bir nesnenin aykırılık puanın nesnenin etrafındaki yoğunluğun tersidir. K en yakın komşu cinsinden tanımlanabilir Tanımlardan birisi: k ıncı en komşuya olan mesafenin tersidir Diğer tanım: k komşuların ortalama mesafelerinin tersidir DBSCAN tanımı Farklı yoğunlukta bölgeler varsa, bu yaklaşımı sorunlu olabilir
Bağıl Yoğunluk Bir noktanın yoğunluğunun, onun k en yakın komşusuna göre belirlenmesi
Bağıl Yoğunluk Aykırılık Puanı
Yoğunluk-tabanlı: LOF yaklaşımı Herbir nokta için, onun yerel komşuluğunun yoğunluğunu hesapla Bir p noktasının yerel aykırılık faktörünü (Compute local outlier factor - LOF) p örneğinin yoğunluğunun ve onun en yakın komşularının yoğunluğunun oranlarının ortalaması olarak hesapla Aykırılıklar en yüksel LOF değerine sahip olan noktalardır p2 p1 En yakın komşu yaklaşımındai In the NN approach, p2 aykırılık olarak düşünülmez, buna karşılık LOF yaklaşımı p1 ve p2 nin her ikisini de aykırılık olarak etiketler
Yoğunluk-Tabanlı Yaklaşımların Güçlü/Zayıf Yönleri Basit Maliyeti Yüksek – O(n2) Parametrelere duyarlı Yüksek-boyutlu uzayda yoğunluk daha az manalı olur
Kümeleme-Tabanlı Yaklaşımlar Yoğunluk-tabanlı aykırılık: Bir nokta eğer hiçbir kümeye güçlü bir şekilde bağlı değilse kümeleme-tabanlı yaklaşımda aykırılık olarak etiketlenir Prototip-tabanlı kümelemede eğer bir nesne küme merkezine yeterince yakın değilse aykırılıktır Yoğunluk-tabanlı kümelemede, bir nesnenin yoğunluğu çok düşük ise aykırılık olarak etiketlenir Graf-tabanlı kümelemede, bir nesne, eğer iyi bir şekilde bağlı değilse, aykırıdır Diğer konular küme sayısıdır ve aykırıların kümeler üzerindeki etkisidir
En Yakın Merkezden Noktaların Bağıl Uzaklıkları Aykırılık Puanı
En Yakın Merkezden Noktaların Bağıl Uzaklıkları Aykırılık Puanı
Yoğunluk-tabanlı Yaklaşımların Güçlü/Zayıf Yönleri Basit Çoğu kümeleme algoritması kullanılabilir Bir kümeleme tekniğine karar vermek zor olabilir Küme sayısına karar vermek zor olabilir Aykırılıklar kümeleri bozabilir