Veri madenciliği dersinde bir önceki hafta kümeleme analizlerini ve K-Means algoritmasını görmüştük. Ders notlarına aşağıdaki linkten erişebilirsiniz.
Bugün birliktelik kurallarını(association rules) analizini inceleyeceğiz. Ardından veri madenciliğinde kullanılan araçlarla birliktelik kurallarını nasıl uygulayabiliriz diye bakacağız.
Tanım
Birliktelik analizleri veri seti içerisinde gizli olan if else kurallarını ortaya çıkarmaya çalışan çalışmalardır. Genellikle kategorik veriler ile iyi sonuçlar verir. En bilindik örneği sepet analizleridir. Bunu dışında bioinformatiks, hastalık teşhisi, web madenciliği, metin madenciliği gibi geniş bir kullanım alanına sahiptir.
Sepet Analizi (Basket Analysis)
Sepet analizinde markette alışveriş yapan kişilerin aldığı ürünler bir listede tutularak, acaba hangi ürünler birlikte daha fazla satılıyor diye bakılır.

Örnek bir birliktelik kuralı Çay 🡪 Kahve
İkili Gösterim
Birliktelik analizinde yer alan değerleri ikili şekilde gösterebiliriz. Aşağıdaki tabloda alışveriş sepetinin ikili gösterimini görebilirsiniz. Her bir satır yeni bir alışverişi gösterir.

Kavramlar

Birliktelik Kuralları

Örnek Birliktelik Kuralları

Birliktelik Kuralları Çalışması
Birliktelik kurallarında amaç olarak örneğin bir marketteki tüm alışveriş listelerini ele alarak birliktelik kuralları ortaya çıkarmaya çalışırız.
Birliktelik kurallarının sahip olması gereken özellikleri:
- Destek > belirlenen minimum destek eşik değeri
- Güven > belirlenen minimum güven eşik değeri
Birliktelik Kurallarının Çıkartılması
Kural oluşturmada 2 aşamalı yaklaşım vardır.
- Frekans listesinin oluşturulması: Burada uygun(eşik değerinden büyük) tüm ürün listeleri oluşturulur. Hesaplanması zordur.
- Kural oluşturulması: yüksek güven derecesine sahip ürün listelerinden karar kurallarını oluştur.
Frekans Ürün Listelerinin Oluşturulması
Şekildeki gibi bütün seçenekler belirlenir 2^n kadar alışveriş listesi oluşturulabilir. Örneğin bir kişi AB alıp alışverişini tamamlayabilir gibi.

Apriori Algoritması
Veriler arasındaki if-else kurallarının ortaya çıkarılmasını sağlar. Kategorik veriler ile çalışabilir. Sepet analizi uygulamasını birlikte Apriori algoritması ile hem çözelim hem de Apriori algoritmasını öğrenelim. Öncelikle minimum destek eşik değerini %60 olarak alalım.
- Adım: Ürün listelerini frekanslar şeklinde yaz ve maksimum frekansa sahip ürünü belirle.
- Ürün sayısını eşik değeri ile çarp ve bulduğun değerin altındaki ürünleri çıkar.


Veri Madenciliği Araçları


Orange Aracı ile Birliktelik Kuralları
Orange aracını yükledikten sonra Options >> Add-ons seçeneğinden Associate! Eklentisini kuruyoruz. Sepet analizinde kullandığımız veri setini şu adresten indirebilirsiniz. Veri seti açtıktan sonra frequent Itemsets ile minimum desteğe sahip kuralları gösterebiliriz. Son olarak Birliktelik Kurallarını Association rules ile gösterebiliriz.
Weka ile Birliktelik Kuralları
Weka ile verisetini açtıktan sonra Associate sekmesinden Apriori seçilerek birliktelik kuralları okunabilir.

Ders Videosu
Ders Sunumu
Kaynaklar
- Akküçük, Ulaş. “Veri madenciliği: kümeleme ve sınıflama algoritmaları”. İstanbul: Yalın Yayıncılık 18 (2011).
- Han, Jiawei, Jian Pei, ve Micheline Kamber. Data mining: concepts and techniques. Elsevier, 2011.
- Kantardzic, Mehmed. Data mining: concepts, models, methods, and algorithms. John Wiley & Sons, 2011.
- Sumathi, Sai, ve S. N. Sivanandam. Introduction to data mining and its applications. C. 29. Springer, 2006.
- Tan, Pang-Ning, Michael Steinbach, ve Vipin Kumar. Introduction to data mining. Pearson Education India, 2016.
- Towards Data Science. “Towards Data Science”. Erişim 29 Mart 2020. https://towardsdatascience.com/.
- VanderPlas, Jake. Python Data Science Handbook. OReilly Media. Inc, 2017.
- https://medium.com/@ekrem.hatipoglu/machine-learning-association-rule-mining-birliktelik-kural-%C3%A7%C4%B1kar%C4%B1m%C4%B1-apriori-algorithm-4326b8f224c3