Açık Kaynak Kodlu Veri Madenciliği Yazılımlarının Karşılaştırılması
Total Page:16
File Type:pdf, Size:1020Kb
Açık Kaynak Kodlu Veri Madenciliği Yazılımlarının Karşılaştırılması Mümine KAYA1, Selma Ayşe ÖZEL 2 1 Adana Bilim ve Teknoloji Üniversitesi, Bilgisayar Mühendisliği Bölümü, Adana 2 Çukurova Üniversitesi, Bilgisayar Mühendisliği Bölümü, Adana [email protected], [email protected] Özet: Veri Madenciliği, büyük miktarda veri içinden gizli bağıntı ve kuralların, bilgisayar yazılımları ve istatiksel yöntemler kullanılarak çıkarılması işlemidir. Veri madenciliği yöntemleri ve yazılımlarının amacı büyük miktarlardaki verileri etkin ve verimli bir şekilde işlemektir. Yapılan çalışmada; açık kaynak kodlu veri madenciliği yazılımlarından Keel, Knime, Orange, R, RapidMiner (Yale) ve Weka karşılaştırılmıştır. Böylece kullanılacak veri kümeleri için hangi yazılımın daha etkin bir şekilde çalışacağı belirlenebilmiştir. Anahtar Sözcükler: Veri Madenciliği, Açık Kaynak, Veri Madenciliği Yazılımları. Comparison of Open Source Data Mining Software Abstract: Data Mining is a process of discovering hidden correlations and rules within large amounts of data using computer software and statistical methods. The aim of data mining methods and software is to process large amounts of data efficiently and effectively. In this study, open source data mining tools namely Keel, Knime, Orange, R, RapidMiner (Yale), and Weka were compared. As a result of this study, it is possible to determine which data mining software is more efficient and effective for which kind of data sets. Keywords: Data Mining, Open Source, Data Mining Software. 1. Giriş madenciliği büyük ölçekli veriler arasından yararlı ve anlaşılır olanların bulunup ortaya Günümüzde bilişim teknolojisi, veri iletişim çıkarılması işlemidir [1]. Veri Madenciliği ile teknolojileri ve veri toplama araçları oldukça veriler arasındaki ilişkiler ortaya gelişmiş ve yaygınlaşmış; bu hızlı gelişim koyulabilmekte ve gelecekle ilgili büyük boyutlu veri kaynaklarının oluşmasına tahminlerde bulunulabilmektedir. Veri neden olmuş ve beraberinde bazı problemlere Madenciliğinin geleneksel veritabanı yol açmıştır [1]. Bu problemlerin başında, sorgularından farkı şu şekilde özetlenebilir: i) veritabanları içinde yer alan ancak basit SQL Geleneksel veri tabanlarında sorgu, SQL gibi sorguları ile bulunamayan anlamlı ve yararlı iyi tanımlanmış bir sorgulama dili ile bilginin ortaya çıkarılması gelmektedir. Bu yapılırken, veri madenciliğinde ise sorgu iyi nedenle verileri işlemek için bazı çözümleme tanımlı ya da tam tanımlı olmayabilir; ii) yöntemlerine ihtiyaç duyulmuştur. Veri Geleneksel veri tabanlarında sorgunun Madenciliği bu ihtiyacı gidermek için ortaya sonucu, veri tabanında yer alan verilerin bir çıkarılmış bir yöntemdir. Veri Madenciliği alt kümesi olup, veri madenciliğinde ise daha önceden bilinmeyen, geçerli ve çoğunlukla veri tabanının bir alt kümesi uygulanabilir bilgilerin geniş veri olmaz, onun yerine veri tabanındaki içeriğin kaynaklarından elde edilmesi işlemidir [2]. bir analizi olur. Daha da özetlemek gerekirse, veri Veri Madenciliğinin amacı ham veriyi birçok veri kaynağından gelen farklı anlamlı, etkin ve yararlı olan bilgiye formatlardaki veri birleştirilebilmekte; veri dönüştürebilmektir [3]. Bu amaca seçme adımında yapılacak olan analiz ile ulaşabilmek için de Veri Madenciliği ilgili olan veriler belirlenmekte; veri konusunda geliştirilmiş yazılımların dönüşümü adımında verinin veri madenciliği kullanılması veri madenciliği süreçlerini tekniğinde kullanılabilecek hale dönüşümü kolaylaştırmaktadır. gerçekleştirilmekte; veri madenciliği adımında veri örüntülerini yakalayabilmek Bugüne kadar yapılan çalışmalarda; veri için akıllı metotlar uygulanmakta; örüntü madenciliği yazılımlarının bir kısmının değerlendirme adımında bazı ölçütlere göre detaya girilmeden, ya tanımlamaları ya da elde edilmiş bilgiyi temsil eden ilginç uygulamaları yapılmıştır [4, 5 ve 6]. Bu örüntüler tanımlanmakta ve bilgi sunumu çalışmada ise diğer çalışmalardan farklı adımında ise elde edilmiş bilginin kullanıcıya olarak, altı adet veri madenciliği yazılımı sunumu gerçekleştirilmektedir [7, 8]. daha detaylı karşılaştırılmıştır. Böylece ihtiyaca göre daha etkin bir şekilde kullanılacak olan yazılımlar belirlenmiştir. Çalışmanın ikinci bölümünde veri madenciliği süreci hakkında bilgi verilmiştir. Üçüncü bölümde çalışmada kullanılan açık kaynak kodlu yazılımlar tanıtılmış olup, dördüncü bölümde bu yazılımların farklı açılardan karşılaştırılmaları yapılmıştır. Son bölümde ise sonuç ve önerilere yer verilmiştir. 2. Veri Madenciliği Süreci Şekil 1. Bilgi Keşfi Süreci Veri madenciliği bilgi keşfi işleminin en önemli adımlarındandır. Bilgi keşfi adımları: 2.1 Veri Madenciliğinin Kullanım Alanları Veri Temizleme, Veri Bütünleştirme, Veri Veri Madenciliği; bankacılık, borsa, Seçme, Veri Dönüşümü, Veri Madenciliği, pazarlama yönetimi, perakende satış, işaret Örüntü Değerlendirme ve Bilgi Sunumu işleme, sigortacılık, telekomünikasyon, olmak üzere 7 basamaktan oluşmaktadır [7]. elektronik ticaret, sağlık, tıp, biyoloji, genetik, endüstri, eğitim, istihbarat, bilim ve Şekil 1’de de görüldüğü üzere bu süreç, ele mühendislik gibi birçok dalda uygulama alanı alınan problemin tanımlanması ile başlamakta bulunmaktadır [1, 2]. ve sırasıyla; problemle ilgili verilerin toplanması, verilerin hazırlanması, verilere ve 2.2 Veri Madenciliği Yazılımları probleme uygun modelin tasarlanması, Veri Madenciliği konusunda geliştirilmiş tasarımı yapılan modelin uygunluğunun ve birçok yazılım bulunmaktadır. Bu yeterliliğinin değerlendirilmesi ile devam yazılımlardan kimisi ticari iken, kimisi açık etmekte ve son olarak modelin kaynak kodludur. Bu nedenle veri uygulanmasıyla sonuca ulaştırılmaktadır. Bu madenciliği yazılımları ticari ve açık kaynak sonuca ulaşırken de veri temizleme adımında kodlu olmak üzere iki gruba ayrılmaktadır. gürültülü ve tutarsız veriler veri kümesinden Ticari yazılımlara SPSS Clementine, Excel, çıkarılmakta; veri bütünleştirme adımında SPSS, SAS, Angoss, KXEN, MS SQL Server, MATLAB ve Oracle’ın bu amaçla geliştirilmiş bir yazılımdır [6]. Orange geliştirdiği modülleri örnek olarak yazılımı C++ dili ile geliştirilmiştir. verilebilmektedir. Açık kaynak yazılımlara Yazılımın ara yüzleri ve grafik ortamı ise Qt3 ise Orange, RapidMiner, WEKA, R, Keel, kütüphanesi ve Python kullanılarak Knime, Tanagra, Scriptella ETL, jHepWork geliştirilmiştir [6]. Görselleştirme açısından ve Elki örnek olarak verilebilmektedir [4, 5]. zayıf bir yazılımdır. Yalnızca metin dosyalarından veri alma işlemini 3. Açık Kaynak Kodlu Veri Madenciliği gerçekleştirmektedir. Yazılımları 3.4 R Bu bölümde açık kaynak kodlu ve ücretsiz Auckland Üniversitesi İstatistik Bölümü olarak kullanılabilen Keel, Knime, Orange, bilim adamlarından olan Robert Gentleman R, RapidMiner (Yale) ve Weka yazılımları ve Ross Ihaka tarafından grafikler, hakkında özet bilgi verilmektedir. istatistiksel hesaplamalar ve veri analizleri için geliştirilmiş bir yazılımdır [4]. R [12], 3.1 Keel Unix makinelerde yaygın olarak Keel [9], İspanya Ulusal Bilim Projeleri kullanılmaktadır. R, bir veri madenciliği Kurumunun desteği ile Granada Üniversitesi yazılımı olarak çok fazla tercih tarafından geliştirilen Java dilinde yazılmış edilmemektedir. bir yazılımdır. Keel, kümeleme ve sınıflandırma gibi klasik veri madenciliği 3.5 RapidMiner (Yale) algoritmaları açısından zengin değildir. RapidMiner [13], Ralf Klinkenberg, Ingo Bunların yerine Fuzzy sınıflandırıcılar, Mierswa ve Simon Fischer tarafından Yapay zekâ tabanlı sınıflandırma ve Kural Dortmund Teknoloji Üniversitesi Yapay Zeka tabanlı kümeleme algoritmalarının birçok Biriminde geliştirilmiş bir yazılımdır. Yale çeşidini içermektedir [6]. Veri görselleştirme [14] ise Yale üniversitesi bilim adamları açısından en zayıf yazılımlardan biri Keel’dir. tarafından Java dili kullanılarak geliştirilmiş bir yazılımdır. Yale artık RapidMiner [13] adı 3.2 Knime altında yazılım olarak kullanılmaya devam Konstanz Information Miner (KNIME) [10], etmektedir. Diğer veri madenciliği Konstanz Üniversitesi görsel veri madenciliği yazılımlarından farklı olarak 22 adet dosya araştırma grubu tarafından Eclipse Rich formatındaki veriyi işleyebilmektedir. Veri Client Platform üzerinde geliştirilen bir Madenciliği ve Makine Öğrenme yazılımdır. Knime genişletilebilme özellikleri Algoritmalarını da kapsayan RapidMiner, ile ön plana çıkmaktadır. Kullanıcılara bir Weka gibi oldukça fazla algoritmaya sahiptir. yazılım geliştirme kiti sunarak kullanıcıların Veri Analizi, Önişleme, Sınıflama, kendi modüllerini yazabilmelerini sağlayan Kümeleme, Birliktelik Kuralları Çıkarımı, tek uygulamadır [6]. Kurulum şartı olmadan Nitelik Seçimi işlemlerini içermektedir. çalışabilmektedir. Knime yazılımı .txt uzantılı Oracle, MS SQL Server, PostgreSQL, metin dosyalarından veya .arff, .table MySQL, JDBC, Sybase, Access, IBM DB2, formatından veri alabilmektedir. Knime, en Ingres veritabanlarını ve metin dosyalarını zengin görselleştirme araçları sunan desteklemektedir [6]. Bu açıdan en kapsamlı yazılımlarından biridir. yazılımlardan biridir. Excel dosyalarıyla bağlantı kurulabilmektedir. MS Windows, 3.3 Orange GNU/Linux, Mac Os X işletim sistemlerinde Orange [11], Slovenya Ljubljana Üniversitesi kolayca ve hatasız olarak çalışabilmektedir. Görselleştirme ve grafik arayüzü açısından da Bilgisayar ve Enformatik Bilimleri bölümü yapay zekâ araştırmaları ekibi tarafından en zengin yazılımlardan biridir. İçerisinden olan yazılım ise bir istatistik yazılımı olan script yazılabilir. R’dır. Orange, RapidMiner ve Weka R’a göre istatiksel hesaplamada daha zayıf yazılımlar 3.6 Weka arasındadır. Bunda