Veri Madenciliği Ders Kitabı PDF

Document Details

AmazingCurl

Uploaded by AmazingCurl

Anadolu Üniversitesi

2019

Dr.Öğr.Üyesi Şenay LEZKİ,Doç.Dr. Harun SÖNMEZ,Dr.Öğr.Üyesi Alper BEKKİ,Dr.Öğr.Üyesi Levent TERLEMEZ,Doç.Dr. Cengiz BAL,Prof.Dr. Fikret ER,Öğr.Gör. Orkun Şen,Prof. Tevfik Fikret Uça

Tags

data mining R programming data analysis machine learning

Summary

This textbook discusses data mining and covers R programming, including its foundations. It also has various exercises and examples, suitable for undergraduate students. Published by Anadolu Üniversitesi in 2019.

Full Transcript

Ders Takvim Duyurular Epub Html5 Kitabı (PDF) Ünite Video Canlı Ders Sesli Kitap Sesli Özet Öz...

Ders Takvim Duyurular Epub Html5 Kitabı (PDF) Ünite Video Canlı Ders Sesli Kitap Sesli Özet Özeti Sorularla Deneme Etkileşimli Alıştırma İnfografik Öğrenelim Sınavı İçerik Bilgilendirme Çıkmış Sınav Sınav Giriş Sınav Öğrenci Panosu Soruları Bilgisi Sonuçları Toplulukları 444 10 26 T.C. ANADOLU ÜNİVERSİTESİ YAYINI NO: 3399 AÇIKÖĞRETİM FAKÜLTESİ YAYINI NO: 2251 VERİ MADENCİLİĞİ Yazarlar Dr.Öğr.Üyesi Şenay LEZKİ (Ünite 1) Doç.Dr. Harun SÖNMEZ (Ünite 2, 3) Dr.Öğr.Üyesi Alper BEKKİ (Ünite 4, 5, 8) Dr.Öğr.Üyesi Levent TERLEMEZ (Ünite 6) Doç.Dr. Cengiz BAL (Ünite 7) Editör Prof.Dr. Fikret ER Bu kitabın basım, yayım ve satış hakları Anadolu Üniversitesine aittir. “Uzaktan Öğretim” tekniğine uygun olarak hazırlanan bu kitabın bütün hakları saklıdır. İlgili kuruluştan izin almadan kitabın tümü ya da bölümleri mekanik, elektronik, fotokopi, manyetik kayıt veya başka şekillerde çoğaltılamaz, basılamaz ve dağıtılamaz. Copyright © 2016 by Anadolu University All rights reserved No part of this book may be reproduced or stored in a retrieval system, or transmitted in any form or by any means mechanical, electronic, photocopy, magnetic tape or otherwise, without permission in writing from the University. Öğretim Tasarımcısı Öğr.Gör. Orkun Şen Grafik Tasarım Yönetmenleri Prof. Tevfik Fikret Uçar Doç.Dr. Nilgün Salur Öğr.Gör. Cemalettin Yıldız Dil ve Yazım Danışmanı Öğr.Gör. Sinem Türkyılmaz Ölçme Değerlendirme Sorumlusu Öğr.Gör. Emrah Emre Özkeskin Kapak Düzeni Prof.Dr. Halit Turgay Ünalan Grafikerler Gülşah Karabulut Kenan Çetinkaya Özlem Çayırlı Burcu Güler Ayşegül Dibek Dizgi ve Yayıma Hazırlama Kitap Hazırlama Grubu Veri Madenciliği E-ISBN 978-975-06-3326-3 Bu kitabın tüm hakları Anadolu Üniversitesi’ne aittir. ESKİŞEHİR, Ocak 2019 3221-0-0-0-2202-V01 İçindekiler iii İçindekiler Önsöz................................................................................................................. viii Temel Kavramlar............................................................................ 2 1. ÜNİTE GİRİŞ........................................................................................................................... 3 VERİ MADENCİLİĞİNİN TARİHSEL GELİŞİMİ................................................ 3 VERİ MADENCİLİĞİNE ETKİ EDEN DİSİPLİNLER......................................... 5 VERİ MADENCİLİĞİ KAVRAMI.......................................................................... 6 VERİTABANLARINDA BİLGİ KEŞFİ SÜRECİ.................................................... 10 Amacın Tanımlanması.............................................................................................. 12 Veriler Üzerinde Ön İşlemlerin Yapılması............................................................... 12 Verilerin Toplanması ve Birleştirilmesi.............................................................. 13 Verilerin Temizlenmesi........................................................................................ 13 Verilerin Yeniden Yapılandırılması..................................................................... 17 Modelin Kurulması ve Değerlendirilmesi................................................................ 17 Modelin Kullanılması ve Yorumlanması.................................................................. 18 Modelin İzlenmesi...................................................................................................... 18 VERİ MADENCİLİĞİNDE KULLANILAN MODELLER.................................. 18 Tahmin Edici Modeller............................................................................................... 19 Tanımlayıcı Modeller.................................................................................................. 22 VERİ MADENCİLİĞİNİN DİĞER VERİ ANALİZİ YAKLAŞIMLARI İLE KARŞILAŞTIRILMASI............................................................................................... 23 VERİ MADENCİLİĞİNİN UYGULANDIĞI ALANLAR.................................... 24 Pazarlama Alanındaki Uygulamalar......................................................................... 24 Finans Alanındaki Uygulamalar............................................................................... 25 Sağlık Alanındaki Uygulamalar................................................................................. 25 Endüstri ve Mühendislik Alanındaki Uygulamalar................................................ 25 Eğitim Alanındaki Uygulamalar............................................................................... 25 Özet............................................................................................................................... 26 Kendimizi Sınayalım................................................................................................... 28 Kendimizi Sınayalım Yanıt Anahtarı........................................................................ 29 Sıra Sizde Yanıt Anahtarı............................................................................................ 29 Yararlanılan ve Başvurulabilecek Kaynaklar............................................................ 30 Yararlanılan İnternet Kaynakları............................................................................... 31 R Yazılımı........................................................................................ 32 2. ÜNİTE GİRİŞ............................................................................................................................ 33 R YAZILIMININ ELDE EDİLMESİ......................................................................... 35 R YAZILIMIN TEMELLERİ...................................................................................... 36 Temel Komutlar........................................................................................................... 36 Vektörler....................................................................................................................... 37 Matrisler....................................................................................................................... 40 Mantık Operatörleri.................................................................................................... 42 List Nesneleri............................................................................................................... 44 Data Frame................................................................................................................... 46 KİŞİSEL FONKSİYON YAZMA............................................................................... 47 HAZIR VERİ AKTARIMI.......................................................................................... 49 EK KÜTÜPHANE YÖNETİMİ................................................................................ 50 iv İçindekiler Özet............................................................................................................................... 52 Kendimizi Sınayalım................................................................................................... 53 Kendimizi Sınayalım Yanıt Anahtarı........................................................................ 54 Sıra Sizde Yanıt Anahtarı............................................................................................ 54 Yararlanılan ve Başvurulabilecek Kaynaklar............................................................ 55 3. ÜNİTE Verinin Hazırlanması.................................................................... 56 GİRİŞ............................................................................................................................ 57 TEMEL DEĞİŞKEN TİPLERİ................................................................................... 58 İsimsel (Nominal) Değişkenler................................................................................. 58 İkili (Binary) Değişkenler.......................................................................................... 59 Sıra Gösteren (Ordinal) Değişkenler........................................................................ 59 Tam sayılı (Integer) Değişkenler............................................................................... 59 Aralıklı Ölçümlendirilmiş (Interval-Scaled) Değişkenler..................................... 59 Oranlı Ölçümlendirilmiş (Ratio-Scaled) Değişkenler........................................... 59 VERİ HAZIRLAMA................................................................................................... 60 Veri Temizleme............................................................................................................ 60 Eksik Veri............................................................................................................... 61 Gürültülü Veri....................................................................................................... 62 Tutarsız Veri........................................................................................................... 62 Veri Birleştirme............................................................................................................ 63 Veri İndirgeme............................................................................................................. 63 Veri Küpü Birleştirme........................................................................................... 63 Boyut İndirgeme.................................................................................................... 63 Veri Sıkıştırma....................................................................................................... 64 Büyük Sayıların İndirgenmesi............................................................................. 64 Veri Dönüştürme......................................................................................................... 64 Enk-Enb Normalleştirme..................................................................................... 65 z-Skor Normalleştirme......................................................................................... 67 Ondalık Ölçekleme............................................................................................... 68 Özet............................................................................................................................... 70 Kendimizi Sınayalım................................................................................................... 71 Kendimizi Sınayalım Yanıt Anahtarı........................................................................ 72 Sıra Sizde Yanıt Anahtarı............................................................................................ 72 Yararlanılan ve Başvurulabilecek Kaynaklar............................................................ 73 4. ÜNİTE Benzerlik ve Uzaklık Ölçüleri....................................................... 74 GİRİŞ............................................................................................................................ 75 DÖNÜŞÜMLER.......................................................................................................... 76 BASİT NİTELİKLER ARASINDAKİ YAKINLIK.................................................. 79 BENZERLİK VE UZAKLIK ÖLÇÜLERİ................................................................ 80 NİCEL DEĞİŞKENLER İÇİN YAKINLIK ÖLÇÜLERİ......................................... 81 Öklid ve Karesel Öklid Uzaklığı................................................................................ 81 Öklid ve Karesel Öklid Uzaklığının R Çözümü...................................................... 83 Karl Pearson Uzaklığı................................................................................................. 84 Manhattan (City-Block) Uzaklığı.............................................................................. 84 Manhattan (City-Block) Uzaklığının R Çözümü.................................................... 85 Minkowski Uzaklığı.................................................................................................... 85 Minkowski Uzaklığının R Çözümü.......................................................................... 86 İçindekiler v Pearson Korelasyon Katsayısı ve Korelasyon Uzaklığı........................................... 86 Pearson Korelasyon Katsayısı ve Korelasyon Uzaklığının R Çözümü................. 88 Açısal Benzerlik (Cosine Similarity)......................................................................... 89 Açısal Benzerlik (Cosine Similarity) R Çözümü..................................................... 90 Mahalanobis Uzaklığı................................................................................................. 91 Mahalanobis Uzaklığının R Çözümü....................................................................... 91 İKİ SONUÇLU (BINARY) DEĞİŞKENLER İÇİN YAKINLIK ÖLÇÜLERİ...... 92 Basit Eşleştirme Katsayısı ve Uzaklığı....................................................................... 93 Basit Eşleştirme Katsayısı ve Uzaklığı R Çözümü................................................... 94 Binary Öklid ve Binary Karesel Öklid Uzaklığı....................................................... 95 Binary Öklid ve Binary Karesel Öklid Uzaklığı R Çözümü................................... 96 Jaccard Benzerlik Katsayısı ve Uzaklığı.................................................................... 96 Jaccard Benzerlik Katsayısı ve Uzaklığı R Çözümü................................................ 98 Özet............................................................................................................................... 99 Kendimizi Sınayalım................................................................................................... 100 Kendimizi Sınayalım Yanıt Anahtarı........................................................................ 101 Sıra Sizde Yanıt Anahtarı............................................................................................ 101 Yararlanılan ve Başvurulabilecek Kaynaklar........................................................... 101 İlişki Kuralları................................................................................. 102 5. ÜNİTE GİRİŞ............................................................................................................................ 103 İLİŞKİ KURALLARI................................................................................................... 103 PAZAR SEPETİ ANALİZİ......................................................................................... 104 İLGİNÇ KURAL BELİRLEME ÖLÇÜTLERİ (RULE INTERESTINGNESS MEASURES)................................................................................................................ 107 Destek (Support)......................................................................................................... 107 Destek Eşik Değeri................................................................................................ 109 Güven (Confidence)................................................................................................... 110 Güven Eşik Değeri................................................................................................ 111 Kaldıraç (Lift).............................................................................................................. 111 İLİŞKİ KURALI BELİRLEME AŞAMALARI......................................................... 113 Apriori Algoritması..................................................................................................... 113 İLİŞKİ KURALLARI R ÇÖZÜMÜ........................................................................... 120 Özet............................................................................................................................... 122 Kendimizi Sınayalım................................................................................................... 123 Kendimizi Sınayalım Yanıt Anahtarı........................................................................ 124 Sıra Sizde Yanıt Anahtarı............................................................................................ 124 Yararlanılan ve Başvurulabilecek Kaynaklar............................................................ 125 Karar Ağaçları............................................................................... 126 6. ÜNİTE GİRİŞ............................................................................................................................ 127 KARAR AĞAÇLARI.................................................................................................. 129 Ayırma Kriterleri......................................................................................................... 132 Entropi İndeksi ile En İyi Ayırıcı Niteliğin Seçilmesi....................................... 132 Gini İndeksi ve Ayırıcı Niteliğin Belirlenmesi.................................................. 138 Karar Ağacı Oluşturma Algoritmaları...................................................................... 140 Karar Ağacı Budama Süreci ve Karar Ağacının Performansının Test Edilmesi. 141 SINIFLANDIRMA VE REGRESYON AĞAÇLARININ R ÇÖZÜMÜ............... 142 R’ye Veri Aktarma....................................................................................................... 143 vi İçindekiler csv Dosyası ile R’ye Veri Aktarma....................................................................... 143 Kopyala-Yapıştır Komutu ile R’ye Veri Aktarma............................................... 145 Veritabanı Erişimi ile R’ye Veri Aktarma........................................................... 146 Sınıflandırma ve Regresyon Ağaçlarının rpart Paketi ile Çözümü....................... 148 Özet............................................................................................................................... 156 Kendimizi Sınayalım................................................................................................... 158 Yaşamın İçinden.......................................................................................................... 159 Kendimizi Sınayalım Yanıt Anahtarı........................................................................ 160 Sıra Sizde Yanıt Anahtarı............................................................................................ 160 Yararlanılan ve Başvurulabilecek Kaynaklar............................................................ 162 7. ÜNİTE Kümeleme Analizi........................................................................ 164 GİRİŞ............................................................................................................................ 165 KÜMELEME ANALİZİ............................................................................................. 166 UZAKLIK VE BENZERLİK ÖLÇÜLERİ................................................................ 167 KÜMELEME YÖNTEMLERİ................................................................................... 168 AŞAMALI KÜMELEME YÖNTEMLERİ.............................................................. 168 Birleştirici Aşamalı Kümeleme Yöntemleri.............................................................. 168 Ayırıcı Aşamalı Kümeleme Yöntemleri.................................................................... 168 Dendrogramlar (Ağaç Diyagramları)....................................................................... 169 BİRLEŞTİRİCİ KÜMELEME YÖNTEMLERİ........................................................ 171 Tek Bağlantı Kümeleme Yöntemi.............................................................................. 171 Tam Bağlantı Kümeleme Yöntemi............................................................................ 172 Ortalama Bağlantı Kümeleme Yöntemi................................................................... 173 McQuitty Bağlantı Kümeleme Yöntemi.................................................................. 173 Küresel Ortalama Bağlantı Kümeleme Yöntemi.................................................... 173 Medyan Bağlantı Kümeleme Yöntemi..................................................................... 174 Ward Bağlantı Kümeleme Yöntemi.......................................................................... 174 R PROGRAMINDA TEK BAĞLANTI KÜMELEME YÖNTEMİ UYGULAMASI........................................................................................................... 174 AŞAMALI OLMAYAN KÜMELEME YÖNTEMLERİ......................................... 178 k-Ortalamalar Yöntemi............................................................................................... 179 k-Medyanlar Yöntemi................................................................................................. 179 k-Medoidler Yöntemi.................................................................................................. 180 k-Ortalamalar Yönteminin Uygulanması................................................................ 180 R PROGRAMINDA K-ORTALAMALAR KÜMELEME YÖNTEMİ UYGULAMASI........................................................................................................... 181 Özet............................................................................................................................... 185 Kendimizi Sınayalım................................................................................................... 186 Sıra Sizde Yanıt Anahtarı............................................................................................ 187 Kendimizi Sınayalım Yanıt Anahtarı........................................................................ 187 Yararlanılan ve Başvurulabilecek Kaynaklar............................................................ 188 8. ÜNİTE Web Madenciliği ve Sosyal Medya Madenciliği.......................... 190 GİRİŞ............................................................................................................................ 191 VERİ MADENCİLİĞİ VE WEB MADENCİLİĞİ................................................. 192 WEB MADENCİLİĞİ SÜRECİ................................................................................. 194 WEB MADENCİLİĞİ VERİ KAYNAKLARI.......................................................... 196 Web Verisinin Özellikleri........................................................................................... 197 İçindekiler vii WEB MADENCİLİĞİNİN SINIFLANDIRILMASI.............................................. 197 Web İçerik Madenciliği.............................................................................................. 198 Web Arama............................................................................................................ 198 Kısa Metin İşleme.................................................................................................. 199 Bilgi Keşfi............................................................................................................... 199 Web Görüş Madenciliği........................................................................................ 199 Web Yapı Madenciliği................................................................................................. 199 İnternette Arama ve Bağlantı Köprüleri............................................................. 200 Atıf Analizi............................................................................................................. 200 Web Topluluğu Keşfi............................................................................................. 200 Web Şeması Ölçüm ve Modellemesi.................................................................. 200 Web Sayfalarının Sınıflandırılması..................................................................... 201 Web Kullanım Madenciliği........................................................................................ 201 Web Kullanım Madenciliği Aşamaları............................................................... 201 Web Kullanım Madenciliği Temel Uygulama Alanları.......................................... 203 Kişiselleştirme (Personalization)......................................................................... 203 Sistem Geliştirme (System Improvement)......................................................... 203 Web Sitesi Güncelleme (Site Modification)....................................................... 204 İş Zekası (Business Intelligence)......................................................................... 204 Kullanım Karakteristiği (Usage Characterization)........................................... 204 SOSYAL MEDYA MADENCİLİĞİ........................................................................... 205 R ile Twitter Verisinin Analizi................................................................................... 207 Analiz I: Kişisel Twitter Verilerinizin Analizi................................................... 207 Analiz II : Kelime Bulutu...................................................................................... 209 R ile Facebook Verisinin Analizi............................................................................... 214 Özet............................................................................................................................... 221 Kendimizi Sınayalım................................................................................................... 222 Kendimizi Sınayalım Yanıt Anahtarı........................................................................ 223 Sıra Sizde Yanıt Anahtarı............................................................................................ 223 Yararlanılan ve Başvurulabilecek Kaynaklar............................................................ 224 viii Önsöz Önsöz Sevgili öğrenciler, Son yıllarda teknolojik gelişmelere bağlı olarak ortaya çıkan veri sayısında büyük bir artış meydana gelmiştir. Bugün bir çok magazin, kitap ve televizyon programında yığınlar halinde ortaya çıkan veri kavramından bahsedilmektedir. Bir günde gönderilen e-posta sayısı 100 milyarın üzerindedir. Gün boyu atılan Tweet sayısı beşyüzbin rakamının üzeri- ne çıkmaktadır. Dünya üzerinde 2016 yılı içerisinde HIV/AIDS ile alakalı olarak hayatını kaybeden kişi sayısı 1.600.000’i aşmaktadır. Sosyal medya kavramı artık nerede ise tüm evlerin konuşulan ortak bir konusu haline gelmiştir. Veri miktarının yüzlerle değil de mil- yonlar ile telafuz edildiği bu dönemde, elde edilen verinin en verimli biçimde değerlendi- rilmesi, yorumlanması büyük bir önem arz etmektedir. Elinizde bulunan bu eser verinin derlenmesi, düzenlenmesi ve size anlatmaya çalıştığı öğeleri görebilmenizi sağlayacak tek- nikleri bir araya getirerek, en sade hali ile sizlere aktarmaktadır. Veri madenciliğinin tarihi bilgisayarların hayatımıza girmesiyle başlamıştır. 1950’li yıl- lardaki ilk bilgisayarların geliştirilme ve kullanım amacı sayım ve karmaşık hesaplamaları kolaylıkla yapabilmekti. Daha sonra kullanıcıların ihtiyaçları doğrultusunda, bilgisayarlar veri depolama işlemleri için de kullanılmaya başlanmıştır. Verilerin depolanması ihtiyacı ile birlikte, 1960’lı yıllardan itibaren teknoloji dünyası veri tabanı kavramı ile tanışmıştır. 1960’ların sonunda ise basit öğrenmeli bilgisayarlar geliştirilmişlerdir. Teknolojinin hızla ilerlediği bu dönemde veri analizinin ayrılmaz bir parçası da bilgi- sayar donanım ve yazılımlarıdır. Bu eserde sizi yazılım maliyeti ile karşı karşıya bırakma- yan ve ücretsiz olarak indirilip kullanılabilen R yazılımı kullanılmıştır. Mümkün olduğun- ca, ele alınan veri madenciliği tekniklerine ilişkin R programlama adımları, gerçek hayat örnekleri ile sizlere aktarılmıştır. Kitabın oluşturulması sürecinde başta yazarlar olmak üzere emeği geçen herkese son- suz teşekkürlerimi sunarım. Kitapta yer alan bilgilerin ve uygulama örneklerinin gerçek yaşamınızda siz öğrencile- rimize ve konuyla ilgilenen herkese faydalı olmasını diliyorum. Editör Prof.Dr. Fikret ER 1 VERİ MADENCİLİĞİ Amaçlarımız Bu üniteyi tamamladıktan sonra;  Veri madenciliğinin tarihsel gelişimini özetleyebilecek,  Veri madenciliğine etki eden disiplinleri betimleyebilecek,  Veri madenciliği kavramını tanımlayabilecek,  Veritabanlarında bilgi keşfi sürecini açıklayabilecek,  Veri madenciliğinde kullanılan modellere ilişkin özellikleri özetleyebilecek,  Veri madenciliğini diğer veri analizi yaklaşımları ile karşılaştırabilecek,  Veri madenciliğinin uygulandığı alanları örnekleyebilecek bilgi ve becerilere sahip olabileceksiniz. Anahtar Kavramlar Veri Madenciliği OLAP Veritabanlarında Bilgi Keşfi Örüntü Veritabanı Kayıp Veri Veri Ambarı Gürültülü Veri İçindekiler GİRİŞ VERİ MADENCİLİĞİNİN TARİHSEL GELİŞİMİ VERİ MADENCİLİĞİNE ETKİ EDEN DİSİPLİNLER VERİ MADENCİLİĞİ KAVRAMI VERİTABANLARINDA BİLGİ KEŞFİ Veri Madenciliği Temel Kavramlar SÜRECİ VERİ MADENCİLİĞİNDE KULLANILAN MODELLER VERİ MADENCİLİĞİNİN DİĞER VERİ ANALİZİ YAKLAŞIMLARI İLE KARŞILAŞTIRILMASI VERİ MADENCİLİĞİNİN UYGULANDIĞI ALANLAR Temel Kavramlar GİRİŞ İletişim ve bilişim teknolojilerinde yaşanan gelişmeler dünyada her şeyin hızla değişmesi- ne neden olmaktadır. İster kâr amaçlı işletmeler, ister diğer kurum ve kuruluşlar açısından olsun, değişimlere ayak uydurabilmek başarı için önemli bir gerekliliktir. İşletmeler açı- sından ele alındığında bu değişimler; ekonomik koşullarda, iş yapma biçimlerinde, müşte- ri beklentilerinde, müşteri eğilimlerinde, rakiplerin stratejilerinde vb. ortaya çıkmaktadır. İşletmelerin bu değişimlere ayak uydurabilmesi, rakipleriyle yarışabilmesi ve varlıklarını başarılı bir biçimde sürdürebilmesi için, işletmelerde karar verici konumunda olan yöne- ticilerin, doğru kararlar vererek doğru stratejiler belirlemeleri gerekmektedir. Bu da ancak zamanında elde edilebilen doğru bilgilerin kullanımıyla mümkün olacaktır. Bu nedenle işletmelerin iş süreçlerinden ve işletme dışından elde ettikleri verileri karar verme süre- cinde anlamlı bilgilere dönüştürebilmeleri önemlidir. Günümüzde bilişim teknolojisinde gelinen noktada çok büyük miktarda verinin ko- laylıkla elde edilmesi ve kaydedilerek saklanması olanaklı hâle gelmiştir. Bununla birlikte veriler tek başlarına bir anlam ifade etmeyip belirli bir amaca yönelik olarak işlendiklerinde anlamlı bilgilere dönüşürler. Verilerin kolaylıkla elde edilip saklanabilmelerine karşın, bu verilerden anlamlı bilgilere ulaşabilmek aynı derecede kolay değildir. Anlamlı bilgilere ula- şabilmek amacıyla geçmişten beri kullanılan farklı yöntemler bulunmaktadır. Bununla bir- likte verilerin analiz edilmesinde kullanılan geleneksel yöntemler veri miktarında meydana gelen büyük artış karşısında yetersiz kalmaya başlamıştır. Veri madenciliğinin ortaya çıkışı da büyük miktarda veriyi analiz edebilme ve işleyebilme ihtiyacından kaynaklanmıştır. Veri madenciliğinin amacı, çok büyük miktarda ve karmaşık durumdaki veriler için- den geleneksel yöntemlerle elde edilemeyecek bilgilere ulaşma ve bu bilgileri rakiplere fark yaratacak kararlarda kullanabilmeye olanak sağlamaktır. Buradan anlaşılabileceği üzere veri madenciliği tek başına çözümün kendisi olmayıp çözüme ulaştıracak kararın verilmesine destek sağlayacak bilgilerin ortaya çıkarılmasında kullanılan bir araçtır. VERİ MADENCİLİĞİNİN TARİHSEL GELİŞİMİ Veri madenciliğinin tarihi bilgisayarların hayatımıza girmesiyle başlamıştır. 1950’li yıllar- daki ilk bilgisayarların geliştirilme ve kullanım amacı sayım ve karmaşık hesaplamaları kolaylıkla yapabilmekti. Daha sonra kullanıcıların ihtiyaçları doğrultusunda, bilgisayarlar veri depolama işlemleri için de kullanılmaya başlanmıştır. Verilerin depolanması ihtiya- cı ile birlikte, 1960’lı yıllardan itibaren teknoloji dünyası veri tabanı kavramı ile tanış- mıştır. 1960’ların sonunda ise basit öğrenmeli bilgisayarlar geliştirilmiştir. Buna karşın, 4 Veri Madenciliği Perseptron, insan beyninde yer günümüzdeki sinir ağlarının temeli olarak bilinen perseptron’ların yalnızca çok basit alan sinir hücrelerinin (nöronların) ilk yapay modeline verilen olan kuralları öğrenebileceği, bazı basit mantıksal işlemlerde ise yetersiz kaldığı 1969’da isim olup algılayıcı, fark edici Minsky ve Papert tarafından ortaya konulmuştur. Zaman içinde giderek büyüyen veri anlamındadır. 1957 yılında Frank Rosenblatt tarafından geliştirilen tabanlarının organizasyonu, düzenlenmesi ve yönetimi de doğal olarak zorlaşmıştır. Bu ve tekrar eden, benzerlik gösteren zorlukların üstesinden gelebilmek amacıyla ise veri modelleme kavramı ortaya atılmıştır. özelliklerin bilgisayar tarafından İlk veri modelleri; Hiyerarşik Veri Modeli ve Ağ Veri Modeli olarak adlandırılan basit veri algılanabilmesini sağlayan bir algoritmadır. modelleridir. 1970’lerde İlişkisel Veri Tabanı Yönetim Sistemleri uygulamaları kullanıl- maya başlanmış, bu konuyla ilgilenen uzmanlar basit kurallara dayanan uzman sistemler geliştirmişler ve basit anlamda makine öğrenimini sağlamışlardır. 1980’lerde veri tabanı yönetim sistemleri yaygınlaşmış ve pek çok farklı alanda uygulanır olmuştur. Özellikle işletmeler, müşterileri, rakipleri ve ürünlerine ilişkin verileri düzenli biçimde saklamak amacıyla veri tabanları oluşturmuştur. Kullanıcı ihtiyaçları doğrultusunda şekillenen veri tabanları ve veri modelleme çeşit- lerinin kullanımı hızlı biçimde yaygınlaşırken buna bağlı olarak donanım ögeleri de bu ihtiyaçlara cevap verecek biçimde geliştirilmiştir. Günümüzde bellek kapasitesi GigaByte ve TeraByte’tan sonra Peta, Exa ve Zetta ön ekleriyle ifade edilen boyutlara ulaşmıştır. Bu- nun sonucu olarak milyarlarca Byte veri fiziksel olarak çok küçük boyutlardaki donanım ögelerinde saklanabilir hâle gelmiştir. Bu kadar büyük miktarda verinin saklanması sorun olmasa da verilerin düzenlenmesi, organize edilmesi ve istenilen veriye hızlıca ulaşılabil- mesi büyük bir sorun durumuna gelmiştir. 1990’lara gelindiğinde ise artık araştırma konusu; veri miktarının sürekli katlanarak arttığı veri tabanları içinden, faydalı bilgilerin nasıl çıkarılabileceği konusudur. Bu amaç- la pek çok çalışma ve yayın yapılmıştır. Bu çalışmalardan en önemlisi, 1989’da yapılan KDD (Knowledge Discovery in Database) IJCAI-89 Veri Tabanlarında Bilgi Keşfi Çalışma Grubu toplantısıdır. 1991 yılında ise KDD (IJCAI)-89’un sonuç bildirgesi sayılabilecek “Knowledge Discovery in Real Databases: A Report on the IJCAI-89 Workshop” makalesi ile Bilgi Keşfi ve Veri Madenciliği ile ilgili temel tanım ve kavramlar ortaya konmuştur. Bu makaleden sonra süreç daha da hızlanmış ve 1992 yılında veri madenciliği için ilk yazılım geliştirilmiştir. 2000’li yıllarda veri madenciliği sürekli gelişmiş ve hemen hemen tüm alanlara uygulanmaya başlanmıştır. Alınan sonuçların faydaları görüldükçe bu alana ilgi artmıştır. Günümüze geldiğimizde veri madenciliğinin pek çok alanda yaygın olarak kullanıldı- ğını görebiliriz. Karar verme sürecinde ihtiyaç duyulan veri analizini gerçekleştirdiği için, operasyonel kararların ötesinde stratejik karar verme süreçlerinde de oldukça önemli bir yere sahiptir. İşletmeler, günümüzde yoğun olarak kullandıkları Müşteri İlişkileri Yöneti- mi (CRM) ve Kurumsal Kaynak Planlaması (ERP) gibi uygulamalar ve teknikler aracılı- ğıyla veri madenciliği yapmaktadır. Veri madenciliğinin tarihsel gelişim süreci, Tablo 1.1’de özetlenmiştir. Tablo 1.1 1950’ler İlk bilgisayarlar (sayım ve hesaplama amaçlı) Veri Madenciliğinin Verilerin depolanması ve veritabanları Tarihsel Süreci 1960’lar Perseptronlar Kaynak: Savaş, İlişkisel Veritabanı Yönetim Sistemleri 1970’ler Topaloğlu ve Yılmaz, Basit kurallara dayanan uzman sistemler ve makine öğrenimi (2012), s.5. Büyük miktarda veri içeren veri tabanları 1980’ler SQL sorgu dili Veritabanlarında Bilgi Keşfi Çalışma Grubu ve Sonuç Bildirgesi 1990’lar Veri madenciliği için ilk yazılım 2000’ler Tüm alanlar için veri madenciliği uygulamaları 1. Ünite - Temel Kavramlar 5 Görüldüğü gibi bugün veri madenciliği olarak ifade ettiğimiz kavrama ilişkin çalışma- lar aslında ilk olarak, 1960’lı yıllarda bilgisayar sistemlerinin, verilerin analizi ve problem- lerin çözümü amacıyla kullanılmaya başlanmasıyla birlikte ortaya çıkmıştır. Buna göre bilgisayarlarda depolanan veriler üzerinde, yeterli uzunlukta bir tarama yapıldığında, istenilen verilere erişmenin olanaklı olacağı gerçeği kabul edilmiştir. Bu işleme ilk za- manlarda veri taraması, veri yakalaması gibi adlandırmalar yapılmıştır. Veri madenciliği adlandırması ise yukarıda da belirtildiği gibi 1990’lı yıllara gelindiğinde, bilgisayar mü- hendisleri tarafından kullanılmaya başlanmıştır. VERİ MADENCİLİĞİNE ETKİ EDEN DİSİPLİNLER Veri madenciliği işlemleri ile amaçlanan; veri analizinde geleneksel istatistiksel yöntemler yerine bu yöntemlerin yetersizliklerini giderecek yeni yaklaşımları, bilgisayar algoritmala- rının kullanımı ile uygulamak ve istenilen analizi hızlı ve sağlıklı bir biçimde gerçekleştir- mektir. Bu yeni yaklaşımların temelinde istatistik, makine öğrenimi, veritabanı sistemleri önemli bir yer tutmaktadır. İstatistik, verilerin analizi ve değerlendirilmesi konusunda geçmişten günümüze yo- ğun bir biçimde kullanılan bir disiplindir. Bilgisayar sistemlerinde hem donanım hem de yazılım alanında sağlanan gelişmeler doğal olarak istatistik alanını da etkilemiştir. İstatistiksel çalışmaların bilgisayar desteğiyle daha güçlü biçimde yapılması, daha önce gerçekleştirilmesi çok mümkün olmayan istatistiksel araştırmaları ve analizleri yapılabilir hâle getirmiştir. Bu anlamda 1990’lardan sonra, ilgilenilen verinin yığınlar içinden çekilip çıkarılması ve analizinin yapılarak kullanıma hazır hâle getirilmesi sürecinde istatistik, veri madenciliği ile ortak bir platformda ve sıkı bir çalışma birlikteliği içinde olmuştur. Veri madenciliği çalışmalarında etkili olan ve yapay zekâ çalışmalarının da temelini oluşturan makine öğrenimi, kısaca bilgisayarların bazı işlemlerden çıkarsamalar yaparak yeni işlemler üretmesi olarak tanımlanabilir. Makine öğrenimi, insan öğrenmesinde söz konusu olan özelliklerin algoritmalar yardımıyla bilgisayarlara da uygulanabileceği ve bil- gisayarların da insanlar gibi öğrenebileceği düşüncesini temel alan bir disiplindir. İnsan- lar nasıl öğrenirler? İnsanlar çocukluk dönemlerinden itibaren öğrenmeye başlarlar. Bu, etraflarında gördükleri tüm nesneleri gözlemleme ve bu gözlemler aynı türde nesneler üzerinde tekrarlandıkça nesneleri kavramlara dönüştürme biçiminde gerçekleşir. Aynı türde nesnelere ilişkin farklı örnekleri görmeyi, incelemeyi sürdürdükçe nesneye ilişkin kavram netleşir ve benzer örnekleri ilgili nesne sınıfına konumlandırarak bir sınıflama modeli oluşturur. Örneğin, ilk kez kedi gören bir çocuğa gördüğü varlığın bir kedi olduğu söylendiğinde bu bilgiyi alan çocuk, başka bir gün başka bir kedi gördüğünde bir önceki deneyimi hatırlayarak o varlığın kedi olduğunu düşünür. Bu deneyim tekrarlandıkça öğ- renme de gerçekleşmiş olur. Artık herhangi bir kedi görüldüğünde, bu kedi öncekilerden farklı özellikler (daha küçük, daha farklı renkte) taşısa da çocuk o varlığın kedi olduğunu bilerek ortak özellikleri temel alarak kedi tanımlamasını yapabilir. Makine öğrenimi de bilgisayarların kendisine algoritmalar yoluyla verilen kuralları uygulaması ve büyük veri kümeleri içinden örnekler çıkararak verileri bu kurallara göre sınıflamaları, tanımlamaları ve dolayısıyla öğrenmeleri olarak ifade edilebilir. Bu öğrenmeler sonucunda çıkarımlarda bulunarak geçmiş veri örnekleri yardımıyla gelecekte daha iyi sonuçlar üretme konusunda veri madenciliği uygulamasına katkıda bulunurlar. Veri madenciliğinde söz konusu diğer bir disiplin olan görselleştirme; verilerin, tab- lolar ve grafikler gibi görseller yardımıyla sunulmasını sağlayan teknolojileri ifade eder. Görselleştirme; verilerin daha kolay anlaşılmasına, analiz edilmesine ve geleceğe yönelik tahminlerde bulunulmasına önemli katkı sağlamaktadır. Veri madenciliğinde kullanılan görselleştirme teknikleri ilk zamanlarda sadece iki boyutlu serpilme ve serpilme matris 6 Veri Madenciliği çizimleri ya da üç boyutlu grafikler biçimindeydi. Ancak zaman içinde, verilerin öznite- lik sayılarındaki artış klasik istatistiğin sunduğu iki veya üç boyutlu grafiklerin yetersiz kalması sonucunu da birlikte getirmiştir. Bu durum da çok daha fazla boyutun görselleş- tirilmesine imkân sağlayan yeni grafik araçlarının geliştirilmesine neden olmuştur. Yer- Konum veri analizi, sinyal işleme, görüntü analizi gibi teknikler görselleştirme amacıyla kullanılan tekniklere verilebilecek örneklerdir. Şekil 1.1 Veri Madenciliğinin Etkileşimde Olduğu Makine Öğrenimi Görselleştirme Disiplinler Veri Veritabanı İstatistik Madenciliği Sistemleri Diğer Örüntü Tanıma Disiplinler Veri madenciliğinin olmazsa olmazlarından biri de veritabanlarıdır. Bilindiği gibi iş- letmelerde ve yapısal diğer tüm kurumlarda günlük işlemler ve bu işlemlere konu olan veriler kaydedilmektedir. Bununla birlikte veritabanı kavramı gelişigüzel veri yığınları ol- mayıp birbiriyle ilişkili olan ve amaca uygun biçimde düzenlenmiş, mantıksal ve fiziksel olarak tanımlanmış veriler bütünüdür. Veritabanı yönetim sistemi ise kısaca veritabanı tanımlamak, veritabanı oluşturmak, veritabanında işlem yapmak, veritabanının farklı kullanıcı yetkilerini belirlemek, veritabanının bakımını ve yedeklemesini yapmak için ge- liştirilmiş programlar bütünüdür. Son olarak, veritabanı ve veri tabanı yönetim sisteminin birlikte oluşturduğu bütün de veritabanı sistemi olarak ifade edilir. Örüntü, olaylar ve nesneler arasında düzenli ve sistematik bir biçimde tekrarlanan iliş- Örüntü tanıma: Olaylar ve ki modellerini ifade etmek için kullanılan bir kavramdır. Örüntü tanıma teknolojisi ise nesneler arasında daha önceden tanımlanmış, düzenli ve daha önceden tanımlanmış, bir model olarak düşünülebilen çok boyutlu bir örüntünün sistematik biçimde tekrar eden veritabanındaki benzerlerini ya da en benzerini arama ve bulma amacına yönelik yazı- ilişkileri bir model olarak kabul lımları ifade eder. Örüntünün konusu yazılı bir metin olabileceği gibi parmak izi, ses, yüz eden ve bu modelin (örüntünün) benzerlerini ya da en benzerini tanıma, kan hücrelerinin karşılaştırılması, el yazılarının belirlenmesi gibi alanlar da ola- veritabanı içinden arama ve bilir. Verilen son örneklerde örüntü, el, yüz, resim, çizim ve ses gibi nesnelerin bilgisayar bulmaya yönelik teknolojidir. ortamlarında sayısal olarak ifade edilmesi anlamındadır. VERİ MADENCİLİĞİ KAVRAMI İşletme politikalarının ve stratejik kararların temel ögesi veri ve veriden elde edilmiş gü- venilir, güncel ve doğru bilgidir. Bu bilgiler, işletme kaynaklarının daha etkin kullanımı ve müşterilere daha iyi ürün ve hizmet sunabilme amaçlarına yönelik olarak kullanılır. Veri madenciliği de ihtiyaç duyulan bu bilgilerin üretilmesinde kullanılan bir araçtır. Veri madenciliği kavramını tanımlamadan önce veri, enformasyon ve bilgi kavramlarını hatır- latmak faydalı olacaktır. Veri, ham gözlemler, işlenmemiş gerçekler ya da izlenimlerdir. Bu gözlemler, gerçekler ya da izlenimler harf, rakam ya da çeşitli sembol ve işaretler yardımıyla temsil edilir. Bir- 1. Ünite - Temel Kavramlar 7 birleriyle ilişkilendirilip yorumlanmadıkları sürece tek başlarına bir anlam ifade etmezler ve bu hâlleriyle karar verme konusunda da karar vericilere bir katkı sağlayamazlar. Enformasyon, verinin bir anlam oluşturacak şekilde düzenlenmiş hâlidir. Diğer bir ifadeyle toplanan verilerin birbiriyle çok yönlü olarak ilişkilendirilmesi ve değer yarata- cak bir kaynak niteliğine dönüştürülmesi enformasyonu üretir. Veriden farklı olarak en- formasyon tek başına anlamlıdır. Bununla birlikte bu anlam yalnızca konuyla ilgili kişi tarafından anlaşılır ve bu kişiye olayları ve nesneleri yorumlamada bir bakış açısı sağlar. Bilgi ise en yalın tanımıyla verinin işlenmiş ve dönüştürülmüş halidir. Söz konusu işleme ve dönüştürme süreci, veri üzerinde kaydetme, sınıflama, sıralama, hesaplama, özetleme, çoğaltma, analiz ve raporlama işlemlerinin uygulanması ile gerçekleştirilir. Bu işleme sonucunda veri, karar verme sürecine destek olacak şekilde anlam kazanarak bilgi- ye dönüşmüş olur. Dolayısıyla karar vermede etkili olan asıl unsur veriden ziyade bilgidir. Bilgisayar sistemlerinin hayatımıza bu derece girmesinden önce de veriler kaydedil- mekte ve saklanmaktaydı. Ancak günümüzden farkı, kayıt ortamı olarak kâğıt, defter, dosya gibi araçların kullanılmasıydı. Teknoloji ve bilgisayar sektöründeki gelişmeler saye- sinde dijital kayıt ortamlarına geçilmiş ve buna paralel olarak da daha çok veri kaydedilip saklanabilir duruma gelmiştir. Dijital kayıt ortamlarında yer alan veri hacmindeki büyük artış ise beraberinde yeni sorunları doğurmuştur. Bunlardan biri; çok büyük miktarda veri içinden ihtiyaç duyulan veriye hızlı ve kolay biçimde erişebilmek amacıyla, verilerin yönetimi sorunu bir diğeri ise verileri işleyip anlamlı bilgilere dönüştürmek amacıyla yeni yöntem ve yaklaşımlar belirleme zorunluluğudur. Söz konusu bu sorunlara çözüm bulma isteği bilgisayar teknolojilerindeki gelişmelerin de temel nedenlerinden biri olmuş ve il- kine çözüm amacıyla veritabanı sistemleri, ikincisine çözüm amacıyla da veri madenci- liği yöntemleri geliştirilmiştir. Dikkat edilirse ihtiyaçlar teknolojik gelişmeleri, teknolojik gelişmeler ise yeni ihtiyaçları tetiklemekte ve bu bir döngü biçiminde devam etmektedir. Bilindiği gibi ekonomik yönden değer taşıyan maddelerin (altın, gümüş, elmas, bor, kömür vb.) bulundukları yerlere maden, bu maddelerin çıkarılıp işlenmesi ile ilgili ola- rak gerçekleştirilen faaliyetlere de madencilik denir. Bu maddeler bulundukları yerden çıkarılıp işlenmedikleri sürece bir değer taşımazlar. Benzer durum veritabanlarında yı- ğınlar biçiminde bulunan veriler için de geçerlidir. Veritabanlarında kayıtlı olan veriler de madenlerden çıkarılıp işlenmeyi bekleyen değerli maddelere benzetilebilir. Bu nedenle büyük miktarda yığın veri içinden bilgiye ulaşmak amacıyla kullanılan teknikler bütünü de veri madenciliği adı altında ele alınmaktadır. Veri madenciliği çalışmaları yapmak için var olması gereken iki temel öge veri ve veri- tabanıdır. Bununla birlikte burada sözü edilen veritabanı, işletmelerin günlük kayıtlarının yer aldığı ve işlemsel veritabanı olarak adlandırılan veri tabanları değildir. Daha doğru bir ifadeyle işlemsel veritabanları veri madenciliği uygulamalarında doğrudan kullanılmaz. Bu veritabanlarında yer alan veriler birtakım işlemlerden geçirilerek veri madenciliği için kullanılabilir, hazır hâle getirilir. İşte işletmelere ait veritabanlarının, belirli bir amaca göre konu odaklı olarak düzenlenmiş, veri madenciliğinde doğrudan kullanılabilir duruma getirilmiş hâli veri ambarı olarak tanımlanır. İşletme çalışanları günlük işlemlerini sür- Veri ambarı işletmelerde iç veri kaynakları ile dış veri dürebilmek, farklı yönetim düzeyindeki yöneticiler ise operasyonel, taktik ya da strate- kaynaklarının birleştirilmesi ve jik kararlar verebilmek için farklı veri kaynaklarına ihtiyaç duyarlar. İşletmelerdeki veri düzenlenmesi ile oluşturulmuş, kaynakları iç kaynaklar ve dış kaynaklar biçiminde sınıflandırılabilir. İç veri kaynakları; üzerinde veri madenciliği işlemlerinin gerçekleştirileceği işletmenin kendi iş süreçlerinden elde ettiği verilerin yer aldığı kaynaklardır. Örneğin, veriyi sağlayan daha geniş ve özel üretim bölümü, satın alma ve pazarlama bölümleri kendi günlük işlemlerine ilişkin ka- veritabanlarına verilen isimdir. yıtları tutarak birer iç veri kaynağı oluştururlar. Bunun dışında işletmelerde günlük faali- yetleri ya da her düzeyde alınacak kararları doğrudan etkileyecek dış kaynaklı verilere de ihtiyaç duyulur. Örneğin işletmelerin içinde bulundukları sektöre ilişkin veriler, istatistik 8 Veri Madenciliği kurumlarının yayınladığı raporlar, yasal düzenlemeler, döviz kuru vb. gibi sermaye piya- sasına ilişkin veriler dış kaynaklı verilere verilebilecek örnekler arasındadır. Veri ambarla- rı, söz konusu bu iç ve dış kaynaklı verilerin biraraya getirilmesi ile oluşturulan özel veri- tabanlarıdır. Bununla birlikte verilerin birleştirilmesi gelişigüzel bir işlem değildir. Veriler farklı kaynaklardan elde edildiği için veriler arasındaki uyumsuzlukların, tutarsızlıkların giderilmesi ve verilerin amaca uygun, kullanılabilecek biçime dönüştürülmesi gereklidir (söz konusu bu işlemler izleyen kesiminde Veriler Üzerinde Ön İşlemlerin Yapılması başlığı altında anlatılmıştır). Veri ambarı oluşturulmasına ilişkin süreç ve ilgili olduğu diğer ögeler Şekil 1.2’de ve- rilmiştir. Şekil 1.2 Veri Ambarı Oluşturma Süreci ve Veri Ambarı ile İlişkili Üst Veri OLAP Diğer Ögeler Sunucusu İç Veri Kaynakları Veriyi Çek Veriye Temizle VERİ AMBARI Erişim, Sorgulama ve Dönüştür Analiz VERİ MADENCİLİĞİ Veri Veri Veri Deposu Deposu Deposu Dış Veri Kaynakları İngilizce karşılığı meta data olan üst veri, veri ambarında yer alan veriler hakkındaki tanımlamalar olup veri ambarına ilişkin veri kataloğu olarak düşünülebilir. Farklı kaynaklarda veri martı kavramı ile ifade edilen veri deposu (data mart) kavramı ise veri ambarının bir alt kümesi olup işletmenin yalnızca belirli bir bölümünü ya da be- lirli bir iş sürecini, daha özel bir fonksiyon alanını ilgilendiren parçasıdır. Veri ambarı tüm işletmeyi ilgilendirirken veri deposu tek bir konuya ya da özel bir amaca yönelik verileri içerir. İşletmeler günlük faaliyetlerine ilişkin basit sorgulamaları ve analizleri işlemsel veri- tabanları üzerinde kolaylıkla gerçekleştirebilirler. Buna karşın, çok yönlü veri analizi ve sorgulama yapmak istediklerinde normal veri analizi ve sorgulamadan farklı bir sistem OLAP (Online Analytical kullanırlar. Çevrimiçi Analitik İşleme olarak adlandırılan bu sisteme kısaca OLAP (On- Processing - Çevrimiçi Analitik İşleme) veri ambarında yer alan Line Analytical Processing) denir. OLAP uygulamaları veri ambarından çekilen veriler veriler üzerinde çok boyutlu, üzerinde gerçekleştirilir. OLAP sorgulamaları işlemsel veri tabanlarında gerçekleştirilen çok yönlü analiz ve sorgulama yapılmasını sağlayan sistemlerdir. basit analiz ve sorgulamalardan farklı olarak, veriyi çok boyutlu biçimde analiz eder ve analiz sonucunda yöneticilere stratejik kararlarında destek olacak yararlı bilgiler sunar. İşletmelerin geleceklerine yönelik önemli kararlarında, karşı karşıya kaldıkları problemler basit yapıda olmayıp çok yönlü, karmaşık, analitik sorgulamalar gerektirecek yapıda or- taya çıkarlar. Bu tür problemlerin çözümü için günlük veri analizi ve sorgulamalar doğal olarak yetersiz kalacaktır. 1. Ünite - Temel Kavramlar 9 OLAP işlemini gerçekleştirmek üzere veri ambarı ile etkileşim içinde olan OLAP su- nucuları, karmaşık analitik sorguların kısa sürede gerçekleştirilmesine imkân veren çok boyutlu veri modelini kullanırlar. Örneğin farklı kablo üretimi yapan ve bunları farklı bölgelere dağıtan bir işletmenin ürettiği kablo türleri; PVC izoleli güç kablosu, silikon izoleli güç kablosu, halojensiz tesi- sat kablosu ve özel tasarım kablosu biçiminde olsun. Önceki ay “halojensiz tesisat kablo- sundan toplam ne kadar satıldığı” sorusuna cevap almak için, işlemsel veritabanlarında basit sorgulama yapmak yeterli olacaktır. Buna karşın her bir satış bölgesinde ne kadar halojensiz tesisat kablosu satıldığını öğrenmek ve hedeflenen satış miktarı ile gerçekleşen satış miktarı sonuçlarını karşılaştırmak daha karmaşık bir sorgu yapısı olacaktır. İkinci sorgu türüne cevap almak amacıyla OLAP sorgulama işleminin yapılması gerekecektir. Bu örnekte; ürünün ne olduğu, fiyatı, maliyeti, satış bölgesi, satış zamanı vb. verinin farklı boyutlarını temsil eder. Bu nedenle işletme yöneticisi Ağustos ayında İç Anadolu bölge- sinde ne kadar halojensiz tesisat kablosu satıldığını, bu miktarın bir önceki ay ile ve geçen yılki Ağustos ayı ile ve satış tahminleriyle karşılaştırmasının sonuçlarını öğrenmek için çok boyutlu veri analizine imkân sağlayan OLAP sistemini kullanabilecektir. OLAP, ver- diğimiz örnekten çok daha karışık veri analizi ve sorgulamalarına da çok hızlı bir sürede cevap verebilme olanağı sağlamaktadır. Şekil 1.3 yukarıda verdiğimiz örneğe ilişkin olarak ürün çeşitlerini, dağıtım bölgelerini, güncel satış miktarlarını ve tahmini satış miktarlarını temsil etmek için oluşturulan çok boyutlu veri modeline örnektir. Şekil 1.3 SATIŞ Çok Boyutlu Veri MİKTARLARI Modeli Örneği Tahmini satış Güncel satış PVC izoleli güç kablosu ÜRÜN Silikon izoleli güç kablosu ÇEŞİTLERİ Halojensiz tesisat kablosu Özel tasarım kablosu Marmara İç Anadolu Akdeniz DAĞITIM BÖLGELERİ Buraya kadar anlatılanlardan da görüldüğü üzere, veri analizi ve sorgulama konusun- da en basit işlem; işletmelerin işlemsel veritabanlarında yaptıkları basit sorgulamalardır. Daha karmaşık ikinci düzey sorgulamalar OLAP işlemleri ile gerçekleştirilir. OLAP ile elde edilemeyecek karmaşıklıktaki sorgulamalar ve sonuçlara ulaşmak ise veri madenci- liğinin konusudur. İşlemsel veritabanlarından yapılan sorgulamalar da OLAP ile yapılan 10 Veri Madenciliği sorgulamalar da var olan, bilinen, tahmin edilebilecek sonuçları ortaya koymaktadır. Veri madenciliği ise daha önceden bilinmeyen, tahmin bile edilemeyen bilgileri açığa çıkar- mayı amaçlar. Veri madenciliği, veriden Veri madenciliği kavramı için çeşitli tanımlar yapılmıştır. Bu tanımlardan bir kısmı örüntülerin çıkarılması amacıyla çeşitli algoritmaların aşağıda verildiği gibidir: uygulanmasıdır. Elde edilen Veri madenciliği, büyük miktardaki veri yığınları üzerinde analiz yaparak veriler ara- örüntü ve kurallar karar vermeye ve bu kararların sonuçlarını sında var olan ve geleceğin tahmin edilmesine yardımcı olacak anlamlı ve yararlı ilişki tahmin etmeye destek olacak ve kuralların bilgisayar yazılımları aracılığıyla aranması faaliyetleridir. Bu anlamda veri biçimde kullanılabilecektir. madenciliği, çok büyük miktardaki veriler arasındaki bağlantıları inceleyerek aralarındaki ilişkiyi ortaya çıkaran ve veritabanları içinde açıkça fark edilemeyen, gizli kalmış yararlı bilgilerin açığa çıkarılmasını sağlayan veri analizi tekniğidir. Veri madenciliği, çeşitli analiz araçlarını kullanarak veriler arasındaki örüntü (desen) ve ilişkileri keşfederek, bunları doğru tahminler yapmak için kullanan bir süreçtir. Veri madenciliğinin amacı, geçmiş faaliyetleri analiz ederek bu analizleri geleceğe yönelik tah- minlerde temel almak ve karar vermeye destek olacak modeller oluşturmada kullanmak- tır. Buna göre veri madenciliği, büyük miktarda veri içinden, gizli kalmış, değeri olan, kullanılabilir bilgileri açığa çıkarmak ve bu bilgileri özellikle stratejik kararlarda destek sağlayacak biçimde elde etmek amacıyla kullanılmaktadır. Veri madenciliği, veri analizi için, gelişmiş ve karmaşık araçlar kullanarak yığın veri kümeleri içinden daha önceden bilinmeyen olgu ve olayları keşfetmek ve veriler arasında- ki mantıklı ilişkileri ve kalıpları ortaya çıkarmak amacıyla yapılan çalışmalardır. Burada vurgulanması gereken önemli nokta, veri madenciliği ile elde edilecek bilginin daha önce- den bilinmeyen yeni keşfedilen olmasıdır. Önceden bilinmeyen bilgi, önceden tahmin bile edilemeyen bilgi anlamındadır. Bu anlamda veri madenciliği, tahmin edilen ya da farklı teknikler yardımıyla daha önceden ulaşılmış sonuçların doğruluğunu ispatlamak amacıy- la kullanılan bir araç değildir. Diğer tekniklerden temel farkı, daha önce düşünülmemiş hiç akla gelmemiş sonuçları ortaya çıkarmasıdır. Veri madenciliği, istatistiksel ve matematiksel tekniklerle birlikte örüntü tanıma tekno- lojilerini kullanarak çeşitli depolama ortamlarında kayıtlı bulunan veri yığınları üzerinde gerçekleştirilen elemeler sonucunda anlamlı yeni korelasyon, örüntü ve eğilimlerin keş- fedilmesi sürecidir. Yığın veri içinden anlamlı ilişkiler çıkarma ve yararlı bilgilere dönüştürme işlemine zaman içerisinde; bilgi çıkarımı, enformasyon keşfi, enformasyon hasadı, veri arkeolojisi, veri örüntü işleme, veri şablon işleme gibi farklı isimler verilmiştir. Aynı anlamda kulla- nılan veri madenciliği terimi ise çoğunlukla bilgisayar mühendisleri, istatistikçiler, veri analistleri ve yönetim bilgi sistemleri toplulukları tarafından tercih edilmektedir. Burada belirtilmesi gereken diğer bir nokta, veri madenciliği kavramı ile veritabanla- rında bilgi keşfi kavramının zaman zaman aynı anlamda kullanıldığıdır. Ancak bu doğru bir kullanım değildir. Çünkü veri madenciliği, veritabanlarında bilgi keşfi sürecinin yal- nızca bir adımıdır. Veri madenciliğinde, üzerinde sorgulama ve analiz yapılan verilerin yer aldığı veritabanı 1 nasıl adlandırılır, özellikleri nelerdir? VERİTABANLARINDA BİLGİ KEŞFİ SÜRECİ Veritabanlarında bilgi keşfi ifadesi ilk kez 1989 yılında “Veritabanlarında Bilgi Keşfi Ça- lışma Toplantısı”nda ortaya atılmıştır. Bu toplantıda; bilginin, veri keşfi sürecinin sonunda elde edilen ürün olduğu vurgulanmıştır. 1. Ünite - Temel Kavramlar 11 Veritabanlarında Bilgi Keşfi, veriden faydalı bilginin keşfedilmesi sürecinin tamamı- dır. Veri madenciliği ise bu sürecin bir adımı olup veriden örüntülerin belirlenmesi ve aktarımı için özel algoritmaların uygulanması işlemlerine karşılık gelmektedir. Veritaban- larında Bilgi Keşfi sürecinin adımları Şekil 1.4’teki gibi gösterilebilir. Şekil 1.4 Veritabanlarında Bilgi Keşfi Sürecinin Adımları Kaynak: Han ve Kamber, (2012), s.7. Model Değerleme ve Sunum Veri Örüntüler Madenciliği Veri Seçimi ve Dönüştürme Veri Temizleme ve Bütünleştirme Veritabanları Düz dosyalar Veritabanlarında Bilgi Keşfi sürecinde, işlemsel veritabanlarında depolanmış olan ve- rinin sorgulama ve analiz için uygun hâle getirilmesi işlemleri yürütülür. Veritabanlarında Bilgi Keşfi sürecinde izlenmesi gereken temel aşamalar aşağıdaki gibi sıralanabilir. 1. Amacın Tanımlanması 2. Veriler Üzerinde Ön İşlemlerin Yapılması 3. Modelin Kurulması ve Değerlendirilmesi 4. Modelin Kullanılması ve Yorumlanması 5. Modelin İzlenmesi Sıralanan bu aşamalara bütünsel olarak bakıldığında, veri madenciliği sürecinde; eri madenciliği öncesindeki işlemler eri madenciliği işlemleri eri madenciliği sonrasındaki işlemler biçiminde bir uygulamanın söz konusu olduğu görülebilir. 12 Veri Madenciliği Veri madenciliği öncesindeki işlemler; veri tabanlarında bilgi keşfi sürecinin ilk iki aşaması olan, amacın tanımlanması ve veriler üzerinde ön işlemlerin yapılması aşamala- rına karşılık gelmektedir. Veri madenciliği işlemlerinin kendisi, modelin kurulması ve değerlendirilmesi aşama- sında gerçekleştirilen faaliyetlerdir. Veri madenciliği sonrasındaki işlemler ise modelin kullanılması ve yorumlanması ile modelin izlenmesi aşamalarındaki işlemlerdir. Ünitenin izleyen kesiminde söz konusu bu aşamalara ilişkin bilgiler verilmiştir. Amacın Tanımlanması Bu aşamada, işletmenin ya da kurumun veri madenciliğini hangi amaca yönelik olarak gerçekleştirmek istediği belirlenir. Söz konusu amaç bir problemi ortadan kaldırmaya odaklanmış ve açık bir biçimde ifade edilmiş olmalıdır. Buna ek olarak, elde edilecek so- nuçların başarı düzeylerinin nasıl ölçüleceği de tanımlanmalıdır. Bu aşamada ayrıca, sü- reç sonunda yapılacak değerlendirme ve öngörülerin yanlış olması durumunda katlanıla- cak maliyetlere ve doğru olması durumunda elde edilecek kazanımlara ilişkin tahminlere de yer verilmelidir. Veriler Üzerinde Ön İşlemlerin Yapılması Veriler üzerinde ön işlemler yapılması, verilerin veri madenciliği için hazırlanması anla- mındadır. Veri madenciliği ile ulaşılması hedeflenen sonuçların kalitesi veritabanlarında yer alan verinin kalitesi ile yakından ilişkilidir. Bu nedenle veri madenciliği işlemleri ön- cesinde verilerin analize hazır hâle getirilmesi oldukça önemli bir aşamadır. Buna bağlı olarak veriler üzerinde yapılan ön işlemler, veri tabanlarında bilgi keşfi sürecinin en fazla zaman alan aşamasıdır. Bir sonraki aşama olan modelin kurulması aşamasında herhangi bir sorunun ortaya çıkmaması, veri üzerindeki ön işlemlerin ne kadar titizlikle yapıldığına bağlıdır. Ön işlemler aşamasında yeterli özenin gösterilmemesi, model kurma aşamasın- dan ön işlemler aşamasına tekrar tekrar geri dönülmesine ve verinin yeniden düzenlen- mesine neden olacaktır. Bu durum, ön işlemlerle verinin hazırlanması ve modelin kurul- ması aşamaları için harcanan enerji ve zamanın, bilgi keşfi sürecinin toplamı içinde büyük bir paya sahip olmasına neden olacaktır. Veriler üzerindeki ön işlemler genel olarak; erilerin toplanması ve birleştirilmesi erilerin temizlenmesi erilerin yeniden yapılandırılması biçiminde sınıflandırılabilir. Verilerin temizlenmesi aşamasında yapılan işlemler kendi içinde; kayıp veriler için yapılan işlemler ve gürültülü veriler için yapılan işlemler olarak ikiye ayrılabilir. Verilerin yeniden yapılandırılması ise kendi içinde; verilerin normalizasyonu, verilerin azaltılması ve verilerin dönüştürülmesi biçiminde sınıflandırılabilir. Bu sınıflandırmalar Şekil 1.5’te bir araya getirilmiştir. 1. Ünite - Temel Kavramlar 13 Şekil 1.5 Veriler Üzerinde Veriler Üzerinde Yapılan Ön İşlemler Yapılan Ön İşlemler (Verilerin Hazırlanması) Verilerin Toplanması ve Verilerin Verilerin Yeniden Birleştirilmesi Temizlenmesi Yapılandırılması Kayıp Veriler için Verilerin İşlem Yapılması Normalizasyonu Verilerdeki Gürültünün Verilerin Temizlenmesi Azaltılması Verilerin Dönüştürülmesi Verilerin Toplanması ve Birleştirilmesi Verilerin veri madenciliğine hazırlanabilmesi için yapılması gereken ilk şey doğal olarak verilerin belirlenmesidir. Bu yapılırken öncelikle tanımlanan amaca ve probleme uygun verilerin neler olduğu ve bu verilerin hangi kaynaklarda yer aldığı araştırılır. Bu belirle- me sonrası veriler bulundukları farklı kaynaklardan toplanır ve birleştirilir. Gerekli veri- lerin toplanmasında öncelikli olarak kurumun kendi veritabanı ve veri kaynaklarından yararlanılır. Daha önceden de belirtildiği üzere bu tür veriler iç kaynaklı verilerdir. Bunun yanı sıra, istatistiksel bilgiler, finansal raporlar, menkul kıymet değerleri gibi bilgilerin yer aldığı kamuya ait kurumsal veri tabanlarından veya veri pazarlayan farklı kuruluşların veri tabanlarından da yararlanılabilir. Örneklenen veri kaynakları ise dış veri kaynakları- dır. Verilerin hangi kaynaklardan, hangi koşullar altında ve hangi yöntemlerle toplandığı önemlidir. Verilerin Temizlenmesi Veritabanlarından alınan kayıtların bir kısmında, diğer kayıtlarda var olan bazı veriler eksik olabilir. Örneğin, işletme çalışanlarına ait kişisel bilgilerin tutulduğu kayıtlarda ço- Kayıp veri, veritabanlarındaki ğunluğun doğum tarihi yer alırken bazı çalışanlara ait kayıtlarda doğum tarihi verisi eksik kayıtlarda eksik olan verilerdir. olabilir. Müşteriler arasında yapılan bir araştırmada yaşını, kilosunu ya da gelirini belirt- Kayıp veriler çeşitli nedenlerden kaynaklanabilir; veri toplamada mek istemeyen müşteriler olabilir. Veritabanı kayıtları içindeki böylesi eksik veriler kayıp yanlış araçların kullanılması, veri olarak adlandırılır. Bunun yanı sıra kayıtlarda yer alan bir kısım veriler doğru ola- veri girişinde hata yapılması ya da veri toplama aşamasında mayacak kadar uç değerlerde, dolayısıyla yanlış girilmiş olabilir. Örneğin, doğum tarihi sorulara eksik cevap verilmesi bu 1974 olan bir kişi için bu değer 1074 olarak kaydedilmiş olabilir. 1074 değeri gibi aşırı uç nedenlerden bazılarıdır. değerler aykırı değer, bu şekildeki uç verilerin geneli de gürültülü veri olarak nitelendi- Veritabanlarında doğru olmayacak kadar uç değerler, aykırı değer rilir. Bunların dışında kayıtlarda yer alan bazı veriler (örneğin, olmayan bir ürün adı ya ya da sıra dışı değer olarak da stok numarası gibi) tamamıyla yanlış ya da anlamsız olabilir. Verilerin temizlenmesi tanımlanır. Bu şekildeki aykırı aşamasında dikkat edilmesi gereken diğer bir konu veriler arasındaki uyumsuzluktur. Veri değerler ya da farklı sebeplerle yanlış girilmiş değerler genel madenciliğinde kullanılacak verilerin farklı kaynaklardan toplanması, doğal olarak veri olarak gürültülü veri olarak tanımlanır. 14 Veri Madenciliği uyumsuzluklarına neden olabilecektir. Bu uyumsuzluklardan başlıcaları, verilerin farklı zaman dilimlerine ait olmaları, farklı ölçü birimleriyle temsil edilmeleri ya da farklı bi- çimlerde kodlanmalarıdır. Örneğin; bir veri tabanında cinsiyet özelliğinin E/K biçiminde, bir diğer veritabanında ise 0/1 biçiminde kodlanması veriler arasında uyumsuzluğa ne- den olacaktır. Dolayısıyla, toplanan verilerin birbirleriyle ne ölçüde uyumlu oldukları bu adımda incelenerek değerlendirilmeli, uyumsuz veriler belirlenerek gerekli düzenlemeler yapılmalıdır. Verilerin temizlenmesi, kayıp ya da eksik değerleri tamamlamak, aykırı değerleri be- lirleyerek gürültüyü ortadan kaldırmak ve verilerdeki tutarsızlıkları, uyumsuzlukları gi- dermek için kullanılan birçok yaklaşımı ve tekniği kapsar. İzleyen kesiminde bu yaklaşım- lardan bir kısmı hakkında bilgi verilmiştir. Kayıp verilerin neden olacağı olumsuzlukları ortadan kaldırmak amacıyla kullanılan yaklaşımlar: a. Kayıp veri içeren kaydı veri kümesinden çıkarmak: Bu yaklaşım, kayıp veri içeren kayıt sayısının toplam kayıt sayısı içinde çok küçük bir orana karşılık gelmesi ve kayıp verilerin sonuçlara önemsenmeyecek bir etki yapması durumunda kullanı- labilecek bir yaklaşımdır. Kayıp veri içeren kayıt sayısının çok olması durumunda, sonuçları olumsuz etkileyeceğinden bu yaklaşım önerilmez. b. Kayıp verileri tek tek yazmak: Veri kümesi küçük, kayıp verilere ulaşmak mümkün, yeterince zaman mevcut ve kayıp verilere mutlaka ihtiyaç duyuluyorsa bu yaklaşım kullanılır. Söz konusu bu durumların dışında bu yaklaşımı kullanmak gereksiz za- man kaybına neden olacaktır. c. Kayıp verilerin hepsi için aynı veriyi girmek: Örneğin, yapılan bir hane halkı araştır- masında bazı bireyler gelirlerini belirtmekten kaçınmış olabilir. Ya da bir işletme- nin müşterileri arasında yaptığı bir araştırmada bazı müşteriler doğum tarihi bilgi- sini yazmamış olabilir. Bu durumda gelir bilgisinin bulunmadığı tüm kayıtlar için, yok anlamında Y harfi, doğum tarihinin eksik olduğu tüm kayıtlar içinse, eksik anlamında E harfi kayıp veri yerine yazılabilir. Kayıp verilerin bu yaklaşımla gide- rilmesi farklı sonuçlar verebilir. Gelir bilgisinin Y olması ya da doğum tarihinin E olması belirleyici ya da ayırt edici bir özellikmiş gibi görünebilir. Diğer bir ifadeyle bu veriler kullanılan veri madenciliği algoritmasını yanıltabilir. Bunun tersine bu yaklaşım bazı durumlarda veri madenciliğinin gerçek amacına hizmet ederek giz- li bilgilerin keşfedilmesini de sağlayabilir. Örneğin, doğum tarihi girmemiş olan müşterilerin, en çok para harcadıkları ürünlerin yaşlanma karşıtı ürünler olduğu sonucu elde edilebilir. Kayıp verilerin aynı veri değeri ile temsil edilmesinde kayıp veriyi temsil etmek üzere sayısal bir değer de atanabilir. Örneğin, 9 rakamı veri girişi yapılmadığı anlamında kullanılabilir. Veri madenciliği algoritması bu değeri göz ardı ederek yok sayabilir ve analiz buna göre gerçekleştirilebilir. Burada dikkat edilmesi gereken bir nokta, ister sayısal ister alfabetik kodlama yapılsın kayıp veri- leri temsil için seçilen değerin, analizde anlamlı olacak (diğer verileri temsil eden) başka bir değere karşılık gelmediğinden emin olunmasıdır. d. Kayıp veri yerine tüm verilerin ortalama değerinin girilmesi: Örnek olarak ücret verisi eksik olan kayıtlar için, diğer kayıtlarda yer alan ücret verilerinin ortalaması yazılabilir. Ortalama değeri bulunurken tüm verilerin ortalaması yerine belirlenen bir sınıfın ortalamasınının alınması daha uygun olacaktır. Daha açıklayıcı olması açısından Tablo 1.2’de görülen bir muhasebe bürosu çalışanları kira bilgileri örnek verisi üzerinden devam edelim. 1. Ünite - Temel Kavramlar 15 Sıra No Çalışma Süresi Kira Miktarı Mahalle Tablo 1.2 Örnek Veri Kümesi 1 5 850 Yenibağlar 2 6 675 Emek 3 3 780 Alanönü 4 9 950 Alanönü 5 14 1250 Batıkent 6 9 Alanönü Tablo 1.2’de 6 sıra numarasına sahip Alanönü mahallesinde ikamet eden 9 yıllık çalışanın ödediği kira miktarı bilgisi elde edilememiş olsun. Bu kayıp veri için doğrudan aritmetik ortalama değeri bulunacak olursa verileri girilmiş olan diğer beş kişinin kira miktarları ortalaması hesaplanır. Bu değer, veri için 901 olarak hesaplanabilir. Bu yaklaşım yerine verileri kendi arasında sınıflayıp, sınıf ortalaması alma yoluna da gidilebilir. Bu durumda önce uygun sınıfın belirlenmesi gerekecektir. Sınıf olarak Alanönü mahallesinde ikamet eden çalışanlar seçilirse bu grupta yer alan iki çalışanın kira ortalama değeri 865 olacaktır. Hangi değerin kayıp veri için kullanılacağı kararı karar verici tarafından tespit edilecektir. e. Kayıtlarda yer alan diğer değişkenler yardımıyla kayıp verilerin tahmin edilmesi: Veri kümesinde yer alan ve eksik olmayan kayıtlardaki veriler kullanılarak kayıp veriler tahmin edilebilir. Kayıp verilerin tahmininde, regresyon analizi, zaman se- rileri analizi, Bayesyen sınıflandırma, karar ağaçları, maksimum beklenti vb. biçi- minde sıralanan teknik ya da yöntemler kullanılabilir. Verilerdeki gürültünün temizlenmesi amacıyla kullanılan yaklaşımlar ise aşağıdaki gibidir: a. Bölümleme yöntemiyle gürültünün temizlenmesi: Bu yöntemde üzerinde analiz ya- pılacak veriler önce küçükten büyüğe doğru sıralanır. Daha sonra veriler eşit sayı- da eleman içeren gruplara bölünür. Her grupta bulunan verilerin ortalama değeri ya da medyan değeri bulunarak grupta yer alan tüm veriler ortalama ya da medyan değeri ile değiştirilerek düzeltme yapılır. Örneğin; 24, 18, 7, 27, 31, 24, 11, 37, 28 biçimindeki bir veri seti üzerinde bölümleme yöntemiyle düzeltme yapmak isten- diğinde, öncelikle verilerin küçükten büyüğe doğru sıralanması gerekir. Sıralı veri 7, 11, 18, 24, 24, 27, 28, 31, 37 olacaktır. Veri eşit sayıda birim içerecek biçimde gruplara bölündüğünde izleyen yapı oluşacaktır. Bölüm 1: 7 11 18 Bölüm 2: 24 24 27 Bölüm 3: 28 31 37 Bu aşamada ilgili bölümlendirmeye göre her grup ortalaması tespit edilerek birim- lerin gerçek değerleri yerine kullanılabilir. Bu durumda izleyen veri yapısı ortaya çıkacaktır. Bölüm 1: 12 12 12 Bölüm 2: 25 25 25 Bölüm 3: 32 32 32 Buradan görüldüğü üzere her grupta yer alan orijinal değerler o grubun ortalama değeri ile değiştirilerek düzeltme sağlanmıştır (Verilerin düzeltilmesi amacıyla or- talama değeri yerine medyan değerinin kullanımı da tercih edilebilirdi). 16 Veri Madenciliği b. Sınır değerleri kullanılarak gürültünün temizlenmesi: Bu yöntemde de veriler önce- ki yöntemde olduğu gibi küçükten büyüğe doğru sıralanarak eşit bölümlere ayrılır. Daha sonra, her bölümün en küçük ve en büyük değerli verileri sını

Use Quizgecko on...
Browser
Browser