Web Madenciliği (Web Mining)

Benzer belgeler
Web Madenciliği (Web Mining)

Büyük Veri Analitiği (Big Data Analytics)

inde Sepet Analizi Uygulamaları Market Basket Analysis for Data Mining

İlişkilendirme kurallarının kullanım alanları

APRIORI ALGORİTMASI İLE ÖĞRENCİ BAŞARISI ANALİZİ

VERİ MADENCİLİĞİ. İlişkilendirme Kuralları Bulma. İlişkilendirme Kuralları. Yaygın Öğeler. İlişkilendirme Kuralları Madenciliği

Web Madenciliği (Web Mining)

VERİ MADENCİLİĞİ (Birliktelik Kuralları) Yrd.Doç.Dr. Kadriye ERGÜN

Dr. Hidayet Takçı. Veri Madenciliği Eğitimi GYTE Dr. Hidayet Takçı 10/05/2008 #

VERİ MADENCİLİĞİ. İlişkilendirme Kuralları Bulma. Yaygın Nitelikler. İlişkilendirme Kuralları. nitelikler kümesi (Itemset) Destek s (Support)

Web Madenciliği (Web Mining)

Veri madenciliği yöntemleri

Büyük Veri Analitiği (Big Data Analytics)

Apriori Algoritması. Konu İçeriği. Giriş. Tarihçesi. Apriori Nedir? Örnekler. Algoritma. Açıklama. Weka İle Kullanımı. Kaynakça.

Genel Graf Üzerinde Mutlak 1-merkez

Web Madenciliği (Web Mining)

Veri Tabanı, Veri Ambarı, Veri Madenciliği. Veri Madenciliği Uygulama Alanları

PARALEL VERİ MADENCİLİĞİ ALGORİTMALARI. BAŞARIM 09, Nisan 2009, ODTÜ, Ankara

SOCIAL MENTALITY AND RESEARCHER THINKERS JOURNAL

Yönetim Bilişim Sistemleri Alanında Metin Madenciliği ile Bilgi Haritalama

Birliktelik Kuralları Analizi. Yard. Doç. Dr. Derya BİRANT Prof. Dr. Alp KUT

Veri Madenciliği. Bölüm 4. Birliktelik Kuralları. Doç. Dr. Suat Özdemir.

Apriori Algoritması ile Teknik Seçmeli Ders Seçim Analizi

Apriori Algoritmasının Farklı Veri Kümelerine Uygulanması

Pazar Sepeti Analizi için Örneklem Oluşturulması ve Birliktelik Kurallarının

Sigortacılık Sektöründe Müşteri İlişkileri Yönetimi İçin Birliktelik Kuralı Kullanılması

VERİ MADENCİLİĞİ (Kümeleme) Yrd.Doç.Dr. Kadriye ERGÜN

APRİORİ ALGORİTMASI İLE TEKNİK SEÇMELİ DERS SEÇİM ANALİZİ SELECTION BEHAVIOR ANALYSIS OF TECHNICAL ELECTIVE COURSES USING APRIORI ALGORITHM

Veri Madenciliği Karar Ağacı Oluşturma

KONU 4: DOĞRUSAL PROGRAMLAMA MODELİ İÇİN ÇÖZÜM YÖNTEMLERİ I

Yazılım GeliĢtirme Dersleri Öğrenci Projelerinin Birliktelik Kuralı Ġle Değerlendirilmesi

127 - Twoing Algoritması ile Sınıflandırma Kalp Hastalığı Uygulaması MEHMET AKİF ERSOY ÜNİVERSİTESİ İLHAN UYSAL MEHMET BİLEN SAMİ ULUKUŞ

VERI TABANLARıNDA BILGI KEŞFI

Graflar bilgi parçaları arasındaki ilişkileri gösterirler.

MOBİLYA PERAKENDE SATIŞ SEKTÖRÜNDE VERİ MADENCİLİĞİ UYGULAMASI

Büyük Veri İçin İstatistiksel Öğrenme (Statistical Learning for Big Data)

VERİ TABANI YÖNETİM SİSTEMLERİ Melih BÖLÜKBAŞI

İLİŞKİSEL VERİTABANLARI

9.Konu Lineer bağımsızlık, taban, boyut Germe. 9.1.Tanım: V vektör uzayının her bir elemanı

BİRLİKTELİK KURALI YÖNTEMİ İÇİN BİR VERİ MADENCİLİĞİ YAZILIMI TASARIMI VE UYGULAMASI

Apriori Algoritması ve Türkiye'deki Örnek Uygulamaları

ELN1002 BİLGİSAYAR PROGRAMLAMA 2

Sıralı Örüntü Madenciliği ile e-bankacılıkta Kullanıcı Davranışlarının Modellenmesi

VERİ MADENCİLİĞİ (Karar Ağaçları ile Sınıflandırma) Yrd.Doç.Dr. Kadriye ERGÜN

BÖLÜNMÜŞ FARKLAR (DİVİDED DİFFERENCES)

Büyük Veri Analitiği (Big Data Analytics)

8.Konu Vektör uzayları, Alt Uzaylar

Büyük Veri Analitiği (Big Data Analytics)

Uzaktan Algılama Uygulamaları

EŞİTLİK KISITLI TÜREVLİ YÖNTEMLER

İleri Diferansiyel Denklemler

VEKTÖR UZAYLARI 1.GİRİŞ

Yrd. Doç. Dr. Semra Erpolat

BİL-142 Bilgisayar Programlama II

Temel Kavramlar. (r) Sıfırdan farklı kompleks sayılar kümesi: C. (i) Rasyonel sayılar kümesi: Q = { a b

Fonksiyon Optimizasyonunda Genetik Algoritmalar

VERİ MADENCİLİĞİ önemsiz olmayan, gizli, önceden bilinmeyen, potansiyel olarak kullanışlı

İş Zekası Çözümleri için Çok Boyutlu Birliktelik Kuralları Analizi

BÖLÜM III: Şebeke Modelleri. Şebeke Kavramları. Şebeke Kavramları. Şebeke Kavramları. Yönlü Şebeke (Directed Network) Dal / ok

Zeki Optimizasyon Teknikleri

VERİ MADENCİLİĞİNE BAKIŞ

Konular. VERİ MADENCİLİĞİ Giriş. Problem Tanımı. Veri Madenciliği: Tarihçe. Veri Madenciliği Nedir? Bilgi Keşfi

Büyük Veri Analitiği (Big Data Analytics)

Bulanık Birliktelik Kurallarının Genetik Algoritmalarla Keşfi

Zeki Optimizasyon Teknikleri

bitık MOBİL TİCARET UYGULAMASI ABDULLAH ÇİÇEKCİ

BÖLÜM- 5: BİRDEN FAZLA TABLODAN VERİ GETİRMEK

TANIMLAYICI İSTATİSTİKLER

Algoritma Geliştirme ve Veri Yapıları 3 Veri Yapıları. Mustafa Kemal Üniversitesi

1 BAĞINTILAR VE FONKSİYONLAR

Olasılık, bir deneme sonrasında ilgilenilen olayın tüm olaylar içinde ortaya çıkma ya da gözlenme oranı olarak tanımlanabilir.

VERİ MADENCİLİĞİ (Karar Ağaçları ile Sınıflandırma) Yrd.Doç.Dr. Kadriye ERGÜN

Küme temel olarak belli nesnelerin ya da elamanların bir araya gelmesi ile oluşur

VERİ YAPILARI LİSTELER. Yrd. Doç. Dr. Murat GÖK Bilgisayar Mühendisliği Bölümü YALOVA ÜNİVERSİTESİ

BM-311 Bilgisayar Mimarisi

10. DİREKT ÇARPIMLAR

Algoritmalar. Sıralama Problemi ve Analizi. Bahar 2017 Doç. Dr. Suat Özdemir 1

Veritabanı Tasarımı. Yapay, Birleşik ve İkincil UID ler

Yazılım Mühendisliği 1

FONKSİYONLAR. Örnek: (2x-2,y-3)=(10,-3) olduğuna göre x ve y sayılarını bulunuz.

BİL-142 Bilgisayar Programlama II

İleri Diferansiyel Denklemler

Bölüm 1. Giriş. Öğretim üyesi: Doç. Dr. Suat Özdemir E-posta: Websayfası:

10.Konu Tam sayıların inşası

EM302 Yöneylem Araştırması 2 Doğrusal Olmayan Programlamaya Giriş. Dr. Özgür Kabak

Web Madenciliği (Web Mining)

BİLGİSAYAR PROGRAMLAMA Araş. Gör. Ahmet ARDAHANLI. Kafkas Üniversitesi Mühendislik Fakültesi

Önemli noktalar. Paradigma Nesnelere Giriş Mesajlar / Ara bağlantılar Bilgi Gizleme (Information Hiding ) Sınıflar(Classes) Kalıtım/Inheritance

Kısıtsız Optimizasyon OPTİMİZASYON Kısıtsız Optimizasyon

DOĞU AKDENİZ ÜNİVERSİTESİ MATEMATİK BÖLÜMÜ 23. LİSELERARASI MATEMATİK YARIŞMASI

ISSN : mkarabatak@firat.edu.tr Elazig-Turkey

VERİ YAPILARI VE PROGRAMLAMA

Zeki Optimizasyon Teknikleri

2. Klasik Kümeler-Bulanık Kümeler

2 İlişkisel Veritabanı Tasarımı ve Normalizasyon. Veritabanı 1

VERİ MADENCİLİĞİ Metin Madenciliği

Temel Matematik. 1. saat. Hadi başlayalımmm...

Büyük Veri Analitiği (Big Data Analytics)

TEMEL İSTATİSTİKİ KAVRAMLAR YRD. DOÇ. DR. İBRAHİM ÇÜTCÜ

Transkript:

Web Madenciliği (Web Mining) Hazırlayan: M. Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü Konular Birliktelik Kuralları Birliktelik Kurallarının Temelleri Support ve Confidence Apriori Algoritması Frequent itemset oluşturulması Birliktelik Kuralı Oluşturulması Birliktelik Kural Madenciliği için Veri Formatları Çoklu Minimum Destek Sınıf Birliktelik Kural Madenciliği Çoklu Minimum Destek ile Madencilik 2 1

Birliktelik Kuralları Birliktelik kuralları büyük verilerdeki analizler için önemli bir yere sahiptir. Birliktelik kural madenciliği veri madenciliğinin temel çalışma alanlarından birisidir. Birliktelik kuralları, üzerinde en çok çalışma yapılan ve yaygın uygulanan modeldir. Birliktelik kuralları modelinin amacı, veri parçalarının birlikte gerçekleşme (co-occurence) ilişkilerinin tümünü ortaya çıkarmaktır. Agrawal ve arkadaşları* tarafından 1993 yılında önerilmesinden sonra bir çok alanda başarılı bir şekilde uygulanmıştır. * R. Agrawal, T. Imielinski, and A. N. Swami. Mining Association Rules between Sets of Items in Large Databases. In Proc. of the ACM SIGMOD Intl. Conf. on Management of Data (SIGMOD 93), pp. 207 216, 1993. 3 Birliktelik Kuralları Birliktelik kural madenciliğindeki klasik uygulama alanı market sepeti veri analizidir. Market sepeti analizinde, müşterilerin aldıkları ürünler arasındaki ilişkiler ortaya çıkartılır. Peynir Ekmek [support = 10%, confidence = 75%] Yukarıdaki kuralda, tüm müşterilerin %10 u peynir ve ekmeği birlikte almıştır (support). Yukarıdaki kuralda, peynir alan müşterilerin %75 i ekmeği de almıştır (confidence). 4 2

Birliktelik Kuralları Birliktelik kural madenciliği ürünlerin sırasını dikkate almaz. Sıralı örüntü madenciliği ise ürünlerin sırasıyla ilgilenir. Sıralı örüntü madenciliğinde müşterilerin %5 i önce ekmek sonra peynir daha sonra zeytin almaktadır şeklinde kural elde edilir. Bu tür kurallar Web kullanım madenciliğinde clickstream analizinde veya dilsel örüntülerin bulunması amacıyla kullanılır. 5 Konular Birliktelik Kuralları Birliktelik Kurallarının Temelleri Support ve Confidence Apriori Algoritması Frequent itemset oluşturulması Birliktelik Kuralı Oluşturulması Birliktelik Kural Madenciliği için Veri Formatları Çoklu Minimum Destek Sınıf Birliktelik Kural Madenciliği Çoklu Minimum Destek ile Madencilik 6 3

Birliktelik Kurallarının Temelleri Birliktelik kural madenciliği aşağıdaki gibi ifade edilir: Burada, I parçalar (items) kümesi, T işlemler (transactions) kümesidir. Her bir işlem bir grup parçadan oluşan kümedir ve şeklinde ifade edilir. Birliktelik kuralı ise aşağıdaki gibi gösterilir: Burada X ve Y parça kümesi (itemset) olarak ifade edilir. 7 Örnek Birliktelik Kurallarının Temelleri Bir müşteri I kümesindeki ürünlere sahip bir marketten üç tane ürün alıyor. Bu işlem aşağıdaki gibidir. Bir birliktelik kuralı aşağıdaki gibi olabilir. Burada, şeklinde ifade edilir. 8 4

Konular Birliktelik Kuralları Birliktelik Kurallarının Temelleri Support ve Confidence Apriori Algoritması Frequent itemset oluşturulması Birliktelik Kuralı Oluşturulması Birliktelik Kural Madenciliği için Veri Formatları Çoklu Minimum Destek Sınıf Birliktelik Kural Madenciliği Çoklu Minimum Destek ile Madencilik 9 Support ve Confidence Support t i T transaction ı, X itemset ini kapsar (eğer X itemset i t i transaction ının alt kümesi ise (X t i )). X itemset inin destek sayısı (support count), T içerisinde X i kapsayan transaction sayısıdır ve X.count şeklinde gösterilir. X Y kuralının support değeri, T tüm transaction lar kümesinde X Y itemset ini içeren transaction ların oranıdır. Bir kuralın support değeri, olma olasılığını gösterir ve Pr(X Y) şeklinde ifade edilir. X Y kuralının support değeri aşağıdaki eşitlikle hesaplanır. Burada, n toplam transaction sayısını gösterir. 10 5

Support ve Confidence Confidence X Y kuralının confidence değeri, T tüm transaction lar kümesinde X ile Y itemset lerini birlikte içeren transaction ların, X i bulunduran transactionlar içerisindeki oranıdır. Bir kuralın confidence değeri, şartlı olasılık ile ifade edilir ve Pr(Y X) şeklinde gösterilir. X Y kuralının confidence değeri aşağıdaki eşitlikle hesaplanır. Burada, n toplam transaction sayısını gösterir. Confidence bir kuralın öngörülebilirliğini (predictability) belirler. 11 Support ve Confidence Birliktelik kural madenciliği, verilen bir T transaction lar kümesinde, önceden belirlenmiş support ve confidence değerlerine eşit veya büyük olan birliktelik kurallarının elde edilmesini amaçlar. Kullanıcı tarafından belirlenmiş olan support ve confidence değerlerine minimum support (minsup) ve minimum confidence (minconf) denilmektedir. 12 6

Support ve Confidence Örnek Aşağıda 7 transaction a sahip olan T kümesi verilmiştir. I kümesi markette satılan tüm parçaları içermektedir. minsup = 30% ve minconf = 80% için kurallar bulalım. Transaction lar için aşağıdaki kurallar support = 42,86% (>30%) ve confidence = 100% (>80%) değerine sahiptir ve geçerlidir. 13 Konular Birliktelik Kuralları Birliktelik Kurallarının Temelleri Support ve Confidence Apriori Algoritması Frequent itemset oluşturulması Birliktelik Kuralı Oluşturulması Birliktelik Kural Madenciliği için Veri Formatları Çoklu Minimum Destek Sınıf Birliktelik Kural Madenciliği Çoklu Minimum Destek ile Madencilik 14 7

Apriori Algoritması Apriori algoritması iki aşamadan oluşmaktadır: Tüm frequent itemset lerin oluşturulması. Frequent itemset, minsup değerine sahip item lar kümesidir. Frequent itemset lerden güvenilir birliktelik kurallarının oluşturulması. Güvenilir birliktelik kuralı, minconf değerine sahip kuraldır. Bir itemset içindeki eleman sayısı k ise bu itemset k-itemset olarak adlandırılır. Aşağıdaki itemset minsup değerini sağlıyorsa, frequent 3- itemset tir. 15 Apriori Algoritması minsup = 30% ve minconf = 80% değerlerini alalım. Yukarıdaki frequent 3-itemset için minsup ve minconf değerlerini sağlayan aşağıdaki birliktelik kuralları yazılabilir. 16 8

Konular Birliktelik Kuralları Birliktelik Kurallarının Temelleri Support ve Confidence Apriori Algoritması Frequent itemset oluşturulması Birliktelik Kuralı Oluşturulması Birliktelik Kural Madenciliği için Veri Formatları Çoklu Minimum Destek Sınıf Birliktelik Kural Madenciliği Çoklu Minimum Destek ile Madencilik 17 Frequent itemset oluşturulması Downward closure property Eğer bir itemset minsup değerine sahipse, bu itemset in boş küme hariç tüm altkümeleri de minsup değerine sahiptir. Apriori property Bir transaction, X deki item lara sahipse, X in boş küme hariç tüm alt kümelerine de sahip olmak zorundadır. Pruning Apriori algoritması minsup değerine sahip olmayan birliktelik kural adaylarını temizler. 18 9

Frequent itemset oluşturulması I itemset içerisindeki elemanların tümüyle sıralı (lexicographic order) olduğunu varsayar. Bir k-itemset aşağıdaki gibi gösterilir ve w[1], w[2], w[k] birer item dır. Apriori algoritması tüm frequent itemset lerin verileri üzerinden birden fazla geçerek işlem yapar. Apriori algoritması level-wise search yapar ve her geçişte her bir item için support değerlerini ve frequent olup olmadıklarını belirler. Önce her bir item için frequent 1-itemset i oluşturur ve her iterasyonda 2-itemset, 3-itemset şeklinde artarak devam eder. 19 Konular Birliktelik Kuralları Birliktelik Kurallarının Temelleri Support ve Confidence Apriori Algoritması Frequent itemset oluşturulması Birliktelik Kuralı Oluşturulması Birliktelik Kural Madenciliği için Veri Formatları Çoklu Minimum Destek Sınıf Birliktelik Kural Madenciliği Çoklu Minimum Destek ile Madencilik 20 10

Algoritma Her item için support değeri hesaplanır. Candidate 1-itemset oluşturulur. 1-itemset Candidate k-itemset oluşturulur. Candidate k-itemset elemanlarının T içerisindeki sayısı (support) bulunur. Frequent k-itemset oluşturulur. 21 Algoritma Son elemanları farklı Joining aşaması Pruning aşaması 22 11

Örnek Algoritma Aşağıda 3. seviyede oluşturulan frequent 3-itemset verilmiştir. Join aşamasında {1, 2, 3, 4} ve {1, 3, 4, 5} oluşturulur. {1, 2, 3, 4} birinci ve ikinci itemset leri ile oluşturulur. {1, 3, 4, 5} ise {1, 3, 4} ile {1, 3, 5} itemset leri ile oluşturulur. Pruning aşamasından sonra sadece {1, 2, 3, 4} kalır. {1, 4, 5} kümesi ve {3, 4, 5} kümesi, frequent 3-itemset içerisinde olmadığından {1, 3, 4, 5} silinir. 23 Örnek Algoritma minsup=2 24 12

Örnek Algoritma Aşağıda 7 transaction a sahip bir T kümesi verilmiştir. minsup = 30% (en az 3/7) olarak alarak tüm frequent itemset lerini bulalım. 25 Algoritma Örnek devam Her item sonunda support değerleri verilmiştir. Support değerinin en az 3 olması gereklidir (3/7 > 30%). {Beef, Cheese, Chicken} oluşturulur. Ancak, {Cheese, Chicken} F 2 içinde olmadığından, {Beef, Cheese, Chicken} silinir ve C 3 içerisinde yer almaz. 26 13

Algoritma Algoritmanın değerlendirilmesi Exponential bir algoritmadır. I kümesindeki eleman sayısı m ise O(2 m ) karmaşıklığına sahiptir. Market sepeti örneğinde olduğu gibi, market çok sayıda ürünü satar ancak müşteri bir kısmını alır (sparseness). Algoritma transaction kümesindeki veri seyrekliğine göre daha etkin çalışır. tüm veriyi hafızaya yüklemeden çalışır ve verileri teker teker tarayıp işlem yapar (satır 5-10 arasında). Ölçeklenebilirliği yüksektir ve çok büyük boyutlardaki veriler üzerinde çalışabilir. Level-wise search yaptığından istenilen seviyede sonlandırılabilir. Birliktelik kurallarında çok sayıda (binlerce) kural oluşturulabilir ve faydalı olanların bulunması çok zordur (Interestingness problem). 27 Konular Birliktelik Kuralları Birliktelik Kurallarının Temelleri Support ve Confidence Apriori Algoritması Frequent itemset oluşturulması Birliktelik Kuralı Oluşturulması Birliktelik Kural Madenciliği için Veri Formatları Çoklu Minimum Destek Sınıf Birliktelik Kural Madenciliği Çoklu Minimum Destek ile Madencilik 28 14

Birliktelik Kuralı Oluşturulması Bazı uygulamalarda frequent itemset leri kullanarak tüm birliktelik kurallarının oluşturulması gereklidir. Bir f frequent itemset için kural oluştururken f kümesinin tüm altkümeleri kullanılır. Confidence değerine bağlı olarak bir frequent item için kural aşağıdaki gibi elde edilebilir: Burada f.count ile (f- ).count tüm transaction kümesi T deki sayılarını gösterir. f frequent item için support değeri ise f.count / n ile gösterilir. 29 Birliktelik Kuralı Oluşturulması Eğer f frequent itemset ise, Apriori algoritması boş küme hariç tüm altkümelerinin de frequent itemset olmasını gerektirir. Bu yüzden kural oluştururken yeniden itemset taramasına gerek yoktur. Eğer (f- ) kuralı geçerliyse, (f- sub ) sub kuralları da geçerlidir. Eğer {A, B, C, D} itemset için (A, B C, D) kuralı varsa, (confidence dikkate alınmadan), (A, B, C D) ve (A, B, D C) kuralları da geçerlidir. Eğer {A, B, C, D} itemset için (A, B, C D) kuralı varsa, (confidence dikkate alındığında), (A, B C, D) ve (A, C B, D) kuralları da geçerlidir. 30 15

Konular Birliktelik Kuralları Birliktelik Kurallarının Temelleri Support ve Confidence Apriori Algoritması Frequent itemset oluşturulması Birliktelik Kuralı Oluşturulması Birliktelik Kural Madenciliği için Veri Formatları Çoklu Minimum Destek Sınıf Birliktelik Kural Madenciliği Çoklu Minimum Destek ile Madencilik 31 Algoritma Öncelikle 1 elemana sahip ardıl kısımlardan oluşan kurallar elde edilir. Son elemanlardan oluşan küme 1 elemanlı ardıl kısımlara sahip kurallar oluşturulur. minsup = %30 ve minconf = %80 32 16

Algoritma {Chicken, Clothes, Milk}.count/Clothes.count 33 Örnek Algoritma Aşağıdaki T kümesi için minsup = %30 ve minconf = %80 olsun. Aşağıdaki frequent itemset ler elde edilir. 34 17

Algoritma Örnek devam F 3 için kurallar aşağıdaki gibi elde edilebilir. minconf = %80 gerektiğinden dolayı genrules() algoritmasının 2.satırında 1. ve 3. frequent itemset ler alınır. Böylelikle H 1 = {{Chicken}, {Milk}} olarak elde edilir. F 3 ve H 1 için ap-genrules() algoritması çağrılır. Bu algoritmanın 2.satırındaki candidate-gen() fonksiyonuyla H 2 = {{Chicken, Milk}} elde edilir. 35 Algoritma Örnek devam ap-genrules() algoritmasının 2.satırında H 2 = {{Chicken, Milk}} elde edildikten sonra aşağıdaki 4.kural oluşturulur: F 3 = {Chicken, Clothes, Milk} frequent itemset i kullanılarak aşağıdaki 4 kural elde edilmiş olur. Bunlardan bir tanesi minconf değerini sağlamadığından silinir. 36 18

Konular Birliktelik Kuralları Birliktelik Kurallarının Temelleri Support ve Confidence Apriori Algoritması Frequent itemset oluşturulması Birliktelik Kuralı Oluşturulması Birliktelik Kural Madenciliği için Veri Formatları Çoklu Minimum Destek Sınıf Birliktelik Kural Madenciliği Çoklu Minimum Destek ile Madencilik 37 Birliktelik Kural Madenciliği için Veri Formatları Birliktelik kural madenciliği ilişkisel veritabanlarında da uygulanabilir. VTYS içerisindeki tablonun bir transaction veri kümesine dönüştürülmesi gereklidir. Bunun için özellik-değer (attribute-value) ikilisinin elde edilmesi yeterlidir. Aşağıdaki tablodan transaction kümesi elde edilmiştir. 38 19

Birliktelik Kural Madenciliği için Veri Formatları Eğer VTYS içerisindeki tablo kategorik veri yerine sayısal veri içeriyorsa değer aralığı belirli parçaya bölünerek dönüştürme işlemi yapılabilir. Örneğin 1-100 arasındaki sayısal değerlere sahip bir alan için 1-20, 21-40, 41-60, 61-80, 81-100 aralıkları alınarak kategorik değer ataması yapılabilir. a = 1-20 b = 21-40 c = 41-60 d = 61-80 e = 81-100 39 Konular Birliktelik Kuralları Birliktelik Kurallarının Temelleri Support ve Confidence Apriori Algoritması Frequent itemset oluşturulması Birliktelik Kuralı Oluşturulması Birliktelik Kural Madenciliği için Veri Formatları Çoklu Minimum Destek Sınıf Birliktelik Kural Madenciliği Çoklu Minimum Destek ile Madencilik 40 20

Çoklu Minimum Destek Birliktelik kural madenciliğinde tek minsup değeri kullanılması bazı uygulamalarda uygun olmayabilir. Tüm veriler aynı öneme, sıklığa veya yapıya sahip olmayabilir. Bazı veriler sık olmasa da daha büyük öneme sahip olabilir. Bu durumda bazı sorunlar ortaya çıkar: minsup değeri yüksek olursa bazı önemli kurallar sık olmadığı için elde edilemez. minsup değeri düşük olursa çok sayıda kural elde edilir ve birliktelik kural madenciliği oldukça zorlaşır. E-ticaret sitelerinde bazı ürünler pahalıdır ve az sıklıkta satılır. Ancak bu ürünlere yönelik kurallarda önemlidir. 41 Örnek Çoklu Minimum Destek Bir süpermarkette az sayıda satılan FoodProcessor ve CookingPan ürünleri için kural bulmak istiyoruz. Az sıklıkta olduğundan minsup değerinin çok küçük olması gerekiyor. minsup = %0,006 için aşağıdaki gibi bir frequent itemset bulunabilir: Düşük minsup değerinden dolayı aşağıdaki anlamsız frequent itemset lerde elde edilebilir: Her iki frequent itemset gereksizdir. Çünkü hemen hemen her alışverişte bu item lar yer alırlar. 42 21

Çoklu Minimum Destek Bu sorun veriyi bloklar halinde parçalayarak her parça için ayrı ayrı madencilik yapılarak çözülebilir. Ancak, ayrı bloklardaki aynı itemler için kurallar elde edilemez. Bu sorun için en iyi çözüm her item için farklı minimum support değeri (minimum item support (MIS)) belirlenmesidir. Bu sayede farklı sıklıkta ve farklı öneme sahip item lar için ayrı support değerleri kullanılarak anlamlı kurallar elde edilebilir. MIS (i), i.item için minimum support değeri olsun. Bir R kuralı için minimum support değeri aşağıdaki ifade edilir: 43 Örnek Çoklu Minimum Destek Bir itemset {Bread, Shoes, Clothes} için kullanıcı tanımlı MIS değerleri aşağıdaki gibi olsun: Aşağıdaki kural minimum support değerini karşılamaz. Çünkü, min(mis(bread), MIS(Clothes)) = %0,2 dir (Support değerinin 0,2 den büyük olması gerekir.). Aşağıdaki kural minimum support değerini karşılar. Çünkü, min(mis(shoes), MIS(Clothes)) = %0,1 dir. 44 22

Örnek Çoklu Minimum Destek {1, 2, 3, 4} itemset için MIS değerleri aşağıdaki olsun: Eğer 2.seviyede {1, 2} itemset için support %9 bulunursa, MIS(1) ve MIS(2) değerlerini sağlamaz. Bu durumda, Apriori algoritması {1, 2} itemset i atar. Böylelikle, {1, 2, 3} ve {1, 2, 4} itemset leri de üst seviyede oluşturulamaz. Bu itemset ler MIS(3) = %5 ve MIS(4) = %6 değerlerini sağlamaktadır. Ancak, {1, 2} itemset i silinmezse downward closure özelliği kaybolur. 45 Çoklu Minimum Destek Bir itemset içerisinde çok sık ve çok az item ların yer almasını önlemek için farklı yöntemler kullanılmaktadır. Örneğin, maksimum ve minimum support değerlerinin uzaklığını (farkını) belirlemek için sabit fark kısıtı konulabilir. Aşağıdaki ifadede sup(i), i.item için support değerini göstermektedir. Bu kısıt ile birlikte çok sayıda frequent itemset oluşturulması da engellenmiş olur. 46 23

Konular Birliktelik Kuralları Birliktelik Kurallarının Temelleri Support ve Confidence Apriori Algoritması Frequent itemset oluşturulması Birliktelik Kuralı Oluşturulması Birliktelik Kural Madenciliği için Veri Formatları Çoklu Minimum Destek Sınıf Birliktelik Kural Madenciliği Çoklu Minimum Destek ile Madencilik 47 Sınıf Birliktelik Kural Madenciliği Bazı uygulamalarda kurallar için kullanıcı hedef değer belirleyebilir. Örneğin bir grup doküman için hangi konuya yönelik olduğunu içeren bilgiye ulaşılmak istenebilir. T kümesi n tane transaction dan oluşursa, her transaction bir y sınıfı ile eşleştirilebilir. I tüm item lar kümesi ve Y ise tüm sınıflar kümesi ise I Y = dir. Bir sınıf birliktelik kuralı (class association rule - CAR) aşağıdaki tanımlanır: X y, burada X I, ve y Y dir. Support ve confidence değerleri normal birliktelik kurallarındaki gibi hesaplanır. 48 24

Sınıf Birliktelik Kural Madenciliği CAR larda hedef eleman bir tanedir ve bir sınıfı gösterir. Normal birliktelik kurallarında birden fazla eleman olabilmektedir. CAR madenciliğindeki amaç, kullanıcı tanımlı minsup ve minconf değerlerine sahip tüm kuralların bulunmasıdır. 49 Örnek Sınıf Birliktelik Kural Madenciliği Aşağıda 8 doküman ile 2 sınıf arasındaki eşleştirme görülmektedir. minsup = %20 ve minconf = %60 için iki kural aşağıdaki yazılabilir. 50 25

Konular Birliktelik Kuralları Birliktelik Kurallarının Temelleri Support ve Confidence Apriori Algoritması Frequent itemset oluşturulması Birliktelik Kuralı Oluşturulması Birliktelik Kural Madenciliği için Veri Formatları Çoklu Minimum Destek Sınıf Birliktelik Kural Madenciliği Çoklu Minimum Destek ile Madencilik 51 Algoritma CAR doğrudan tek adımla elde edilebilmektedir. Temel işlem minsup değerini sağlayan ruleitem larını bulmaktadır. Bir ruleitem (condset, y) şeklinde tanımlanır. Burada condset I, ve y Y dir. condset için support değeri (condsupcount), T içerisinde condset i bulunduran transaction sayısıdır. ruleitem için support değeri (rulesupcount), T içerisinde condset i ve y sınıfını birlikte bulunduran transaction sayısıdır. Her ruleitem aşağıdaki gibi bir kuralı gösterir: condset y 52 26

Algoritma condset y şeklindeki bir kural için support ve confidence değeri (condset y).support = (rulesupcount / n) (condset y).confidence = (rulesupcount / condsupcount) şeklinde ifade edilir. minsup değerini sağlayan ruleitem lar frequent ruleitem dır. 53 Algoritma ({Student, School}, Education) ruleitem için: condsupcount ({Student, School}) = 2 rulesupcount ({Student, School}, Education) = 2 ({Student, School}, Education).support = 2/7 (%28,6) ({Student, School}, Education).confidence = 2/2 (%100) 54 27

Algoritma condset = 1 Aday frequent 1-ruleitem condset = 1 olan CAR kümesi Yeni aday küme C k oluşturuldu. Aynı sınıfa ait olan condset ler kullanılır. condset sayıldı ruleitem sayıldı Frequent item yapıldı. CAR k kümesine eklendi. Tüm CAR kümesi elde edildi. 55 Örnek Algoritma Aşağıdaki veri için minsup = %15 (>=2/7)ve minconf = %70 alınıyor. İlk sayı condsupcount ikinci sayı rulesupcount değerini gösterir. 56 28

Algoritma Örnek devam İlk sayı condsupcount ikinci sayı rulesupcount değerini gösterir. 57 Algoritma Örnek devam İlk sayı condsupcount ikinci sayı rulesupcount değerini gösterir. 58 29

Ödev Birliktelik kurallarının kullanım alanları hakkında detaylı bir araştırma ödevi hazırlayınız. 59 30