Veri Madenciliği 1 – Veri Madenciliğine Giriş 101

Motivasyon: “Necessity is the Mother of Invention”

Otomatize edilmiş veri toplama araçları ve “olgunlaşmış” veri tabanları; veri tabanlarında, veri ambarlarında ve diğer bilgi depolama alanlarında depolanmış durumda olan çok büyük miktarda veriye sebep oldu. Özellikle dijital medyada kaydedilen ve saklanan verinin boyutu olağan üstü bir şekilde arttı ve git gide de artıyor. Yılda 2 exabite(10^18)’ın üzerinde veri üretiyoruz. Sabit bir fiyattan depolama kapasitesi her 9 ayda bir ikiye katlanıyor. Verinin içinde boğuluyoruz ama bilgi (knowledge) için can atıyoruz.

W.H. Auden’in dediği gibi:

“The greatest problem of today is how to teach people to ignore the irrelevant, how to refuse to know things, before they are suffocated. For too many facts are as bad as none at all.”

Çözüm ise veri ambarı (data warehousing) ve veri madenciliği (data mining).

 1                                                    2

Bazı Büyük Veri (Big Data) Örnekleri

Avrupa’da Very Long Baseline Interferomerty (VLBI) olarak adlandırılan ve radyo astronomide kullanılan bir gök bilimsel interferometre var. VLBI astronomik bir radyo(sinyal) kaynağından gelen sinyalleri, mesela quasar (galaksi dışındaki yıldızımsı gök cisimleri), dünyadaki birden çok radyo teleskop aracılığıyla topluyor ve kaydediyor. VLBI’de kullanılan toplam 16 teleskop var ve bu teleskopların her biri 1 Gigabit/saniye gibi son derece yüksek hızda ve boyutlarda veri üretiyor. Bu verinin depolanması ve analiz edilmesi ne kadar büyük bir problem değil mi?

AT&T her gün milyarlarca arama isteği işliyor. Bu o kadar çok veriye sebep oluyor ki bütün veriler depolanamıyor ve depolanamadığı için de analizler “akan veri”(streaming data) üzerinden yapılmak zorunda. (on the fly).

Alexa internet arşivinde 7 yıllık veri bulunuyor ve bu verinin boyutu 500 Terabyte civarlarında.

Google hergün 4 milyarın üzerinde arama isteğini alıyor ve bu da bir sürü 100 Terabyte demek oluyor.

Internat Archive (www.archive.org) neredeyse 300 terabytle’lık veriye sahip.

Dünyadaki veritabanlarında depolanan veri miktarı her 20 ayda bir iki katına çıkıyor. Diğer büyüme oranları ise bundan daha fazla. Bu verilerden çok küçük bir miktarı insanlar tarafından inceleniyor. Bu yüzden böylesine devasa verilerden anlamlar çıkarmak için Knowledge Discovery’ye ihtiyaç duyuluyor.

Jerome Friedman diyor ki:

“Verinin boyutu her 10 katına çıktığında onu analiz etme biçimimizi tamamen yeniden şekillendirmek zorundayız”

Veri Madenciliği

Veri madenciliği veri tabanı sorgularından (database query) farklıdır. Geleneksel analizde, “X ürününün satışları Kasım ayında arttı mı?”, “X ürününün satışları Y ürününde bir promosyondan dolayı düştü mü?” gibi analizler yaparken veri madenciliğinde ise “X ürününün satışını belirleyen faktörler nelerdir?” gibi daha karmaşık ve sonuç odaklı analizler yaparsınız.

3

  Aristotle Onansis: “The key in business is to know something that nobody else knows.”

 

 

        Sir Isaiah Berlin: “To understand is to perceive patterns.4

Örnek Bir Uygulama

Diyelim ki X kişisi Amazon.com’dan bir kitap aldı.

Görev: Bu kişiye almaya yatkın olabileceği başka kitaplar öner.

Amazon kitap satın alımları üzerinden bir kümeleme (clustering) işlemi yapıyor:

“Advance in Knowledge Discovery and Data Mining” kitabını alan müşteriler ayrıca “Data Mining: Practical Machine Learning Tools and Techniques with Java Implementations” kitabını da aldı.

Öneri sistemleri son derece başarılıdır.

5

Veri Madenciliği Nedir?

Veri tabanında bilgi keşfi (Knowledge Discovery in Databases-KDD) verideki:

  • üstü kapalı (saklı)
  • geçerli (bulunan örüntüler yeni veriler üzerinde de geçerli olacak şekilde)
  • özgün (beklenen değerlere kıyasla)
  • potansiyel olarak kullanışlı (başarılı aksiyonlara neden olabilecek)
  • anlaşılabilir (insanlar açısından)

örüntülerin (pattern) bulunması ve tanımlanması olarak tanımlanabilecek, basit olmayan bir süreçtir.

Veri madenciliği, KDD’nin yalnızca bir adımıdır.

Veri madenciliği için bazı alternatif terimler kullanılabilir:

  • Knowledge discovery (mining) in databases (KDD),
  • Knowledge extraction
  • Data/patterns analysis
  • Data archeology
  • Data dredging
  • Information harvesting
  • Business intellingece, etc.

 

KDD Süreci

Veri Madenciliği ve Bilgi Keşfi (Knowledge Discovery – KD) süreci bazı adımlardan oluşur. Bu adımlar şu şekilde özetlenebilir:

  • Veri Temizliği (data cleaning): eksik değerlerin, gürültülü(noisy) verinin ve tutarsız(çelişkili) verinin temizlenmesi sürecidir.
  • Veri Entegrasyonu (Data integration): Birden fazla veri kaynağından alınan verilerin birleştirilmesi sürecidir.
  • Veri Seçimi (data selection): Yapılacak olan analize uygun(alakalı) verilerin seçilmesi sürecidir.
  • Veri Dönüşümü (data transformation): Veriyi toplama (örneğin günlük satışları haftalık ya da aylık satışlara dönüştürme), veya genelleştirme (sokağı şehire; yaşı genç, orta, ve yaşlıya dönüştürme) gibi işlemler sürecidir.
  • Veri Madenciliği (data mining): Elde edilen veriye akıllı algoritmalar uygulayarak örüntüleri (patterns) keşfetme sürecidir.
  • Örüntü Değerlendirme (pattern evaluation): Elde edilen örüntülerin değerlendirilmesi ve hipotezlerin geçerliliğinin test edilmesi sürecidir.
  • Bilgi Sunumu (knowledge presentation): Bulunan bilgileri (knowledge) görselleştirme (visualisation) ve sunum (representation) tekniklerini kullanarak kullanıcılara sunma sürecidir.

6

Bir KDD sürecinin %60-80 gibi bir dilimi yalnızca veriyi hazırlamak için harcanırken geriye kalan %20’lik kısmı veri madenciliği için kullanılır.

Bir veri madenciliği projesi daima verinin geleneksel sorgulama araçları (traditional query tools) ile analizinden başlamalıdır. İlginç bilgilerin %80’i SQL kullanılarak çıkartılabilir. Örneğin “Her ay kaç tane işlem 15 numaralı ürünü içeriyor?” ve “Mertricks tarafından alınan bütün ürünleri bana göster” gibi. Geriye kalan %20’lik kısmının keşfi ise ileri tekniklerin kullanımını gerektirir. Örneğin “hangi ürünler sık olarak birlikte alınıyor?” ve “müşterilerimi nasıl sınıflandırmalıyım ki gelecekte kredi başvurusu yaparlarsa kime kredi verip kime vermemem gerektiğini bileyim” gibi.

İstatistik, Otomatik Öğrenme (Machine Learning) ve Veri Madenciliği

İstatistik daha çok teori odaklıdır ve hipotezlerin test edilmesine (hypotheses testing) odaklanır.

Otomatik Öğrenme, daha deneyimseldir (heuristic) ve öğrenme ajanının performansını iyileştirmeye odaklanır. Aynı zamanda robotik (robotics) ve gerçek zamanlı öğrenme (real-time learning) gibi alanları da kapsar ama bu alanlar veri madenciliği dışındaki alanlarıdır.

Veri madenciliği ve bilgi keşfi, teoriyi(istatistik) ve deneyimi(otomatik öğrenme) birleştirir ve bilgi keşfinin bütün süreçleri olan veri temizliği, öğrenme, entegrasyon ve görselleştirme alanlarını içerir.

Bu kavramların arasındaki sınırlar son derece belirsizdir.

Veri madenciliği bazen “ikincil veri analizi” olarak adlandırılır. Veri madenciliğinde kullanılan algoritmaların çoğu istatistikçiler ve veri madencileri tarafından ortaklaşa kullanılır. Veri madenciliği örüntü tespitini (pattern detection) hedeflerken istatistik bulunan örüntülerin gerçekliğini belirlemeyi hedefler. Örneğin, aynı hastalıktan muzdarip olan insanlar kümesinin bulunması, fakat bu hastalığın tamamen rastgele olup olmadığının tespiti.

Rhine Paradoksu

Rhine Paradoksu bir bilimsel araştırmanın nasıl yapılmaması gerektiğinin harika bir örneği.

David Rhine bir parapsikologdu. 1950 yılında bir hipotez geliştirdi ve hipotezi de şuydu: Bazı insanlar 6. Hisse (Extra-Sensory Percetion-ESP) sahiptir.

Bunu test etmek için bir deney tasarladı ve deneklere 10 adet kartın arka yüzlerinde kırmızı mı yoksa mavi renk mi olduğunu tahmin etmelerini istedi. Deneyinin sonucunda gördü ki neredeyse her 1000 kişiden 1’i 6. hisse sahipti, çünkü 10 kartın 10’unun da rengini doğru bilmişti!

Daha sonra bu testi geçen insanlara 6. Hislerinin olduğunu söyledi ve onları tekrar test etmek için farklı bir deneye davet etti. Fakat bu sefer fark etti ki bu deneyde deneklerin neredeyse hepsi 6. Hislerini kaybetmişti. Ve testi nasıl mı sonuçlandırdı?

“İnsanlara 6. Hisleri olduğunu söylememelisiniz; çünkü bu 6. Hislerini kaybetmelerine neden oluyor.”

Peki gerçekte ne oldu?

Kırmızı veya mavi renklerden oluşan 10 kartın tam olaram 1024(2^10) kombinasyonu vardır. Bu yüzden her 1000 kişiden 1’inin 10 kartın rengini doğru tahmin etme olasılığı 1000/1024 = 0.98 yani %98’dir! Sanırım daha fazla açıklamaya gerek yok 🙂

Veri Madenciliği Uygulamaları

Pazar analizi ve yönetimi

  • Hedef kitle seçimi, müşteri ilişkileri yönetimi, pazar basket analizi, çapraz satış, pazar segmentasyonu, vb.
  • Aynı karakteristiklere sahip olan (örneğin ilgi alanı, gelir seviyesi, harcama alışkanlıkları, vs.) müşterileri bulma ve kümeleme
  • Zaman boyunca müşterilerin satın alma örüntülerini (purchasing pattern) belirleme

Risk analizi ve yönetimi

  • Tahminleme (forecasting), müşteri tutumu (customer retention), kalite kontrolü, rekabet analizi, kredi puanlama

Sahtekarlık tespiti ve yönetimi

Geçmişte gerçekleştirilen sahtekarlık işlemlerini kullanarak model geliştirme ve belirli davranışlarda bulunan müşterileri önceden tahminleme.

  • Araba sigortası: sigorta parası almak için “sahte olarak” kaza yapan insanların tespiti
  • Kara para aklama: şüpheli para transferlerini tespit etme
  • Telefon araması modeli: aramanın hedefi, süresi, günü, saati, vs. Beklenen normlardan sapan örüntülerin analizi.

British Telecom’un başına bununla ilgili bir olay gelmiş. Olayda, belirli kişilerden oluşan bir takım grup sürekli mobil telefonlarından grup içindeki kişileri arayarak birkaç milyon dolarlık bir kaçakçılık gerçekleştirmişler. Mesela, hapisanedeki mahkumlardan biri dışarıdaki bir arkadaşına terk edilmiş bir ev için telefon hattı kurdurtuyor. Aramalar mahkumun 3 eyalet ötedeki kız arkadaşına yönlendiriliyor. Bu sayede telefon şirketi bunu 90 gün sonra fark edinceye kadar bedava telefon görüşmesi yapıyorlar.

Veri Madenciliğinin Görevleri

Burada veri madenciliğinin görevlerinden kısaca bahsedeceğim. Çok ayrıntıya inmiyorum çünkü gelecek yazılarda hepsini ayrıntılı olarak ele alacağım.

Birliktelik (association)

Karşılıklı ilişki (correlation) ve nedensellik (causality)

Çok boyutlu veya tek boyutlu birlikteliklerin tespit edilmesi. Örneğin;

yaş(X,”20..29″) ^ gelir(X,”20..29K”) –> satın_alır(X, “PC”)
[support = %2, confidence = %60]*

veya

satın_alır(T, “bilgisayar”) –> satın_alır(x, “software”)
[support = %1, confidence = %75]*

*support ve confidence kavramları daha sonraki yazılarda açıklanacaktır.

Sınıflandırma (classification) ve Tahminleme (prediction)

Sınıfları veya konseptleri tanımlayan ve ayrıştıran modellerin(fonksiyonları) bulunması. Örneğin, iklime göre ülkeleri sınıflandırma, kilometre başına yakıt tüketimine göre arabaları sınıflandırma, vb.

Sunum: karar ağacı (decision tree), sınıflandırma kuralı, yapay sinir ağları (neural network)

Tahminleme: bazı bilinmeyen veya eksik olan sayısal verilerin tahminlenmesi.

Aşağıdaki tablo bir “öğretici küme” (training set) örneğini temsil ediyor. Bu veri üzerinde karar ağacı sınıflandırma algoritmasını uyguladığımızı düşünelim.

8

Elde edeceğimiz sonuç aşağıdaki gibi bir sonuç olacak. Yani aşağıdaki sonuçlar diyor ki yaş faktörü bilgisayar alınmasındaki en önemli faktör. Yaşı 31..40 arasında olanların hepsi bilgisayar alıyor. Yaşı 30’dan küçük olan insanlar için ikinci bir ayrım yapılıyor ve öğrenci olup olmadığı sorgulanıyor. Eğer öğrenciyse bilgisayar alıyor; öğrenci değilse bilgisayar almıyor. Yaşı 40’tan büyük olan insanlar ise kredi derecelendirmelerine göre ayrıma uğratılıyor. Kredi derecesi mükemmel olanlar bilgisayar almazken normal düzeyde olanlar bilgisayar alıyor.

7

Küme Analizi (Cluster analysis)

Sınıflandırma’nın aksine küme analizinde kümelerin etiketleri (label) bilinmiyor. Küme analizi genellikle sınıfların belirlenmesi ve tanımlanması için kullanılıyor. Kümeleme (clustering) işlemi şu prensip ile çalışıyor: bir sınıf (class) içindeki benzerlikleri maksimize et ve sınıflar arasındaki benzerliği minimize et.9

 

Aykırı Gözlem (Outlier) Tespiti   

Verinin genel davranışına uymayan örneklere aykırı gözlem (outlier) adı veriliyor. Bunlar gürültü (noise) veya istisna (exception) olarak düşünülebilir; fakat sahtekarlık gibi nadir olayların (aykırılıkların) analizinde oldukça kullanışlıdırlar.

10628591_10152636063464277_8277957579391294586_n

Trend ve değişim (evrim, evolution) Analizi

Trend ve sapma analizleri: regresyon analizi (regression analysis)

Sıraları örüntü madenciliği (sequential pattern mining), dönemsellik analizi

Benzerlik tabanlı analiz

Görselleştirmenin Gücü

Tüm işlemler sonucu elde ettiğimiz sonuçları görselleştirmemiz gerekmektedir. Aşağıda görselleştirmenin birkaç güzel örneğini görebilirsiniz.

11

12

13

10

Kaynaklar:

*Data Mining: Concepts and Techniques. Jiawei Han and Micheline Kamber. Morgan Kaufmann Publishers
*Data Mining: Practical Machine learning tools with JAVA implementations. Ian H. Witten and Eibe Frank. Morgan Kaufmann Publishers

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s