Anasayfa / Büyük Veri / Apache Spark K-Ortalamalar Tekniği ile Bilgisayar Ağlarında Anormallik Tespiti Bölüm 2/3

Apache Spark K-Ortalamalar Tekniği ile Bilgisayar Ağlarında Anormallik Tespiti Bölüm 2/3

Merhabalar Apache Spark ve K-Ortalamalar tekniğini kullanarak bilgisayar ağlarında anormallik tespiti yazısına devam ediyoruz. İlk yazımız buradadır. İlk yazıda K-Ortalamalar tekniğine genel bir giriş yaptık, veriyi yükledik, veri keşfi ve temizlik yaptık. Bu yazımızda veri ön işlemesi ile devam edeceğiz.

Kategorik Nitelikleri Dönüştürmek

Apache Spark K-Ortalamalar algoritması, girdi olarak nümerik değerler istediği için kategorik niteliklerimizi nümerik yapmamız gerekiyor. Bunun için Spark ML kütüphanesini kullanacağız ve işlem sıralamamız da şu şekilde olacak; StringIndexer ile string değerleri rakamlarla eşleştireceğiz. Sonra oneHotEncoder ile vector haline getireceğiz. Son olarak VectorAssembler ile hepsini birleştireceğiz. Ürettiğimiz en son sütun vector türünden olacak.

Kategorik niteliklerimiz üzerinde dönüşüm gerçekleştiren ve sonuç olarak Pipeline nesnesi ve oneHotEncoder sütun isminden oluşan bir tuple döndüren fonksiyon aşağıdadır:

Şimdi yukarıdaki fonksiyonu içinde kullanacak, K-Ortalamalar modeli oluşturacak ve hepsini bir pipeline içinde kullanacak esas fonksiyonu yazalım.

Şimdi yukarıda oluşturduğumuz esas fonksiyonu herhangi bir k değeri için çalıştıralım. Önce bakalım çalışıyor mu? Sonra da hızlı çalışıp çalışmadığını kontrol edelim.

Optimal küme sayısını belirlemek için kullanılan yöntemlerden birisi de dirsek (elbow method) metodudur. Bu metoda göre küme sayısı y ekseni, kümeler içi hataların kareler toplamı (WCSS) da x ekseninde olacak şekilde çizgi grafiği çizilir. Grafikte hata skoru hızla düşerken belirli bir küme sayısından sonra düşüş hızı yavaşlar ve eğimi azalır. İşte bu noktada bir dirsek oluşur. Dirseğin oluştuğu noktanın x eksenindeki karşılığı küme sayısını verecektir. Yukarıda ben bir k değeri için modeli çalıştırmıştım. Şimdi 10 ile 200 arasında 20’şer artacak şekilde k değerini belirleyecğim ve modeli 10 defa çalıştıracağım. Elde edeceğim küme sayısı ve skorları ile excelde grafik çizeceğim. Önce modeli farklı k değerleri ile 10 tekrar çalıştıralım. Bir hatırlatma: Bu hesaplama çok uzun sürebilir, bende yaklaşık beş saat sürdü.

Çıktıyı excele aktarıp bazı düzenlemelerden sonra grafiğini çizdirelim.


Gördüğümüz gibi 110 civarında birden eğim azalıyor. Küme sayısı olarak k parametresini 110 vererek tekrar çalıştıralım.

Peki bu 110 ne anlama geliyor? Tüm nitelikleri kullanarak veriyi en optimum küme sayısı dediğimiz 110 kümeye ayırabiliyoruz. Peki bunlardan hangisi veya hangileri bilgisayar ağında anormallik gösteren grup? Üçüncü yazı ile devam edeceğiz.

Hakkında Erkan ŞİRİN

GÖZ ATMAK İSTEYEBİLİRSİNİZ

Microsoft Excel [2013] – İki Farklı Tablonun Tek PivotTable’ da Birleştirilmesi Bölüm-1/3

Bu yazımda  birden fazla veriye ait tablonun tek bir pivottable da birleştirilmesi anlatılacaktır.Yapılan işlemlerin Excel …

Bir Yorum

  1. Merhaba hocam. 3. Yazıyı ben göremedim acaba devamı gelecek mi?

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir