Hybrid kmeans clustering algorithm
Loading...
Date
2013
Authors
Journal Title
Journal ISSN
Volume Title
Publisher
Kadir Has Üniversitesi
Open Access Color
OpenAIRE Downloads
OpenAIRE Views
Abstract
From the past up to the present size of the data is rapidly increasing day by day. Growing dimensions of this data can be held in databases is seen as a disadvantage. Companies have seen this information in databases as an excellent resource for increasing profitability. According to this source the profiles of the customers can be clustering and new products can be presented for cluster customers. So data mining algorithms are needed for rapidly examine these sources of information and obtaining meaningful information from resources.This project has been implemented K-means clustering algorithm with the hybrid programming method. This project suggested that data grouped with hybrid programming takes less time. Algorithm accelerated with hybrid programming method. Parallel programming used to solve K-means problem with using multi- processor and threads used for running operations at the same time. Hybrid version of K-means clustering algorithm was written using the C programming language. Existing parallel K-means source code used thread structure is added. Message Passing interface library and POSiX threads are used. Hybrid version of K-means algorithm and parallel K-means algorithm are run many times under the same conditions and comparisons were made. These comparisons were transferred to the tables and graphs. -- Abstract'tan.
Geçmişten günümüze kadar olan süreçte veri boyutları günden güne hızla artmaktadır. Veritabanlarında tutulabilen bu verilerin işlenebilirliği artan boyutlardan dolayı dezavantaj olarak görülmektedir. Şirketlerin veritabanlarında bulunan bu bilgiler iyi kullanıldığı halde karlılığı arttırmaya yönelik bir mükemmel bir kaynaktır. Bu kaynakla müşterilerin profillerine göre bir kümeleme yapılabilir, yapılan kümelemelerle ilgili kümedeki müşteriye hitap edecek ürünler sunulabilmektedir. Bu kaynakların hızla incelenebilmesi ve kaynaklardan anlamlı bir bilgi çıkarabilmek için veri madenciliği algoritmalarına ihtiyaç duyulmaktadır. Bu projede K-means kümeleme algoritması hibrit programlama yöntemiyle implemente edilmiştir. Hibrit programlamayla kümeleri oluşturacak verilerin daha kısa sürede gruplanabileceği öne sürülmüştür. Algoritma hibrit programlama yöntemiyle hızlandırılmıştır. Hibriti oluşturan paralel programlamayla program parçacıklarının çoklu işlemciye sahip sistemlere dağıtılması ve işletilmesi, iş parçacıklarının yardımıyla birden fazla sürecin aynı anda yürütülmesi sağlanmıştır. Hibrit algoritma, C dili ile implemente edilmiştir. Var olan paralel K-means kaynak kodları, iş parcacıkları ile hibritleştirilmiştir. Paralelleştirme işlemi için Message Passing Interface kütüphanesi ve POSIX threads kullanılmıştır. Hibritleştirilen K-means algoritması, var olan algoritmayla aynı şartlar altında birden fazla kez çalıştırılarak sonuçlar elde edilmiş ve karşılaştırmalar yapılmıştır. Bu karşılaştırmalar tablolar ve grafiklere aktarılmıştır.
Geçmişten günümüze kadar olan süreçte veri boyutları günden güne hızla artmaktadır. Veritabanlarında tutulabilen bu verilerin işlenebilirliği artan boyutlardan dolayı dezavantaj olarak görülmektedir. Şirketlerin veritabanlarında bulunan bu bilgiler iyi kullanıldığı halde karlılığı arttırmaya yönelik bir mükemmel bir kaynaktır. Bu kaynakla müşterilerin profillerine göre bir kümeleme yapılabilir, yapılan kümelemelerle ilgili kümedeki müşteriye hitap edecek ürünler sunulabilmektedir. Bu kaynakların hızla incelenebilmesi ve kaynaklardan anlamlı bir bilgi çıkarabilmek için veri madenciliği algoritmalarına ihtiyaç duyulmaktadır. Bu projede K-means kümeleme algoritması hibrit programlama yöntemiyle implemente edilmiştir. Hibrit programlamayla kümeleri oluşturacak verilerin daha kısa sürede gruplanabileceği öne sürülmüştür. Algoritma hibrit programlama yöntemiyle hızlandırılmıştır. Hibriti oluşturan paralel programlamayla program parçacıklarının çoklu işlemciye sahip sistemlere dağıtılması ve işletilmesi, iş parçacıklarının yardımıyla birden fazla sürecin aynı anda yürütülmesi sağlanmıştır. Hibrit algoritma, C dili ile implemente edilmiştir. Var olan paralel K-means kaynak kodları, iş parcacıkları ile hibritleştirilmiştir. Paralelleştirme işlemi için Message Passing Interface kütüphanesi ve POSIX threads kullanılmıştır. Hibritleştirilen K-means algoritması, var olan algoritmayla aynı şartlar altında birden fazla kez çalıştırılarak sonuçlar elde edilmiş ve karşılaştırmalar yapılmıştır. Bu karşılaştırmalar tablolar ve grafiklere aktarılmıştır.
Description
Keywords
K-means Clustering Algorithm, Hybrid Programming, MPI, POSIX threads, K-means Kümeleme Algoritması, Hibrit Programlama, Paralel Programlama, İş parçacığı