İçeriğe geç

11.5 · Seviye 2 · Sinir Ağları ve Derin Öğrenme

Anomali tespiti

olağan dışı olanı yakalamak

Yapay Zekâ Akademisi — M11, Sıralı Veri ve Ses · 2.537 kelime · 3 saha durumu · ≈ 12 dk okuma · 17 dk dinleme

Saha durumlarındaki kişiler ve kurumlar kurgusaldır; kaynaklar gerçektir. Belirli ürün ve modeller hakkındaki gözlemler yazıldıkları tarihte geçerlidir ve «Tarihli gözlem» etiketiyle yılı belirtilerek verilir. Yapay zekâ çıktıları doğrulanmadan karar dayanağı yapılmaz; dersler hukuki, tıbbi ya da mali danışmanlığın yerini tutmaz.

Açılış

Hikmet Usta uzun tornavidanın ucunu pompa motorunun gövdesine dayadı, sapını kulağına götürdü, gözlerini kapadı. Bir süre öyle durdu.

"Bu şimdilik iyi," dedi. "Rulman gitmeye başlayınca sesi incelir. Hışırtı gelir."

Murat Bey dolum hattının bu motorunu iki kez rulmandan kaybetmişti, üç yıl içinde. İkisinde de hat yarım gün durmuş, bir partinin kapakları yarım kalmıştı. Motora geçen ay bir titreşim algılayıcısı takılmıştı; dakikada bir ölçüm alıyor, ekrana bir sayı yazıyordu. Sayı her gün aşağı yukarı aynıydı.

Tuncay Bey toplantıda net konuştu. "Arızayı önceden bilen bir model istiyoruz. Kamerayı nasıl eğittiysek bunu da öyle eğitin."

Tedarikçinin mühendisi kamerayı hatırlattı: ezik kutu sınıflandırıcısı binlerce etiketli fotoğrafla eğitilmişti. "Bunun için de arıza örneği lazım. Birkaç yüz tane."

Aynur Hanım kayıt defterini açtı. Üç yılda iki arıza vardı, ikisinin de titreşim kaydı yoktu; algılayıcı o zaman takılı değildi. Elde yalnız sağlıklı bir motorun bir aylık sesi vardı.

Murat Bey sorunun tersine döndüğünü gördü. Arızanın neye benzediğini öğretemiyorlardı. Öğretebilecekleri tek şey, sağlıklı motorun neye benzediğiydi.

Tek fikir

Olağan dışını bulmanın yolu çoğu zaman olağanı öğrenmektir: model sağlıklı veriden bir alışkanlık çıkarır, her yeni ölçüme o alışkanlıktan ne kadar saptığını gösteren bir puan verir. Alarmın ne kadar işe yarayacağını puan değil, eşik ve taban oranı belirler.

Nasıl çalışır

Ders 3.4'te Tuncay Bey'in aykırı perşembesini grafikte gözle bulmuştuk; Ders 7.1'de ezik kutunun azlığının doğruluk sayısını nasıl yanılttığını görmüştük. Pompa motoru ikisinin uç noktasıdır: arıza neredeyse hiç yok, etiketli örneği de yok.

Derleme, işin zorluğunu etikette görür: arızanın bütün türlerini kapsayan etiketli bir set kurmak, olağanı etiketlemekten çok daha zordur. Bu yüzden üç çalışma biçimi ayrılır. İki sınıfın da etiketli olduğu durumda iş Ders 4.2'deki sınıflandırmaya döner, ama dengesizlik sorunu en sert hâliyle gelir. Yalnız olağanın etiketli olduğu durumda model sağlıklı veriden bir sınır çizer; Murat Bey'in elindeki bir aylık kayıt budur. Hiç etiket olmadığında Ders 4.3'teki denetimsiz öğrenmeye geçilir ve model, verinin büyük çoğunluğunun olağan olduğunu varsayar. Derleme bu varsayım tutmazsa yanlış alarmın çoğalacağını açıkça yazar.

Model sonunda her ölçüme bir sayı verir.

En sade puanı Aynur Hanım kâğıtta kurdu. Algılayıcının ilk on günlük günlük ortalamalarını aldı, saniyede milimetre cinsinden: iki virgül bir, iki virgül üç, iki, iki virgül iki, iki virgül dört, iki virgül bir, iki virgül iki, iki virgül üç, iki, iki virgül iki. Sıraya dizince ortanca iki virgül ikiydi. Sonra her günün ortancadan uzaklığını yazdı ve bu uzaklıkların da ortancasını aldı: sıfır virgül bir. Buna motorun tipik oynaması dedi. Puan, bir günün ortancadan uzaklığının tipik oynamaya bölümüydü. İki virgül beşlik bir gün, sıfır virgül üç uzaktır; tipik oynamanın üç katı, puanı üç. İki virgül dokuzluk bir gün yedi puan alır. Ortalama yerine ortanca kullanmasının sebebi Ders 3.4'teydi: tek bir aykırı gün ortalamayı çeker, ortancayı neredeyse kıpırdatmaz. Olağanı tarif eden sayının, yakalamak istediğimiz şeyle bozulmaması gerekir.

Puan alarm hâline ancak bir eşikle gelir. Chandola ve arkadaşları bunu çıktının iki türü olarak yazar: bazı yöntemler doğrudan "olağan" ya da "olağan dışı" der, bazıları sıralı bir puan listesi verir ve kesme noktasını işi bilen kişiye bırakır. Ders 7.4'te eşiğin her ayarının iki hatayı birbirine karşı takas ettiğini görmüştük. Burada takasın bir tarafı neredeyse boştur: gerçek arıza o kadar seyrektir ki alarmların büyük kısmı, eşik ne olursa olsun, sağlıklı motordan gelir.

Tek bir sayının ortancadan uzaklığı yalnız bir türü yakalar. Derleme anomalileri üçe ayırır. Nokta anomalisi kendi başına tuhaf olan tek ölçümdür; iki virgül dokuzluk gün böyledir. Bağlamsal anomali, başka bir koşulda olağan olacak bir değerin yanlış koşulda görünmesidir. Derlemenin örneği soğuk bir sıcaklığın kışın olağan, yazın tuhaf olmasıdır; dolum hattında Hikmet Usta'nın Ders 11.2'deki önerisi aynı fikre dayanır: büyük kalıp takılıyken titreşim zaten yüksektir, olağanı kalıba göre ayrı ayrı öğrenmek gerekir. Toplu anomali ise tek tek olağan ölçümlerin birlikte çizdiği tuhaf bir desendir. Her biri eşiğin altında kalan, ama on gün boyunca hiç geri inmeden tırmanan bir titreşim, rulmanın yavaş aşınmasının izi olabilir ve günlük puan onu görmez.

Algılayıcı daha fazlasını da ölçer. Titreşimi bir spektrograma çevirmek mümkündür; Ders 11.3'te sesin frekans bantlarına bölündüğünü görmüştük. Bir rulman kusuru belirli bir frekansta yeni bir tepe bırakır. Yüzlerce bandı tek tek izlemek zordur; burada bir sinir ağı devreye girer.

Ruff ve arkadaşlarının açıklaması şudur: ağ sıkıştırılmış bir özetten geri kurabilmek için verideki tekrar eden desenleri ve ilişkileri öğrenmek zorundadır. Eğitim verisi çoğunlukla olağansa, olağan örneklerde hata düşük, olağan dışında yüksek çıkar ve puan doğrudan bu hata olur. Dar katman şarttır. Kısıt olmasa ağ girdiyi olduğu gibi geri kopyalar ve hiçbir şey öğrenmez.

Bir başka yol hiç olağanı tarif etmeden işe başlar.

Ders 5.3'teki karar ağacı bölmeyi safsızlığı en çok azaltan yerden seçiyordu; yalıtım ağacının kesimleri rastgeledir ve hedef değişken yoktur.

Hangi yöntem seçilirse seçilsin, sonunda bir insan alarma koşar. Ders 7.6'daki taban oranı hesabı burada en çıplak hâliyle döner.

Pompa motoruna dönelim. Puan dakikada bir hesaplanırsa günde bin dört yüz kırk puan çıkar. Binde bir yanlış alarm oranı günde bir virgül dört dört, haftada yaklaşık on alarm demektir. Gerçek rulman arızası üç yılda iki kez gelmiştir. Bakım ekibi ilk haftanın on alarmının onuna da koşup sağlam bir motor bulursa, ikinci haftada daha yavaş koşar. Axelsson'un uyarısı da budur: sık yanlış alarm, nöbetçiye bütün alarmları görmezden gelmeyi öğretir.

Sahada

Nerede yanılır

Anomali tespitinin en sessiz hatası, olağanı yanlış öğrenmektir. Model eğitim verisinin çoğunlukla olağan olduğunu varsayar. Murat Bey'in bir aylık kaydı, motorun rulmanının zaten aşınmaya başladığı bir ayda toplanmışsa, model aşınmayı olağan diye öğrenir. Ruff ve arkadaşları buna eğitim verisinin kirlenmesi der ve örneği de bir sanayi makinesinden verir: fark edilmemiş bir bozulma veri toplanırken başlamış olabilir. Kirlilik arttıkça olağanın sınırı genişler ve tam yakalanması gereken desen içeride kalır. Yeniden oluşturan bir ağ, aşınmış motorun spektrumunu da iyi kurmayı öğrenir.

İkinci hata, yeniyi arızayla karıştırmaktır. Yeni bir kalıp takıldığında ya da algılayıcı yerinden oynadığında puan her ölçümde yükselir. Model "bunu daha önce görmedim" der, bu da doğrudur; ama görülmemiş olan arıza değil, Ders 6.6'daki dağılım kaymasıdır. Puan sebebi söylemez, yalnız uzaklığı söyler.

Üçüncüsü, yüksek başarının yanlış şeyden gelmesidir. Ruff ve arkadaşlarının açık bir kıyas setindeki ahşap yüzey örneğinde, sade bir yoğunluk modeli lekeli tahtaları yüksek başarıyla ayırıyordu; açıklama yöntemi modelin lekeye değil, bütün görüntüde bulunan dikey damarlara baktığını gösterdi. Yazarlar bunu Ders 10.5'teki Akıllı Hans etkisine bağlar. Sınama setinde damarlarla leke tesadüfen birlikte gidiyordu.

Dördüncüsü, sınamanın kendisidir: etiketli arıza yoksa yöntemi sınayacak gerçek örnek de yoktur. Tedarikçinin "yüzde doksan dokuz yakalama" cümlesi, yapay olarak eklenmiş bozukluklarla ölçülmüşse, gerçek rulman aşınmasında hiçbir şey söylemez.

Uygulama

Bir mahalle fırınının günlük doğalgaz tüketimiyle küçük bir alarm sistemini kâğıtta kuracak, sonra nerede körleştiğini bulacaksın.

  1. Fırının hafta içi on olağan günündeki tüketimi, metreküp olarak: kırk bir, kırk üç, kırk, kırk iki, kırk dört, kırk iki, kırk bir, kırk üç, kırk iki, kırk. Ortancayı bul.
  2. Her günün ortancadan uzaklığını yaz, bu uzaklıkların ortancasını al. Bu tipik oynamadır.
  3. Yeni sekiz gün geldi: pazartesi kırk iki, salı kırk üç, çarşamba kırk dört, perşembe kırk beş, cuma kırk altı, cumartesi kırk dokuz, ertesi pazartesi kırk yedi, ertesi salı otuz altı. Her gün için puanı hesapla: ortancadan uzaklık bölü tipik oynama.
  4. Eşiği beş koy. Puanı beş ya da üstü olan günler alarm verir. Hangileri?
  5. Fırıncı cumartesileri iki kat pide çıkardığını söylüyor. Cumartesi alarmı hangi türdür, ve ne yapılırsa susar?
  6. Alarmın hiç görmediği bir desen var. Bul ve tek cümleyle adlandır.
  7. Sistem günde bir değil on dakikada bir puan üretseydi ve yanlış alarm oranı binde iki olsaydı, haftada kaç yanlış alarm beklerdin?

Ortanca kırk ikidir, tipik oynama birdir. Puanlar sırasıyla sıfır, bir, iki, üç, dört, yedi, beş ve altıdır. Alarm üç gündür: cumartesi, ertesi pazartesi ve ertesi salı. Cumartesi bağlamsal bir durumdur; cumartesiler için ayrı bir olağan öğrenilirse susar. Ertesi salının düşüşü fırının erken kapandığı bir gün de olabilir, bir arıza da; puan bunu ayırmaz. Asıl kaçırılan, pazartesiden cumaya her gün bir metreküp artan tüketimdir: beş günün hiçbiri eşiği geçmez, ama birlikte bir kaçağı ya da ayarı bozulan bir brülörü düşündürür. Alarm ancak altıncı iş gününde geldi. On dakikada bir puan günde yüz kırk dört puan eder; binde ikiyle günde sıfır virgül iki dokuz, haftada yaklaşık iki yanlış alarm.

Defter: "Olağan" başlıklı sayfaya fırının ortancasını, tipik oynamasını ve sekiz günün puanlarını yaz. Altına alarm veren günleri, kaçırılan deseni ve haftalık yanlış alarm sayısını ekle; en alta da bu sistemde alarma kimin koşacağını ve haftada kaç alarma dayanabileceğini not et.

Hata köşesi

Yaygın yanlış"Etiketli arıza yoksa makine öğrenmesi kullanılamaz."
Doğrusu

Olağanın etiketli olması çoğu zaman yeter; model sağlıklı veriden bir düzen öğrenir ve sapmayı puanlar. Bedeli şudur: model neyin arıza olduğunu bilmez, yalnız neyin alışılmadık olduğunu bilir. Alışılmadığın arıza olup olmadığına bir insan bakar.

Yaygın yanlış"Yanlış alarm oranı binde birse alarmların binde biri yanlıştır."
Doğrusu

Binde bir, sağlıklı ölçümlerin ne kadarına alarm verildiğidir. Alarmların ne kadarının gerçek olduğu taban orana bağlıdır. Gerçek olay yirmi binde birse, binde birlik bir yanlış alarm oranı alarmların yüzde doksan beşini yanlış yapar.

Sorumluluk

Murat Bey sistemi kurmadan önce kararları yazıya döktü. Alarm bakım şefine gidecek; motoru durdurma kararı modelde değil, motoru dinleyen kişide kalacak. Haftada en fazla kaç alarma bakılabileceğini bakım ekibi söyleyecek, eşik bu sayıya göre ayarlanacak ve tarihiyle kayda geçecek. Her alarmın sonucu, sağlam ya da arızalı, deftere yazılacak; böylece üç yıl sonra sistemin gerçekten neyi yakaladığını doğrulamak mümkün olacak. Yeni kalıp takıldığında iki haftalık yeniden öğrenme süresinde alarm yerine Hikmet Usta'nın tornavidası çalışacak. Sessiz kalan bir sistemin sorumluluğu da sistemi kurana aittir: kaçırılan bir arızanın faturası, yanlış alarmların yorduğu ekibe değil, eşiği koyanın imzasına düşer.

Kapanış

  1. Anomali tespiti, etiketli arıza neredeyse yokken olağanı öğrenip sapmayı puanlar; puan ortancadan uzaklık gibi sade bir sayı, bir ağın yeniden oluşturma hatası ya da yalıtım ormanının yol uzunluğu olabilir.
  2. Anomalinin türü yöntemi belirler: tek ölçümdeki sapma, yanlış koşuldaki olağan değer ve tek tek olağan ölçümlerin birlikte çizdiği desen ayrı araçlar ister.
  3. Gerçek olay seyrekse alarmların çoğu yanlıştır; eşik, alarma koşacak ekibin kapasitesine ve kaçırılan olayın bedeline göre seçilir ve her alarmın sonucu kayda geçer.

Üç soru

  1. Aynur Hanım'ın on günlük kaydında ortanca iki virgül iki, tipik oynama sıfır virgül birse, iki virgül altılık ve bir virgül altılık günlerin puanları kaçtır?
  2. Yalıtım ormanı kalabalığın içindeki bir noktayı neden kenardaki bir noktadan daha geç yalnız bırakır?
  3. Murat Bey'in bir aylık sağlıklı kaydı rulmanın aşınmaya başladığı bir ayda toplanmış olsaydı, yeniden oluşturan bir ağ ne öğrenirdi?

Yanıtlar

  1. İki virgül altı, ortancadan sıfır virgül dört uzaktır; tipik oynamanın dört katı, puanı dört. Bir virgül altı, sıfır virgül altı uzaktır; puanı altı. Puan uzaklığın yönüne bakmaz, düşük titreşim de olağan dışı sayılır; bir ölçümün düşük çıkması algılayıcının gevşemesini de gösterebilir.
  2. Rastgele bir kesim, kalabalığın içindeki noktayı genellikle komşularıyla birlikte aynı tarafa bırakır; onu tek başına ayırmak için pek çok kesim gerekir. Kenardaki nokta boş bir bölgede durduğu için birkaç kesimde yalnız kalır. Liu ve arkadaşlarının örneğinde bu, ortalamada yaklaşık on üçe karşı dört bölmeydi.
  3. Ağ, aşınmış motorun spektrumunu da olağan diye kurmayı öğrenirdi. Aşınmanın bıraktığı tepe yeniden oluşturma hatasını yükseltmezdi, çünkü eğitimde vardı. Sistem tam yakalaması gereken şeye kör kalır; eğitim kaydının hangi dönemde ve hangi bakım durumunda toplandığı bu yüzden kayda geçer.

Sonraki derse köprü

Motorun titreşimi, fırının doğalgazı, bir hastanın kilosu: bu modülün bütün verisi zaten sayıydı ve sıraya dizilmişti. Dil öyle gelmez. Bir dil modeli bir cümleyi okumadan önce onu parçalara bölmek ve her parçayı bir sayıya çevirmek zorundadır. Seviye 3 tam bu adımla, Ders 12.1, Token ile açılıyor: metin hangi parçalara bölünür, ve eklerle uzayan "evlerimizden" gibi tek bir Türkçe kelime kaç parçaya, kaç sayıya dönüşür?

Anlamadığın bir yer mi var?

Mentor yalnız bu dersin metnine dayanarak cevap verir. Metinde geçmeyen bir şey sorarsan uydurmaz, geçmediğini söyler.