Gözetimsiz öğrenme bağımlı değişkenin olmadığı, yalnızca girdi değişkenlerinin olduğu problemlerde kullanılan makine öğrenmesi yöntemleridir. Veri setindeki gizli yapıları ve desenleri keşfetmek için istatistiksel ve matematiksel teknikleri kullanır. Bu sayede veriler gruplara ayrılabilir, veri setindei özeller çıkarılabilir, benzerlik veya farklılıklar belirlenebilir.
Gözetimsiz öğrenme; veri analizi, veri keşfi ve veri ön işleme gibi birçok alanda kullanılmaktadır. Bu yöntem verilerin anlaşılması, görselleştirilmesi ve daha sonra diğer makine öğrenme tekniklerine uygulanması için temel adım olarak da kullanılabilir.
Aşağıdaki görseldeki gibi çeşitli lego parçalarının bir arada olduğu bir yığın düşünelim. Her bir lego parçası bir gözlem birimini temsil ediyor olsun.
Bu lego parçalarını renklerine göre ayırdığımızda, aşağıdaki görseldeki gibi benzer renkleri bir araya getirmemiz gerekecektir. Oluşturduğumuz bu gruplar “küme”lerdir. Örneğin lego yığınına yeni birkırmızı parçanın geldiğini düşünelim. Bu yeni parçanın hangi kümeye dahil olacağına oluşturmuş olduğumuz kümelere bakarak karar verebiliriz. Böylece “sınıflandırma” yapmış oluruz.
Gözetimsiz öğrenme (Unsupervised Learning) yöntemlerinden yaygın olarak kullanılan bazıları aşağıdaki gibidir:
Şimdi bu yöntemleri inceleyelim.
Kümeleme problemlerinde kullanılan en basit gözetimsiz öğrenme algoritmalardan biridir. Etiketlenmemiş veriler, kümeleme yöntemi ile gösterdikleri özelliklere göre sınıflandırılır. Binlerce verinin olduğu bir veri havuzunda veriler, benzer özelliklerine göre kümelere ayrılır ve birbirlerine yakınlığına bağlı olarak belli sayıda veri kümeleri oluşur.
K-Means kümeleme algoritması, verilerde açıkça etiketlenmemiş grupları ve örüntüleri bulmak ve daha iyi kararlar almak için kullanılır. Algoritma çalıştırılıp gruplar tanımlandıktan sonra herhangi bir yeni veri kolayca bağlı olacağı gruba atanabilir.
K-ortalamalar yöntemi (görsel kaynağı)
Yukarıdaki şekilde birinci grafikte görülebileceği gibi, gözlemler birbirlerine yakınlıklarına göre kümelere ayrıldığında ikinci gradikteki gibi kümelendiklerini gözlemleriz. Kümelemede kaç grup oluşacağı verinin içindeki nesnelerin birbirine benzerlik derecesine göre değişmektedir.
K-Means algoritması şu şekilde çalışır:
Kullanım alanlarından birkaçı ise aşağıdaki gibi sıralanabilir:
Hiyerarşik kümeleme algoritmasının temel mantığı, gözlemlerin birbirlerine olan benzerliklerine göre alt kümelere ayrılmasına dayanmaktadır. Bu kümelerin hiyerarşisi, bir ağaç (veya dendrogram) olarak temsil edilir. Ağacın kökü, tüm örnekleri toplayan benzersiz küme iken yapraklar yalnızca bir örnek içeren kümelerdir.
Hiyerarşik kümelemenin günlük yaşamımızda biyoloji (DNA dizilerinin kümelenmesi), görüntü işleme, pazarlama, ekonomi ve sosyal ağ analizi dahil (ancak bunlarla sınırlı olmamak üzere) çeşitli uygulamaları vardır.
Birleştirici (agglomerative) ve bölücü (divisive) olmak üzere iki temel yaklaşım mevcuttur.
Bu yaklaşım aşağıdan yukarıya doğrudur. Her gözlem tek bir küme olarak kabul edilerek başlanır. Ardından, yalnızca bir küme elde edilene kadar kümeler yinelemeli olarak birleştirilir.
Birleştirici kümeleme yaklaşımının dendogramı (görsel kaynağı)
Yukarıdaki dendogramı incelediğimizde her bir hayvanın benzerliklerine göre üç farklı kümeye (kuşlar-memeliler-üçten fazla bacaklılar) alındığını, daha sonra kuşlar ve memeliler kümesini birleştirip “omurgalılar” kümesinin oluşturulduğunu görmekteyiz. Son olarak da omurgalılar ve üçten fazla bacaklılar birleştirilerek “hayvanlar” ana kümesi elde edilmiştir.
Bu yaklaşım yukarıdan aşağıya doğrudur. Tüm veri noktaları benzersiz bir küme olarak kabul edilerek başlanır. Ardından, tüm veri noktaları benzersiz olana kadar ayrılır.
Bölücü kümeleme yaklaşımının dendogramı (görsel kaynağı)
Dendogramı incelediğimizde ilk başta tek bir “hayvanlar” kümesinden oluştuğunu sonra bölünerek “omurgalılar” ve “üçten fazla bacaklılar” kümelerine ayrıldığını, “omurgalılar” kümesinin de “kuşlar” ve “memeliler” kümesine ayrıldığını görmekteyiz. Her bir veri noktası benzersiz olana kadar bölünme işlemi devam etmiştir.
Hiyerarşik kümeleme analizinin kullanım alanlarından birkaçı şu şekildedir:
Çok değişkenli verinin daha az sayıda değişken ile temsil edilmesidir. Böylece az miktarda bilgi kaybı göze alınarak değişken boyutu indirgenmiş olur.
Temel bileşen analizi, eldeki veriyi daha az sayıda değişkenle ifade edebilecek en iyi dönüşümü belirlemeyi amaçlar. Dönüşüm sonrasında elde edilen değişkenler ilk değişkenlerin temel bileşenleri olarak adlandırılır. İlk temel bileşen varyans değeri en büyük olandır ve diğer temel bileşenler varyans değerleri azalacak şekilde sıralanır. Gürültüye karşı düşük hassasiyet, bellek ve kapasite ihtiyaçlarının azalması, az boyutlu uzaylarda daha etkin çalışması bu yöntemin temel avantajlarındandır (Sütçüler E., 2006).
Aşağıdaki grafiklerden üç boyutlu verinin PCA yöntemi uygulanarak 2 boyuta indirgenmesi görülebilmektedir. Oluşan bileşenler arasında korelasyon yoktur. Varyansa dayalı gruplama yapılır.
Temel bileşen analizi (görsel kaynağı)
Kullanım alanlarından birkaçı aşağıdaki gibi sıralanabilir:
Her ne kadar benzer amaçlar için kullanılarsa da yukarıda bahsedilen üç yöntem amaç, kullanılan veri tipi, grup sayısı ve hesaplama süresi gibi başlıklar altındaki aşağıdaki gibi kıyaslanabilir. Her bir yöntem kendi benzersiz özellikleri ve kullanım alanlarına sahiptir. Doğru yöntemi seçmek, veri setinin özelliklerine ve analiz amaçlarına bağlıdır.
Yöntem | Amaç | Veri Tipi | Grup Sayısı | Hesaplama Süresi |
K-Means | Veriyi belirli sayıda küme/grup halinde bölerek benzerliklere dayalı grupları bulmayı hedefler. | Numerik veriler üzerinde yaygın olarak kullanılır. | Önceden belirlenmiş bir grup sayısını kullanır. | Genellikle hızlı bir şekilde çalışır. |
PCA | Verinin boyutunu azaltmayı ve verideki değişkenler arasındaki ilişkileri anlamayı amaçlar. | Hem numerik hem de kategorik verilerle çalışabilir. | Verinin boyutunu azaltırken yeni bir gruplama yapısı oluşturmaz. | Veri boyutunu azaltırken bazen hesaplama açısından zaman alabilir. |
Hiyerarşik Kümeleme | Veriyi hiyerarşik bir yapıda gruplandırarak benzerlikleri göstermeyi hedefler. | Numerik veriler üzerinde yaygın olarak kullanılır. | Grupları hiyerarşik bir yapıda oluşturur. | Zaman alıcı olabilir. |
Bu yazımızda uygulamada sıkça karşılabildiğimiz popüler gözetimsiz öğrenme yöntemlerinden bahsettik. Genel olarak veri kümeleme, boyut azaltma, veriler arasındaki gizli örüntüleri ortaya çıkartmak için kullanılan gözetimsiz öğrenme yöntemlerine daha detaylı bir şekilde bakmak için Miuul’un sunmuş olduğu gerek bireysel eğitimlere, gerekse kariyer yolculuklarına göz atabilirsiniz.
Kaynaklar
Veri Bilimi Okulu, Makineler nasıl öğrenir
Veri Bilimi Okulu, Hiyerarşik kümeleme
DataCamp, An introduction to hierarchical clustering in Python
Medium, Madushan D., Introduction to K-means clustering
scikit-learn, Clustering
Sütçüler E., “Gerçek Zamanlı Video Görüntülerinden Yüz Bulma ve Tanıma Sistemi”, Yüksek Lisans tezi, Yıldız Teknik Üniversitesi Fen Bilimleri Enstitüsü, 90 s, 2006
Javatpoint, K-Means Clustering Algorithm
NLPCA, PCA - Principal Component Analysis