BÖLÜMLEYCİ KÜMELEME ALGORİTMALARININ FARKLI VERİ YOĞUNLUKLARINDA KARŞILAŞTIRMASI. Hussein Ali Ridha AL-ZAND YÜKSEK LİSANS TEZİ BİLGİSAYAR BİLİMLERİ

Ebat: px
Şu sayfadan göstermeyi başlat:

Download "BÖLÜMLEYCİ KÜMELEME ALGORİTMALARININ FARKLI VERİ YOĞUNLUKLARINDA KARŞILAŞTIRMASI. Hussein Ali Ridha AL-ZAND YÜKSEK LİSANS TEZİ BİLGİSAYAR BİLİMLERİ"

Transkript

1 BÖLÜMLEYCİ KÜMELEME ALGORİTMALARININ FARKLI VERİ YOĞUNLUKLARINDA KARŞILAŞTIRMASI Hussein Ali Ridha AL-ZAND YÜKSEK LİSANS TEZİ BİLGİSAYAR BİLİMLERİ GAZİ ÜNİVERSİTESİ BİLİŞİM ENSTİTÜSÜ 2013 ANKARA

2 Hussein Ali Ridha AL-ZAND tarafından hazırlanan BÖLÜNMELİ KÜMELEME ALGORİTMALARININ FARKLI VERİ YOĞUNLUKLARINDA KARŞILAŞTIRMASI adlı bu tezin Yüksek Lisans tezi olarak uygun olduğunu onaylarım. Yrd. Doç. Dr. Hacer KARACAN Tez Yöneticisi Bu çalışma, jürimiz tarafından oy birliği ile Bilgisayar Bilimleri anabilim dalında Yüksek lisans tezi olarak kabul edilmiştir. Başkan : Doç. Dr. Erdoğan DOĞDU Üye Üye : Doç. Dr. Suat ÖZDEMİR : Yrd. Doç. Dr. Hacer KARACAN Tarih : 31/10/2013 Bu tez, Gazi Üniversitesi Bilişim Enstitüsü tez yazım kurallarına uygundur.

3 TEZ BİLDİRİMİ Tez içindeki bütün bilgilerin etik davranış ve akademik kurallar çerçevesinde eldeedilerek sunulduğunu, ayrıca tez yazım kurallarına uygun olarak hazırlanan buçalışmada orijinal olmayan her türlü kaynağa eksiksiz atıf yapıldığını bildiririm. Hussein Ali Ridha AL-ZAND

4 iv BÖLÜNMELİ KÜMELEME ALGORİTMALARININ FARKLI VERİ YOĞUNLUKLARINDA KARŞILAŞTIRMASI (YÜKSEK LİSANS TEZİ) Hussein Ali Ridha AL-ZAND GAZİ ÜNİVERSİTESİ BİLİŞİM ENSTİTÜSÜ Ekim 2013 ÖZET Teknolojinin yaygın kullanılmasının neticesinde hacmi her geçen gün artan büyük veri yığınları ortaya çıkmaya başlamıştır. Bu kadar büyük boyutta verinin analizi ve içindeki herhangi bir bilgiye ulaşmak basit inceleme yöntemleriyle oldukça zor olduğundan veri madenciliği devreye girmiştir. Veri madenciliği, çok büyük veri tabanlarından, önceden bilinemeyen, geçerli ve kullanılabilir bilginin çıkarılma işlemi olarak ifade edilmektedir. Başka bir deyişle veri madenciliği, çok büyük veri tabanlarındaki ya da veri ambarlarındaki veriler arasında bulunan ilişkiler, örüntüler, değişiklikler, sapma ve eğilimler, belirli yapılar gibi ilginç bilgilerin ortaya çıkarılması işlemidir.veri madenciliği alanında son zamanlarda yaygın bir şekilde kullanılan yöntemlerden biri kümeleme yöntemidir. Kümeleme, veri setindeki bilgileri farklı kümelere ayırarak küme içindeki verilerin özelliklerinin benzerlik oranı minimum ve kümeler arasında benzerlik oranını maksimum yapmaktadır. Bu çalışmada bölümleyici kümeleme yöntemleri ele alınarak farklı dağılımlı veri setleri üzerinde bölümleyici kümeleme algoritmalarının karşılaştırması gerçekleştirilmiştir. Bölümleyici kümeleme algoritmaları arasından "k-means" ve "kernel k-means" algoritmaları seçilmiştir. Farklı dağılımlı veri setlerini kümeleyerek iki algoritmanın hızı, kümeleme kalitesi ve

5 v bellek kaplaması açısından bilgiler elde edilmiş ve bu bilgiler ışığında iki algoritmanın karşılaştırma sonuçları sunulmuştur. Bilim Kodu : 902,1.014 Anahtar Kelime : Kümeleme, veri madenciliği, kümelemealgoritmaları,kmeans algoritması, kernel metotları, kümeleme analizi. Sayfa Adedi : 92 Tez Yöneticisi : Yrd. Doç. Dr. Hacer KARACAN

6 vi COMPARISON OF PARTITIONING-BASED CLUSTERING ALGORITHMS ON DIFFERENTLY DISTRIBUTED DATA (M.Sc. Thesis) Hussein Ali Ridha AL-ZAND GAZİ UNIVERSITY INFORMATICS INSTITUTE October 2013 ABSTRACT As a result of widespreadtechnology usage, large volumes of collected data began to emerge. It is impossible to discover and analyze any information in such large data collection, so data mining comes into play. Data mining is a process that discovers unpredictable and usable knowledge from databases. In other words, data mining is the process of finding relation patterns, changes, deviations and trends, as well as interesting information like specific structures from large databases. One of the widely used data mining methods is clustering, which divides the data set into different clusters while trying to make the likelihood ratio as minimum inside the cluster and as maximum among other clusters depending on the options in the database. In this study, partitioningbased clustering methods are compared by applying them on data sets with different distribution patterns. We used k-means and kernel k-means partitioning algorithms for clustering data sets. By applying clustering operations on differently distributed data sets we compared the speed, clustering quality and the size of memory used in clustering for these algorithms. The information that we gathered by this comparison is presented and discussed in the related sections of this thesis.

7 vii Science Code : 902,1.014 Key Words : Clustering, data mining, cluster algorithms, K-means algorithm, kernel methods, cluster analysis. Page Number: 92 Adviser : Assist. Prof. Dr. Hacer KARACAN

8 viii TEŞEKKÜR Bu araştırmanın konusu, deneysel çalışmaların yönlendirilmesi, sonuçların değerlendirilmesi ve yazımı aşamasında yapmış olduğu büyük katkılarından dolayı tez danışmanım Sayın Yrd. Doç. Dr. Hacer KARACAN, her konuda öneri ve eleştirileriyle yardımlarını gördüğüm hocalarıma ve arkadaşlarıma teşekkür ederim. Bu araştırma boyunca maddi ve manevi desteklerinden dolayı aileme teşekkür ederim.

9 ix İÇİNDEKİLER ÖZET...iv ABSTRACT...vi TEŞEKKÜR...viii İÇİNDEKİLER...ix ÇİZELGELERİN LİSTESİ...xi ŞEKİLLERİN LİSTESİ...xiii SİMGELER VE KISALTMALAR...xiv 1. GİRİŞ Literatürde yapılan çalışmalar Veri Madenciliği Veri madenciliğinde bilgi keşif sürecinin aşamaları Veri Madenciliği modelleri Sınıflandırma Modelleri ve algoritmaları Kümeleme modelleri Kümeleme Analizi ve Algoritmaları Kümeleme Analizi Aralık Ölçekli değişkenler Binary değişkenler Kategorik değişkenler Sıralı değişkenler Oran - Ölçekli değişkenler Karışık değişkenler

10 x 3.2.Kümeleme algoritmaları Sonek Ağaçları algoritması DBSCAN Algoritması (Density Based Spatial Clustering of Applications with Noise) Bölümleyici kümeleme algoritmaları K-Medoid algoritması Clara ve Clarans algoritması Fuzzy C-means Algoritması K-Means Algoritması Kernel esaslı kümeleme ve Kernel k-means algoritması Uygulama Program Ara Yüzü Karşılaştırma Büyük veri setleri karşılaştırma sonuçları Orta hacimli veri setleri karşılaştırma sonuçları Küçük hacimli veri setleri karşılaştırma sonuçları Sonuç İki algoritmanın farklı yoğunluklu ve aynı hacimli veri setlerinde uygulama sonucu karşılaştırması Algoritmaların farklı yoğunluklu ve farklı hacimli veri setlerinde uygulama sonucu karşılaştırması KAYNAKLAR...87 ÖZGEÇMİŞ...92

11 xi ÇİZELGELERİN LİSTESİ Çizelge Sayfa Çizelge 3.1. Hasta bilgileri tablosu Çizelge 3.2. Hasta test 1 sonucu Çizelge 3.3. Hasta test 2 sonucu Çizelge 3.4. Hasta testlerinin sonucu Çizelge 5.1. k-means algoritması (Öklid formülü) kernel k-means algoritması (RBF fonksiyonu) büyük hacimli veri setleri üzerinde karşılaştırma tablosu sonucu Çizelge 5.2. k-means algoritması (Öklid formülü) kernel k-means algoritması (Polynomial fonksiyonu) büyük hacimli veri setleri üzerinde karşılaştırma Tablosu Sonucu Çizelge 5.3. k-means algoritması (Kosinüs formülü) kernel k-means algoritması (RBF fonksiyonu) büyük hacimli veri setleri üzerinde karşılaştırma tablosu sonucu Çizelge 5.4. k-means algoritması (Kosinüs formülü) kernel k-means algoritması (Polynomial fonksiyonu) büyük hacimli veri setleri üzerinde karşılaştırma tablosu sonucu Çizelge 5.5. k-means algoritması (Kosinüs formülü) k-means algoritması (Öklid formülü) büyük hacimli veri setleri üzerinde karşılaştırma tablosu sonucu Çizelge 5.6. kernel k-means algoritması (RBF fonksiyonu) kernel k-means algoritması (Polynomial fonksiyonu) büyük hacimli veri setleri üzerinde karşılaştırma tablosu sonucu Çizelge 5.7. k-means algoritması (Öklid formülü) kernel k-means algoritması (RBF fonksiyonu) orta hacimli veri setleri üzerinde karşılaştırma tablosu sonucu Çizelge 5.8. k-means algoritması (Öklid formülü) kernel k-means algoritması (Polynomial fonksiyonu) orta hacimli veri setleri üzerinde karşılaştırma tablosu sonucu

12 xii Çizelge Sayfa Çizelge 5.9. k-means algoritması (Kosinüs formülü) kernel k-means algoritması (RBF fonksiyonu) orta hacimli veri setleri üzerinde karşılaştırma tablosu sonucu Çizelge k-means algoritması (Kosinüs formülü) kernel k-means algoritması (Polynomial fonksiyonu)orta hacimli veri setleri üzerinde Karşılaştırma tablosu sonucu Çizelge k-means algoritması (Kosinüs formülü) k-means algoritması (Öklid formülü) orta hacimli veri setleri üzerinde karşılaştırma tablosu sonucu Çizelge kernel k-means algoritması (RBF fonksiyonu) kernel k-means algoritması (Polynomial fonksiyonu)orta hacimli veri setleri üzerinde karşılaştırma tablosu sonucu Çizelge k-means algoritması (Öklid formülü) kernel k-means algoritması (RBF fonksiyonu) küçük hacimli veri setleri üzerinde karşılaştırma tablosu sonucu.. 66 Çizelge k-means algoritması (Öklid formülü) kernel k-means algoritması (Polynomial fonksiyonu) küçük hacimli veri setleri üzerinde karşılaştırma tablosu sonucu Çizelge k-means algoritması (Kosinüs formülü) kernel k-means algoritması (RBF fonksiyonu) küçük hacimli veri setleri üzerinde karşılaştırma tablosu sonucu Çizelge k-means algoritması (Kosinüs formülü) kernel k-means algoritması (Polynomial fonksiyonu) küçük hacimli veri setleri üzerinde karşılaştırma tablosu sonucu Çizelge k-means algoritması (Kosinüs formülü) k-means algoritması (Öklid formülü) küçük hacimli veri setleri üzerinde karşılaştırma tablosu sonucu...69 Çizelge kernel k-means algoritması (RBF fonksiyonu) kernel k-means algoritması (Polynomial fonksiyonu) küçük hacimli veri setleri üzerinde karşılaştırma tablosu sonucu

13 xiii ŞEKİLLERİN LİSTESİ Şekil Sayfa Şekil 2.1. Veri Madenciliği Bilgi Keşif Sürecinin Aşamaları...9 Şekil 2.2. Veri Madenciliği Modelleri 10 Şekil 3.1. Ağacın genel yapısı Şekil 3.2. Bilişim kelimesi için Sonek Ağacı.30 Şekil 3.3. Eps uzaklığı...31 Şekil 3.4. A) Doğrudan Yoğunluk Erişilebilir B) Yoğunluk Erişilebilir noktalar.32 Şekil 3.5. DBSCAN algoritması.33 Şekil 3.6. K-medoid algoritması A) sınıflandırmadan önce veri seti B) İlk rastgele seçilen temsilcilere göre gruplandırmak C) İkinci hesaplanan temsilcilere göre gruplandırmak sonucu Şekil 3.7. A) K-means kümeleri B) fuzzy C-means kümeleri...38 Şekil 3.8. K-means algoritması ile guruplara ayrılmış veri tabanı nesneleri K=3..40 Şekil 4.1. Kümeleme uygulamasının ekran görüntüsü Şekil 4.2. Veri seti seçme ekranı. 49 Şekil 4.3. veri seti seçmek için göz at ekran görüntüsü.. 49 Şekil 4.4. k-means ve kernel k-means algoritmaların çalıştıran kısmının ekran görüntüsü 50 Şekil 4.5. k-means algoritması için benzerlik formülü seçim kutusu.51 Şekil 4.6. k-means algoritması ve kernel k-means algoritmasının sonuç bölümü..52 Şekil 4.7. k-means algoritması ve kernel k-means algoritmasının kümeleme yapmış ekran çıktısı...54

14 xiv SİMGELER VE KISALTMALAR Bu çalışmada kullanılmış bazı simgeler ve kısaltmalar, açıklamaları ile birlikte aşağıda sunulmuştur. Simgeler δ Log Açıklama Delta Logaritma Toplam µ Mu exp Eksponansiyel Fi

15 xv Kısaltmalar Açıklama VTBK MKM FCM KDD SVM DBSCAN CLARA CLARANS PAM RBF Veri Tabanlarında Bilgi Keşfi Modified K-Means Fuzzy C-Means Knowledge Discovery in Database Support Vector Machine Density-Based Spatial Clustering of Applications With Noise Clustering Large Applications Clustering Large Applications Based on Randomized Search Partitioning Around Medoids Radial Basis Function

16 1 1. Giriş Her geçen gün teknoloji büyük gelişmeler göstermektedir. Bu gelişmelerle birlikte veri boyutları da aynı oranda artmaktadır. Yüksek kapasiteli işlem yapma gücünün ucuzlamasının bir sonucu olarak, veri saklama hem daha kolaylaşmış, hem de verinin kendisi ucuzlamıştır. Veri tabanlarında saklanan veri, bir arşive benzetilirse, bu veri arşivi tek başına değersizdir ve kullanıcı için çok fazla bir anlam ifade etmez. Ancak bu veri arşivi, belirli bir amaç doğrultusunda sistematik olarak işlenir ve analiz edilirse, değersiz görülen veri yığınında, amaca yönelik sorulara cevap verebilecek çok değerli bilgilere ulaşılabilir [1]. Büyük veri tabanlarının içinde bulunan değerli ve aranan veya bilinmeyen bilgiyi ortaya çıkarmak için bulunan uygulamalar ve mümkün çözümler üretmek için önemli bir araştırma alanı olan, veri tabanlarında bilgi keşfi (VTBK) ortaya çıkmıştır. veri madenciliği VTBK sürecinin içerisinde modelin değerlendirilmesi aşamalarından ortaya çıkan en önemli kesimi oluşturmaktadır. Bundan dolayı birçok kaynakta VTBK ile veri madenciliği eş anlamlı olarak kullanılmaktadır. Veri madenciliği verilerin içindeki bilgilerin, ilişkilerin, değişikliklerin, hataların ve istatistiksel olarak önemli olan bilgi ve değerlerin otomatik olarak keşfedilmesidir [2].Veri madenciliği VTBK tanımından yola çıkarak büyük miktardaki veriden anlamlı bilginin çıkarılması ile ilgili bir yöntemden ibarettir. Başka bir deyişle önceden bilinmeyen yararlı bilginin büyük miktardaki veri arasından bulunup çıkarılmasıdır. Büyük miktardaki veri setinde bulunan nesnelerin keşfedilmesinde ve bu verilerle ilgili tahminler yapılmasında kullanılabilecek ilişkilerin çıkarılmasıdır [3]. Veri madenciliğinin veritabanı üzerinde uygulanmasının yanı sıra kullanıldığı diğer alanlara da bakarsak, son yıllarda sıkça ihtiyaç duyulan ve üzerinde bulunan dev veri tabanlarının güçle kontrol edilmesi nedeni ile web sitelerinin verileridir. Web verilerini kontrol etmek ve içindeki bilgileri yararlı ve anlaşılan bir hale getirtmek için veri madenciliği yöntemleri kullanılmıştır ve buna Web madenciliği adı verilmiştir. Web madenciliği, WWW üzerinden kullanışlı bilgiyi keşfetme ve analiz etme işlemi şeklinde geniş olarak tanımlanır. Bu geniş tanım bir yandan milyonlarca siteden, çevrimiçi (online) veri tabanlarından, kaynakların otomatik

17 2 olarak aranması ve elde edilmesi işlemi olan Web İçerik Madenciliğini tarif ederken, diğer yandan bir yada daha çok Web sunucusu veya çevrimiçi servisten kullanıcı erişim desenlerinin keşfi ve analizi işlemi olan Web Kullanım Madenciliğini tarif eder. Daha sonradan bu iki kategoriye, Web sitelerinin bağlantı (link) yapılarını da kapsayan yapısal özetini üreten Web Yapı Madenciliği de eklenmiştir [4]. Veri Madenciliğinin bir büyük dalını temsil eden ve son zamanlarda çok ilgi çeken belirleyici yöntemlerden olan kümeleme yöntemidir. Kümeleme veri tabanındaki nesneleri genel olarak belli sayıda kümelere ayırmaktadır. Aynı özelliği taşıyan nesneler aynı grupta olurken birbirinden farkı çok olan nesneler farklı gruplarda yer almalarını sağlamaktadır, yöntemin hedeflediği gruplar arası farkı maksimuma yükseltirken gruplar içi minimum olmasıdır. Kümelenme verileri gruplandırarak birkaç homojen gruba dağıtılmasını amaçlayan bir veri analiz aracıdır. Yıllar çalışmalarının ardından sunulan kümeleme bazı uygulamalarda kümelemeye ihtiyaç duyurduğundan dolayı çıkan sorunları ortadan kaldırmak amacı ile geliştirilmiştir. Başka bir deyişle çalışılan fenomeni anlamak veya yorumlamak için çok sayıda bilim dalının verilerin kümelemesine ihtiyaç durmuştur[5]. İlk yaklaşımları sezgisel veya geometrik prosedürleri dayanmaktaydı. Çift gözlemler arasındaki benzersizliği göze alarak hesaplanmaktadır. Kümeleme ayrıca olasılık çerçevesinde de kıyaslanmaktadır, kümeleme kavramının şekillendirmesini kendi olasılık dağıtımında yapmaktadır. Günümüzde çoğunlukla hesaplama işlemleri çok boyutlu yöntemleri kullanarak gerçekleşmektedir ki bu yöntemlerle ilgili model tabanlı metotlarla gerçekleşmektedir. Çok boyutlu kümeleme yönteminin günümüzde bir çok bilim dalının ihtiyaç bulduğu bir yöntemdir ve buna da örnek olarak resim analizidir. Çok boyutlu kümeleme yöntemi zor olduğu kadar etkili bir yöntemdir, içinde hesaplamaları yapmak için kullanılmakta olan genellikle gauss formülünü kullanılmaktadır[6].

18 Literatürde yapılan çalışmalar Son yıllarda veri tabanlarında yapılan işlemleri kolaylaştırmak amacıyla veri madenciliği sıklıkla kullanılmıştır. Veri madenciliği tanımlayıcı ve tahmin edici yapılardan oluşmaktadır. Tanımlayıcı yapılarda önde gelen metotlardan biri kümeleme metodudur. Kümeleme işleminde veri tabanının üzerinde kullanılan algoritmaya dayanarak nesneler gruplara ayrılır. Grup içi nesnelerin birbirine benzeme oranı maksimum yapılırken gruplar arası nesnelerin benzerlik oranının minimum olması sağlanır. Kümeleme algoritmalarından olan merkez esaslı k-means algoritması bu alanda çok yaygın kullanıma sahiptir. K-means algoritması nesnelerin merkezlere uzaklıklarını hesaplayarak grupların belirlenmesini sağlar. K-means algoritmasının yaygın kullanımı nedeni ile araştırmacılar bu algoritmanın geliştirmesine ve iyi performansla çalışmasına yönlenmişlerdir. Algoritmanın küme kalitesinin artırılması açısından yapılan çok sayıda çalışmamevcuttur.mat Isa ve arkadaşları (2010) k-means algoritmasının performansının artırması için nesnelerin optimum merkezi bulunmasını sağlayan fuzzy k-means algoritmasını, daha kaliteli sonuç verdiğini kanıtlamak için, ele almıştır. Standart k-means algoritması ile fuzzy k-means algoritmasının arasında yapılan karşılaştırmada standart k-means algoritması ile FCM fuzzy c-means algoritmasını birleştirmiş ve nesnelerin daha başarılı ve etkili şekilde merkezleri bulmasında ve algoritmanın başarılı performans gösterdiğini veriler üzerinde deneyerek kanıtlamıştır[7]. Wang, J (2011) gürültülü veri tabanının normal halindeyken ve gürültülü nesneleri çıkararak k-means algoritmasını uygulayarak karşılaştırma yapmıştır. standart k-means algoritması veri tabanında uygulanırken grupların yeni merkezlerini bulmakta bir grup nokta grup merkezinden uzakta olabilir. Bu grup nokta gürültülü nokta sayılır küme merkezinin hesaplanmasını etkileyebilir ve yeni merkez noktalar yanlış hesaplanmış olabilir. Bu sorunun ortadan gidermek için gerçekleştirilmiş çalışmada önce bu tür gürültülü noktaları kümeden çıkaracak yöntemler kullanıpveri setini gürültüsüz hale getirlir, sonra k-means algoritmasını kullanarak küme merkezleri hesaplanmıştır. Böylece k- means algoritmasının daha etkili ve kaliteli sonuç vererek daha iyi performansla çalıştığını göstermiştir[8]. S. Ren ve arkadaşları (2011) k-means algoritmasının sadece Öklid formülünün kullanılmasını yetersiz görmüş, Öklid formülü sadece

19 4 mesafe kıyaslamak için kullanıldığı nedeni ile nesnelerin hepsini merkez nokta koordinatlarına göre eşit görmektedir. Oysa nesnelerin bazıları grup merkezlerine alakalı diğerleri alakasızdır, böylece alakasız nesneler kümeye karmaşıklık katma imkânı olabilir. Bunu önlemek için her nesneye bir değişim katsayısı eklenir, her nesnenin değişim katsayısına göre alakalı ise küme uzantısına alınır değilse kısıtlanacaktır[9]. D. Li ve arkadaşları (2009) k-means algoritmasını büyük hacimde veri tabanında birden uygulaması ve aynı veri tabanını parçalara bölerek uygulaması arasında kalite açısından bir karşılaştırma gerçekleştirmişlerdir. k-means algoritması çok büyük hacimdeki veri setlerinin standart yöntemle sıkıntılı çalışmasını göstermiştir ve bunu ızgara yöntemi yoluyla verinin azaltılması ve parçalara bölünüp k-means algoritmasının daha iyi performansla çalıştığını göstermiştir. Çok büyük olan veri setlerini küçük parçalı hücrelere bölerek ızgaralı bir yapı haline dönüştürerek kümeleme işlemini gerçekleştirmektedir. Her hücrenin kendi merkez ağırlığı var ve böylece büyük hacimde veri setinin küçük parçalara ayrılması kontrolünün kolaylaştırmasını sağlar[10]. k-means küme kalitesini artırmak için Prasanta K. Jana (2012) bir çalışmada Voronoi diyagramını kullanarak k-menas algoritmasını uygulamış ve standart k-means ile karşılaştırmasını gerçekleştirmiştir. Yapılan çalışmada rasgele merkez nesnesinin seçilmesinin ortaya çıkardığı problemini ortadan kaldırmak için bu rasgele nesnenin seçiminin yerine merkezleri bulmakta Voronoi diyagramını kullanmışlardır. Veri setini Voronoi diyagramının uzayında verteks haline getirerek yarıçaplılarına göre voronoi daireleri sınırlarında yerleştirilir. Her yuvarlak kendi hesaba alınacak en büyük yarıçaplı yuvarlaktan başlayarak, eğer yuvarlağın içindeki her hangi iki noktanın arasındaki mesafe yarıçapından küçük ise iki noktadan bir tanesi silinecektir ve şu aşamaya kadar seçilen merkez nokta ile seçilen yuvarlağın içinde bir noktanın arasındaki mesafe yarıçapından daha küçük ise yuvarlaktaki nokta silinecektir. Bu işlem tüm merkezler seçilinceye kadar devam eder, bu yöntemi kullanarak daha kaliteli kümeleme elde edilmiştir[11].

20 5 Ayrıca k-means algoritması küme kalitesinin arttırılmasının yanında kümeleme hızını yükseltmek içinde yapılan çalışmalar gerçekleşmiştir, D. Chang ve arkadaşları (2009) k-means algoritmasının performans ve hazınının artırması için algoritmanı genetik algoritma ile birleştirmişler. Kullandıkları stratejiye göre kümenin merkezini bulmakta olası bölme işlemi veri noktalarına dayanmasının yerine koromsum merkez şifresini kullanarak bulmaktadır. Algoritma kümenin ölçümünü optimize ederek en uygun küme merkezi bulmaya çalışır[12]. A.M. Bagirov ve arkadaşları (2011) global k-means ve standart k-means arasında hız açısından bir karşılaştırma yapmışlardır. Algoritma küme merkezlerini önceki aşamalara bakarak sürekli test eder ve k- bölünme problemini (en uygun merkez sayısı) çözmeye çalışır. Algoritmanın en önemli aşaması küme merkezinin başlangıç noktasını hesaplamaktır. Başlangıçta k tane rasgele merkez seçmek yerine sadece bir merkeze göre kümelemeyi yapar. sonrak tane uygun merkezi bulmak için N defa algoritmanı uygular ve bunların arasından en uygun ikinci merkezi buluri her defasında yeni bir merkez ekleyerek aynı hesaplamaları yapar ve en uygun merkez sayısını buluncaya kadar devam eder. Başlangıç noktanın hesaplanması için kümede bilinen ve ekstradan bulunan fonksiyonların minimize edilmesidir. Yapılan testlere göre global k-mens algoritmasının standart algoritmadan daha hızlı sonuç vermesi tespit edilmiştir[13]. A.H.Beg ve arkadaşları (2011) yeni k-means algoritması ile standart k-means algoritması arasında karşılaştırma yapmışlar. k-means yeni algoritması ile standart k-means algoritmasının arasındaki hız farkını göstermiştir. Geliştirilmiş algoritma merkezi bulmak için maksimum ve minimum noktaları kullanmaktadır. Başlangıçta merkez olarak maksimum nokta alınır ve sonra minimum nokta alınır, sonra alınan noktaların ortalaması alınır ve yeni merkez nokta inşa edilir. Sonra inşa edilen merkez noktalar aynı mekanizmaya göre devam eder. Sonuç olarak standart k- means algoritmasından son kümeleri %60 daha az aşama ile göstermiş[14]. T. Hitendra Sarma ve arkadaşları (2012) k-means algoritmasının hızlandırılması için yeni metot uygulayarak daha hızlı bir k-means algoritması geliştirmişler ve standart k-means algoritması ile karşılaştırmışlar. Veri setini belli sabit hacimde parçalara

21 6 ayırarak her parçaya bir tane prototip veriyor, ileri seviyelerde verilen prototiplere standart algoritmanı uygulayarak parçaları gruba katarak kümeleme işlemi yapıyor. Sonuçlar standart algoritmanın aynısını veriyor ama daha hızlı sürede elde ediliyor[15]. Arthur ve Vassilvitskii k-means algoritması ile k-means++ algoritması arasında karşılaştırma yapmışlardır. k-means algoritmasının rasgele merkez seçiminin daha dikkatlice ve optimal seçilmesi sağlayan k-means++ algoritması daha hızlı performans göstermiştir. Algoritma önceden k tane merkezin seçilmesi için rasgele bir tane nesne seçilir, seçilen bu nesneye göre her aşamada O(log k) olasılığına göre yeni bir merkez seçilir. Bu işlem k tane nesne seçilinceye kadar devam eder, bu aşama bitikten sonra standart k-means adımları seçilen merkezlere uygulanır [16].

22 7 2. Veri Madenciliği Veri Madenciliği büyük hacimde olan ve genellikle denetimsiz kalan veri setlerini makul ve kullanılır bir hale getirmek amacıyla kullanılmaktadır. Veri Madenciliği kullanıcıları genellikle iş dünyasında ağır sayıda bulunmaktadır, bunun nedeni ise iş dünyasında ağır hacimde ve sayıda bulunan verilerdir. Bualanda veri madenciliğinin kullanılması şirket sahiplerinin şirketleri daha rekabetçi ve karlı olmasıdır. Veri Madenciliği veri setini makul bir hale getirmektense veri setinin içinden bilgileri keşfedip anlaşılan, kullanılır, geçerli ve faydalı hale getirmektedir. Veri Madenciliğinin kullanılmasının nedenleri veritabanındaki veri setinin hacmi, küçük veri setleri için normal şartlar altında belirli tollar kullanarak veri setini analiz etmektedir veya bazen gözetleyerek sınıflandırılır. Hâlbuki büyük veri setleri, örneğin AT&T cep teflon şirketi her gün milyonlarca veri toplamaktadır veya NASA gibi büyük kurumlar yer gözleminde yüzlerce gigabayt saat başına toplamaktadır. İşte bunlara benzer çok büyük hacimde veri setlerinin analizi ve sınıflandırması gözetleme yoluyla imkânsız oluyor. İşte bu yüzden veri madenciliği teknikleri bu alanda kullanıyor. Demek ki Veri madenciliği, diğer bir adla veri tabanında bilgi keşfi; çok büyük veri hacimleri arasında tutulan, anlamı daha önce keşfedilmemiş potansiyel olarak faydalı ve anlaşılır bilgilerin çıkarıldığı ve arka planda veri tabanı yönetim sistemleri, istatistik, yapay zekâ, makine öğrenme, paralel ve dağınık işlemlerin bulunduğu veri analiz teknikleridir. Son zamanlarda kurumların ağırlıkla verileri analiz etmek istenen ve sürekli büyüyen veriler ki bu verileri analiz etmek için çok sayıda uygulama geliştirilmeye başlatılmıştır. Örneğin ağ trafiğini izleme, banka veri sistemi, web tıklama akışı analizi ve kredi kartı dolandırıcılığı algılama, bu nedenle şuan yeni hızlı güçlü veri algoritmaları bu alanda kullanılmaktadır. Kısaca Veri Tabanlarında Bilginin Keşfi (KDD) olarak adlandırılmaktadır.[17] Alternatif veri madenciliği isimleri: Veri Tabanlarında Bilginin Keşfi (Knowledge Discovery in Database, KDD), Bilgi çıkarımı (Knowledge Extraction), Veri ve Örüntü Analizi (Data/PatternAnaysis), Veri Arkeolojisi (Data Archeology), Veri Eşeleme (Data Dredging) vb. [18].

23 Veri Madenciliğinde Bilgi Keşif Sürecinin Aşamaları Büyük veri tabanlarında ilginç ve değerli olan bilgiyi algılamak ve erişmek oldukça zordur. Veri tabanında bilgi keşif sürecinin aşamaları (Knowledge Discovery in Databases) bu değerli, öncede bilinmeyen kullanılabilir olan bilgiye belirli metotlar uygulayarak tanımlamada çok büyük rol oynamaktadır. Genelde bilinen veri madenciliği ve bilgi keşif süreci kavramları işlemleri aynı şeyleri hedeflediği için aynı anlama gelmektedir ve aynı alanı ifade etmekte kullanılır, hâlbuki bu iki kavram birbirinden ayrı alanları ifade eder ve genelde bilgi keşfi bir büyük alan olarak veri madenciliği bilgi keşfinin aşamalarından birini temsil etmektedir. Bilgi keşfi süreci araştırmacılar tarafından makine öğrenme, örüntü tanıma, veri tabanı, istatistik, yapay zekâ, veri görüntüleme ve yüksek performanslı hesaplama alanlarında geliştirilmiştir ve hala geliştirilmektedir. Bilgi keşfi yukardaki alanlarda yüksek boyutlu bilgiler arasından yararlı bilgileri elde etmeyi hedefler[19]. Şekil (2.1.) bilgi keşfinin aşamalarını göstermektedir. Bilgi keşfinin aşamalarında veri madenciliği yöntemleri ve algoritmaları kullanılmaktadır. Fakat sadece veri madenciliği yöntemlerini kullanarak iyi bir sonuca varamayız bu yüzden bilgi keşfinin süreci iyi bir şekilde uygulanması için bir kaç aşamanın üzerinden dikkatlice geçmekte fayda vardır ve bu aşamalar şu şekilde sıralanabilir[20]: 1. Uygulama alanının incelenmesi: Öncelikle konuyla ilgili bilgi ve uygulama amaçların belirlenmesi. 2. Amaca uygun veri kümesi yaratma: Analiz edilecek verinin hangi veritabanında yapılacağını belirterek, veri seçmek ya da keşfedilecek alt veri örnekleri oluşturma. 3. Veri ayıklama ve önişlem: Gürültülü ve tutarsız verileri silme. 4. Veri azaltma ve veri dönüşümü: Analizde gerekli özellikleri (boyutları) seçme, özellikler arasındaki ilişkiyi belirleme, veri dönüşümü ya da veri birleşimi yaparak boyut azaltma.

24 9 5. Veri madenciliği tekniği seçme: Sınıflandırma (classify), bağlantı kuralları (association rules), kümeleme (clustering). 6. Veri madenciliği algoritması seçme. 7. Model değerlendirme ve bilgi sunma. 8. Bulunan bilginin yorumlanması. Şekil 2.1. Veri Madenciliği Bilgi Keşif Sürecinin Aşamaları Veri Madenciliği modelleri Veri madenciliğinde iki tür kullanılan model vardır, bu modeller tahmin edici modeller ve tanımlayıcı modellerdir. Tahmin edici modellerde, sonuçları bilinen verilerden yola çıkarak bir model geliştirilir, bu modelden yararlanılarak sonuçları bilinmeyen veri kümeleri için sonuç değerlerin tahmin edilmesinde karar vermede kullanılmaktadır. Örneğin bir banka önceki dönemlerde vermiş olduğu kredilere ilişkin gerekli tüm verilere sahip olabilir. Bu verilerde bağımsız değişkenler kredi alan müşterinin özellikleri, bağımlı değişken değeri ise kredinin geri ödenip

25 10 ödenmediğidir. Bu müşterinin verilerine olan uygun olarak kurulan model olacaktır, daha sonraki kredi taleplerinde bulunduğunda mevcut olan müşteri özelliklerine dayanarak verilecek olan kredinin geri ödenip ödenmeyeceğinin ihtimallerinde kullanılmaktadır. Tanımlayıcı modellerde ise verilecek kararda rehberlik etmede kullanılabilecek mevcut verilerdeki nesnelerin tanımlanması sağlanmaktadır. X/Y aralığında geliri ve iki veya daha fazla arabası olan çocuklu aileler ile çocuğu olmayan ve geliri X/Y aralığından düşük olan ailelerin satın alma örüntülerinin birbirlerine benzerlik gösterdiğinin belirlenmesi tanımlayıcı modellere bir örnektir, aşağıdaki şekil (2.2.) Veri Madenciliği modellerini göstermektedir Sınıflandırma Modelleri ve algoritmaları Mevcut verilerden hareket ederek geleceğin tahmin edilmesinde faydalanılan ve veri madenciliği teknikleri içerisinde en yaygın kullanıma sahip olan sınıflandırma modelleridir. Sınıflandırma modelleri çok sayıda algoritmalar kullanarak sınıflandırma işlemini gerçekleştiriyor. Bu modelin koşullarından biri temel bilginin mevcut olmasıdır. Şekil 2.2. Veri Madenciliği Modelleri [18].

26 11 Mevcut olan veri bilgilerinin özelliklerinden yola çıkarak gelecek verilerin sınıflandırılması için uygun model oluşturulur. Bu mevcut verilerin modeli eğitmek için kullanılan yönteme eğitim seti denir. Oluşturulan modelde sınıflandırma algoritmaları kullanarak verilerin sınıflandırması gerçekleştirilmektedir. Sınıflandırmayla ilgili çok sayıda algoritma bulunmaktadır, aşağıda sınıflandırma algoritmaları gösterilmektedir. Karar ağaçları (ID3) Karar ağaçları, ağaç şeklinde sınıflandırıcılardır. Bu ağaçtaki her düğüm bir yaprağı veya karar düğümünü belirtir. Yaprak düğümü hedef niteliğin değeridir. Karar düğümü ise, bir nitelikte uygulanacak olan test değeridir, bu düğümü, o niteliğe ait olan tüm olası nitelik değerleri izler, bu değerler ise ağacın dallarını oluşturur. Karar ağaçlarının öğrenme algoritmaları, bir hipotezi sunmak için bir küme karar ağacı kullanılırlar. Öğrenme kümesinde, ham veri incelenerek mümkün olan en iyi şekilde sınıflandırılır. Algoritma bu işlemi özyineli olarak tekrar eder ve en son ortaya çıkardığı karar ağacı en son hipotezi oluşturur. Karar ağacı algoritması veriyi iki bölüme ayırmaktadır; öğrenme ve test setleri, bu iki grup veri oldukça homojen olmaktadır [21]. Karar ağacı algoritması aşamaları şöyledir: Algoritma: Karar-Ağacı-Oluştur Giriş Değişkenleri : Örnek kümesi, nitelik-listesi Metot : 1. N düğümünü oluştur 2. Eğer örnek değerlerinin tümü aynı sınıftaysa (Sınıf C) i. N düğümünü C etiketinde bir yaprak düğümü olarak döndür 3. Eğer nitelik-listesi bossa i. N düğümünü Örnek kümesindeki en fazla kullanılan sınıf etiketinde bir yaprak düğümü olarak döndür 4. Nitelik-Listesi nden en fazla bilgi kazançlı test-niteliğini seç

27 12 5. N düğümünün etiketine test-niteliği ismini ver 6. Test-niteliğinin her bir bilinen değeri için dön i. N düğümünden test-niteliği=ai olacak şekilde bir dal çiz 7. si = örnek kümesinde test-niteliği= ai olan örnekler olsun 8. Eğer si bossa i. Örnek kümesi içinde en fazla kullanılan sınıf etiketinde bir yaprak çiz 9. Değilse Karar-Ağacı-Oluştur(si, nitelik-listesi, test-nitelik) dan dönen düğüm değerini ağaca ekle[21]. K-NN Algoritması K en yakın komşuluk algoritması sorgu vektörünün en yakın K tane komşu vektör ile sınıflandırılmasının bir neticesi olan denetlemeli bir algoritmasıdır. Bu algoritma ile yeni bir vektörü sınıflandırabilmek için dokuman vektörü ve eğitim dokümanları vektörleri kullanılır. Bir sorgu örneği ele alınır, bu verilen noktaya en yakın K tane eğitim noktası bulunur. Sınıflandırma verilen bu K tane noktanın en fazla olanı ile yapılır. K en yakın komşuluk uygulaması verilen sorgu örneğini sınıflandırmak bir komşuluk sınıflandırma algoritmasıdır. K en yakın komşuluk algoritması çok kolaydır. K en yakın komşulukları bulmak için sorgu örneği ile eğitim dokümanları arasındaki mevcut tüm uzaklıklar dikkate alınır. En yakın komşuları bulunmasından sonra mevcut olan komşulardan kategorisi en çok olan dokümanın kategorisini tahmin etmekte kullanılır. Tüm dokümanlar vektör halinde olarak temsil edilir. Sorgu dokümanı ile diğer dokümanlar arasındaki kosinüs benzerliği hesaplanır. Benzerlik oranı 1 e en yakın olan n tane vektörün kategorisinden çok olanı dokümana atanır. Diyelim ki K=(V1,.,Vi) eğitim seti farz etsek ve P=(P1,P2,., Pj) doküman vektörleri olsa, herhangi bir P vektörünün bulunması için: sim(pi,k) = Max(Pi,Vi) maksimum benzerlik vektörün kategorisini bulmak üzere kosinüs benzerliği kullanılmaktadır [22].

28 13 SVM algoritması SVM (Support Victor Machine) algoritması bir makina öğrenme metodu olarak 1990 yılında Vapnik tarafından ortaya çıkarılmıştır. Bu algoritma statik öğrenme teorilerine göre geliştirilmiştir[23]. Avantajlarından biri çok boyutlu örüntü tanıma problemlerini çözmekte kullanılıyor. SVM algoritması ikiye ayrılmaktadır. Doğrusal SVM ve doğrusal olmayan SVM. Bu algoritma makina öğrenme yöntemini kullanan algoritmalar arasında en güçlü ve kesin sonuçlar veren algoritma sayılabilir[24]. Yapay sinir ağları Yapay sinir ağları beyin hücreleri olan nöronların çalışma prensibini modelleyen öğrenebilen algoritmalardır. Sınıflandırma amaçlı kullanılan yapay sinir ağları genelde back propagation algoritması ve RBF ağlarını kullanmaktadır. RBF (radial Bases Functıon Network ) girdi, gizli ve çıktı dökümlerinden oluşan yapay sinir ağlarıdır. Girdi düğümü gizli düğümüne doğrusal olmayan, gizli düğümü çıktı düğümüne doğrusal olan fonksiyonlarla bağlanmaktadır. Yapay sinir ağları öğrenme ve genelleştirme kabiliyetleri olan uyarlanabilir ve hata payını en aza düşüren güçlü bir metottur.[25] Bayes sınıflandırması Bayes sınıflandırıcısı istatistik metotlara dayanan tipik bir sınıflandırma modelidir. Özel bir sınıfa ait olarak verilen bir olasılık gibi, sınıf üyeliklerine ait olasılıklarını önceden söyleyebilirler. Bayes sınıflandırıcısı Bayes teoremi için kuramsal temelledir, bayes teorimi kullanarak sınıflandırmanı gerçekleştiriyor[26]. Bayes teorimi ise diyelim X sınıf uyeliği bilinmeyen veri orneği olsun. H ise bu veri orneği X in C sınıfına ait olduğunu öngören bir hipotez olsun. ( ) ( ( ) ( ) ) ( ) ( )

29 Kümeleme Modelleri Kümeleme modellerinde amaç, küme üyelerinin birbirlerine çok benzediği, ancak özellikleri birbirlerinden çok farklı olan kümelerin bulunması ve veri tabanındaki kayıtların bu farklı kümelere bölünmesidir. Başlangıç aşamasında veri tabanındaki kayıtların hangi kümelere ayrılacağı veya kümelemenin hangi değişken özelliklerine göre yapılacağı bilinmemekte, veritabanının iyice analiz edilmesi gerekmektedir ve sonra kümelerin neler olacağı tahmin edilir[21]. Kümelenme verileri gruplandırarak birkaç homojen gruba dağıtılmasını amaçlayan bir veri analiz aracıdır. Yıllar çalışmalarının ardından sunulan kümeleme bazı uygulamalarda kümelemeye ihtiyaç duyurduğundan dolayı çıkan sorunları ortadan kaldırmak amacı ile geliştirilmiştir. Başka bir deyişle çalışılan fenomeni anlamak veya yorumlamak için çok sayıda bilim dalının verilerin kümelemesine ihtiyaç durmuştur[27]. İlk yaklaşımları sezgisel veya geometrik prosedürleri dayanmaktaydı. Çift gözlemler arasındaki benzersizliği göze alarak hesaplanmaktadır. Kümeleme ayrıca olasılık çerçevesinde de kıyaslanmaktadır, kümeleme kavramının şekillendirmesini kendi olasılık dağıtımında yapmaktadır [28]. Kümelemeye genel bir bakışla bakılırsa iki parçadan oluşmaktadır ve bunlar Bölümleyici metotlar ve hiyerarşik metotlardır. Benzerlik-esaslı metotlar ve model-esaslı metotlar Bölümleyici-esaslı metotların ana dallarını temsil etmektedir. Benzerlik-esaslı metotların en basit örneğini vermiş olursak standart k-means algoritmasının çalışma şeklidir (nesnelerin birbirine benzerlik oranına göre guruplara ayırması)[5]. Kümeleme ayrıca içinde kullanılan tekniklere göre sınıflandırılır ve hesaplamada kullanılan mesafe formülleri içermektedir, bunlar kullanılan algoritmaya göre değişir, üçüncü bölümde kümelemenin analizi, teknikleri ve algoritmaları detaylı bir şekilde anlatılmıştır.

30 15 3. Kümeleme Analizi ve Algoritmaları 3.1. Kümeleme Analizi Kümeleme analizi sayısal, dilsel veya yapısal veri setleri içinde saklanan grupları (kümeler) ortaya çıkarmak için tasarlanmıştır. Her grup üyeleri benzer özelliklere sahiptir. Kümeleme analizi ayrıca sınıflamaları geliştirerek karmaşık verileri çözmek için kullanılır ve bu verileri anlaşılır bir hale getirerek önemli verileri ortaya çıkarmakta katkıda bulunur. Yazılım teknolojisinin gelişimi nedeni ile bilim ve iş alanında, birçok durumda uygulanan etkili ve kolay yorumlanabilen bir yöntem görünmüştür. Bu yöntem 1960 yılının başında ortaya çıkmıştır. O zamanlarda Aldenderfer ve Blashfield kümelemenin tüm sınıflandırma sisteminin kullandığı bilim dallarında uygulanmasına öneride bulunmuşlardır[29]. Kümeleme analizinin asıl amacı objeleri guruplara ayırıp verileri sınıflandırmaktır. Nesneleri tanımlayan özellikler bir guruba benzerlik veya benzersizlik oranına göre alınmaktadır. Nesnelerin birbirine benzerliğini dikkate alıp grubun üyelerini belirler veya başka gruplardan olan üyelerin farklılıklarına göre grup sınırlarını çizmektedir. Örüntü tanıma, veri analizi, görüntü işleme, market araştırması gibi çeşitli uygulamalarda yaygın olarak kullanılmaktadır. Kümeleme analizi nesnelerin sınıflandırılmasına ile ilgili ayrıntılı açıklama yapılmasını hedeflemektedir. Nesnenin özellikleriyle grupların özellikleri karşılaştırılarak aralarındaki benzerliğe göre guruplar belirlenir. Daha sonra guruplara dahil edilen nesnelerin profilleri ortaya konur. Kümelemenin diğer amacı ise verinin guruplara ayrılması dışında veri hacmini küçültmektir ve kontrolünün kolaylaşmasıdır. Satış hareketleri veya çağrı merkezi kayıtları gibi çok fazla parametre içeren çok büyük miktarlardaki verileri analiz etmede en uygun yöntemlerden biri kümelemedir. Kümeleme analizinin veriye uygulandığında sağladaığı avantajlar şöyledir: Verinin alt yapısı: verinin gözetlenmesini kolay bir şekilde sağlamak, onunla ilgili uygun hipotezler oluşturmak ve verinin belirgin özelliklerini belirlemek.

31 16 Verinin doğal sınıflandırması: formlar veya organizmalar arasındaki benzerliğin derecesini tespit etmek. Verinin sıkıştırılması: veriyi organize ederek küme prototipinin özetlenmesini sağlayan metotlar gibi. İlişkilerin görünmesi: kümelemenin grafiksel görüntüleri ile sonuçları gösterebilme özelliği sayesinde benzerliklerin kolayca tespit edilmesini sağlamaktadır. Sıra dışı nesnelerin tespiti: anormal durumların kolayca tespit edilmesi, böylece sıra dışı verilerin kolayca belirlenmesi. Başka veri madenciliği algoritmalarına katkıda bulunması: bazı veri madenciliği algoritmalarının büyük hacimde verilerle sıkıntılı çalışması nedeni ile kümeleme analizi bu verilere uygulanarak verinin parçalar haline getirerek en uygun başlangıç noktasını seçmesine yardım etmektedir[30]. Kümeler, nesnelerin uzayda birbirlerine olan yakınlıklarını temsil ederek ifade edilir. Önceki söze dayanarak nesneler arasındaki benzerlik veya benzersizlik uzaydaki birbirleri arasındaki mesafe ile ifade edilmektedir. Uzaydaki çok boyutlu nesnelerin arasındaki uzaklıkların hesaplanması için genelde geometrik uzaklık formülleri kullanılmaktadır. Çeşitli sayıda değişkene göre nesneler arasındaki benzerlik ve uzaklıkları hesaplamak için kullanılan ölçüler[31]: 1. Sayısal veriler için ölçüler: Öklid uzaklığı Manhattan uzaklığı Maksimum uzaklığı Minkowski uzaklığı Mahalanobis uzaklığı Kosinüs uzaklığı Ortalama uzaklığı 2. Kategorik veriler için ölçütler: Basit eşleştirme uzaklığı

32 17 Katsayı eşleştirme uzaklığı 3. Zaman serisi verileri için ölçütler: Minkowski uzaklığı Dinamik zaman tüneli uzaklığı Yukarıdaki uzaklık formüllerinden faydalanarak bireyler arasındaki uzaklık ve dolayısıyla benzerlik veya benzersizlikler belirlenir. Kümeleme işlemi belirlenen bireyler arası uzaklıklara göre küme içi homojen ve kendi aralarında heterojen gruplar kurmaktadır. Bu grupları farklı kümeleme yöntemlerine göre oluşturmaktadır. Kümeleme yöntemleri farklı teknikler yardımıyla uygulanır ve bu teknikler kümenin farklı özelliklerine göre kümenin şeklini tespit eder. Genel olarak kullanılan yöntemler ve teknikler aşağıdaki gibidir: Model Esaslı Kümeleme Yöntemleri Bu tekniklere, model esaslı kümeleme yöntemleri denmesinin nedeni; kullanılan algoritmaların veri setine uygun bir model seçerek çalışıyor olmasıdır. Kısaca algoritmalar, veriler ile bazı matematiksel modeller arasındaki uyumu optimize etmeye çalışırlar. Bu teknikler genellikle verilerin mevcut olasılık dağılımları tarafından oluşturulduğunu varsaymaktadır[32]. Yöntem model olarak bir yoğunluk fonksiyonu inşa eder ki bu fonksiyon veri noktalarının uzaysal bir dağılımını yansıtır ve bu yöntemle kümeleri yerleştirir. Ayrıca istatistik yöntemleri kullanarak kümelerin sayısını otomatik olarak belirler ve gürültüleri göze alarak en iyi kümelemeyi elde eder. EM algoritması bu tekniği kullanan en iyi statik algoritmalardandır. Merkeze Dayalı Bölümleyici Kümeleme Yöntemleri Merkeze dayalı bölümleyici kümeleme yöntemleri, n adet nesneden oluşan veri setini başlangıçta belirlenen k(k<n) adet kümeye ayırmaktadır. Kümeleme sonucunda elde edilen kümelerde, küme içi benzerlik maksimum iken kümeler arası benzerlik minimumdadır. Merkeze dayalı kümeleme yönteminin uygulanmasının iki amacı vardır;1) her veri nesnesinin bir tane kümeye ait olma zorunluluğu, 2) her kümenin

33 18 en az bir tane nesnesinin olması zorunluluğudur. Amaçların birincisi bazı fuzzy algoritmalar için geçerli değildir. Bunun sebebi o algoritmalarda her nesnenin iki kümeye ait olması olasılığıdır. En çok kullanılan merkeze dayalı bölümleyici kümeleme teknikleri k-means, k-medoid, PAM, CLARA ve CLARANS algoritmalarıdır. Bölümleyici yöntemleri daha detaylı bir şekilde aşağıda anlatılmaktadır. Hiyerarşik Kümeleme Yöntemleri Hiyerarşik yöntemler verilen veri setinin nesneleri için bir hiyerarşik ayrışma inşa etmektedir. Hiyerarşik küme, bir veri setindeki her bir nesnenin dizi içindeki bir sonraki nesnenin içinde yer aldığı bir nesneler dizisidir. Hiyerarşik kümeleme tekniklerinde, başlangıçta küme sayısı belirtilmemektedir. Algoritma, x: veri seti s: uzaklıklar matrisi olmak üzere; (x, s) girdi olarak tanımlanmaktadır. Sonuçta çıktı olarak elde edilen kümeler hiyerarşiktir. Hiyerarşik kümeleme tekniklerinin birçoğunda uygulanan süreç optimizasyon esaslı değildir. Bu tekniklerdeki amaç, birleşme tamamlanıncaya kadar bölmenin ilerlemesi için tekrarlamalar kullanarak temel yaklaşımlar bulmaktır[25]. Hiyerarşik kümeleme metotları, nesnelerin iç içe gruplanma ilişkisini ve gruplanmaların değiştiği benzerlik seviyelerini ağaç yapısı şeklinde gösteren bir yapı oluşturma temeline dayanır. Hiyerarşik tekniğini kullanan metotlar inşa etme tipine bağlı olarak iki gruba ayrılır: Birleştirici Hiyerarşik Kümeleme (top - down) Ayrıştırıcı Hiyerarşik Kümeleme (bottom - up) Yoğunluk Bazlı Yöntem Birçok kümeleme yöntemi, nesnelerin arasındaki mesafe farkına ve benzerliklerine göre kümeleme yapar ve çıkan sonuç genelde küreseldir. Bu yöntemler buldukları değişik kümelerin tespitinde yetersiz kalmaktadır. Yoğunluk bazlı yöntemler ise nesnelerin yoğunluğuna göre gruplama yapar. Komşuluk içindeki yoğunluk belli bir seviyeyi aşana kadar kümeler büyümeye devam eder. Bu yöntemin gürültülü verilerden etkilenme oranı düşüktür. Yoğunluk bazlı yöntemlere örnek olarak Dbscan ve Optics algoritmaları verilebilir.

34 19 Izgara Tabanlı Kümeleme Yöntemleri Izgara Tabanlı Kümeleme Teknikleri, veri setini ızgaralı bir yapı oluşturmak için belli sayıda hücreye bölmekte ve bütün kümeleme işlemlerini bu ızgara yapı üzerinde gerçekleştirmektedir. Izgara hücrelerin yoğun noktalarına göre küme sayısının belirlenmesi ve veri nesnesi olmayan ızgara hücreler ile küme merkezleri arasındaki uzaklığın hesaplanması bu teknik içerisinde yer alan algoritmaların hızlı çalışmasını sağlar. Bu durum ızgara tabanlı tekniklerin en büyük avantajı olarak kabul edilmektedir[33]. Kümeleme analizi yukarıda anlatılan yöntemlere uyan algoritmaları uygulayarak veri nesnelerinin kümelemesini sağlar. Kümeleme analizi farklı veri türlerine uygulanmaktadır, verinin türüne göre nesneler arası mesafeler hesaplanarak kümeler elde edilir. Diyelim ki kümelenmesi gereken veri seti n tane nesne içermektedir. Örneğin kişi, ev, doküman, devletler vb.veri setinin kümelenmesi genel olarak aşağıda anlatılan 2 tür veri yapısından birine göre yapılmalıdır. Kare kodun(data Matrix): bu veri yapısı ntane obje bilgisini sunmaktadır. Örneklendirmek gerekirse; bu bilgiler birkaç kişinin bilgileri olabilir, bu kişiler p tane bilgi özelliği içermektedir; yaş, boy, cins gibi. Veri setinin yapı şekli nesne-ileözellik matrisi şeklinde ifade edilebilir. Farklılık Matrisi (Dissimilarity matrix): bu veri seti yapısında n tane verilerin arasındaki yakınlık oranına göre hesaplama yapmaktadır. Bu veri yapısında genellikle nesne-ile-nesne arasındaki ilişki tablo şeklinde sunulmaktadır. Kare kodun veri yapısı genellikle farklılıklar göstermektedir. Bu yüzden bazen kare kodun veri matrisine iki-modelli matrisi denmektedir. Birçok kümeleme algoritması genelde kümelerin hesaplanmasında farklılık matrisini kullanmaktadır. Eğer veri seti kare kodun matrisi ile sunulmuşsa, önce bu veriyi farklılık matrisine dönüştürülüp sonra hesaplanması gerçekleştirilmektedir. Aşağıda tüm veri türlerini anlatıp ve

35 20 kümelenmesi için her veri türünün nasıl farklılık matrisine uzaklık formüllerini kullanarak dönüştürülmesini göstermekteyiz Aralık Ölçekli değişkenler Aralık ölçekli değişken veri türleri sürekli ölçülenen doğrusal ölçeklerdir. İçinde bulunan örnekler standart ölçeklerle değerlendirilir, örneğin ağırlık ve yükseklik, enlem ve boylam(ev gibi nesneden bahsedilirse), ve hava durumu ölçekleri. Bu verilerde kullanılan ölçü birimi kümeleme analizini etkileyebilir. Örneğin bir veri setinin metre ve inç birimlerini içermesi ve ağırlık ünitelerinden kilogram ve pound birimlerini içermesi kümeleme yapısını etkilemektedir. Genelde küçük veri birimleri kullanılırsa küme içinde büyük hacim aralığa yol açar ve buda kümeleme yapısında büyük etki bırakmaya neden olur. Birim ölçülerinin seçimine bağlılık probleminin ortadan kaldırılması için verilerin standartlaştırılması yapılmaktadır. Standartlaştırma işlemi tüm verilerin aynı ağırlıkları vermelerini amaçlamaktadır. Standartlaştırma işlemi verilerin kullanıldığı birimle ilgili bilgi verilmiş halinde olursa pratik ve etkili olur.[34] Standartlaştırma işlemlerini gerçekleştirmek için (diyelim ki f kullanılan bir değişkendir ve değişkenin standartlaştırılması için) aşağıdaki iki adım uygulanmaktadır: Mutlak sapma hesaplanması, sf: ( ) ( ) X1f Xnf f e ait olan n tane ölçektir, ve mf f in ortalamasıdır. Standartlaşmanın hesaplaması: ( ) Standartlaştırma işlemi tamamlandıktan sonra nesnelerin arasındaki mesafeleri kıyaslama işlemi gerçekleştirilir.aralık-ölçekli değişkenlerinin içerdiği nesnelerin arasındaki benzersizlik hesaplama işlemi her çift nesne arasındaki mesafeyi hesaplamaya dayanarak yapılmaktadır. Benzersizlik hesaplama işlemleri daha önce

36 21 belirlenen formülleri kullanarak hesaplanmaktadır. Aralık-ölçekli değişkenler için en çok kullanılan formül Öklid formülüdür ve bu formülun ifade şekli aşağıdaki gibidir. ( ) ( ) ( ) ( ) ( ) i=(xi1,xi2,, xin) ve j=(xj1,xj2,, xjn) iki n-boyutlu veri nesnesidir. Öklid formülünü verilere uygulayarak aşağıdaki matematiksel gereksinimleri karşılamaktadır: d(i,j) 0: hesaplanan mesafe negatif numara olmaz. d(i,j)=0: nesnenin mesafesi kendisi ile hesaplanmış anlamına gelir. d(i,j)= d(j,i): mesafe simetrik fonksiyonudur Binary değişkenler Binary değişkenler başka bir deyişle ikili değişkenler ikili durumda bulunmaktadır: 0 ve 1. 0 değişkenleri iletimi yoktur anlamına gelmektedir, 1 ise değişkenin iletildiğini ifade etmektedir. İkili değişkenler iki halde ifade edilen veri değişkenlerinin üzerinde etkili bir şekilde uygulanır. Örneğin hasta bilgilerinden sigara içer değişkeninin yanıtı iki yanıt içerir; içer ve içmez. Bu değişkeni binary değişkeni ifadesine çevirirsek hasta sigara içiyorsa 1 ve içmiyorsa 0 şeklinde ifade edilir. Binary değişkenlerinin benzersizliklerinin hesaplanması için değişken veri setinde olan tüm bilgileri bir ve sıfır üzerinden sınıflandırmalıyız. Diyelim ki iki nesnemiz var:i ve j. Nesneler için hesaplanmak istenen değişken ihtimalleri q sayısı bire eşit olan i ve j nesneleri içeriyor.r, i değeri 1 olan ve j değeri 0 olan nesne sayısını içeriyor, s ise i değeri 0 ve j değeri 1 e eşit olan nesne sayısını içeriyor. Son olarak t her iki nesnenin değeri 0 olan nesne sayısını içeriyor[35]. Hesaplamaları yaptıktan sonra i ve j nesnelerinin arasındaki benzersizlik hesaplaması aşağıdaki formüle göre yapılır: ( ) ( )

37 22 Ayrıca iki nesnenin arasında mesafeyi hesaplamak için sadece benzersizlik kullanılmaz, bunun yerine benzerlik özelliğini de kullanabiliriz. Binary değişkenleri için nesnelerin arasındaki benzerliği hesaplamak için aşağıdaki formül kullanılır: ( ) ( ) Örnek: Diyelim ki hastaa bilgisi tablosu var, aşağıdaki çizelge 3.1. de üç tane hasta kaydı gösterilmektedir. Bu hastaların muayenesi sonucu öksürük ve ateşlerinin olup olmadığı hastalar tablosuna kaydedilmiştir. Hastaların durumunun değerlendirilmesi sonucunda, ateş veya öksürükleri varsa kayıtta E, yoksa H yazılır. Bu bilgilerin binary formatına çevirken E için 1 ve H için 0 değerini veriyoruz. Bu üç tane hastanın öksürük ve ateş bilgilerine göre aralarındaki benzersizliklerin hesaplaması şöyle yapılır: ( ) ( ) ( ) Çizelge 3.1. Hasta bilgileri tablosu. Hasta ismi Ateş Öksürük Ahmet E H Ayşe E H Ali E E Kategorik değişkenler Kategorik değişkenler binary değişkenlerinin genellenmiş halidir ki içinde iki durumdan fazla içerir. Örnek olarak harita renkleri bir kategorik değişkendir ve beş durumdan oluşmaktadır: kırmızı, sarı, yeşil, mavi ve pembe. Değişkenler genel

38 23 olarak harf serileri, semboller veya bir seri rakamlarla gösterilebilir. Eğer değişkenler rakamlarla ifade edilirse bu rakamlar sadece o değişkenleri ifade etme anlamına gelir. Fakat herhangi sıralamalı değerini ifade etmez[36]. Diyelim ki i ve j nesneleri kategorik değişkenler içeriyorsa, bu iki nesnenin arasındaki benzersizliğin hesaplanması değişkenlerin arasındaki uyumsuzluk oranına göre yapılır. Hesaplama işlemi aşağıdaki formülle de gösterilmektedir: ( ) ( ) Nesnelerin arasındaki uyumsuz değişkenlerinin sayısını m ifade etmektedir.p ise toplam değişkenlerin sayısını ifade ediyor Sıralı Değişkenler Sıralı değişkenler genelde kategorik değişkenlere benzemektedir. Onlardan tek farkı içindeki bilgiyi ifade eden M tane veri durumunun belirli ve anlamlı bir sıra halinde olmasıdır. Sıralı değişkenler objektif halinde ölçülemeyen öznel değerlendirmeleri kaydetmekte çok yararlıdır. Örneğin profesyonel rütbeler sık sık düzenli sıra halinde numaralandırılır, asistan, doçent ve profesörler gibi. Sıralı değişkenlerin değerleri rütbelerine göre sınıflara ayrılır. Sıralı değişkenlerinin nesneleri arasındaki benzersizliğin hesaplanması Aralık-ölçekli değişkenlerinde olduğu gibi yapılmaktadır. Diyelim ki f bir set sıralı değişkenler arasından bir değişkendir ve bu değişken n tane nesne içermektedir. Nesnelerin arasındaki benzersizlikler aşağıdaki adımlara göre hesaplanır: F değişkeninin içindeki i nesnesinin değeri xif dir ve f,mf sıralı durum içermektedir. Her xif kendisiyle uyan rütbe ile değiştirilir. Her sıralı değişken farklı durum sayısına sahip olduğu için değişken durumlarının eşit bir şekilde 0.0,1.0 arasında sıkıştırılarak yer alması gerekir. Bu

39 24 işlemi gerçekleştirmek için her durumun rif si kullanılarak aşağıdaki formüle göre hesaplanmaktadır[37]. ( ) Durumların değerlerini hesapladıktan sonra nesneler arasındaki benzersizlikleri mesafe hesaplama formüllerinden (Öklid, Manhatten vb.) birini kullanarak hesaplamalar yapılır. Örnek: Aşağıdaki çizelge 3.2. hastalarla ilgili bir test sonucuna göre üç sıralı durum içermektedir: makul, iyi, çok iyi. Tablo üç durum içerdiği için mf değeri 3 olmaktadır. Belirlenen bu durumlara göre hastaların arasındaki benzersizlikleri hesaplamak için birinci adıma göre önce sıralı olan durumların rütbelerine göre eşitlenmesidir. Makul eşittir 1, iyi eşittir 2 ve çok iyi eşittir 3. İkinci adımda standartlaştırma işlemleri başlatılır ve sıralı değişkeninin rütbelenmiş üç durumuna(0.0,1.0) değerleri arasında eşit değerler verilir ve bunların hesaplaması aşağıdaki gibi olur: Bu hesaplamaları yaptıktan sonra her durum için standartlaştırılmış değer yerine yerleştirilerek Öklid formülünü kullanarak benzersizlik değeri hesaplanır. Çizelge 3.2. Hasta test 1 sonucu. Nesne Tanımlayıcı Test Sonucu 1 Çok iyi 2 Makul 3 İyi 4 Çok iyi

40 Oran - Ölçekli Değişkenler Oran Ölçekli değişken, lineer olmayan ölçekler üzerinde pozitif ölçümler yapar, eksponansiyel ölçüler gibi. Benzer örnekler bakteriyel nüfusu büyüme oranı veya bir radyoaktif elementinin çürümesidir. Genelde Aralık Ölçekli değişkenlere çok benzemektedir ve benzersizliklerin hesaplanmasına doğru işlenmesi için üç tane yöntem vardır ve bunlar: Değişkenler Aralıklı Ölçekli değişken gibi davranmak. (Genelde bu yöntem çok kullanılmamaktadır.) Oran Ölçekli olan f değişkeninin içinde bulunan i nesnenin x if değerine y if =log(x if ) formülü olan logaritmik dönüşümü uygulamak. Ortaya çıkan y if değeri Aralık Ölçekli değişken gibi hesaplamaları yapılır. Değişkeni sıralı sürekli veri gibi davranmak ve rütbelerine aralıklı değer gibi davranmak[34]. Örnek:Aşağıdaki çizelge 3.3. te test sonuçlarının arasındaki benzersizlikleri bulmak için logaritmik formülü kullanılarak ortaya çıkan değerler, birinci nesne için 2.65, ikinci nesne için 1.34, üçüncü nesne için 2.21 ve dördüncü nesne için 3.08 dir. Bu değerleri bulduktan sonra Öklid formülü uygulanarak nesneler arasındaki benzersizlik şöyle bulunmuştur: Çizelge 3.3. Hasta test 2 sonucu. Nesne Tanımlayıcı Test Sonucu ,210 Dis(1,2) = 1.31 Dis(1,3) = 0.44 Dis(1,4) = 0.43

41 26 Dis(2,3) = 0.87 Dis(2,4) = 1.74 Dis(3,4) = Karışık Değişkenler Birçok veri tabanlarında nesneler farklı karışık değişken türleri ile ifade edilirler. Genel olarak veri tabanları daha önce belirlediğimiz veri türlerinin tümünü içerebilir. Bu tür veri tabanlarının nesneleri arasındaki benzersizliğin hesaplanması için iki yöntemden biri kullanılmaktadır. Birincisi her değişkeni ayrı ayrı gruplara ayırmak ve aralarındaki mesafeleri değişkenlere uyan yöntemlere göre yapmaktır. Bu yöntem uyumlu bir şekilde sonuçlandırılırsa uygulaması mümkün olur. İkincisi ise tek kümeleme analizi kullanarak tüm değişkenlerin türlerini birden işlemektir. Bu teknik farklı türde değişkenleri bir benzersizlik matrisinde birleştirir, tüm anlamlı değişkenleri (0.0,1.0) aralıklı benzer ölçeğe getirmektedir. Diyelim ki veri seti p tane karışık değişken türü içermektedir. İki nesnesi olan i ve j arasındaki d(i,j) nin hesaplanması şöyle tanıtılır: ( ) ( ) ( ) ( ) ( ) Gösterge ( ) = 0 eğer iki nesnenin içerdiği değerlerinden biri veya ikisi yoksa (kayıt edilmemiş ise) veya nesneler binary değişkenler ise ve değerleri 0 ise. Benzersizlikleri f değişkeninde etkileyen değer ( ) değeridir ve bu değer şöyle hesaplanır: Eğer f aralıklı tabanlı ise: ( ) Eğer f binary veya kategorik ise: ( ) =0 eğer xif =xjf, başka durmalarda değeri 0 dır. Eğer f sıralı ise: rütbeleri hesaplayıp sonra değerleri standartlaştırıp sıralı değişken formülünü uygulayarak hesaplamalar yapılır.

42 27 Eğer f oran ölçekli ise: oran ölçekli değişkenlerin üç hesaplama yönteminden birini kullanarak benzersizlikler yapılır[36]. Örnek:Aşağıdaki çizelge 3.4. yukarıda anlatılan veri durumlarının verildiği test sonucu örneklerinin toplanmış halidir. Test sonuçlarının toplanmış hali bir veri tabanında gerçekleştiği için bu tür veri seti karışık değişken türü olarak belirlenir. Nesnelerin arasındaki benzersizliği hesaplamakta test 1 sonucu (kategorik) ve test 2 sonucu (sıralı) üzerinde olan işlemler yukarıdakinin aynısıdır. Test 3 sıralı ölçekli değişkenlerikapsar. Bu değişkenler yukarıdaki gibi önce logaritmik formülüne uygulanarak her nesne için sonuçlar, sırasıyla 2.65,1.34, 2.21 dir. Bu sonuçların 3.08 değeri maxhxh değeri olarak ve 1.34 değeri minhxh değeri olarak belirlenmiştir. Sonuçları standartlaştırmak için her iki nesnenin arasındaki farkın sonucunu alarak (3:08-1:34) = 1.74 de bölünür. Tüm test türlerinin sonuçları hesaplandıktan sonra bu sonuçları karışık değişken formülünde uygulayarak benzersizlik sonuçları her iki nesne arasında hesaplanır. Örneğin 1 ve 2 nesnelerinin arasındaki karışıklık benzersizliği şöyle hesaplanır: Bu formül tüm nesneler için uygulanır ve sonuçlar şöyle olur. dis(1,2) = 0.92 dis(1,3) = 0.58 dis(1,4) = 0.08 dis(2,3) = 0.5 dis(2,4) = 1.00 Çizelge 3.4. Hasta testlerinin sonucu. Nesne Tanımlayıcı Test 1 Test 2 Test 3 1 Kod-A Çok iyi Kod-B Makul 22 3 Kod-C İyi Kod-A Çok iyi 1210

43 Kümeleme algoritmaları Kümeleme analizinin amacı, verilerin belirli bir model üzerinden geçip farklı gruplara ayrılmasıdır. Bu gruplar küme olarak adlandırılmıştır. Kümeleme işlemleri verilerin içerdiği nesnelerin özelliklerine göre yapılır. Benzer özellikli nesneler aynı kümede yer alır. Farklı özellikli nesnelerise farklı kümelerde yer alır. Yukarıdaki bahsi geçen değişken türleri kümeleme analizinden geçirilerek kümelere dağılımı yapılır. Bu veri değişkenlerinin kümelenmesi için kümeleme algoritmaları kullanılır. Kümeleme algoritmaları belirlenen bir model üzerinde çalışan ve verilerin içerdiği nesne özelliklerine göre kümelere ayırmaktadır. Kümeleme algoritmalarının birbirinden farklı çalışma yöntemleri vardır; bazı yoğun bölgelere göre, bazı merkez noktalara göre ve bazı veriyi hiyerarşik şekilde gruplarlar. Yukarıda anlatılan kümeleme yöntemlerine göre her yöntemle ilgili farklı sayıda algoritma vardır, aşağıda önde gelen ve çok yaygın olarak kullanılan kümeleme algoritmalarını anlatmaktayız Sonek Ağaçları algoritması Bilgisayar Biliminde en yüksek erişim hızını sağlayan veri yapıları, ağaçlardır ve ağaçlar bu özelliklerini hiyerarşik yapılarına borçludur. Şekil (3.1.) daki örnek ağaçta oval şekiller düğümleri, oklar ise kenarları temsil eder. Ağaçta bir adet kök düğüm vardır ve arama işlemleri her defasında kök düğümden başlar. Şekil 3.1. Ağacın genel yapısı.[38]

44 29 Sonek, kök veya gövdesinin sonunda yer alan ektir (Gusfield, 1997). Bir dizinin daha hızlı analiz edilmesi için kullanılan kapsamlı bir veri yapısıdır [38]. Örneğin; karşımızda Gazi Üniversitesi gibi bir harf serisi olursa bu serinin her kelimesi veya serinin her harfini bir kelime farz edersek serinin sonekleri şöyle tanımlanır: T1 = Gaziüniversitesi = txt T2 = aziüniversitesi T3 = ziüniversitesi T4 = iüniversitesi T5 = üniversitesi T6 = niversitesi T7 = versitesi T8 = ersitesi T9 = rsitesi T10 =sitesi T11 =itesi T12= tesi T13 = esi T 14 = si T 15 = i Başka bir örnek bilişim kelimesi için tanımlanabilecek sonekler şunlardır: bilişim, ilişim, lişim, işim, şim, im, ve m. Dolayısıyla bir kelimenin harf sayısı kadar soneki olur. Bilişim kelimesine ait sonekler Şekil (3.2.) deki ağaçta dizginlenmiştir. Bütün ağaç veri yapılarında olduğu gibi Sonek Ağacı da bir tane kök düğüm içerir ve bütün arama işlemleri kök düğümden başlar. Kökten yaprak düğüme giden yolda karşılaşacağımız alt harf serilerinin birleşimi bir soneki temsil eder. Boyutu ne olursa olsun, her sonek için ağaçta özel bir yol oluşturur. Sonek bilgisinin veri tabanında hangi adreste saklandığını ise yaprak düğümler belirler. Eğer aranan kelime ya da desen yaprak düğüme gelene kadar bulunduysa desen veri tabanında var manasına gelir. Sonek ağacı, verilen bir kelimeye ait tüm sonekleri dizinleyen ağaca denir. Sonek ağacında erişim süresi sadece sorgunun boyutuna bağlıdır. Örneğin bilişim kelimesi yedi harften oluşmaktadır ve sonek ağacında bilişim kelimesini

45 30 aradığımızda en çok yedi adım sonunda bilgi erişimi garanti edilir. Veri tabanının büyüklüğünün terabyte mertebesinde olması dahi arama süresini değiştirmez. Şekil 3.2. Bilişim kelimesi için Sonek Ağacı.[34] Ağaçta sorgu ya da desen arama süreci hiçbir zaman desenin boyutundan fazla olamaz. Çünkü ağaç üzerinde kökten yaprak düğüme doğru hareket ederken, her düğüm erişiminde en az bir karakter okunur. Eğer ağaçta aranılacak desen m karakterden oluşuyorsa, en çok m düğüm erişimi sonunda aranılan desene ağaçta ulaşılır. Sonek ağacı, en hızlı veri erişimini sağladığı için etkileyici bir dizinleme tekniğidir. Öte yandan, ağacın önemli dezavantajları da vardır. Bunlar kötü bellek yerleşimi, ağacın çok fazla yer kaplaması ve ağacın dengesiz yapısıdır. Bu sebeplerden dolayı ağacın oluşturulma süreci çok uzun sürebilir. Sonek ağacı konusundaki araştırmalar, bu sorunları çözmeyi amaçlar [39] DBSCAN (Density Based Spatial Clustering of Applications with Noise) Algoritması Veri madenciliği kümeleme modellerinden biri olan yoğunluk tabanlı yöntemlere dayalı bu algoritma nesnelerin komşuları ile olan mesafelerini hesaplayarak belirli bir bölgede önceden belirlenmiş eşik değerden daha fazla nesne bulunan alanları

46 31 gruplandırarak kümeleme işlemini gerçekleştirir. DBSCAN algoritmasını hesaplaması için kullanılan bazı terim ve yaklaşımlar içermektedir ve bunlar: Şekil 3.3. Eps uzaklığı [40] Çekirdek nesne: Bir veri nesnesi önceden belirlenen bir eşik değerden daha çok nokta içeriyorsa bu nesne çekirdek nesnedir. Eps: Bir veri nesnesinin komşularını belirlemek için gerekli olan yakınlık mesafesidir. MinPts: Bir bölgenin yoğun olarak adlandırılabilmesi için Eps komşuluğunda bulunması gereken en az komşu sayısıdır. Doğrudan Yoğunluk Erişilebilir Nokta : p noktası q nun Eps komşuluğunda ise ve q noktası p ye göre çekirdek nesne ise p noktası q ya göre doğrudan yoğunluk erişilebilir noktadır. Yoğunluk Erişilebilir Nokta : diyelim ki pi+1 noktası p noktasına göre Doğrudan Yoğunluk Erişilebilir Noktadır, ve p1,p2,p3 pn Doğrudan Yoğunluk Erişilebilir Nokta olmasını farz edelim p1=p ve pn=q ise q noktası Eps ve MinPts değerlerine göre p noktasına yoğunluk erişilebilirdir.

47 32 Şekil 3.4. A) Doğrudan Yoğunluk Erişilebilir B) Yoğunluk Erişilebilir noktalar.[40] DBSCAN algoritmasının çalışması iki önemli değer MinPts ve Eps parametreleri bildirilmelidir. Başlangıç olarak rasgele bir p noktası seçilir. Diyelim ki p noktası olarak rasgele seçildi, MinPts ve Eps değerlerine göre yoğunluk erişilebilir olan tüm noktaları bulur, eğer p çekirdek nokta koşulunu sağlıyor ise yeni bir küme keşfetmek üzereyiz anlamında gelir ve bu noktanın komşularını tek tek ele alırız. p noktasına yoğunluk erişilebilir olan tüm noktalara teker teker alarak aynı işlem uygulanır, eğer herhangi bir nokta çekirdek nokta koşulunu sağlamıyorsa bu nokta kümenin sınır noktasıdır. İncelenen tüm noktalardan hiçbiri çekirdek nokta koşulunu sağlamadığı zaman kümenin sınırları belirlenmiş olur. algoritma yeni bir rasgele nokta seçerek aynı işlemleri tekrar eder. Eğer rasgele seçilen nokta çekirdek nokta koşulunu sağlamıyorsa bu nokta gürültü ya da istisna olarak tanımlanır.[41] DBSCAN algoritmasının Çalışma Yöntemi DBSCAN algoritması, veri noktalarının iki ya da çok boyutlu uzayda birbirleri ile olan komşuluklarını ortaya çıkarır. DBSCAN algoritmasının amacı, Bazı bölgelerde kendiliğinden oluşan kümelenmeleri tespit etmek ve bu kümelenmelerden anlamlı sonuçlar çıkarmaktır. Bu tür kümelenmeler bazı noktaların ortak bir eğilimi hakkında önemli bilgiler verir. Örneğin deprem noktalarının kayıtlarının tutulduğu veri tabanındaki kümelenmeler bir fay hattını belirtebilir. Öncelikle veritabanı, Eps ve MinPts değerlerini giriş parametresi olarak alır. Veritabanındaki herhangi bir nesneden başlayarak tüm nesneleri kontrol eder. Eğer kontrol edilen nesne daha önce bir kümeye dahil edilmişse işlem yapmadan diğer nesneye geçer. Eğer nesne daha önce kümelenmemiş ise, bir bölge sorgusu yaparak nesnenin Eps komşuluğundaki

48 33 komşularını bulur. Komşu sayısı MinPts den fazla ise, bu nesne ve komşularını yeni bir küme olarak adlandırır. Daha sonra, önceden kümelenmemiş her bir komşu için yeni bölge sorgusu yaparak yeni komşular bulur. Bölge sorgusu yapılan noktaların komşu sayıları MinPts den fazla ise kümeye dahil eder. Bu işlem, incelenen noktaların komşu sayısı MinPts den az çıkana kadar sürer. Bu durum kümenin sınırlarına gelindiğini işaret eder [40]. Bölge sorgusunun tekrarlı olarak uygulanması Şekil (3.5. A) de görülmektedir. Şekil (3.5. A) bir küme olmak üzere Q1,Q2,Q3 bölge sorgularını temsil etmektedir. Rastgele seçilen ilk nokta Q1 sorgusunun merkezindeki nokta olsun. Örneğin MinPts=3 için bu nokta çevresinde Q1 bölge sorgusu gerçekleştirildiğinde iki yeni nokta bulunmuştur. Bu noktalar kümeye dahil edilmiştir. Noktalardan biri üzerinde Q2 sorgusu oluşturulmuş ve yeni bir nokta daha bulunmuştur. Bu şekilde bulunan her yeni nokta için Q3, Q4, Q5 sorguları oluşturularak kümenin tamamı bulunmuştur. Şekil 3.5. DBSCAN algoritması [42] DBSCAN algoritması veritabanının her elemanını bir kümeye dahil etmez, istisna verileri süzme yeteneğine sahiptir [42] Bölümleyici kümeleme algoritmaları Bölümleyicikümeleme algoritmaları veri setinden n tane giriş parametre kabul eden ve bu parametreleri k tane kümeye bölen algoritmalardır. Bu tekniği kullanan tüm algoritmalar merkez noktaların kümeni temsil etmesi esasına dayanır. Bölümleyici algoritmaların kolay uygulanabilirliği ve verimli sonuçlar vermesi neden ile yaygın bir şekilde kullanılmamaktadır. Bölümleyici algoritmaların arasından yaygın

49 34 kullanılan algoritmalar k-means, k-medoid, clara ve clarans, c-means algoritmalarıdır. Bu algoritmalarla ilgili aşağıda temel bilgiler verilmektedir ve açıklamalar yapılmaktadır. Ayrıca tezde kullanılan k-means ve kernel k-means algoritmalarını detaylı bir şekilde anlatılmaktadır K-Medoid algoritması Bir grup nesneyi k tane kümeye bölerken esas amaç, birbirine çok benzeyen nesnelerin bir arada olduğu ve farklı kümelerdeki nesnelerin mümkün olduğunca birbirinden benzersiz olduğu kümeleri bulmaktır. K-medoids algoritmasının temeli verinin çeşitli yapısal özelliklerini temsil eden k tane temsilci nesneyi bulma esasına dayanır. En yaygın kullanılan k-medoids algoritması 1987 yılında Kaufman ve Rousseeuw tarafından geliştirilmiştir. Temsilci nesne diğer nesnelere olan ortalama uzaklığı minimum yapan kümenin en merkezi nesnesidir. Bu nedenle, bu bölünme metodu her bir nesne ve onun referans noktası arasındaki benzersizliklerin toplamını küçültme mantığı esas alınarak uygulanır. Kümeleme literatüründe temsilci nesnelere çoğunlukla merkez tipler denilmektedir[43]. Amacın k tane nesneyi bulmak olmasından dolayı bu k-medoids metodu olarak adlandırılmaktadır. k adet temsilci nesne tespit edildikten sonra her bir nesne en yakın olduğu temsilciye atanarak k tane küme oluşturulur. Sonraki adımlarda her bir temsilci nesne, temsilci olmayan nesne ile değiştirilerek kümelemenin kalitesi yükseltilinceye kadar ötelenir. Bu kalite nesne ile ait olduğu kümenin temsilci nesnesi arasındaki ortalama benzersizlik maliyet fonksiyonu kullanılarak değerlendirilir. K-medoids algoritmasında birinci aşama yapılandırma aşamasıdır. Bu aşama kümelemenin başlangıç aşamasıdır, k adet temsilci nesne seçilene kadar devam eder. Başlangıç merkezleri rastgele atanabileceği gibi çeşitli işlemler sonucu da belirlenebilir. Algoritmanın ikinci aşaması değiştirme (Swap) aşamasıdır. Bu aşama temsilci nesneleri geliştirerek kümeleme işleminin verimini arttırmak için uygulanır. Her bir (i,h) çifti için hesaplama yapılır. Değişim ihtimallerinin kümelemeye nasıl bir etkisi olduğu incelenerek her nesnenin diğer nesne ile

50 35 benzerlik oranını kıyaslayarak kayıt edilir ve bu kıyaslamalar belli mekanizmalarla hesaplanır, sonuca bakarak her bir kombinasyon için kümeleme kalitesi hesaplanır. Şekil 3.6. K-medoid algoritması A) sınıflandırmadan önce veri seti B) İlk rastgele seçilen temsilcilere göre gruplandırmak C) İkinci hesaplanan temsilcilere göre gruplandırmak sonucu.[43] Yapılan benzerlik hesaplamaları sonucunda her nesne için bulunan değer toplanır. Toplamı minimum olan nesnenin kümenin yeni merkezi olarak alınır ve tüm kümeler için benzer işlem yapılır. Yeni temsilci nesneler yeni baştan kümelerin hesaplama işlemlerini yapar ve yeni küme sonuçları elde edilir[44]. K-medoid algoritması aşağıdaki adımlarla gerçekleşir: 1. Başlangıç medoidleri rastgele seçilir 2. Kalan her nesne en yakın olduğu medoid in kümesine atanır; 3. Medoid olmayan rastgele bir nesne seçilir, Orandom; 4. Oj medoid i ile Orandom ın değişişimi için toplam maliyet TCih hesaplanır; 5. Eğer TCih< 0 ise Oj ve Orandom değiştirilerek medoid kümesi yenilenir; 6. Hiçbir değişim olmayıncaya kadar ikinci adıma geri dönülür.[44] K-Medoid algoritmasının Avantajları Kümeleme algoritmaları arasında kararlı sonuç üreten algoritmalardan sayılır. Veri işlemi esnasında ilk adımda merkez seçilen nesneler kümeni etkilelemez.

51 36 K-Medoid algoritmasının Dezavantajları Veriye uygun k sayısının belirlenmesi için birden fazla denemenin yapılması gerekir. Farklı büyüklüklerde kümelerin tespitinde doğru olmamak imkânı var. Karmaşıklık probleminin hassasiyetinin nedeni ile sadece küçük veri setlerinde uygun olur [44] Clara ve Clarans algoritmaları CLARA algoritması büyük veritabanlarında etkili olan 1990 yılında Kaufman ve Rousseeuw tarafından bulunan bölümleyici bir metottur. Bu algoritma K-medoid algoritmasının büyük hacimde verilerin sınıflandıramaması nedeni ile bu soruna çözüm olarak ortaya çıkarılmıştır. Clara algoritması verilerin tümünü kullanarak gruplara ayrılmasının yerine veritabanının temsilcisi olarak içinden bir grup örnek ele alarak gruplandırma işleminde kullanılır. Bu örneğin içindeki merkez noktaları K-Medoid algoritması kullanılarak bulunur. Örnek küme doğru bir şekilde algoritmanı uyguladıktan sonra bulunan merkez noktalar, tüm veritabanı için kullanılarak bulunan merkez noktalarla aynı olur. Bulunan örnek veri seti merkezleri tüm veri seti için merkez olarak alınır ve veriler o merkeze göre sınıflandırılır. Clara algoritmasının iyi avantajlarından biri büyük hacimde olan verilerin sınıflandırmasıdır fakat algoritmanın performansı örnek grubunun boyutuna bağlıdır. Bulunan alınan örnek gruplar içinde bulunan merkezler doğru bir şekilde bulunmuşsa iyi performans ve iyi sonuç elde etmiş olunur fakat gerçek merkezler alınan örnek grubunun içinde olmadığı durumda clara algoritması başarılı sonuçlar vermemektedir[45]. Clarans algoritması 1994 yılında Raymond T. Ng ve Jiawei Han tarafından sunulmuştur, ve algoritmanın esas amacı clara algoritmasının performansını artırmak ve sonuçların örnek grubunun seçimine bağlı olduğu için yanlış gurup merkezi seçmelerini önlemektir. CLARANS algoritmasında CLARA dan farklı olarak örnek gurubu noktalar algoritmanın her aşamasında değişebilmektedir. Böylece tüm veritabanının örnek

52 37 gurubunun seçimi tarafsızca gerçekleşmiş olur. Algoritmanın örnek seçimi sürekli değişmektedir ve her seçimde gurup merkezinin performansını hesaplayarak bellekte tutmak gerekmektedir. Clarans algoritmasının hesaplamasında iki esas tanım vardır, bu tanımlar local numara ve max komşu bu iki yaklaşım algoritmanın farklı örnekler üzerinde çalışmasını ve test etmesini sağlar, local numara algoritmanın kaç tane örnek alacağını belirler diğeri ise gurubun etrafındaki maksimim komşu sayısını belirler. Algoritma ilk baştan akışı rastgele bir guruba verir. Seçilen düğümün maliyeti hesaplanır, sonra örnek gurubun etrafındaki komşulardan rastgele birini seçer ve toplam maliyetlerini karşılaştırır, eğer komşunun maliyeti daha eksikse değerler değiştirilir ve yeni seçilen komşu ele alınır ve minimum maliyet kendi maliyeti olarak seçilir buna ilave en iyi merkez düğüm olarak alınır. Aksi takdirde eğer asıl düğümün maliyeti daha az ise komşu hesaptan çıkar ve etrafta yeni komşu ile karşılaştırma başlar. Bu işlem maksimum komşu sayısını doldurana kadar devam eder, komşu sayısı dolunca işlem sonlanır ve başka bir örnek grup seçmeye başlar, yeni örnek grupta aynı işlemi uygular ve bu işlemler local numara sayısına varınca sona erer[46]. Aşağıda verilen adımlar clarans algoritmasının prosedürüdür: Local numara ve max komşu parametreleri girilir. İ değeri 1 eşitlenir ve mini maliyet değerini en büyük değere eşitlenir. Akım rasgele bir düğüme ayarlanır. J parametresi tanımlanır ve değeri 1 e eşitlenir. Akımdan geçerli rasgele bir komşu seçilir S, ve iki düğümün maliyet farkı hesaplanır. Eğer S düğümünün maliyeti akımdaki düğümün maliyetinden daha az ise akım maliyeti S maliyetine eşitlenir ve 3. Adıma tekrar dönülür. Aksi durumda j parametresi 1 değer aratılır. Eğer j parametresi max komşu değerine eşitse adım dörtte geri dön. Aksi durumda j max komşudan büyükse, akım maliyeti ile mini maliyet karşılaştırılır, eğer mini maliyetten eksik ise mini maliyet olarak alınır ve şuandaki akım düğümünü en iyi düğüm olarak alınır.

53 38 İ parametresi bir değer artırılır, eğer i local numaradan büyükse en iyi düğümü ortaya çıkar ve işlemi sondur, aksi durumda adım 2 ye geri dön[46] Fuzzy C-means Algoritması Bulanık Bölümleyici kümeleme tekniklerini en başarılı şekilde kullanan algoritmalar arasından Fuzzy c-means (FCM) algoritmasıdır, bu alanda en iyi yöntem sayılır. Fuzzy c-means algoritması 1973 yılında Dunn tarafından ortaya atılmış ve 1981 de Bezdek tarafından geliştirilmiştir[47]. Algoritmanın esas mantığı nesnelerin iki veya daha fazla kümeye ait olabilmesine izin vermektir. Bulanık mantık prensibi gereği her veri, kümelerin her birine [0,1] arasında değişen birer üyelik değeri ile aittir. Eğer bir nesne mevcut olan tüm kümelere ait olursa, o nesnenin üyelik değerinin toplamı 1 olmalıdır. Nesne hangi küme merkezine yakın ise o kümeye ait olma üyeliği diğer kümelere ait olma üyeliğinden daha büyük olacaktır. Çoğu bulanık kümeleme algoritması amaç fonksiyon tabanlıdır. Amaç fonksiyonun belirlenen minimum ilerleme değerine yakınlaşırsa kümeleme işlemi tamamlanır. Temel olarak k-means algoritmasına çok benzemekle beraber fuzzy c-means in k-means den en önemli farkı, görüldüğü gibi verilerin her birinin sadece bir sınıfa dâhil edilme zorunluluğunun olmamasıdır. Aşağıdaki şekil (3.7.) de k-means ve Fuzzy c-means arasındaki fark gösterilmektedir. Şekil 3.7. A) K-means kümeleri B) fuzzy C-means kümeleri[47].

54 39 Fuzzy c-means algoritması amaç fonksiyonu temelli bir metottur. Algoritma, en küçük kareler yönteminin genellemesi olan aşağıdaki amaç fonksiyonunu öteleyerek minimize etmek için çalışır: ( ) X veritananında bulunan nesnedir, m üyelik değerinin ağırlığını temsil ediyor ve Cj küme merkezinin prototipini temsil eder. U üyelik matrisi rastgele atanarak algoritma başlatılır. İkinci adımda ise merkez vektörleri hesaplanır. Hesaplanan küme merkezlerine göre U matrisi yeniden hesaplanır. Eski U matrisi ile yeni U matrisi karşılaştırılır ve fark ε dan küçük olana kadar işlemler devam eder K-Means Algoritması K-Means algoritması, veritabanındaki n tane nesnenin k adet kümeye bölümlenmesini sağlar. Kümeleme sonucu küme içi elamanlar arasındaki benzerlikler çok iken, kümeler arası (inter-cluster) elamanları arasındaki benzerlikler çok düşüktür. K-means algoritması veri madenciliğinde kullanılan tipik algoritmadır büyük hacimde olan veri setlerini sınıflandırmasında ve farklı sayıda gruplara ayırmakta kullanılır. K-means algoritması ilk olarak MacQueen tarafından 1967 yılında önerilmiştir, iyi tanımlanırmış kümeli problemleri çözmekte kullanılıyordu. K-means algoritması iki ana parçadan oluşmaktadır birinci parça k merkez değerlerini rastgele belirlemektir, belirlenen k merkez değeri sabit olmalıdır. Diğer parça ise veri setindeki her nesnenin belirlenen k merkez değerlerine uzaklıkları ve değerini kıyaslamaktır, ortaya çıkan her nesnenin her k merkezine uzaklık değerini göze alarak bu nesnelerin hangi kümelere ait olduğu belirlenir, nesnenin hangi merkeze uzaklık açısından daha yakınsa o merkezin kümesine dâhil olmaktadır[48]. Daha sonra, her bir kümenin ortalama değeri hesaplanarak yeni küme merkezleri belirlenir ve tekrar nesne-merkez uzaklıkları incelenir. Şekil (3.9.) K-means algoritmasının örnekleri guruplara ayırmasını göstermektedir.

55 40 Kümeleme sürecinde türüne özgü olarak hata kareleri ölçütü square-error criterion toplamı kullanılır. En düşük E değerine sahip kümeleme en iyi sonucu verir. ( ) Şekil 3.8. K-means algoritması ile guruplara ayrılmış veri tabanı nesneleri K=3 [34]. E: veritabanındaki bütün nesnelerin square error toplam kümelerin toplam vektörlerinin arasındaki uzaklıklarının karesidir. X: uzayda bir nesneye verilen noktayı gösterir. Xi: Ci kümesinin merkez noktasını gösterir Yukardaki fonksiyonun değerinin ne kadar az olursa k-means algoritmasının o kadar başarılı bir şekilde nesneleri guruplara ayarmış anlamında geliyor. Nesneleri özeliklerine göre koordinasyon uzayında temsil edilir ve koordinasyonun her vektörü nesnenin bir özelini temsil etmektedir ki bu koordinasyonla merkez nokta koordinasyonu (nesneler arasından rastgele seçilen) arasındaki mesafeyi hesaplayarak işleme başlanır [48]. Nesne koordinasyonu ve merkez koordinasyonu arasındaki mesafeyi kıyaslamak için öklit uzaklığı fonksiyonu kullanılır[41]:

56 41 ( ) [ ( ) ] ( ) D(Xi,Yi) : bulunması istenen iki noktanı arasındaki mesafeni temsil etmektedir. ( ) : her koordinasyonun x-axis ve y-axis değerlerinin toplam farklarının karesini temsil etmektedir. Dikkate alınması gereken şey koordinasyonla tüm merkezler arasında bu uzaklık formülü uygulanır ve en kısa mesafeye sahip olan merkez nesneni kendi gurubuna almış olmaktadır. k-means algoritmasının aşamaları adım adım olarak şöyle ifade ederiz : 1. Başlangıçta küme merkezini belirlemek için D veri tabanında k tane alt küme oluşturulacak şekilde rasgele n tane nesne seçilir. 2. Her nesnenin ortalaması hesaplanır. Merkez nokta kümedeki nesnelerin niteliklerinin ortalaması, 3. Her nesne en yakın merkez noktanın olduğu kümeye dâhil edilir. 4. Nesnelerin kümelemesinde değişiklik olmayana kadar adım 2 ye geri dönülür[49]. K-means algoritmasının en büyük problemi başlangıçta merkez noktayı belirlemek için seçilen nesnelerin küme içindeki seçiciliğiyle ilgilidir. Eğer kötü bir seçim yapılırsa nesnelerin kümelenmesindeki değişiklik çok sık olur ve farklı sonuçlar doğurabilir. K-means yöntemi, sadece kümenin ortalaması tanımlanabildiği durumlarda kullanılabilir, kullanıcıların k değerini, yani oluşacak küme sayısını belirtme gerekliliği bir dezavantaj olarak görülebilir. Esas önemli olan dezavantaj ise dışarıda kalanlar (outliers) olarak adlandırılan nesnelere karşı olan duyarlılıktır. Değeri çok büyük olan bir nesne, dâhil olacağı kümenin ortalamasını ve merkez noktasını büyük bir derecede değiştirebilir. Bu değişiklik kümenin hassasiyetini bozabilir. Bu sorunu gidermek için kümedeki nesnelerin ortalamasını almak yerine, kümede ortaya en yakın noktada konumlanmış olan nesne anlamındaki medoid kullanılabilir.

57 42 K-means Algoritmasının Avantajları Bu algoritmanın avantajları uygulanabilirliğinin kolay olması ve büyük veri kümelerinde hızlı çalışabilmesidir. Büyük veri setlerini işlerken nispeten ölçeklenebilir ve verimlidir. Karmaşıklığı diğer kümeleme yöntemlerine göre az. K- means algoritması yoğun kitlelerden (bulutlanmış) oluşan veritabanılarda daha iyi uygulanır ve daha verimli sonuçlara varmaktadır [50]. K-means Algoritmasının Dezavantajları Kullanıcının küme sayısını belirlemek zorunluluğu vardır. Kategorik sel ve metin sel içeren veritabanlarının üzerinde uygulanması gerçekleştirilemez. Gürültülü ve sıra dışı verilere duyarlı bir metottur. Kümelemede kullanılan özelliklerin hangisinin kümelemeye daha fazla katkısı olduğunu bilmeyiz. Kümelemeden sonra bazı kümeler boş küme olması ihtimali vardır bu yüzden böyle bir durumda bazı optimizasyonların yapılması gerekir[50] Kernel esaslı kümeleme ve Kernel k-means algoritması Kernel esaslı kümeleme standart kümelemeden farklı uzaylarda çalışır. Veri setindeki nesne vektörlerini alıp lineer olmayan fonksiyonları kullanarak farklı daha yüksek uzaya taşır. Kernel esaslı kümeleme yöntemleri vektörleri çok boyutlu uzaya taşır ve kümeleme işlemlerini n boyutlu ortamda yapar. Vektörlerin yüksek uzaylara taşınıp kümelenmesi daha kolay, daha etkili ve kaliteli kümeler elde edilmesini sağlamaktadır[51]. Kernel k-means algoritması standart k-means kümeleme algoritmasının lineer olmayan uzantısıdır. Bu yöntem eş yönlü ve doğrusal ayrılamayan uzayların kümeleme işlemlerini etkili bir şekilde yapılmış olması kanıtlanmıştır. Bu metot tekrarlamalı bir metottur, ki başlangıçta veri noktaları lineer olmayan dönüşümleri (.) kullanarak giriş uzayından çok boyutlu uzayına dönüştürür ve sonra işlemi gerçekleştirir ve kümeleme hata oranını minimize etmeye çalışır. Başka bir deyişle

58 43 kernel k-means algoritması aynı standart k-means algoritmasının işini çok boyutlu uzayda gerçekleştirir. Veri setindeki x ve y noktalarının çok boyutlu uzayda (x). (y) transformasyonunun hesaplaması için K(x,y) fonksiyonu kullanılır, ki K: D X D R ve buna kernel fonksiyonu adı verilir. Kernel fonksiyonları farklı türlerde bulunmaktadır ve genelde en çok sayda kullanılan temel fonksiyonlar şunlardır: Lineer kernel : K(xi, xj) = xi xj, Polynomial kernel a rütbesinde: K(xi, xj) = (xi xj + 1) a, Radial(RBF) kernel: K(xi, xj) = k(xi, xj) = exp( r xi xj 2 ). Kernel k-means algoritmasının tekrarlamalı işlevinde algoritmanın K(xi, xj) değerinin hesaplamasını gerçekleştirir, tekrarlamalı adımalar başlamadan önce hazırlanması gereken metris hazırlanır ki bu metris kernel metrisidir H = [K ij ]nxn, ve nesnenin (i,j) li girişi K ij = K (x i,x j ). Kernel k-means algoritması için zaman ve alan gereksinimleri O(n 2 )dir, ki burada n veri setinin hacmini ifade ediyor. Ayrıca algoritmanın gereksinimlerinden olan küme sayısının belirlenmesi k ve başlangıç noktaların belirlenmesidir[52]. Diyelim ki D= {x1,x2,,xn} n hacminde olan bir veri setidir, k veri setinin bölünmesi istenen küme sayısıdır. µ(0) başlangıç çekirdek noktaları ve π(0) veri setinin başlangıç bölünmesidir. Kernel k-means algoritması tekrarlamalı bir metottur, k, µ(0) ve başlangıç çekirdek noktaları ve π(0) girdi olarak alır ve veri seti için son bölme sonuçlarını Π D çıkış olarak elde eder. Kernel k-means algoritmasını temsil eden ve kriter fonksiyonunu minimize etmek için kullanılan fonksiyon şöyledir: ( ) ( ) ( ) Bu fonksiyonda mj kendi kümesine ait Ci kümesini temsil etmektedir ki mj: ( ) ( ) ( )

59 44 Taşınılmış çok boyutlu uzayda. Nesnelerin taşındığı hesaplama uzayında iki nokta ϕ(xi) ve ϕ(xj) arasındaki uzaklığı hesaplamak için aşağıdaki fonksiyon kullanılır: ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) Ayrıca ( ) hesaplaması ( ) değerini göze almadan aşağıdaki açıklamaya göre hesaplayabiliriz: ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) Ki, Ve ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) Fonksiyonlarına göre hesaplanmaktadır. Tekrarlamalı kernel k-means algoritmasının adımları aşağıdaki gibidir[53]: 1. Her Cj kümesi için, ve G(Cj) bulunur. 2. Her xi nesnesi için her kümeye göre F(xi,Cj) değeri hesaplanır. 3. ( ) değeri hesaplanır ve xi nesneyi en yakın olan kümeye dahil edilir. 4. Küme merkezi mj değeri güncellenir ki j=1 k ya kadar.

60 Adımdan 4. Adıma kadar kümelerin sonuçları birbirine yaklaşıncaya kadar tekrar edilir. Çıkış: Son bölünme sonuçları ve kümeler Π D ={C1,C2,,Ck}.

61 46 4. Uygulama 4.1. Program Arayüzü Bu bölümde üçüncü bölümde anlatılan bölümleyici kümeleme algoritmaları ele alınacaktır. Bölümleyici kümeleme algoritmalarını bu bölümde pratik bir şekilde gösterilmeye çalışılacaktır. Bölümleyici kümeleme algoritmaları arasından ele alınacak iki algoritma k-means algoritması ve kernel k-means algoritmalarıdır. Bu iki algoritma farklı dağılımlı ve yoğunluklu veri setlerinde test edilecek ve çıkan sonuçlar karşılaştırılacaktır. K-means algoritmasında mesafe kullanmak için iki tane yöntem kullanılacaktır; bunların ilki Öklid formülü diğeri ise kosinüs formülüdür. Bu iki yöntem vektörlerin arasındaki benzerliği hesaplayarak mesafeyi ve vektörle hangi merkeze daha yakın olduğunu belirler. Diğer tarafta ise kernel k-means algoritması içinde RBF (Radial Basis Function) kernal ve polynomial kernel yöntemleri olmak üzere iki adet yöntem kullanılmaktadır. Veri setleri kullanılan bu yöntemlere uygulanarak her veri setinin türüne göre sonuçlar elde edilmektedir. Kullanılan veri setleri hacmi ve dağılım şekline göre şöyle sıralanmaktadır: 1. Küçük hacimli düz dağılımlı veri setleri. 2. Orta hacimli düz dağılımlı veri setleri. 3. Büyük hacimli düz dağılımlı veri setleri. 4. Küçük hacimli yığılı dağılımlı veri setleri. 5. Orta hacimli yığılı dağılımlı veri setleri. 6. Büyük hacimli yığılı dağılımlı veri setleri. Yukarıdaki belirtilen özellikte veri setleri iki algoritmanın yöntemlerine tek tek uygulanarak sonuçlar elde edilir. Elde edilen sonuçlar tüm yöntemler ve veri türleri için karşılaştırılır. Karşılaştırma yöntemi aşağıdaki gibidir: 1. Standart k-means kosinüs ve Öklid yöntemleri arasında hız karşılaştırması. 2. Standart k-means kosinüs ve Öklid yöntemleri arasında bellek kaplama karşılaştırması.

62 47 3. Standart k-means kosinüs ve Öklid yöntemleri arasında kalite tamlık skoru karşılaştırması. 4. Standart k-means kosinüs ve kernel k-means RBF yöntemleri arasında hız karşılaştırması. 5. Standart k-means kosinüs ve kernel k-means RBF yöntemleri arasında bellek kaplama karşılaştırması. 6. Standart k-means kosinüs ve kernel k-means RBF yöntemleri arasında kalite tamlık skoru karşılaştırması. 7. Standart k-means kosinüs ve kernel k-means polynomial yöntemleri arasında hız karşılaştırması. 8. Standart k-means kosinüs ve kernel k-means polynomial yöntemleri arasında bellek kaplama karşılaştırması. 9. Standart k-means kosinüs ve kernel k-means polynomial yöntemleri arasında kalite tamlık skoru karşılaştırması. 10. Standart k-means Öklid ve kernel k-means RBF yöntemleri arasında hız karşılaştırması. 11. Standart k-means Öklid ve kernel k-means RBF yöntemleri arasında bellek kaplama karşılaştırması. 12. Standart k-means Öklid ve kernel k-means RBF yöntemleri arasında kalite tamlık skoru karşılaştırması. 13. Standart k-means Öklid ve kernel k-means polynomial yöntemleri arasında hız karşılaştırması. 14. Standart k-means Öklid ve kernel k-means polynomial yöntemleri arasında bellek kaplama karşılaştırması. 15. Standart k-means Öklid ve kernel k-means polynomial yöntemleri arasında kalite tamlık skoru karşılaştırması. Uygulama ara yüzü,matlab ortamında hazırlanmıştır. Kümeleme kalite karşılaştırması için completeness score fonksiyonu kullanılmıştır. Bu fonksiyonu kullanmak için python versiyonundansklern kütüphanesinden yararlanılmıştır. Bunun sonucunda matlab ortamında hazırlanan ara yüz meydana gelmiştir.

63 48 Uygulama çalıştırıldığında ilk olarak programın genel ara yüzü ile karşılaşırız. Programın ara yüzü genel olarak üç kısımdan oluşmaktadır; ilk kısmı veri seti seçme kısmı, ikinci kısmı iki algoritmanın çalıştırma tuşları ve çizim ekranı, üçüncü kısmı ise algoritmaların performanslarına göre verilen sonuçlar ki bu sonuçları karşılaştırmada kullanacağız. Uygulamanın genel ekran görüntüsü aşağıdaki şekil (4.1) deki gibi görülmektedir: Şekil 4.1. kümeleme uygulamasının ekran görüntüsü. Uygulamanın ilk parçasına bakacak olursak, bu bölüm veri seti bölümü adı altında geçmektedir. Bu bölümde programa yüklenen veri setleri (.txt) uzantılı veri setlerinden ibarettir. Bunun nedeni (.txt) uzantısı veri setlerinin kolay kullanış sekli ve matlab programı içinde esneklik göstermesi, ayrıca az bellek kullanması ve hızlı bir şekilde programa yüklenmesidir. Veri seti bölümünde bir tane frame içinde dört nesne bulunmaktadır, Bunlar veri seti seçme tuşu, veri setinin bulunduğu dosya uzantısı, veri setinin orijinal kümeleme etiket dosyası ve etiket tuşunun bulunduğu dosya uzantısıdır. Veri seti seçme ekranı aşağıdaki şekil (4.2) de gösterilmektedir.

64 49 Şekil 4.2. Veri seti seçme ekranı. Veri setini seçmek için şekilde göründüğü gibi dosya seç tuşuna basılır, dosya seç tuşuna basıldığında yeni bir dosya seçme ekranı açılacak, bu ekrandan veri seti (.txt) uzantılı olarak seçilir. Ayrıca veri setinin orijinal kümeleme dosyasını seçmek için lebel seç tuşu kullanılır ve aynı şekilde dosya yüklenir. Aşağıdaki şekil (4.3) te veri tabanı seçme ekranı gösterilmektedir. Şekil 4.3. veri seti seçmek için göz at ekran görüntüsü. Yukarda bahsedilen konu hazırlanan uygulamanın ilk parçası olan veri seti yükleme kısmı idi. Uygulamanın ikinci kısmı algoritmaların çalıştırma nesnelerini içermektedir. Bu bölüm iki parçadan oluşmaktadır, her parça bir tane algoritma çalıştırır. Bölümlerin bir parçası standart k-means algoritması için diğeri ise kernel k- means algoritması için kullanılmıştır. Her iki parçada aynı sayıda nesne içermektedir ve içerikleri hariç birçoğunun görevi aynıdır. Aşağıdaki şekil (4.4) uygulamanın ikinci parçasını göstermektedir.

65 50 Şekil 4.4. k-means ve kernel k-means algoritmaların çalıştıran kısmının ekran görüntüsü. Yukarıdaki şekil (1) de görülen iki parçanın sol tarafı standart k-means algoritmasını ifade etmektedir. K-means algoritmasını çalıştırmak için kendine özel olan alanda dört tane nesne bulunmaktadır, bu nesneler algoritma çalıştırma tuşu, metin kutusu, seçenek kutusu ve çizim ekranından oluşmaktadır. Veri seti yüklendikten sonra k- means algoritması bölümünün metin kutusuna küme sayısı yazılması gerekir. Metin kutusuna yüklenen veri setinin kaç adet sınıfa ayrılacağına dair bilgi girilmesi gerekir. Sınıf sayısını belirledikten sonra seçenek kutusuna sıra gelir, seçenek kutusunun görevi algoritmanın kümelemede hangi benzerlik formülünü kullanacağını belirlemektir. Standart k-means algoritmasının uygulamasını hesaplamak için iki tane benzerlik hesaplama formülü kullanılmıştır, bunların birincisi Öklid formülü diğeri ise kosinüs formülüdür. Benzerlik formülü seçimi aşağıdaki şekil 4.5 te gösterilmektedir.

66 51 Şekil 4.5. k-means algoritması için benzerlik formülü seçim kutusu. Kümeleme işleminde kullanılacak hesaplama formülü kutudan seçildikten sonra sıra uygulama tuşuna gelecek. Uygulama tuşuna basılarak k-means algoritması yüklenen veri setini alıp, belirlenen sınıf sayısı ve seçilen benzerlik formülüne göre veri setindeki her nesneyi en yakın kümeye göndererek kümeleme işlemini gerçekleştirir. İkinci algoritmanın (kernel k-means algoritması) tarafına gelirsek çalıştırma tuşunun kodlama kısmı ve hesaplama yöntemi seçimi kısmı hariç diğer nesneler standart k- means algoritmasının nesnelerinin aynısını içermektedir. Kernel k-means algoritması için iki tane hesaplama fonksiyonu kullanılmıştır, bunlar RBF kernel ve Polynomial kernel fonksiyonlarıdır. Veri seti yüklendikten sonra sınıf sayısı girilir ve hesaplamak için iki kernel fonksiyonlarından biri seçilir ve sonra da algoritmayı çalıştırmak için uygula tuşuna basılır ve sonuçlar elde edilir.

67 52 Uygulamanın üçüncü kısmı sonuçlar kısmından ibarettir. Uygulama başlangıcından beri iki algoritmanın çalıştırılması ve sonuçlarının elde etmesini hedeflemektedir. Sonuçlar kısmı bu uygulamanın en önemli kısmı sayılabilir çünkü algoritmaların çalıştırma performansını yansıtan bir bölümdür. Veri setleri üzerinde iki algoritmanın arasındaki karşılaştırma sonuçları ve analizi bu bölüme bağlıdır. Aşağıdaki şekil 4,6 da uygulamanın sonuçlar bölümünü göstermektedir. Şekil 4.6. k-means algoritması ve kernel k-means algoritmasının sonuç bölümü. Sonuç bölümü iki parçadan oluşmaktadır ve bunların biri standart k-means sonuçlarını diğeri kernel k-means algoritmasının sonuçlarını içerir. Her iki parça aynı nesneleri içermektedir. Bu bölümde bulunan nesneler algoritmaların hız, kalite ve bellek kaplama performanslarını göstermektedir. Bu bölümde her algoritmaya ait olan parça kümeleme hızı ile ilgili birer kutu içermektedir. Algoritmalar çalıştırılınca program her iki algoritma için farklı olarak uygulama hızını hesaplama işlemini gerçekleştirir ve programın içindeki hız değişkeninin değerini sonuç bölümündeki

68 53 kümeleme hızı kutucuğuna yerleştirir. Kümeleme hızının hesaplamasında matlab programlama dilinin içindekitik tok komutundan yaralanılmıştır. Kümeleme hızının alt tarafında ise ikinci performans hesaplama kutusu yerleştirilmiştir ve buda kümeleme işleminin kalitesini hesaplamaktadır. Kalite hesaplama kısmı küme tamlık skoru adı altında geçmektedir. Kümeleme işleminin tamamlanması ile birlikte veri setinin kümeleme sonucu ele alınıyor ve veri setinin gerçek sınıfları ile karşılaştırılıyor. Sonuçta tamlık değeri 0-1 arasında çıkmaktadır. Bu çıkan tamlık değeri ise algoritmaların ne kadar gerçek kümelemeye yakın olduğunu yansıtır. Değer ne kadar yüksek ise algoritma o kadar iyi kümeleme işlemi yapmış anlamına gelmektedir. Tamlık skorundan sorumlu olan program parçası matlab haricinde olup Python programlama dilinde gerçekleştirilmiştir. Python da sklren kütüphanesi kullanılarak içindeki completness_scorefonksiyonu ile bu işlem gerçekleştirilmiştir, sonrada hesaplama sonucunu matlab taki ara yüzüne taşıyarak kalite kutusuna özel olan bölgeye yerleştirilmiştir. Sonuç bölümünün üçüncü nesnesi bellek kaplama kutucuğudur. Bellek kaplama kutusu tamlık skoru nesnesinin tam altında yer almaktadır. Bu nesnede algoritmalar çalıştırıldığında kümeleme işlemi gerçekleştirilinceye kadar kaç MB bellek kullanılması gerektiğini göstermektedir. İki algoritmadan hangisi çalıştırılırsa program bellek hesaplama bölümü ile devreye girmeye başlar, algoritmanın ne yaptığını ve ne kadar değişken kullandığını ve her değişkenin kaç MB bellek kullandığını hesaplamaya başlar. Hesaplamanın sonunda toplam bellek kullanımında ne kadar kullanıldığıyla ilgili bilgi bellek kaplamaya özleştirilen bölgeye gönderilir. Bellek kaplama işlemini uygulamadaki programlama kısmı matlab programlama dilindeki who-whos komutunu kullanarak belleği byte halinde hesaplamayı gerçekleştirir ve sonra program byte ile olan hacmi MB haline dönüştürüp ara yüzünde belleğe özel bölgeye yerleştirir. Uygulamanın ara yüzü genel olarak yukarıdaki anlatılan kısımlardan oluşmaktadır. Programı çalıştırmak için veri seti yüklenir. Veri seti text olarak yüklendikten sonra program kullanıcısı veri setinin kaç kümeye ayrılması gerektiğini belirlemeli ve

69 54 kutuya girişi sayı olarak gerçekleştirmelidir. Kümeleme algoritmalarının daha iyi performans göstermesi için küme sayısının girişi veri setinin orijinal küme sayısına göre girilmesi gerekir. Bu yüzden kullanıcının seçtiği veri seti ile ilgili bilgi sahibi olması gerekir. Kullanıcı, küme sayısı kutusunun alt tarafında bulunan seçenek kutusundan kullanılacak formülü seçecek, bu seçenek iki algoritma için de geçerli olacaktır. Yukarıdaki bilgilerin tamamı kullanıcı tarafından girildikten sonra kullanıcı iki algoritmanın müstakil olan uygulama tuşlarını kullanarak algoritmanın çalıştırılmasını gerçekleştirir. Aşağıdaki şekil 4.7, algoritmaların çalıştırıldığı an ve veri setinin nasıl kümelere ayrıldığı çizim ekranını göstermektedir. Şekil 4.7. k-means algoritması ve kernel k-means algoritmasının kümeleme yapmış ekran çıktısı. Yukarıdaki şekilde görüldüğü gibi k-means ve kernal k-means algoritmalarının kümeleme yapmış hali böyle yansımaktadır. Kümeleme yapan algoritmaların sağ tarafında bulunan sonuç ekranı da aynı anda sonuç verir. Her iki algoritma için hız, tamlık skoru ve bellek kaplama sonuçlarını gösterir ve hangi algoritmanın daha iyi performansla çalıştığını belirler Karşılaştırma Karşılaştırma bu tezde bahsi geçen iki algoritmanın arasında 4. bölümde anlatılan ara yüzü kullanarak üç performans açısından yapılmaktadır. Bunlar kümeleme hızı,

VERİ MADENCİLİĞİ (Kümeleme) Yrd.Doç.Dr. Kadriye ERGÜN

VERİ MADENCİLİĞİ (Kümeleme) Yrd.Doç.Dr. Kadriye ERGÜN VERİ MADENCİLİĞİ (Kümeleme) Yrd.Doç.Dr. Kadriye ERGÜN kergun@balikesir.edu.tr İçerik Kümeleme İşlemleri Kümeleme Tanımı Kümeleme Uygulamaları Kümeleme Yöntemleri Kümeleme (Clustering) Kümeleme birbirine

Detaylı

Kümeler arası. Küme içi. uzaklıklar. maksimize edilir. minimize edilir

Kümeler arası. Küme içi. uzaklıklar. maksimize edilir. minimize edilir Kümeleme Analizi: Temel Kavramlar ve Algoritmalar Kümeleme Analizi Nedir? Her biri bir dizi öznitelik ile, veri noktalarının bir kümesi ve noktalar arasındaki benzerliği ölçen bir benzerlik ölçümü verilmiş

Detaylı

Web Madenciliği (Web Mining)

Web Madenciliği (Web Mining) Web Madenciliği (Web Mining) Hazırlayan: M. Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü Konular Denetimsiz Öğrenmenin Temelleri Kümeleme Uzaklık Fonksiyonları Öklid Uzaklığı Manhattan

Detaylı

VERİ MADENCİLİĞİ (Veri Ön İşleme-2) Yrd.Doç.Dr. Kadriye ERGÜN

VERİ MADENCİLİĞİ (Veri Ön İşleme-2) Yrd.Doç.Dr. Kadriye ERGÜN VERİ MADENCİLİĞİ (Veri Ön İşleme-2) Yrd.Doç.Dr. Kadriye ERGÜN kergun@balikesir.edu.tr Genel İçerik Veri Madenciliğine Giriş Veri Madenciliğinin Adımları Veri Madenciliği Yöntemleri Sınıflandırma Kümeleme

Detaylı

VERI TABANLARıNDA BILGI KEŞFI

VERI TABANLARıNDA BILGI KEŞFI 1 VERİ MADENCİLİĞİ VERI TABANLARıNDA BILGI KEŞFI Veri Tabanlarında Bilgi Keşfi, veriden faydalı bilginin keşfedilmesi sürecinin tamamına atıfta bulunmakta ve veri madenciliği bu sürecin bir adımına karşılık

Detaylı

VERİ MADENCİLİĞİ (Karar Ağaçları ile Sınıflandırma) Yrd.Doç.Dr. Kadriye ERGÜN

VERİ MADENCİLİĞİ (Karar Ağaçları ile Sınıflandırma) Yrd.Doç.Dr. Kadriye ERGÜN VERİ MADENCİLİĞİ (Karar Ağaçları ile Sınıflandırma) Yrd.Doç.Dr. Kadriye ERGÜN kergun@balikesir.edu.tr İçerik Sınıflandırma yöntemleri Karar ağaçları ile sınıflandırma Entropi Kavramı ID3 Algoritması C4.5

Detaylı

K En Yakın Komşu Methodu (KNearest Neighborhood)

K En Yakın Komşu Methodu (KNearest Neighborhood) K En Yakın Komşu Methodu (KNearest Neighborhood) K-NN algoritması, Thomas. M. Cover ve Peter. E. Hart tarafından önerilen, örnek veri noktasının bulunduğu sınıfın ve en yakın komşunun, k değerine göre

Detaylı

VERİ MADENCİLİĞİNE BAKIŞ

VERİ MADENCİLİĞİNE BAKIŞ VERİ MADENCİLİĞİNE BAKIŞ İçerik Veri Madenciliği Neden Veri Madenciliği? Veri ve Veri Madenciliğinin Önemi Günümüzde Kullanılan Veri Madenciliğinin Çeşitli İsimleri Veri Madenciliği Nedir? Neden Veri Madenciliği?

Detaylı

Uzaktan Algılama Teknolojileri

Uzaktan Algılama Teknolojileri Uzaktan Algılama Teknolojileri Ders 11 Hiperspektral Görüntülerde Kümeleme ve Sınıflandırma Alp Ertürk alp.erturk@kocaeli.edu.tr Sınıflandırma Sınıflandırma işleminin amacı, her piksel vektörüne bir ve

Detaylı

VERİ MADENCİLİĞİ önemsiz olmayan, gizli, önceden bilinmeyen, potansiyel olarak kullanışlı

VERİ MADENCİLİĞİ önemsiz olmayan, gizli, önceden bilinmeyen, potansiyel olarak kullanışlı Veri Madenciliği, örüntü tanıma, istatistik ve matematiksel yöntemlerin kullanımıyla devasa miktardaki güncel ya da geçmiş veri içerisinden ilgi çekici ( önemsiz olmayan, gizli, önceden bilinmeyen, potansiyel

Detaylı

YZM 3217 YAPAY ZEKA DERS#10: KÜMELEME

YZM 3217 YAPAY ZEKA DERS#10: KÜMELEME YZM 317 YAPAY ZEKA DERS#10: KÜMELEME Sınıflandırma (Classification) Eğiticili (supervised) sınıflandırma: Sınıflandırma: Sınıf sayısı ve bir grup örneğin hangi sınıfa ait olduğunu bilinir Eğiticisiz (unsupervised)

Detaylı

Tanımı Amacı Özellikleri Kullanım Alanları Varsayımları Yöntemleri Uygulama aşamaları. Neleri göreceğiz?

Tanımı Amacı Özellikleri Kullanım Alanları Varsayımları Yöntemleri Uygulama aşamaları. Neleri göreceğiz? KÜMELEME Tanımı Amacı Özellikleri Kullanım Alanları Varsayımları Yöntemleri Uygulama aşamaları Neleri göreceğiz? Tanımı Veriyi birbirlerine benzeyen elemanlardan oluşan kümelere ayırarak, heterojen bir

Detaylı

Makine Öğrenmesi 2. hafta

Makine Öğrenmesi 2. hafta Makine Öğrenmesi 2. hafta Uzaklığa dayalı gruplandırma K-means kümeleme K-NN sınıflayıcı 1 Uzaklığa dayalı gruplandırma Makine öğrenmesinde amaç birbirine en çok benzeyen veri noktalarını aynı grup içerisinde

Detaylı

CBS ve Coğrafi Hesaplama

CBS ve Coğrafi Hesaplama Yıldız Teknik Üniversitesi CBS ve Coğrafi Hesaplama 2. Bölüm Yrd. Doç. Dr. Alper ŞEN Harita Mühendisliği Bölümü Kartografya Anabilim Dalı web: http://www.yarbis.yildiz.edu.tr/alpersen/ E mail: alpersen@yildiz.edu.tr

Detaylı

Eğitim seti (training set) sınıflandırma modelinin elde edileceği kayıtları içerir

Eğitim seti (training set) sınıflandırma modelinin elde edileceği kayıtları içerir sınıflandırma: temel kavramlar, karar ağaçları ve model değerlendirme Sınıflandırma : Tanım Eğitim seti (training set) sınıflandırma modelinin elde edileceği kayıtları içerir Eğitim setindeki her kayıt

Detaylı

127 - Twoing Algoritması ile Sınıflandırma Kalp Hastalığı Uygulaması MEHMET AKİF ERSOY ÜNİVERSİTESİ İLHAN UYSAL MEHMET BİLEN SAMİ ULUKUŞ

127 - Twoing Algoritması ile Sınıflandırma Kalp Hastalığı Uygulaması MEHMET AKİF ERSOY ÜNİVERSİTESİ İLHAN UYSAL MEHMET BİLEN SAMİ ULUKUŞ 127 - Twoing Algoritması ile Sınıflandırma Kalp Hastalığı Uygulaması MEHMET AKİF ERSOY ÜNİVERSİTESİ İLHAN UYSAL MEHMET BİLEN SAMİ ULUKUŞ Veri Madenciliği : Bir sistemin veri madenciliği sistemi olabilmesi

Detaylı

Büyük Veri İçin İstatistiksel Öğrenme (Statistical Learning for Big Data)

Büyük Veri İçin İstatistiksel Öğrenme (Statistical Learning for Big Data) Büyük Veri İçin İstatistiksel Öğrenme (Statistical Learning for Big Data) M. Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü Bu dersin sunumları, The Elements of Statistical Learning: Data

Detaylı

Kümeleme Algoritmaları. Tahir Emre KALAYCI

Kümeleme Algoritmaları. Tahir Emre KALAYCI Tahir Emre KALAYCI 2010 Gündem En önemli gözetimsiz öğrenme (unsupervised learning) problemi olarak değerlendirilmektedir Bu türdeki diğer problemler gibi etiketsiz veri kolleksiyonları için bir yapı bulmakla

Detaylı

SÜREKLĠ OLASILIK DAĞILIMLARI

SÜREKLĠ OLASILIK DAĞILIMLARI SÜREKLĠ OLASILIK DAĞILIMLARI Sayı ekseni üzerindeki tüm noktalarda değer alabilen değişkenler, sürekli değişkenler olarak tanımlanmaktadır. Bu bölümde, sürekli değişkenlere uygun olasılık dağılımları üzerinde

Detaylı

Veri Tabanı, Veri Ambarı, Veri Madenciliği. Veri Madenciliği Uygulama Alanları

Veri Tabanı, Veri Ambarı, Veri Madenciliği. Veri Madenciliği Uygulama Alanları 1 Veri Tabanı, Veri Ambarı, Veri Madenciliği Bilgi Keşfi Aşamaları Apriori Algoritması Veri Madenciliği Yöntemleri Problemler Veri Madenciliği Uygulama Alanları 2 Bir bilgisayarda sistematik şekilde saklanmış,

Detaylı

Uzaktan Algılama Uygulamaları

Uzaktan Algılama Uygulamaları Aksaray Üniversitesi Uzaktan Algılama Uygulamaları Doç.Dr. Semih EKERCİN Harita Mühendisliği Bölümü sekercin@aksaray.edu.tr 2010-2011 Bahar Yarıyılı Uzaktan Algılama Uygulamaları GÖRÜNTÜ İŞLEME TEKNİKLERİ

Detaylı

VERİ MADENCİLİĞİ (Sınıflandırma Yöntemleri) Yrd.Doç.Dr. Kadriye ERGÜN kergun@balikesir.edu.tr

VERİ MADENCİLİĞİ (Sınıflandırma Yöntemleri) Yrd.Doç.Dr. Kadriye ERGÜN kergun@balikesir.edu.tr VERİ MADENCİLİĞİ (Sınıflandırma Yöntemleri) Yrd.Doç.Dr. Kadriye ERGÜN kergun@balikesir.edu.tr Genel İçerik Veri Madenciliğine Giriş Veri Madenciliğinin Adımları Veri Madenciliği Yöntemleri Sınıflandırma

Detaylı

VERİ MADENCİLİĞİ. Karar Ağacı Algoritmaları: SPRINT algoritması Öğr.Gör.İnan ÜNAL

VERİ MADENCİLİĞİ. Karar Ağacı Algoritmaları: SPRINT algoritması Öğr.Gör.İnan ÜNAL VERİ MADENCİLİĞİ Karar Ağacı Algoritmaları: SPRINT algoritması Öğr.Gör.İnan ÜNAL SPRINT Algoritması ID3,CART, ve C4.5 gibi algoritmalar önce derinlik ilkesine göre çalışırlar ve en iyi dallara ayırma kriterine

Detaylı

Serdar BİROĞUL YÜKSEK LİSANS TEZİ (ELEKTRİK EĞİTİMİ) GAZİ ÜNİVERSİTESİ FEN BİLİMLERİ ENSTİTÜSÜ ANKARA

Serdar BİROĞUL YÜKSEK LİSANS TEZİ (ELEKTRİK EĞİTİMİ) GAZİ ÜNİVERSİTESİ FEN BİLİMLERİ ENSTİTÜSÜ ANKARA i GENETİK ALGORİTMA YAKLAŞIMIYLA ATÖLYE ÇİZELGELEME Serdar BİROĞUL YÜKSEK LİSANS TEZİ (ELEKTRİK EĞİTİMİ) GAZİ ÜNİVERSİTESİ FEN BİLİMLERİ ENSTİTÜSÜ OCAK 2005 ANKARA ii Serdar BİROĞUL tarafından hazırlanan

Detaylı

TEMEL İSTATİSTİKİ KAVRAMLAR YRD. DOÇ. DR. İBRAHİM ÇÜTCÜ

TEMEL İSTATİSTİKİ KAVRAMLAR YRD. DOÇ. DR. İBRAHİM ÇÜTCÜ TEMEL İSTATİSTİKİ KAVRAMLAR YRD. DOÇ. DR. İBRAHİM ÇÜTCÜ 1 İstatistik İstatistik, belirsizliğin veya eksik bilginin söz konusu olduğu durumlarda çıkarımlar yapmak ve karar vermek için sayısal verilerin

Detaylı

BKİ farkı Standart Sapması (kg/m 2 ) A B BKİ farkı Ortalaması (kg/m 2 )

BKİ farkı Standart Sapması (kg/m 2 ) A B BKİ farkı Ortalaması (kg/m 2 ) 4. SUNUM 1 Gözlem ya da deneme sonucu elde edilmiş sonuçların, rastlantıya bağlı olup olmadığının incelenmesinde kullanılan istatistiksel yöntemlere HİPOTEZ TESTLERİ denir. Sonuçların rastlantıya bağlı

Detaylı

PARALEL VERİ MADENCİLİĞİ ALGORİTMALARI. BAŞARIM 09, 15-18 Nisan 2009, ODTÜ, Ankara

PARALEL VERİ MADENCİLİĞİ ALGORİTMALARI. BAŞARIM 09, 15-18 Nisan 2009, ODTÜ, Ankara PARALEL VERİ MADENCİLİĞİ ALGORİTMALARI BAŞARIM 09, 15-18 Nisan 2009, ODTÜ, Ankara Veri Madenciliğine Genel Bir Bakış Veri Madenciliğinin Görevleri Sınıflama Seri Sınıflama Algoritmaları Paralel Sınıflama

Detaylı

VERİ MADENCİLİĞİ (Veri Önişleme-1) Yrd.Doç.Dr. Kadriye ERGÜN

VERİ MADENCİLİĞİ (Veri Önişleme-1) Yrd.Doç.Dr. Kadriye ERGÜN VERİ MADENCİLİĞİ (Veri Önişleme-1) Yrd.Doç.Dr. Kadriye ERGÜN kergun@balikesir.edu.tr Genel İçerik Veri Madenciliğine Giriş Veri Madenciliğinin Adımları Veri Madenciliği Yöntemleri Sınıflandırma Kümeleme

Detaylı

VERİ MADENCİLİĞİ Metin Madenciliği

VERİ MADENCİLİĞİ Metin Madenciliği VERİ MADENCİLİĞİ Metin Madenciliği Yrd. Doç. Dr. Şule Gündüz Öğüdücü 1 2 Metin için Veri Madenciliği Metin Madenciliğinde Sorunlar Metin madenciliği: Veri madenciliği teknikleri ile yazılı belgeler arasındaki

Detaylı

YAPAY SİNİR AĞLARI. Araş. Gör. Nesibe YALÇIN BİLECİK ÜNİVERSİTESİ

YAPAY SİNİR AĞLARI. Araş. Gör. Nesibe YALÇIN BİLECİK ÜNİVERSİTESİ YAPAY SİNİR AĞLARI Araş. Gör. Nesibe YALÇIN BİLECİK ÜNİVERSİTESİ İÇERİK Sinir Hücreleri Yapay Sinir Ağları Yapısı Elemanları Çalışması Modelleri Yapılarına Göre Öğrenme Algoritmalarına Göre Avantaj ve

Detaylı

Konular. VERİ MADENCİLİĞİ Giriş. Problem Tanımı. Veri Madenciliği: Tarihçe. Veri Madenciliği Nedir? Bilgi Keşfi

Konular. VERİ MADENCİLİĞİ Giriş. Problem Tanımı. Veri Madenciliği: Tarihçe. Veri Madenciliği Nedir? Bilgi Keşfi VERİ MADENCİLİĞİ Giriş Yrd. Doç. Dr. Şule Gündüz Öğüdücü 1 2 Problem Tanımı Veri Madenciliği: Tarihçe teknolojinin gelişimiyle bilgisayar ortamında ve veritabanlarında tutulan veri miktarının da artması

Detaylı

PAPATYA YAYINCILIK EĞİTİM Bilgisayar Sis. San. ve Tic. A.Ş. Veri Madenciliği Yöntemleri Dr. Yalçın ÖZKAN -II-

PAPATYA YAYINCILIK EĞİTİM Bilgisayar Sis. San. ve Tic. A.Ş. Veri Madenciliği Yöntemleri Dr. Yalçın ÖZKAN -II- Dr. Yalçın ÖZKAN Dr. Yalçın ÖZKAN PAPATYA YAYINCILIK EĞİTİM Bilgisayar Sis. San. ve Tic. A.Ş. Ankara Caddesi, Prof. Fahreddin Kerim Gökay Vakfı İşhanı Girişi, No: 11/3, Cağaloğlu (Fatih)/İstanbul Tel

Detaylı

Görüntü Segmentasyonu (Bölütleme)

Görüntü Segmentasyonu (Bölütleme) Görüntü Segmentasyonu (Bölütleme) Segmentasyon, görüntüyü aynı cinsten obje ve bölgelere ayırmaktır. 20 Aralık 2014 Cumartesi 1 Görüntü Segmentasyonu 20 Aralık 2014 Cumartesi 2 Gestalt kanunları Görüntü

Detaylı

VERİ MADENCİLİĞİ F A T M A İ L H A N

VERİ MADENCİLİĞİ F A T M A İ L H A N VERİ MADENCİLİĞİ F A T M A İ L H A N Veri Madenciliği Nedir? Veri madenciliği büyük miktarda veri içinden gelecekle ilgili tahmin yapmamızı sağlayacak bağıntı ve kuralların bilgisayar programı kullanılarak

Detaylı

İstatistik ve Olasılık

İstatistik ve Olasılık İstatistik ve Olasılık KORELASYON ve REGRESYON ANALİZİ Doç. Dr. İrfan KAYMAZ Tanım Bir değişkenin değerinin diğer değişkendeki veya değişkenlerdeki değişimlere bağlı olarak nasıl etkilendiğinin istatistiksel

Detaylı

Görüntü Segmentasyonu (Bölütleme) Dijital Görüntü İşleme Fevzi Karslı, KTÜ Segmentasyon, görüntüyü aynı cinsten obje ve bölgelere ayırmaktır.

Görüntü Segmentasyonu (Bölütleme) Dijital Görüntü İşleme Fevzi Karslı, KTÜ Segmentasyon, görüntüyü aynı cinsten obje ve bölgelere ayırmaktır. Görüntü Segmentasyonu (Bölütleme) Segmentasyon, görüntüyü aynı cinsten obje ve bölgelere ayırmaktır. 16 Ocak 2014 Perşembe 1 Görüntü Segmentasyonu 16 Ocak 2014 Perşembe 2 Görüntüden Objelere Bir objeyi

Detaylı

Veri ve Metin Madenciliği

Veri ve Metin Madenciliği Veri ve Metin Madenciliği Zehra Taşkın Veri Madenciliği Bir kutu toplu iğne İçine 3 boncuk düşürdünüz Nasıl alacağız? Fikirler? Veri Madenciliği Data Information Knowledge Veri madenciliği; Büyük yoğunluklu

Detaylı

Veri ve Metin Madenciliği. Zehra

Veri ve Metin Madenciliği. Zehra Veri ve Metin Madenciliği Zehra Taşkın @zehrataskin Büyük Veri https://www.youtube.com/watch?v=tzxmjbl-i4y Veri Madenciliği Bir kutu toplu iğne İçine 3 boncuk düşürdünüz Nasıl alacağız? Veri Madenciliği

Detaylı

Web Madenciliği (Web Mining)

Web Madenciliği (Web Mining) Web Madenciliği (Web Mining) Hazırlayan: M. Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü Konular Denetimli Öğrenmenin Temelleri Karar Ağaçları Entropi ID3 Algoritması C4.5 Algoritması Twoing

Detaylı

Bilişim Sistemleri. Modelleme, Analiz ve Tasarım. Yrd. Doç. Dr. Alper GÖKSU

Bilişim Sistemleri. Modelleme, Analiz ve Tasarım. Yrd. Doç. Dr. Alper GÖKSU Bilişim Sistemleri Modelleme, Analiz ve Tasarım Yrd. Doç. Dr. Alper GÖKSU Ders Akışı Hafta 5. İhtiyaç Analizi ve Modelleme II Haftanın Amacı Bilişim sistemleri ihtiyaç analizinin modeli oluşturulmasında,

Detaylı

2 ALGORİTMA VE AKIŞ DİYAGRAMLARI

2 ALGORİTMA VE AKIŞ DİYAGRAMLARI İÇİNDEKİLER IX İÇİNDEKİLER 1 GİRİŞ 1 Kitabın Amacı 1 Algoritmanın Önemi 2 Bilgisayarın Doğuşu ve Kullanım Amaçları 3 Programlama Dili Nedir? 3 Entegre Geliştirme Ortamı (IDE) Nedir? 4 2 ALGORİTMA VE AKIŞ

Detaylı

ISSN: El-Cezerî Fen ve Mühendislik Dergisi Cilt: 3, No: 2, 2016 ( )

ISSN: El-Cezerî Fen ve Mühendislik Dergisi Cilt: 3, No: 2, 2016 ( ) www.tubiad.org ISSN:2148-3736 El-Cezerî Fen ve Mühendislik Dergisi Cilt: 3, No: 2, 2016 (315-323) El-Cezerî Journal of Science and Engineering Vol: 3, No: 2, 2016 (315-323) ECJSE Makale / Research Paper

Detaylı

İÇİNDEKİLER. BÖLÜM 1 Değişkenler ve Grafikler 1. BÖLÜM 2 Frekans Dağılımları 37

İÇİNDEKİLER. BÖLÜM 1 Değişkenler ve Grafikler 1. BÖLÜM 2 Frekans Dağılımları 37 İÇİNDEKİLER BÖLÜM 1 Değişkenler ve Grafikler 1 İstatistik 1 Yığın ve Örnek; Tümevarımcı ve Betimleyici İstatistik 1 Değişkenler: Kesikli ve Sürekli 1 Verilerin Yuvarlanması Bilimsel Gösterim Anlamlı Rakamlar

Detaylı

Hatalar Bilgisi ve İstatistik Ders Kodu: Kredi: 3 / ECTS: 5

Hatalar Bilgisi ve İstatistik Ders Kodu: Kredi: 3 / ECTS: 5 Ders Kodu: 0010070021 Kredi: 3 / ECTS: 5 Yrd. Doç. Dr. Serkan DOĞANALP Necmettin Erbakan Üniversitesi Harita Mühendisliği Bölümü Konya 07.01.2015 1 Giriş 2 Giriş Matematiksel istatistiğin konusu yığın

Detaylı

Veri Madenciliği Yaklaşımı ile Mesleki Yönlendirme Sistemi

Veri Madenciliği Yaklaşımı ile Mesleki Yönlendirme Sistemi Veri Madenciliği Yaklaşımı ile Mesleki Yönlendirme Sistemi YRD. DOÇ. DR. HÜSEYİN GÜRÜLER MUĞLA SITKI KOÇMAN ÜNİVERSİTESİ, TEKNOLOJİ FAKÜLTESİ, BİLİŞİM SİSTEMLERİ MÜHENDİSLİĞİ Meslek Seçimi Meslek Seçimi

Detaylı

K-En Yakın Komşu Algoritması Parametrelerinin Sınıflandırma Performansı Üzerine Etkisinin İncelenmesi

K-En Yakın Komşu Algoritması Parametrelerinin Sınıflandırma Performansı Üzerine Etkisinin İncelenmesi K-En Yakın Komşu Algoritması Parametrelerinin Sınıflandırma Performansı Üzerine Etkisinin İncelenmesi Erdal TAŞCI* Aytuğ ONAN** *Ege Üniversitesi Bilgisayar Mühendisliği Bölümü **Celal Bayar Üniversitesi

Detaylı

Veritabanı, Veri Madenciliği, Veri Ambarı, Veri Pazarı

Veritabanı, Veri Madenciliği, Veri Ambarı, Veri Pazarı Veritabanı, Veri Madenciliği, Veri Ambarı, Veri Pazarı Başkent Üniversitesi Bilgisayar Mühendisliği Yönetim Bilişim Sistemleri (Bil 483) 20394676 - Ümit Burak USGURLU Veritabanı Veri tabanı düzenli bilgiler

Detaylı

Genel Graf Üzerinde Mutlak 1-merkez

Genel Graf Üzerinde Mutlak 1-merkez Genel Graf Üzerinde Mutlak 1-merkez Çözüm yöntemine geçmeden önce bazı tanımlara ihtiyaç vardır. Dikkate alınan G grafındaki düğümleri 1 den n e kadar numaralandırın. Uzunluğu a(i, j)>0 olarak verilen

Detaylı

Zeki Optimizasyon Teknikleri

Zeki Optimizasyon Teknikleri Zeki Optimizasyon Teknikleri Ara sınav - 25% Ödev (Haftalık) - 10% Ödev Sunumu (Haftalık) - 5% Final (Proje Sunumu) - 60% - Dönem sonuna kadar bir optimizasyon tekniğiyle uygulama geliştirilecek (Örn:

Detaylı

VERİ MADENCİLİĞİ VE SOSYAL AĞ ANALİZİ ARAŞTIRMA LABORATUVARI

VERİ MADENCİLİĞİ VE SOSYAL AĞ ANALİZİ ARAŞTIRMA LABORATUVARI BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ VERİ MADENCİLİĞİ VE SOSYAL AĞ ANALİZİ ARAŞTIRMA LABORATUVARI 10 Aralık 2011, Cumartesi Fen ve Mühendislik Alanlarındaki Çeşitli Araştırma Projelerinden Örneklemeler İçerik

Detaylı

Görüntü İşleme. K.Sinan YILDIRIM Cenk İNCE Tahir Emre KALAYCI. Ege Üniversitesi Bilgisayar Mühendisliği Bölümü 2003

Görüntü İşleme. K.Sinan YILDIRIM Cenk İNCE Tahir Emre KALAYCI. Ege Üniversitesi Bilgisayar Mühendisliği Bölümü 2003 Görüntü İşleme K.Sinan YILDIRIM Cenk İNCE Tahir Emre KALAYCI Ege Üniversitesi Bilgisayar Mühendisliği Bölümü 2003 İçerik Görüntü İşleme Nedir? Görüntü Tanımlamaları Görüntü Operasyonları Görüntü İşleme

Detaylı

Mesleki Terminoloji II Veri Madenciliği

Mesleki Terminoloji II Veri Madenciliği Mesleki Terminoloji II Veri Madenciliği Burak Düşün - 14011055 Akif Berkay Gürcan - 14011023 Veri Madenciliği Nedir? Veri madenciliği, büyük miktarda verinin anlamlı örüntüler bulmak amacıyla otomatik

Detaylı

Genetik Algoritmalar. Bölüm 1. Optimizasyon. Yrd. Doç. Dr. Adem Tuncer E-posta:

Genetik Algoritmalar. Bölüm 1. Optimizasyon. Yrd. Doç. Dr. Adem Tuncer E-posta: Genetik Algoritmalar Bölüm 1 Optimizasyon Yrd. Doç. Dr. Adem Tuncer E-posta: adem.tuncer@yalova.edu.tr Optimizasyon? Optimizasyon Nedir? Eldeki kısıtlı kaynakları en iyi biçimde kullanmak olarak tanımlanabilir.

Detaylı

KABA KÜME TEORİSİ (Rough Set Theory) Dr. Sedat TELÇEKEN

KABA KÜME TEORİSİ (Rough Set Theory) Dr. Sedat TELÇEKEN KABA KÜME TEORİSİ (Rough Set Theory) Dr. Sedat TELÇEKEN Giriş Bilgi teknolojisindeki gelişmeler ve verilerin dijital ortamda saklanmaya başlanması ile yeryüzündeki bilgi miktarı her 20 ayda iki katına

Detaylı

BÖLÜM III: Şebeke Modelleri. Şebeke Kavramları. Şebeke Kavramları. Şebeke Kavramları. Yönlü Şebeke (Directed Network) Dal / ok

BÖLÜM III: Şebeke Modelleri. Şebeke Kavramları. Şebeke Kavramları. Şebeke Kavramları. Yönlü Şebeke (Directed Network) Dal / ok 8.0.0 Şebeke Kavramları BÖLÜM III: Şebeke Modelleri Şebeke (Network) Sonlu sayıdaki düğümler kümesiyle, bunlarla bağlantılı oklar (veya dallar) kümesinin oluşturduğu yapı şeklinde tanımlanabilir ve (N,A)

Detaylı

VERİ MADENCİLİĞİ (Karar Ağaçları ile Sınıflandırma) Yrd.Doç.Dr. Kadriye ERGÜN

VERİ MADENCİLİĞİ (Karar Ağaçları ile Sınıflandırma) Yrd.Doç.Dr. Kadriye ERGÜN VERİ MADENCİLİĞİ (Karar Ağaçları ile Sınıflandırma) Yrd.Doç.Dr. Kadriye ERGÜN kergun@balikesir.edu.tr Genel İçerik Veri Madenciliğine Giriş Veri Madenciliğinin Adımları Veri Madenciliği Yöntemleri Sınıflandırma

Detaylı

bitık MOBİL TİCARET UYGULAMASI ABDULLAH ÇİÇEKCİ

bitık MOBİL TİCARET UYGULAMASI ABDULLAH ÇİÇEKCİ bitık MOBİL TİCARET UYGULAMASI ABDULLAH ÇİÇEKCİ - 150110046 İÇERİK Uygulama ve uygulamaya ilişkin temel kavramların tanıtımı Uygulamanın yapısı Ön yüz Veritabanı Web Servisler K-Means Algoritması ile kategori

Detaylı

1. GİRİŞ Kılavuzun amacı. Bu bölümde;

1. GİRİŞ Kılavuzun amacı. Bu bölümde; 1. GİRİŞ Bu bölümde; Kılavuzun amacı EViews Yardım EViews Temelleri ve Nesneleri EViews ta Matematiksel İfadeler EViews Ana Ekranındaki Alanlar 1.1. Kılavuzun amacı Ekonometri A. H. Studenmund tarafından

Detaylı

YZM 5257 YAPAY ZEKA VE UZMAN SİSTEMLER DERS#6: GENETİK ALGORİTMALAR

YZM 5257 YAPAY ZEKA VE UZMAN SİSTEMLER DERS#6: GENETİK ALGORİTMALAR YZM 5257 YAPAY ZEKA VE UZMAN SİSTEMLER DERS#6: GENETİK ALGORİTMALAR Sınıflandırma Yöntemleri: Karar Ağaçları (Decision Trees) Örnek Tabanlı Yöntemler (Instance Based Methods): k en yakın komşu (k nearest

Detaylı

Hafta 05 - Karar Ağaçları/Kümeleme

Hafta 05 - Karar Ağaçları/Kümeleme BGM 565 - Siber Güvenlik için Makine Öğrenme Yöntemleri Bilgi Güvenliği Mühendisliği Yüksek Lisans Programı Dr. Ferhat Özgür Çatak ozgur.catak@tubitak.gov.tr İstanbul Şehir Üniversitesi 2018 - Bahar İçindekiler

Detaylı

Büyük Veri ve Endüstri Mühendisliği

Büyük Veri ve Endüstri Mühendisliği Büyük Veri ve Endüstri Mühendisliği Mustafa Gökçe Baydoğan Endüstri Mühendisliği Bölümü Boğaziçi Üniversitesi İstanbul Yöneylem Araştırması/Endüstri Mühendisliği Doktora Öğrencileri Kolokyumu 21-22 Nisan

Detaylı

İleri Diferansiyel Denklemler

İleri Diferansiyel Denklemler MIT AçıkDersSistemi http://ocw.mit.edu 18.034 İleri Diferansiyel Denklemler 2009 Bahar Bu bilgilere atıfta bulunmak veya kullanım koşulları hakkında bilgi için http://ocw.mit.edu/terms web sitesini ziyaret

Detaylı

3.2. Raster Veriler. Satırlar. Sütunlar. Piksel/hücre büyüklüğü

3.2. Raster Veriler. Satırlar. Sütunlar. Piksel/hücre büyüklüğü 3.2. Raster Veriler Satırlar Piksel/hücre büyüklüğü Sütunlar 1 Görüntü formatlı veriler Her piksel için gri değerleri kaydedilmiştir iki veya üç bant (RGB) çok sayıda bant Fotoğraf, uydu görüntüsü, ortofoto,

Detaylı

Veri Madenciliği Karar Ağacı Oluşturma

Veri Madenciliği Karar Ağacı Oluşturma C4.5 Algoritması Veri Madenciliği Karar Ağacı Oluşturma Murat TEZGİDER 1 C4.5 Algoritması ID3 algoritmasını geliştiren Quinlan ın geliştirdiği C4.5 karar ağacı oluşturma algoritmasıdır. ID3 algoritmasında

Detaylı

MAK 210 SAYISAL ANALİZ

MAK 210 SAYISAL ANALİZ MAK 210 SAYISAL ANALİZ BÖLÜM 6- İSTATİSTİK VE REGRESYON ANALİZİ Doç. Dr. Ali Rıza YILDIZ 1 İSTATİSTİK VE REGRESYON ANALİZİ Bütün noktalardan geçen bir denklem bulmak yerine noktaları temsil eden, yani

Detaylı

1. Oracle Data Miner 11g Release 2 Kurulumu Aşamaları

1. Oracle Data Miner 11g Release 2 Kurulumu Aşamaları 1. Oracle Data Miner 11g Release 2 Kurulumu Aşamaları Uyarı 1: Kuruluma başlamadan önce Oracle 11g Release 2 veritabanı kurulumunu eksiksiz bir şekilde gerçekleştirmiş olmanız beklenmektedir. İlgili kurulum

Detaylı

İÇİNDEKİLER ÖN SÖZ...

İÇİNDEKİLER ÖN SÖZ... İÇİNDEKİLER ÖN SÖZ... v GİRİŞ... 1 1. İSTATİSTİK İN TARİHÇESİ... 1 2. İSTATİSTİK NEDİR?... 3 3. SAYISAL BİLGİDEN ANLAM ÇIKARILMASI... 4 4. BELİRSİZLİĞİN ELE ALINMASI... 4 5. ÖRNEKLEME... 5 6. İLİŞKİLERİN

Detaylı

Tanımlayıcı İstatistikler. Yrd. Doç. Dr. Emre ATILGAN

Tanımlayıcı İstatistikler. Yrd. Doç. Dr. Emre ATILGAN Tanımlayıcı İstatistikler Yrd. Doç. Dr. Emre ATILGAN 1 Tanımlayıcı İstatistikler Yer Gösteren Ölçüler Yaygınlık Ölçüleri Merkezi Eğilim Ölçüleri Konum Ölçüleri 2 3 Aritmetik Ortalama Aritmetik ortalama,

Detaylı

Öğr. Elemanı: Dr. Mustafa Cumhur AKBULUT

Öğr. Elemanı: Dr. Mustafa Cumhur AKBULUT Ünite 10: Regresyon Analizi Öğr. Elemanı: Dr. Mustafa Cumhur AKBULUT 10.Ünite Regresyon Analizi 2 Ünitede Ele Alınan Konular 10. Regresyon Analizi 10.1. Basit Doğrusal regresyon 10.2. Regresyon denklemi

Detaylı

İSTATİSTİKSEL PROSES KONTROLÜ

İSTATİSTİKSEL PROSES KONTROLÜ İSTATİSTİKSEL PROSES KONTROLÜ ZTM 433 KALİTE KONTROL VE STANDARDİZASYON PROF: DR: AHMET ÇOLAK İstatistiksel işlem kontrolü (İPK), işlemle çeşitli istatistiksel metotların ve analiz sapmalarının kullanımını

Detaylı

Web Madenciliği (Web Mining)

Web Madenciliği (Web Mining) Web Madenciliği (Web Mining) Hazırlayan: M. Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü Konular Sınıflandırıcıların Değerlendirilmesi Skorlar Karışıklık matrisi Accuracy Precision Recall

Detaylı

Algoritma Geliştirme ve Veri Yapıları 9 Ağaç Veri Modeli ve Uygulaması. Mustafa Kemal Üniversitesi

Algoritma Geliştirme ve Veri Yapıları 9 Ağaç Veri Modeli ve Uygulaması. Mustafa Kemal Üniversitesi Algoritma Geliştirme ve Veri Yapıları 9 Ağaç Veri Modeli ve Uygulaması Ağaç, verilerin birbirine sanki bir ağaç yapısı oluşturuyormuş gibi sanal olarak bağlanmasıyla elde edilen hiyararşik yapıya sahip

Detaylı

TANIMLAYICI İSTATİSTİKLER

TANIMLAYICI İSTATİSTİKLER TANIMLAYICI İSTATİSTİKLER Tanımlayıcı İstatistikler ve Grafikle Gösterim Grafik ve bir ölçüde tablolar değişkenlerin görsel bir özetini verirler. İdeal olarak burada değişkenlerin merkezi (ortalama) değerlerinin

Detaylı

BULANIK MANTIK ile KONTROL

BULANIK MANTIK ile KONTROL BULANIK MANTIK ile KONTROL AFYON KOCATEPE ÜNİVERSİTESİ Bulanık mantığın temel prensipleri: Bulanık küme sözel değişkenleri göstermek için kullanılır. Az sıcak, biraz soğuk gibi bulanık mantık üyelik fonksiyonları

Detaylı

UZAKTAN EĞİTİM MERKEZİ

UZAKTAN EĞİTİM MERKEZİ ÜNİTE 2 VERİ TABANI İÇİNDEKİLER Veri Tabanı Veri Tabanı İle İlgili Temel Kavramlar Tablo Alan Sorgu Veri Tabanı Yapısı BAYBURT ÜNİVERSİTESİ UZAKTAN EĞİTİM MERKEZİ BİLGİSAYAR II HEDEFLER Veri tabanı kavramını

Detaylı

ULAŞTIRMA MODELİ VE ÇEŞİTLİ ULAŞTIRMA MODELLERİ

ULAŞTIRMA MODELİ VE ÇEŞİTLİ ULAŞTIRMA MODELLERİ ULAŞTIRMA MODELİ VE ÇEŞİTLİ ULAŞTIRMA MODELLERİ Özlem AYDIN Trakya Üniversitesi Bilgisayar Mühendisliği Bölümü ULAŞTIRMA MODELİNİN TANIMI Ulaştırma modeli, doğrusal programlama probleminin özel bir şeklidir.

Detaylı

Temel ve Uygulamalı Araştırmalar için Araştırma Süreci

Temel ve Uygulamalı Araştırmalar için Araştırma Süreci BÖLÜM 8 ÖRNEKLEME Temel ve Uygulamalı Araştırmalar için Araştırma Süreci 1.Gözlem Genel araştırma alanı 3.Sorunun Belirlenmesi Sorun taslağının hazırlanması 4.Kuramsal Çatı Değişkenlerin açıkça saptanması

Detaylı

13. Olasılık Dağılımlar

13. Olasılık Dağılımlar 13. Olasılık Dağılımlar Mühendislik alanında karşılaşılan fiziksel yada fiziksel olmayan rasgele değişken büyüklüklerin olasılık dağılımları için model alınabilecek çok sayıda sürekli ve kesikli fonksiyon

Detaylı

Web Server Sunucu Loglarının K-Komşu Algoritması ile İ ncelenmesi

Web Server Sunucu Loglarının K-Komşu Algoritması ile İ ncelenmesi Web Server Sunucu Loglarının K-Komşu Algoritması ile İ ncelenmesi İçindekiler 1 Özet... 2 2 Giriş... 3 3 Uygulama... 4 4 Sonuçlar... 6 1 1 Özet Web sunucu logları üzerinde veri madenciliği yapmanın temel

Detaylı

Yazarlar hakkında Editör hakkında Teşekkür

Yazarlar hakkında Editör hakkında Teşekkür İÇİNDEKİLER Yazarlar hakkında Editör hakkında Teşekkür XIII XIV XV Giriş 1 Kitabın amaçları 1 Öğretmen katkısı 2 Araştırma katkısı 2 Yansıma için bir ara 3 Sınıf etkinlikleri 3 Terminoloji üzerine bir

Detaylı

Power BI. Neler Öğreneceksiniz?

Power BI. Neler Öğreneceksiniz? Power BI Kendi kendinize iş zekasını keşfedin. Verilerinizi analiz edin, etkileşimli raporlar oluşturun ve bulgularınızı firmanız genelinde paylaşın. Neler Öğreneceksiniz? Bu iki günlük eğitim, güçlü görseller

Detaylı

Zahmetsiz örüntü tanıma: Nokta bulutlarının karşılaştırılması yoluyla veri-tabanlı ve parametresiz istatistiksel öğrenme

Zahmetsiz örüntü tanıma: Nokta bulutlarının karşılaştırılması yoluyla veri-tabanlı ve parametresiz istatistiksel öğrenme Zahmetsiz örüntü tanıma: Nokta bulutlarının karşılaştırılması yoluyla veri-tabanlı ve parametresiz istatistiksel öğrenme Doç. Dr. Bilge Karaçalı Biyomedikal Veri İşleme Laboratuvarı Elektrik-Elektronik

Detaylı

Algoritma Geliştirme ve Veri Yapıları 2 Veri Modelleri. Mustafa Kemal Üniversitesi

Algoritma Geliştirme ve Veri Yapıları 2 Veri Modelleri. Mustafa Kemal Üniversitesi Algoritma Geliştirme ve Veri Yapıları 2 Veri Modelleri Veri modelleri, veriler arasında ilişkisel ve sırasal düzeni gösteren kavramsal tanımlardır. Her program en azından bir veri modeline dayanır. Uygun

Detaylı

GENETİK ALGORİTMA ÖZNUR CENGİZ HİLAL KOCA

GENETİK ALGORİTMA ÖZNUR CENGİZ HİLAL KOCA GENETİK ALGORİTMA ÖZNUR CENGİZ 201410306014 HİLAL KOCA 150306024 GENETİK ALGORİTMA Genetik Algoritma yaklaşımının ortaya çıkışı 1970 lerin başında olmuştur. 1975 te John Holland ın makine öğrenmesi üzerine

Detaylı

Çok fazla bilgiden gizli kalmış örüntüleri ortaya çıkarma sürecine Veri Madenciliği denir.

Çok fazla bilgiden gizli kalmış örüntüleri ortaya çıkarma sürecine Veri Madenciliği denir. Veri Madenciliği Çok fazla bilgiden gizli kalmış örüntüleri ortaya çıkarma sürecine Veri Madenciliği denir. istatistik + makine öğrenmesi + yapay zeka = veri madenciliği Veri madenciliği süreçleri CRISP-DM

Detaylı

Örnek 4.1: Tablo 2 de verilen ham verilerin aritmetik ortalamasını hesaplayınız.

Örnek 4.1: Tablo 2 de verilen ham verilerin aritmetik ortalamasını hesaplayınız. .4. Merkezi Eğilim ve Dağılım Ölçüleri Merkezi eğilim ölçüleri kitleye ilişkin bir değişkenin bütün farklı değerlerinin çevresinde toplandığı merkezi bir değeri gösterirler. Dağılım ölçüleri ise değişkenin

Detaylı

Örneklemden elde edilen parametreler üzerinden kitle parametreleri tahmin edilmek istenmektedir.

Örneklemden elde edilen parametreler üzerinden kitle parametreleri tahmin edilmek istenmektedir. ÇIKARSAMALI İSTATİSTİKLER Çıkarsamalı istatistikler, örneklemden elde edilen değerler üzerinde kitleyi tanımlamak için uygulanan istatistiksel yöntemlerdir. Çıkarsamalı istatistikler; Tahmin Hipotez Testleri

Detaylı

BÖLÜM 12 STUDENT T DAĞILIMI

BÖLÜM 12 STUDENT T DAĞILIMI 1 BÖLÜM 12 STUDENT T DAĞILIMI 'Student t dağılımı' ya da kısaca 't dağılımı'; normal dağılım ve Z dağılımının da içerisinde bulunduğu 'sürekli olasılık dağılımları' ailesinde yer alan dağılımlardan bir

Detaylı

KİNETİK MODEL PARAMETRELERİNİN BELİRLENMESİNDE KULLANILAN OPTİMİZASYON TEKNİKLERİNİN KIYASLANMASI

KİNETİK MODEL PARAMETRELERİNİN BELİRLENMESİNDE KULLANILAN OPTİMİZASYON TEKNİKLERİNİN KIYASLANMASI KİNETİK MODEL PARAMETRELERİNİN BELİRLENMESİNDE KULLANILAN OPTİMİZASYON TEKNİKLERİNİN KIYASLANMASI Hatice YANIKOĞLU a, Ezgi ÖZKARA a, Mehmet YÜCEER a* İnönü Üniversitesi Mühendislik Fakültesi Kimya Mühendisliği

Detaylı

BÖLÜM13 3- EXCEL DE VERİ İŞLEMLERİ

BÖLÜM13 3- EXCEL DE VERİ İŞLEMLERİ BÖLÜM13 3- EXCEL DE VERİ İŞLEMLERİ Excel de veritabanı dosyaları oluşturmak oldukça kolay ve pratiktir. Böyle bir dosya herhangi özel bir işlem gerektirmeden, veri alanlarının direkt hücrelere girilmesi

Detaylı

2. BASİT DOĞRUSAL REGRESYON 12

2. BASİT DOĞRUSAL REGRESYON 12 1. GİRİŞ 1 1.1 Regresyon ve Model Kurma / 1 1.2 Veri Toplama / 5 1.3 Regresyonun Kullanım Alanları / 9 1.4 Bilgisayarın Rolü / 10 2. BASİT DOĞRUSAL REGRESYON 12 2.1 Basit Doğrusal Regresyon Modeli / 12

Detaylı

ALP OĞUZ ANADOLU LİSESİ EĞİTİM ÖĞRETİM YILI BİLGİSAYAR BİLİMİ DERSİ 2.DÖNEM 2.SINAV ÖNCESİ ÇALIŞMA SORULARI VE YANITLARI

ALP OĞUZ ANADOLU LİSESİ EĞİTİM ÖĞRETİM YILI BİLGİSAYAR BİLİMİ DERSİ 2.DÖNEM 2.SINAV ÖNCESİ ÇALIŞMA SORULARI VE YANITLARI ALP OĞUZ ANADOLU LİSESİ 2017-2018 EĞİTİM ÖĞRETİM YILI BİLGİSAYAR BİLİMİ DERSİ 2.DÖNEM 2.SINAV ÖNCESİ ÇALIŞMA SORULARI VE YANITLARI Doğru yanıtlar kırmızı renkte verilmiştir. 1. Problemlerin her zaman sıradan

Detaylı

VERİ YAPILARI VE PROGRAMLAMA

VERİ YAPILARI VE PROGRAMLAMA VERİ YAPILARI VE PROGRAMLAMA (BIP116) Yazar: Doç.Dr.İ.Hakkı.Cedimoğlu SAKARYA ÜNİVERSİTESİ Adapazarı Meslek Yüksekokulu Bu ders içeriğinin basım, yayım ve satış hakları Sakarya Üniversitesi ne aittir.

Detaylı

YZM ALGORİTMA ANALİZİ VE TASARIM DERS#9: AÇGÖZLÜ ALGORİTMALAR

YZM ALGORİTMA ANALİZİ VE TASARIM DERS#9: AÇGÖZLÜ ALGORİTMALAR YZM 3207- ALGORİTMA ANALİZİ VE TASARIM DERS#9: AÇGÖZLÜ ALGORİTMALAR Aç Gözlü (Hırslı) Algoritmalar (Greedy ) Bozuk para verme problemi Bir kasiyer 48 kuruş para üstünü nasıl verir? 25 kuruş, 10 kuruş,

Detaylı

Türkçe Dokümanlar Ġçin Yazar Tanıma

Türkçe Dokümanlar Ġçin Yazar Tanıma Türkçe Dokümanlar Ġçin Yazar Tanıma Özcan KOLYĠĞĠT, Rıfat AġLIYAN, Korhan GÜNEL Adnan Menderes Üniversitesi, Matematik Bölümü Bölümü, Aydın okolyigit@gmail.com, rasliyan@adu.edu.tr, kgunel@adu.edu.tr Özet:

Detaylı

Algoritmalar. Arama Problemi ve Analizi. Bahar 2016 Doç. Dr. Suat Özdemir 1

Algoritmalar. Arama Problemi ve Analizi. Bahar 2016 Doç. Dr. Suat Özdemir 1 Algoritmalar Arama Problemi ve Analizi Bahar 2016 Doç. Dr. Suat Özdemir 1 Arama Problemi Sıralama algoritmaları gibi arama algoritmaları da gerçek hayat bilgisayar mühendisliği problemlerinin çözümünde

Detaylı

Mekatronik Mühendisliği Uygulamalarında Yapay Zekâ. Makine Öğrenmesi. Erhan AKDOĞAN, Ph.D.

Mekatronik Mühendisliği Uygulamalarında Yapay Zekâ. Makine Öğrenmesi. Erhan AKDOĞAN, Ph.D. Mekatronik Mühendisliği Uygulamalarında Yapay Zekâ Makine Öğrenmesi Erhan AKDOĞAN, Ph.D. Bu ders notunun hazırlanmasında Dr. U.Orhan ve Banu Diri nin ders notlarından yararlanılmıştır. Makine öğrenmesi

Detaylı

Destekçi Vektör Makineleri. Destekçi Vektör Makineleri(Support Vector Machines)

Destekçi Vektör Makineleri. Destekçi Vektör Makineleri(Support Vector Machines) Destekçi Vektör Makineleri Destekçi Vektör Makineleri(Support Vector Machines) Değişkenler arasındaki örüntülerin bilinmediği veri setlerindeki sınıflama problemleri için önerilmiş bir makine öğrenmesi

Detaylı