Veri madenciliği – Giris

Veri Madenciliği Nedir?

Bilgisayar biliminde, ham verilerin faydalı bilgilere dönüştürülmesi sürecidir. Bilgi keşfi olarak da adlandırdığımız, veri madenciliği, büyük hacimli verilerde ilginç ve kullanışlı kalıpları ve ilişkileri keşfetme yöntemidir.

Makine öğrenimi, istatistik, yapay zeka ve veritabanı teknolojilerini kullanan ve bunların araçlarını birleştiren çok disiplinli bir beceridir.

Veri madenciliği, iş dünyasında (sigorta, bankacılık, perakende), bilim araştırmalarında (astronomi, ilaç) ve devlet güvenliğinde (suçluların ve teröristlerin tespiti) yaygın olarak kullanılmaktadır.

 

Veri Madenciliği Uygulama Süreci

İş anlayışı:

Bu aşamada, iş ve veri madenciliği hedefleri belirlenir.

  • Öncelikle, iş ve müşteri hedeflerini anlamanız gerekir. Müşterinizin ne istediğini tanımlamanız gerekir (çoğu zaman kendileri bile bilmezler)
  • Mevcut veri madenciliği senaryosunun stokunu alın. Değerlendirmenizde kaynaklar, varsayım, kısıtlamalar ve diğer önemli faktörleri alın
  • İş hedeflerini ve mevcut senaryoyu kullanarak, veri madenciliği hedeflerinizi tanımlayın
  • İyi bir veri madenciliği planı çok detaylıdır ve hem iş hem de veri madenciliği hedeflerini gerçekleştirmek için geliştirilmelidir

Veri anlayışı:

Bu aşamada, veri madenciliği hedeflerine uygun olup olmadığını kontrol etmek için veri üzerinde uygunluk kontrolü yapılır.

  • İlk olarak, veriler kuruluşta bulunan birden fazla veri kaynağından toplanır.
  • Bu veri kaynakları, birden çok veritabanını, tekdüze dosyaları veya veri küplerini içerebilir. Veri Entegrasyonu sürecinde nesne eşleştirme ve şema entegrasyonu gibi sorunlar ortaya çıkabilir. Çeşitli kaynaklardan gelen verilerin eşleşmesi kolayca mümkün olmayan oldukça karmaşık ve zor bir süreçtir. Örneğin, tablo A must_no adında bir giriş içerirken, başka bir B tablosu must-id adında bir giriş içerebilir.
  • Bu nedenle, bu iki nesnenin de aynı değere sahip olup olmadıklarını garanti etmek oldukça zordur. Burada, veri entegrasyon sürecindeki hataları azaltmak için Meta veri (Meta veri, diğer veriler hakkında bilgi sağlayan “veri [bilgi]” dir.) kullanılmalıdır.
  • Bir sonraki adım eldeki verilerin özelliklerini aramaktır. Verileri araştırmanın iyi bir yolu, sorgulama, raporlama ve görselleştirme araçlarını kullanarak veri madenciliği sorularına (iş aşamasında kararlaştırılmış) cevap vermektir.
  • Sorgu sonuçlarına dayanarak, veri kalitesi belirlenmelidir. Eğer eksik veri varsa kazanılmalıdır.

Veri Hazırlama:

Bu aşamada, veriler üretime hazır hale getirilir. Veri hazırlama süreci, projenin yaklaşık % 90’ını tüketir.

Farklı kaynaklardan elde edilen veriler seçilmeli, temizlenmeli, dönüştürülmeli, formatlanmalı, anonim hale getirilmeli ve oluşturulmalıdır (gerekirse).

Veri temizleme, rahatsız edici verileri düzelterek ve eksik değerleri doldurarak verileri “temizlemeye” yönelik bir işlemdir.

Örneğin, müşteri demografisi profili için yaş verileri eksik ise doldurulmalıdır. Bazı durumlarda veri aykırı olabilir. Örneğin, yaş 300 değerini almıştır. Veriler tutarsız olabilir; örneğin, müşterinin adı farklı tablolarda farklıdır.

Veri dönüştürme işlemleri, verileri veri madenciliğinde yararlı hale getirmek için değiştirir. Aşağıdaki dönüşüm uygulanabilir

Veri dönüşümü:

Veri dönüştürme operasyonları veri madenciliği sürecinin başarısına katkıda bulunacaktır.

Yumuşatma: Rahatsız edici verileri çıkarmaya yardımcı olur.

Toplama:  Özet veya toplama işlemleri verilere uygulanır. Yani, haftalık satış verileri aylık ve yıllık toplamı hesaplamak için toplanır.

Genelleştirme: Bu adımda, düşük düzeydeki veriler, kavram hiyerarşilerinin yardımıyla üst düzey kavramlarla değiştirilir. Örneğin, ilçe şehir ile değiştirilir.

Normalleştirme/Standardizasyon: Standardizasyon ya da normalleşmenin amacı, bütün değerler kümesinin belirli bir özelliğe sahip olmasını sağlamaktır. Nitelik verileri aşağı veya yukarı doğru ölçeklendiğinde normalleştirme/standardizasyon gerçekleştirilir. Öznitelik verileri -1.0 ila 1.0, 0.0 ila 1.0 gibi küçük bir aralığa düşecek şekilde ölçeklenir.

Öznitelik yapısı: Yeni nitelikler varolan özniteliklerden oluşturulmuş ve büyük boyutlu verilerde yapının doğruluğunu artırmak ve anlaşılmasına yardımcı olmak için eklenmiştir. Öznitelik yapısına göre eksik bilgiler keşfedebilir.

Modelleme:

Bu aşamada, veri modellerini belirlemek için matematiksel modeller kullanılır.

  •  İş hedeflerine göre hazırlanan veri seti için uygun modelleme teknikleri seçilir
  •  Modelin kalitesini ve geçerliliğini sınamak için bir senaryo oluşturulur
  •  Model hazırlanan veri kümesinde çalıştırılır
  •  Sonuçlar, modelin veri madenciliği hedeflerini karşılayabildiğinden emin olmak için tüm paydaşlar, ilgili kişiler tarafından değerlendirilir.

Değerlendirme:

Bu aşamada, tanımlanan modeller iş hedeflerine göre değerlendirilmektedir.

  • Veri madenciliği modeli tarafından oluşturulan sonuçlar, iş hedeflerine göre değerlendirilir
  • İş ve veri madenciliği hedeflerini belirlemek yinelemeli bir süreçtir. Aslında, işi anlamaya çalışırken, yeni iş gereksinimleri veri madenciliği nedeniyle ortaya çıkabilir.
  • Modeli dağıtım veya yayma  aşamasına taşımak için bir git(go) veya gitme(no-go) kararı alınır

Dağıtım/Yayılma:

Dağıtım aşamasında, veri madenciliği keşiflerinizi günlük iş operasyonlarına taşıyorsunuz.

  • Veri madenciliği sürecinde ortaya çıkan enformasyon veya bilgi, teknik olmayan paydaşlar için anlaşılması kolay olmalıdır
  • Veri madenciliği keşiflerinin taşınması, bakımı ve izlenmesi için ayrıntılı bir dağıtım planı oluşturulur
  • Proje süresince öğrenilen dersler ve önemli deneyimlerle nihai bir proje raporu oluşturulur. Bu, kuruluşun iş politikasını geliştirmesine yardımcı olur.

Veri madenciliği teknikleri:

Veri madenciliği teknikleri, matematik, sibernetik, genetik ve pazarlama gibi birçok araştırma alanında kullanılmaktadır. Bu teknikler verimlilik sağlamak ve müşteri davranışlarını tahmin etmek için bir araç iken, doğru kullanıldığında, bir işletmeyi öngörü analiziyle rekabette öne çıkarabilir.

Sınıflandırma: Sınıflandırma, çeşitli özellikleri birlikte algılanabilir kategorilere toplamamızı sağlayan, daha fazla sonuç çıkarmaya veya daha sonra da kullanabilir bazı işlevlere hizmet eden karmaşık veri madenciliği tekniğidir. Belirli bir etiketlenmemiş nokta için bir sınıf etiketinin tahmin edilmesi görevini ifade eder. Kısaca, veri sınıflandırması, en etkin ve verimli kullanımı için veriyi kategorilere ayırma sürecidir. Bu analiz, veriler ve meta veriler hakkında önemli ve ilgili bilgileri almak için kullanılır. Örneğin, farklı özellikleri (koltuk sayısı, araba şekli, direksiyon gibi) tanımlayarak otomobilleri farklı tiplerde (sedan, 4×4, üstü açılabilir gibi) kolayca sınıflandırabilirsiniz. Yeni bir araba verildiğinde, öznitelikleri bilinen tanımınızla karşılaştırarak bunu belirli bir sınıfa dahil edebilirsiniz.

Ek olarak, sınıflandırmayı başka tekniklere ya da başka tekniklerin sonucu olarak kullanabilirsiniz. Örneğin, bir sınıflandırmayı belirlemek için karar ağaçlarını kullanabilirsiniz. Kümeleme de, kümeleri tanımlamak için farklı sınıflandırmalardaki ortak özellikleri kullanmanıza izin verir.

Bu teknikte iki ana süreç vardır:

Öğrenme – Bu süreçte veriler sınıflandırma algoritması ile analiz edilir.
Sınıflandırma – Bu süreçte veriler sınıflandırma kurallarının hassaslığını ölçmek için kullanılır.

Farklı alternatif sınıflandırma modelleri de vardır;

  • Yakın komşu Sınıflandırması
  • Karar ağaçları İndüksiyonu ile sınıflandırma
  • Naive Bayes Sınıflandırması
  • Bayesian Sınıflandırması
  • Nöral ağlar
  • Destek vektör makineleri (SVM)
  • Birleştirmeye dayalı sınıflandırma
  • Derin öğrenme

 Bunları biraz detaylandıralım;

  • Sınıflandırma için kullanılabilecek en basit karar prosedürlerinden biri en yakın komşu (NN) kuralıdır. En yakın komşusunun kategorisine göre bir örnek sınıflandırır. Büyük örnekler söz konusu olduğunda, bu kuralın hata olasılığının iki katından daha az olan bir hata olasılığı olduğu gösterilebilir – dolayısıyla herhangi bir diğer karar kuralına kıyasla hata olasılığı iki katından daha azdır. En yakın komşu tabanlı sınıflandırıcılar, bir test desenini sınıflandırmak için eğitim setinde mevcut olan kalıpların bazılarını veya tamamını kullanır. Bu sınıflandırıcılar temel olarak test modeli ile eğitim setindeki her model arasındaki benzerliği bulmaya yarar.
  • İndüksiyon, genel bir kural veya sonuca ulaşmak için bireysel fikir veya olguları kullandığımız bir akıl yürütme yöntemidir. Aşağıda karar ağaçları ile ilgili detaylı bilgi bulabilirsiniz. Burada indüksiyon algoritmasından bahsedelim.
    • Algoritma, bir dizi C eğitim örneği üzerinde çalışır.
    • C’deki tüm örnekler P sınıfında ise, P düğümünü oluştur ve durur, aksi takdirde F özelliğini veya niteliğini seçer ve bir karar düğümü oluştur.
    • C’deki eğitim örneklerini V değerlerine göre alt kümelere ayırır.
    • Algoritma, C’nin alt kümelerinin her birine yinelemeli olarak uygular.
  • Aşağıdaki gibi örnek verimiz olsun:
  • boyut: küçük orta büyük
    renk : kırmızı mavi yeşil
    şekil : tuğla takoz küre sütun

    %% evet
    orta mavi tuğla
    küçük kırmızı küre
    Büyük green sütun
    Büyük green küre

    %% hayır
    küçük kırmızı takoz
    büyük kırmızı takoz
    Büyük kırmızı sütun
  • Bu örnekte, üç özellik veya öznitelik (boyut, renk ve şekil) bakımından tanımlanan 7 örnek vardır ve örnekler %% evet ve %% hayır olarak iki sınıfa ayrılır.Bu kolayca iç içe bir Eğer(if) deyimi olarak ifade edilebilir
    if (şekil == takoz)
           return hayır;
    if (şekil == tuğla)
           return evet;
    if (şekil == sütun)
    {
           if (renk == red)
                   return hayır;
           if (renk == green)
                   return evet;
    }
    if (şekil == küre)
           return evet;
  • Bayes sınıflayıcılar olasılıklı istatistiksel sınıflandırıcılardır. Belirli bir örneğin belirli bir sınıfa ait olma olasılığı gibi sınıf üyelik olasılıklarını tahmin edebilirler. Bayes sınıflayıcısı Bayes teoremini temel alır.
  • Naive Bayesian sınıflandırıcıları, belirli bir sınıftaki bir özellik değerinin etkisinin diğer özniteliklerin değerlerinden bağımsız olduğunu varsayar. Bu varsayım, sınıf koşullu bağımsızlık olarak adlandırılır. Söz konusu hesaplamayı basitleştirmek için yapılır ve bu anlamda “naif” olarak kabul edilir.
  • Nöral ağları bilgi işleme için bir beyin metaforunu temsil eder. Bu modeller, beynin aslında nasıl çalıştığının bir kopyası gibidirler. Nöral ağların, veriden “öğrenmesi”, parametrik olmayan doğası (yani, katı varsayımları olmayan) ve genelleştirebilme yetenekleri nedeniyle pek çok tahmin uygulamalarında ve iş sınıflandırma uygulamalarında çok ümit verici sistemler olduğu görülmüştür. Sinirsel hesaplama, makine öğrenimi için bir model tanıma metodolojisini ifade eder. Nöral bilgi işlemden ortaya çıkan modele genellikle yapay bir nöral ağı (YSA-NN) veya bir Nöral ağ denir. Nöral ağları birçok işletmede örüntü tanıma, tahmin, tahmin ve sınıflandırma uygulamalarında kullanılmıştır. Nöral ağ veri madenciliğine ait herhangi bir araç kitinin önemli bir bileşenidir. 

 

Beyinde nöron

 

  • Vladimir Vapnik ve AT&T Bell Laboratuvarındaki çalışma arkadaşları tarafından geliştirilen Destek Vektör Makinesi (SVM), regresyon ve sınıflandırma problemleri için kernel bazlı fonksiyonların lineer kombinasyonunu tahmin için kullanan güçlü bir denetimli öğrenme metodudur. Telekom ile birlikte bankacılık ve sigortacılıkta riskli gruptaki müşterilerin tahmin edilmesi, tıpta hastalık teşhisi ve belirli bir hastalık için ilacın etkilerinin belirlenmesi, biyolojide canlı türlerinin sınıflandırılmasında, sosyal medya ve e-posta uygulamalarinda spamlerin saptanması, endüstriyel üretim sistemlerinde ortaya çıkan kusurlu ürünlerin belirlenmesi gibi alanlarda sınıflandırma problemleriyle sıkça karşılaşılıyor. Bu problemleri destek vektör makinesi ile yapı riskini en aza indirerek çözebilmek mümkündür. Destek vektör makinesi, diğer geleneksel sınıflandırma ve tahmin teknikleri üzerinde birçok avantajı olan güçlü bir tahmin tekniğidir. En önemli avantajlardan biri, hesaplama yaparken sorunun çözümünün veri kümesinin küçük bir alt kümesini kullanmasıdır. SVM, eğitim hatasını en aza indirgemek yerine genelleştirme hatasının üst sınırını en aza indirmeyi amaçlar. Aşağıdaki şekil, destek vektor makinesinde iki veri kümesini ayıran en iyi hiper düzlemi göstermektedir. Hiper düzlemin yakınındaki vektörlere Destek Vektörleri (SVs) denir.
    Destek vektörleri, hiper düzleme en yakın veri noktalarıdır, çıkarıldıklarında, bölünen hiper düzlemin konumunu değiştirecek bir veri kümesinin noktalarıdır. Bu nedenle, bir veri kümesinin kritik öğeleri olarak kabul edilebilirler. Doğrusal olarak ayrılabilir iki sınıfın sınıflandırılmasını düşünün, yukarıdaki şekilde olduğu gibi doğrusal bir sınıflandırıcı bunları mükemmel bir şekilde ayırabilir . Doğrusal sınıflandırıcı, yani maksimum genişlikteki (wx+b=-1 ve wx+b=+1 hiperdüzlemleri arasındaki mesafe) ayıran hiper düzlem wx+b=0 dir. w bir ağırlık vektörüdür, x giriş vektörüdür ve b sapmadır.
    Birden fazla ayıran hiper düzlem söz konusu olduğunda ise; Orjin ve hiperdüzlem H1(yani wx+b=-1) arasındaki mesafe | -1-b | / || w || Orjin ve hiperdüzlem H2(yani wx+b=+1) arasındaki mesafe | +1-b | / || w || olur. Burada tüm hiperdüzlemler paraleldir ve H1 ve H2 hiperdüzlemleri arasında hiçbir öğrenme paterni yoktur. Yukarıdaki değerlendirmelere dayanarak,  hiper düzlemler H1 ve H2 arasındaki mesafe 2/||w|| ve optimum ayıran hiper düzlem; 2/||w||’yi en aza indirmeye eşdeğer olan ||w||2/2’yi maksimize ederek gerçekleşir. Sonuç olarak ||w||2/2’in maksimumu optimum olarak seçilir.
  • Pratikte, bu metodlardan sadece birini kullanmanız çok nadirdir. Sınıflandırma ve kümeleme benzer tekniklerdir. En yakın komşuları tanımlamak için kümeleme kullanarak, sınıflandırmalarınızı daha da hassaslaştırabilirsiniz. Çoğu zaman, dizileri ve kalıpları tanımlamak için daha uzun bir süre izleyebildiğimiz sınıflandırmaların oluşturulmasına ve tanımlanmasına yardımcı olmak için karar ağaçlarını kullanırız. Neticede bu metodların birçok kombinasyonunu kullanabilirsiniz. Örnek olarak saldırı tespit sistemlerinden bahsedebiliriz. Öncelikle Saldırı Tespit Sistemi (IDS), Bir hırsızlık algılama sistemi (IDS), ağlarda ve sistemlerde şüpheli etkinlik ve bilinen tehditleri arar ve bu tür öğeleri bulduğunda uyarılar göndererek ağ trafiğini izleyen bir yazılım uygulaması veya donanım aracıdır. Bu istemler kötüye kullanım ve anormali bazlı tespit olmak üzere iki temel prensip olarak kategorize edilir. Kötüye kullanım tespiti yaklaşımı, bilinen saldırı modellerine dayanır ve genellikle bilinen saldırıların (veya “imzalar” olarak adlandırılır) kurallarına bağlı oldukları için “imza temelli” saldırılar olarak da adlandırılırlar. Yani, kötüye kullanım tespiti yaklaşımı, bilinen modellere dayanır ve bilinen saldırıları tespit etmekte etkilidir, ayrıca  düşük yanlış alarm oranına sahiptirler. Bilinen saldırıların ya da imzalarin kurallarına bağlı oldukları için yeni saldırıları tespit edemezler. Anomali saptaması ise, normal davranıştan önemli ölçüde sapan davranışların (ataklar) saptanmasına dayanır. Yani bir saldırıyı tespit etmek için normal davranışların bilgi profillerinin oluşturulması gerekir. Böylece bilinmeyen saldırıları da tespit edebilirler. Bununla birlikte, eğer profiller çok geniş tanımlanmışsa, bazı saldırılar tespitten kaçabilir; düşük algılama oranı gerçekleşir. Tersine, eğer profiller çok dar tanımlanmışsa, bazı normal aktiviteler yanlış bir şekilde saldırı olarak tanımlanabilir, bu da yanlış alarm sayısını yükseltir. Veri madenciliği, hem kötüye kullanım tabanlı saptama hem de anormaliye dayalı algılama ve ikisinin karması (hybrid) algılama için uygulanabilir. Karma algılama için kullanılan yöntemlerden biri: İlk olarak eğitim veri kümesi, ağ protokolü türüne bağlı olarak eğitim alt kümelerine ayrılır. Ardından, her bir alt kümede önemsiz ve gereksiz özellikleri içeren kayıtlar kaldırılarak küme boyutsal olarak azaltılır. Daha sonra kümeler benzer özellik değerlerine göre birbirinden bağımsız bölgelere ayrilir. C4.5 karar ağacı, kötüye kullanılan ve anormali içeren bölgelerden sapan şüpheli bölgeler için çoklu kötüye kullanım tespit modelleri oluşturmak için kullanılır. Sonuç olarak, her bir algılama modeli daha az karmaşık ve ilgili verilerden oluşan yüksek kaliteli verilerden oluşturulur.
  • Derin Öğrenme, yapay sinir ağları olarak adlandırılan beynin yapısının ve işlevinin esinlediği algoritmalarla ilgili makine öğreniminin bir alt alanıdır. Düşüncenin gerçeklestiği yüzde 80’lik alanda neokortekste nöronların katmanlarındaki aktiviteyi taklit etmeye çalışır. ‘derin öğrenme’ fikri beyin simülasyonlarını kullanarak şunları umuyor:
      • Öğrenme algoritmalarının kullanımını çok daha iyi ve daha kolay hale getirmek
      • Makine öğrenimi ve yapay zekada devrimci ilerlemeler yapmak

    Aşağıda derin bir öğrenme sisteminin, köşeler ve dış hatlar gibi daha basit kavramları bir araya getirerek, bir kişinin imajını nasıl temsil edebileceğini görebilirsiniz.

     

    Derin öğrenmeye dair başka bir bakış açısı, derinliğin bilgisayarın çok adımlı bir bilgisayar programını öğrenmesini sağlamasıdır, yani hiyerarşik öğrenme derin öğrenme ile gerçekleşir. Temsili her katman, bilgisayarın belleğinin durumu olarak düşünülebilir. Bir bilgisayarın, piksel değerleri topluluğu olarak gösterilen bu görüntü gibi, ham duyusal girdi verilerinin anlamını anlaması çok zordur. Bir piksel kümesinden bir nesne kimliğine eşleme işlevi çok karmaşıktır. Derin öğrenme, bu karmaşıklığı, istenen karmaşık haritalamayı, her biri modelin farklı bir katmanı ile tarif edilen bir dizi iç içe basit eşleştirmeye bölerek çözer.

Kümeleme: Kümeleme analizi, birbirine benzeyen verileri belirlemek için kullanılan veri madenciliği tekniğidir. Bu süreç, veriler arasındaki farklılıkları ve benzerlikleri anlamaya yardımcı olur.

Kümeleme her iki şekilde de çalışabilir. Belli bir noktada bir kümenin olduğunu varsayabilir ve doğru olup olmadığını görmek için teşhis kriterlerini kullanabilirsiniz. Altta, şekildeki grafik iyi bir örnek göstermektedir. Burada, satış verilerinin bir örneği müşterinin yaşını satışın büyüklüğüyle karşılaştırır. Yirmilerindeki insanların (evlilikleri ve çocukları), ellili ve altmışlılarının (çocuklar evden ayrıldıklarında) daha fazla harcanabilir gelire sahip olmalarını beklemek mantıksız değildir.

Örnekte, biri 2,000 ABD Doları / 20-30 yaş grubu ve diğeri 7,000-8,000 / 50-65 yaş grubu olmak üzere iki kümeyi tanımlayabiliriz.

Bu şekilde kümeleyerek işaretlemek, en yakın komşu benzerliği olarak adlandırılan basitleştirilmiş bir örnektir.

Kümelenmeyi karşıt perspektiften de uygulayabilirsiniz; Bazı giriş nitelikleri verildiğinde, farklı dokular tanımlayabilirsiniz. Örneğin, son zamanlarda yapılan 4 basamaklı bir PIN numarası çalışması, birinci ve ikinci çiftler için 1-12 ve 1-31 aralığındaki rakamlar arasında kümeler buldu. Bu çiftleri çizerek, tarihler (doğum günleri, yıldönümleri) ile ilgili küme saptayabilir veya belirleyebilirsiniz.

Regresyon: Regresyon analizi, değişkenler arasındaki ilişkiyi tanımlamak ve analiz etmek için gerekli veri madenciliği yöntemidir. Diğer değişkenlerin varlığı verildiginde belirli bir değişkenin olasılığını belirlemek için kullanılır.

Dıştakini algılama: Bu tür veri madenciliği tekniği, veri kümesindeki veri öğelerinin beklenen bir desen veya beklenen davranışla eşleşmeyen gözlemini ifade eder. Bu teknik, izinsiz giriş, tespit, sahtekarlık veya hata tespiti gibi çeşitli alanlarda kullanılabilir. Dış algılamaya ayrıca Outlier Analysis veya Outlier madenciliği denir.

Sıralı Modeller: Bu veri madenciliği tekniği, belirli dönemdeki veride benzer modelleri veya eğilimleri keşfetmeye veya tanımlamaya yardımcı olur.

Örneğin, müşteri verileriyle müşterilerin belirli bir ürün grubunu yılın farklı zamanlarında birlikte satın aldığını belirleyebilirsiniz. Bir alışveriş sepeti uygulamasında, bu bilgileri, belirli öğelerin satın alma sıklığına bağlı olarak sepete otomatik olarak eklenmesini önermek üzere kullanabilirsiniz.

Tahmin: Tahmin, eğilimler, sıralı desenler, kümelenme, sınıflandırma vb. gibi diğer veri madenciliği tekniklerinin bir kombinasyonunu kullanır. Gelecekteki bir olayı tahmin etmek için geçmiş olayları veya örnekleri doğru bir dizide analiz eder.

Örneğin, kredi kartı yetkilendirmesini kullanarak, bir işlemin hileli olup olmadığını geçmiş işlemlerin karar ağacı analizini sınıflandırma ve ilişkilendirme ile yaparak belirleyebilirsiniz. ABD’ye uçuş satın alınmış olması ABD’de yapılan işlemin geçerli olmasını muhtemel kılacaktır.

İlişkilendirme kuralları: Bu veri madenciliği tekniği, iki veya daha fazla öğe arasındaki ilişkiyi bulmaya yardımcı olur. Veri kümesindeki gizli bir örüntüyü, modeli keşfeder. Örneğin, insanların satın alma alışkanlıklarını izlerken, bir müşterinin çilek aldığında her zaman krema satın aldığını izleyip bir sonraki seferde çilek satın aldığında krema önerebilirsiniz.

Bu tekniklerin farklı sıralanması da söz konusu, örneğin IBM’in sıralaması şöyle

Bu sıralamada karar ağaçları ve uzun sureli (bellek) işleme dışında bilgi vermiştik.

Karar ağaçları: Diğer tekniklerin çoğuna (öncelikli olarak sınıflandırma ve tahmin) bağlı olarak karar ağacı, ya seçim kriterlerinin bir parçası olarak ya da genel yapı içindeki belirli verilerin kullanımını ve seçimini desteklemek için kullanılabilir. Karar ağacına, iki (veya bazen daha fazla) cevabı olan basit bir soruyla başlarsınız. Her bir cevap, verilerin sınıflandırılmasına veya tanımlanmasına yardımcı olmak için kategorilere ayrılacak yeni bir soruya dayanır veya her cevaba göre bir tahmin yapılabilir.

Karar ağaçları, belirli bir nedenden dolayı segmentasyonunun yapıldığı orijinal veri kümesinin bir segmentasyonu olarak da düşünülebilir.

Bir karar ağacı, bir kök düğümünü, dallarını ve yaprak düğümlerini içeren bir yapıdır.  Ağaçtaki en üstteki düğüm, kök düğümdür. Her bir iç düğüm bir öznitelik üzerinde bir testi belirtir, her bir dal bir testin sonucunu gösterir ve her bir yaprak düğümü bir sınıf etiketine sahiptir.

Bu karar ağacı bir müşterinin bilgisayar alip almamaya yatkınlığı konusunda bilgi verir. Her iç düğüm, bir öznitelik üzerinde bir testi temsil ederken, her yaprak düğümü de bir sınıfı temsil eder.

1980 yılında J. Ross Quinlan adında bir makine araştırmacısı ID3 (Iterative Dichotomiser) olarak bilinen bir karar ağacı algoritması geliştirdi. Daha sonra ID3’ün ardından C4.5’i geliştirdi. ID3 de geriye dönüş yoktur; ağaçlar yukarıdan aşağıya tekrarlanan böl-ve-fethet tarzında inşa edilir.

ID3 Occam’s Razor prensibini – “Varlıklar gereksiz yere çoğaltılmamalıdır.” – uygular. Mümkün olan en küçük karar ağacını oluşturma girişimindedir. ID3 süreçleri; kullanılmayan tüm öznitelikleri alır ve entropilerini hesaplar sonra bilgi kazanımı maksimum olduğunda en düşük entropiye sahip olan özniteliği minimum olarak seçer, ve bu özelliği içeren bir düğüm yapar.

Örnek entropi hesabi:

14 elemanli S setimiz olsun. S setinde 9 pozitif 5 negatif değer bulunsun.

Entropy(S)= + (9/14) log2 (9/14) – (5/14) log2 (5/14)= 0.940

Gelelim C4.5 algoritmasına, veri madenciliğinde en klasik sınıflandırma algoritmalarından biridir, ancak çok sayıda hesaplamada kullanıldığında, verimlilik çok düşüktür.

Bir sınıflandırıcı (classifier), veri madenciliğinde, sınıflandırmak istediğimiz şeyleri temsil eden verileri alarak yeni verilerin hangi sınıfa ait olduğunu tahmin etmeyi deneyen bir araçtır.

C4.5 karar ağacı şeklinde bir sınıflandırıcı oluşturur. Bunun için C4.5’e önceden sınıflandırılmış olan şeyleri temsil eden bir veri kümesi verilir. C4.5 karar ağacını oluştururken bilgi kazancını (information gain) ve uyum aşımını azaltmak için tek geçişli budama işlemi kullanır. Ayrıca, C4.5 hem kesintisiz/sürekli hem de ayrık verilerle çalışabilir. Anladığıma göre, sürekli verilerin aralıklarını veya eşiklerini belirleyerek, sürekli verileri ayrık verilere dönüştürerek bunu gerçekleştirir. C4.5 oldukça hızlı ve popüler, çıktıları insanlar tarafından rahat okunabilir.

Özetlersek, karar ağacının faydaları −

  • Herhangi bir alan bilgisi gerektirmez.
  • Anlaması kolaydır.
  • Bir karar ağacının öğrenme ve sınıflandırma adımları basit ve hızlıdır..

Veri madenciliğinde açık kaynaklı veri görselleştirme işlemlerinde ve analiz aracı olarak karar ağacı sınıflandırıcısında C4.5 uygulanır.

Bu teknikteki ilk ve en önemli adım ağacı büyütmektir. Ağacın büyütmenin temeli, her dalında sorulması mümkün olan en iyi soruyu bulmaktır. Bir karar ağacının büyümesi aşağıdaki koşullardan herhangi birinde durur;

  • Dal /segment sadece bir kayıt içeriyorsa
  • Tüm kayıtlar aynı özellikleri içeriyorsa
  • Daha fazla bölünme/dal/segment gerçekleşemiyorsa

Uzun süreli (bellek) işleme:

Çekirdek yöntemlerin hepsinde, bilgilerin kaydedilmesi ve öğrenilmesi için genellikle bir neden vardır. Bazı tekniklerde bu tamamen açıktır. Örneğin, sıralı desenler ve öngörücü öğrenme ile bir model oluşturmak için birden fazla kaynaktaki ve bilgi örneklerindeki verilere geri bakarsınız. Diğerlerinde, süreç daha açık olabilir. Karar ağaçları nadiren bir kez inşa edilir ve asla unutulmaz. Yeni bilgiler, olaylar ve veri noktaları belirlendikçe, ek bilgilerle başa çıkmak için daha fazla dal ve hatta tamamen yeni ağaçlar inşa etmek gerekebilir.

Bu sürecin bir kısmını otomatik hale getirebilirsiniz. Örneğin, kredi kartı sahtekarlığını tanımlamak tahmin edici bir model oluşturmak, mevcut işlem  üzerinde kullanabileceğiniz olasılıklar oluşturmak ve ardından bu modeli yeni (onaylanmış) işlemle güncellemek ile ilgilidir. Bu bilgi daha sonra kaydedilir ve böylece karar bir dahaki sefere hızlıca yapılabilir.

Sanırım veri madenciliğine giriş için şimdilik bu kadar bilgi yeterli. Tabii daha anlatılması gereken pek çok şey var. Bu noktadan sonra ben R dilini öğrenmekle devam etmek istiyorum. Ama önce ilk kıvılcımı ateşleyen öğretmenlerime teşekkür ederim; Sn. Prof. Dr. M. Erdal BALABAN, Sn. Yrd. Doc. Dr Gülsen Dondurmacı, Sn. Dr. Ayşe Çınar. Ayrica TOVAK’a  Çalıştaya, bize yer sağladığı için teşekkür ederim.
Öğrenmeye başlarken faydalandığım kaynaklar;
https://searchsqlserver.techtarget.com/definition/data-mining
https://www.britannica.com/technology/data-mining
http://www.uokufa.edu.iq/staff/ehsanali/Tan.pdf
http://webpages.iust.ac.ir/yaghini/Courses/Data_Mining_881/DM_02_04_Data%20Transformation.pdf
https://www.guru99.com/data-mining-tutorial.html
https://www.ibm.com/developerworks/library/ba-data-mining-techniques/index.html
https://www.autonlab.org/tutorials
https://www.datasciencecentral.com/profiles/blogs/the-7-most-important-data-mining-techniques
https://www.educba.com/7-data-mining-techniques-for-best-results/
https://www.tutorialspoint.com/data_mining/dm_dti.htm
https://hackerbits.com/data/c4-5-data-mining-algorithm/
https://searchsqlserver.techtarget.com/definition/data-mining
Data Mining and Analysis: Fundamental Concepts and Algorithms – Mohammed J. Zaki, Wagner Meira Jr. Cambridge University Press ISBN-13: 978-0521766333 ISBN-10: 9780521766333
Pattern Recognition – An Algorithmic Approach M. Narasimha Murty, V. Susheela Devi ISBN-13: 978-0857294944 ISBN-10: 0857294946
http://www2.cs.uh.edu/~arjun/courses/nlp/naive_bayes_keller.pdf
http://www.cse.unsw.edu.au/~billw/cs9414/notes/ml/06prop/id3/id3.html
http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.640.136&rep=rep1&type=pdf
http://web.mit.edu/6.034/wwwbob/svm-notes-long-08.pdf
https://www.researchgate.net/figure/Optimal-hyperplane-in-Support-Vector-Machine_fig1_264534919
https://link.springer.com/chapter/10.1007/978-0-85729-495-1_3
http://verimadenciligi.org/

.Devamı bir sonraki yazımla gelecek…

Sağlıklı, mutlu günler

 

 

 

 

 

 

Eğer varsa  önerileriniz:

 

Last updated by at .

Leave a Reply