You are on page 1of 25

T.C.

GEBZE YÜKSEK TEKNOLOJİ ENSTİTÜSÜ

Bilgisayar Mühendisliği Bölümü

VERİ MADENCİLİĞİ DERSİ


ÖDEV RAPORU
ÖDEV KONUSU:
SQL SERVER İLE VERİ MADENCİLİĞİ

ÖDEVİ GRUBU:

İsmail ŞİMŞEK

Soner BAŞTAŞ

Abdullah KURT

Ders Eğitmeni
Dr. Hidayet TAKÇI
Ocak, 2008
Gebze, KOCAELİ
SQL SERVER İLE VERİ MADENCİLİĞİ

İÇİNDEKİLER
Amaç.............................................................................................................3
Giriş..............................................................................................................3
Veri Madenciliği Algoritmaları............................................................................4
Microsoft Decision Trees (Microsoft Karar Ağaçları)...........................................4
Microsoft Clustering (Microsoft Kümeleme)......................................................4
Microsoft Naïve Bayes...................................................................................4
Microsoft Time Series....................................................................................5
Microsoft Association....................................................................................5
Microsoft Sequence Clustering........................................................................6
Microsoft Neural Network..............................................................................6
Microsoft Linear Regression...........................................................................6
Microsoft Logistic Regression.........................................................................7
Madencilik Ortamının Hazırlanması....................................................................7
SQL Server Database’ini hazırlamak................................................................7
Analysis Services Database’ini hazırlamak.......................................................8
Analysis Services Projesi oluşturmak...............................................................8
Data Source oluşturmak................................................................................8
Data Source View oluşturmak.......................................................................10
Data Source View’i Düzenlemek....................................................................11
Madencilik modelleri ile çalışmak..................................................................11
Örnek Senaryo: Hedefe Yönelik Toplu Mail Gönderimi (Targeted Mailing)..............12
Targeted Mailing Madencilik Modelinin Yapısını Sihirbaz(wizard) Ile Oluşturmak . 13
Madencilik modellerini düzenlemek...............................................................15
Madencilik Modellerini İşlemek.....................................................................15
Madencilik Modellerini Analiz Etmek..............................................................16
Microsoft Decision Trees Modelinin İncelenmesi..............................................16
Decision Tree........................................................................................16
Dependency Network.............................................................................17
Microsoft Clustering Modelinin İncelenmesi....................................................19
Cluster Diagram....................................................................................19
Cluster Profiles......................................................................................20
Cluster Characteristics............................................................................21
Cluster Discrimination............................................................................22
Microsoft Naïve Bayes Modelinin İncelenmesi.................................................23
Dependency Network.............................................................................23
Attribute Profiles....................................................................................24
Attribute Discrimination..........................................................................26
Amaç
Bu döküman Microsoft Sql Server 2005 veritabanı yönetim sistemi ürününü baz alarak sql
server araçlarının nasıl veri madenciliğinde kullanılacağının yanında microsoft sql server
2005 ürününün içerdiği veri madenciliği araçlarının kullanımı göstermeyi amaçlamaktadır.

Giriş
bu döküman okuyucuyu Microsoft SQL Server 2005 ürününde veri madenciliği modelleri
oluşturmada nasıl bir yöntem izleneceğini adım adım anlatır nitelikte tasarlanmıştır.
Microsoft SQL Server 2005 deki veri madenciliği araçları ve algoritmaları geniş kapsamlı
çözümler içeren çok değişik projeleri kolaylıkla yapmak için tasarlanmıştır. Bu dökümanda
bu çözümlere bir örnek olarak ‘hedefe yönelik toplu mail gönderimi’(targeted mailing) örnek
olarak işlenmiştir .

Microsoft SQL Server 2005 te veri madenciliği için kullanılacak tasarım arayüzü Business
Intelligence Development Studio olarak adlandırılmıştır, bu araç ile veri madenciliği
modelleri database sistemine bağlanmadan hazırlanabilir ve daha sonra database sistemi
üzerinde işlenebilir, ilerleyen bölümde bu araç ayrıntılı olarak anlatılacaktır.

Tüm veri madenciliği araçları data mining editor içinde bulunur, bu editor kullanılarak
madencilik modelleri yönetilebilir, görüntülenebilir, karşılaştırılabilir ve varolan modeler
üzerinden tahminler oluşturulabilir.

Projeler genelde birden fazla madencilik modeli içerir zira bir model tahminler oluşturmak
amacıyla oluşturulur, hangi modelin daha doğru sonuçlar verdiğinin belirlenebilmesi
gerekir, bu nedenle editor Mining Accuracy Chart tab denilen bir model karşılaştırma aracı
içerir.

Veri madenciliği modelleri oluşturmada kullanılan araçlar kadar bu araçların kullandığı


algoritmalarında bilinmesi önemlidir. Microsoft SQL Server 2005 9 tane algoritma içerir
bunlar:

• Microsoft Decision Trees


• Microsoft Clustering
• Microsoft Naïve Bayes
• Microsoft Sequence Clustering
• Microsoft Time Series
• Microsoft Association
• Microsoft Neural Network
• Microsoft Linear Regression
• Microsoft Logistic Regression

olarak isimlendirilirler. Bu 9 algoritmanın kombinasyonlarıyla gerçek iş problemlerine


çözümler üretilebilir, bu algoritmalar ilerleyen bölümlerde anlatılacaktır.

Microsoft SQL Server 2005 veri madenciliği özelliklerini göstermek için bu döküman
Microsoft SQL Server 2005 ile birlikte gelen AdventureWorksDW olarak adlandırılan
örnek veritabanını kullanmaktadır, bu örnek veritabanının Microsoft SQL Server 2005
ürününü kurarken kurulması gerekir, eğer kurulmamış ise program ekle kaldırdan
Microsoft SQL Server 2005 seçeneği altındaki ‘değiştir’ seçeneği ile sonradan
yüklenebilir.

Veri Madenciliği Algoritmaları


Veri madenciliği aloritmaları oluşturulan madencilik modelinin temeli niteliğindedir, SQL
Server 2005 deki değişik türdeki algoritmalar herhangi bir türde veri analizi yapmaya olanak
tanır.

Microsoft Decision Trees (Microsoft Karar Ağaçları)

Microsoft Karar Ağaçları algoritması sınıflama ve gerileme (regresyon) metodlarının ikisini


birden destekler ve tahminsel modellemede iyi çalışır, bu algoritma ile ayrık ve sürekli
özellikler kestirilebilir.

Bir model inşa etmede algortima veri kümesindeki her girdi özelliğinin tahmin edilmiş sonucu
nasıl etkileyeceğini belirler. Buna göre bu algoritma girdi özelliklerinin arasındaki en güçlü
ilişkileri kullanarak nodlar olarak adlandırılan bir dizi parça oluşturur. Yeni nodlar modele
eklendikçe bir ağaç şekli belirmeye başlar, ağacın en tepedeki düğümü tahmin edilen
özelliğin tüm popülasyon içindeki analizini ifade eder. Her eklenilen düğüm girdi
özelliklerinin tahmin edilen özeliğin durumunun üzerine dağılımına göre oluşturulur. Eğer bir
girdi özelliği tahmin edilen özelliğin bir durumdan diğer duruma benzemesine sebep oluyorsa
modele yeni bir düğüm eklenir. Model varolan düğümün üzerinde daha iyi bir tahmin
oluşturacak bir parça oluşturan özellik kalmayana kadar büyümeye devam eder. Model
tahmin edilmiş özelliğin oransız dağılımını sağlayan özellikler ve bu özelliklerin durumlarının
kombinasyonlarını bulmaya çalışır.

Microsoft Clustering (Microsoft Kümeleme)

Microsoft Clustering algoritması bir veri kümesindeki kayıtları benzer özellikteki kayıtları
aynı kümeye koyacak şekilde gruplama işlemi yapar, bu işlemi iteratif tekniklerle
gerçekleştirir, bu kümeler ile veriler arasında rahatlıkla görülemeyecek olan ilişkiler
keşfedilir, ek olarak bu algoritma kümeleme modelinden tahminler oluşturulmasına izin verir,.

Örneğin aynı şehirde yaşayan, aynı marka arabaya sahip, aynı tür yemek yiyen ve aynı tür bir
ürünü alan bir grup insan bu şehrin bir kümesidir (cluster). Diğer bir küme aynı restorana
giden, benzer gelire sahip, aynı yıl içinde iki kez yurt dışına giden insanlar grubu olabilir.

Bu kümelerin nasıl dağıldığı gözlenerek; veri kümesinde kayıtların nasıl bir etkileşimde
bulunduğu, bu etkileşimin sonuçta elde edilen tahmin çıktısını nasıl etkilediği daha iyi
anlaşılabilir.

Microsoft Naïve Bayes

Microsoft Naïve Bayes algoritması hızlı bir biçimde sınıflama ve tahmin etme işlemleri için
madencilik modelleri üretmeye yarar. Algoritma her girdi niteliğinin olası durumlarının,
verilen tüm tahmin edilebilir niteliklerin durumlaının, daha sonra bilinen girdi niteliklerini
temel alan bir sonuç tahmin edilebilmesi için olasılıklarını hesaplar, olasılıklar kübün
işlenmesi sırasında hesaplanır ve kayıt edilir.

Algoritma sadece ayrık veya ayıklaştırılmış nitelikleri destekler ve tüm girdi niteliklerinin
bağımsız olduğunu varsayar.

Microsoft Naïve Bayes algoritması veri madenciliği sürecinde bir başlangıç noktası olarak
kabul edilebilecek basit bir madencilik modeli oluşturur. Madencilik modelinde kullanılan
hesaplamaların hemen hemen tamamı küp işleme sürecinde yapıldığından sonuçlar çok çabuk
döner. Bu durum modeli veriyi keşfetmede ve değişik girdi niteliklerinin tahmin edilen
niteliğin değişik durumlarında dağılımını bulmada iyi bir seçenek yapar.

Microsoft Time Series

Microsoft Time Series algoritması sürekli değişkenlerin zamana göre OLAP ve ilişkisel veri
kaybaklarından tahmin edilmesini sağlayan modeller oluşturur. Örneğin; Microsoft Time
Series algoritması bir marketteki satışların ve karın küpteki tarihsel veriden tahmin edilmesi
için kullanılabilir.

Bu algortima kullanılarak tahmin etmek için bir veya daha fazla değişken seçilebilir, fakat bu
değişkenler sürekli olmalıdır. Her model için sadece bir durum serisi olabilir. Durum serisileri
seriler içinde bir yer belirler, mesela bir yıl içinde birkaç aydaki satışlara bakarken belirlen
tarih bir durum serisidir. Bir durum bir değişken kümesi içerebilir (örneğin farklı şubelerdeki
satışlar gibi). Microsoft Time Series algoritması tahminlerinde capraz-değişkenli(cross-
variable) korelasyon kullanabilir. Örneğin bir şubadeki önceki satışlar başka bir şubedeki
şimdiki satışların tahmini konusunda yararlı olabilir.

Microsoft Association

Microsoft Association algoritması özellikle market sepeti analizleri için dizayn edilmiştir.
Algoritma her nitelik/değer çiftini (örneğin ürün/bisiklet) bir parça(Item) olarak ele alır. Bir
parça kümesi(Itemset) bir sorgudaki parçaların kombinasyonudur. Algoritma daha fazla
sorguda bulunmaya yatkın parça kümelerini bulmak için veri kümesini tarar. Support
parametresi bir itemset’in kayda değer olarak ele alınması için kaç sorguda görüneceğini
belirler. Örneğin bir sık itemset {cinsiyet=”erkek”, medeni durum=”evli”,yaş=”30-35”}
değerlerini içerebilir. Her ıtemset’in büyüklüğü içerdiği item(parça)’ların sayısıdır, bir önceki
örnekte büyüklük 3’tür.

Sık olarak ilişki (association) modeli ilişkili veri modelleri için çalışır, örneğin bir müşteri
listesi ve buna bağlı satın alma listesi gibi. Eğer bir veri kümesinde ilişkili tablolar mevcut ise
her ilişkili anahtar (örneğin satın alma tablosundaki ürün) bir item olarak ele alınır.

Microsoft Association algoritması ayrıca itemsetler ile ilişkili kurallar bulur.ilişki


modelindeki bir kural A,B=>C (meydana geleme olasılığı ile ilişkili) olarak düşünülebilir,
burada A,B,C nin tümü sık itemsetlerdir. ‘=>’ işareti C nin A ve B den tahmin edilmiş
olduğunu gösterir. Olasılık esşik değeri (probability threshold) bir kuralın kural olarak ele
almak için gerekli mininmum olasılık değerini ifade eder. Veri madenciliği literatüründe
olasılık itimat(confidence) olarak ta anılır.
İlişki modelleri çapraz satış (cross sell) veya müşterek filtreleme (collaborative filtering)
uygulamalarında da kullanışlıdır. Örneğin bir kullanıcının sepetindeki item’lardan satın
almak isteyebileceği item’ları bir ilişki modeli kullanarak tahmin etmek mümkündür.

Microsoft Sequence Clustering

Microsoft Sequence Clustering algoritması ayrık değer serileri içeren sıra bağımlı verilerin
analiz edilmesinde kullanılır. Serilerin içindeki sıra özelliği daima belirli bir sıradaki olayları
içerir (örneğin tıklama yolu(click path)). Algortima sıraların durumları arasındaki geçişleri
analiz ederek ilgili sıraların gelecekteki durumlarını tahmin edebilir.

Microsoft Sequence Clustering algoritması sequence ve clustering algoritmalarının bir


hibritidir. Algortima birden fazla durumu sıra özellikleri ile bu sıraların benzerliklerine
dayalı olarak gruplar. Bu algoritmanın tipik bir kullanım senaryosu olarak web
portallarının müşteri analizi verilebilir. Bir web portalı birbiriyle ilişkili başlıklar içerebilir,
örneğin haberler, hava durumu, finans, mail ve spor. Her portal müşterisi bu başlıkların
sıralı bir tıklayıcısıdır. Microsoft Sequence Clustering algoritması bu müşterileri dolaşma
modellerine gore aşağı yukarı homojen gruplara gruplayabilir. Ardından bu gruplar
görselleştirilerek müşterilerin portalı nasıl kullandığı detaylandırılabilir.

Microsoft Neural Network

Microsoft Neural Network algoritması Microsoft SQL Server 2005 Analiz servislerinde
neronlardan oluşan çok tabakalı (multilayer) bir perceptron network’ü oluşturarak
sınıflama (classification) ve gerileme(regresyon) madencilik modelleri üretir. Algritma
tüm durum kümelerini bilinen kesin sınıflama kümelerinden iterative olarak karşılaştırma
yaparak tahmin edilmiş sınıflama kümelerini elde eder. Başlangıç sınıflamasının ilk
iterasyonundan doğan hatalar tüm durum kümeleri için temel oluşturur ve bir sonraki
iterasyon için network’ün performansını değiştirmek için kullanılır ve bu böyle devam
eder.
Daha sonra girdi niteliklerine göre bu olasılıklar bir çıktı olarak tahmin edilmiş bir nitelik
oluşturmak için kullanılabilir.
Bu algoritmanın Microsoft Decision Trees algoritmasından en önemli farkı hatayı minimize
etmek ve network parametrelerini optimize etmek için öğrenme süreci işletmesidir, oysa
Microsoft Decision Trees algoritması kuralları maksimum bilgi kazancı sağlamak için
böler.
Bu algoritma ayrık ve sürekli niteliklerin tahmininde kullanılabilir.

Microsoft Linear Regression

Microsoft Linear Regression algoritması, Microsoft Decision Trees algoritmasının özel bir
yapılandırmasıdır, bu algortimada parçalama yapılmaz (tüm gerileme (regression)
formülü tek bir kök düğümde inşa edilir).
Algoritma sürekli niteliklerin tahmin edilebilmesini destekler.

Microsoft Logistic Regression


Microsoft Logistic Regression algoritması Microsoft Neural Network algoritmasının özel bir
yapılandırmasıdır. Ağdaki gizli katmanların yok edilmesiyle elde edilir
Algoritma sürekli ve ayrık niteliklerin tahmin edilebilmesini destekler.

Madencilik Ortamının Hazırlanması


Bu döküman boyunca sekil 1’de gösterilen Business Intelligence Development Studio
kullanılacaktır, bu tool Microsoft Sql Server 2005 kurulumu sırasında kurulmalıdır.

Şekil 1 Business Intelligence Development Studio

Microsoft sql server ile madencilik ortamının hazırlanması için üç aşama gereklidir; SQL
Server Database ini hazırlamak, Analysis Services Database ini hazırlamak, ve madencilik
modellerini oluşturup çalıştırmak.

SQL Server Database’ini hazırlamak

AdventureWorksDW bu dökümanda kullanılacak olan veritabanıdır. Bu veritabanı sql


sever 2005 ile birlikte kurulmalıdır, burada dikkat edilmesi gereken nokta bu
veritabanının kurulumunun varsayılan olarak seçili olmadığıdır, seçemek için kurulum
sırasında sorulduğunda Workstation Components Books online and Samples
AdventureWorksDW Sample Data Warehouse seçeneği seçilmelidir. Eğer kurulum
sırasında seçilmemiş ise Denetim Masası  Program Ekle Kaldır  Microsoft SQL
Server 2005 seçeneği altındaki değiştir butonu tıklanarak da daha sonradan
yüklenebilir.
Analysis Services Database’ini hazırlamak

Madencilik modelleri ile çalışmaya başlamadan once aşağıdaki işlemler tamamlanmalıdır.


1. yeni bir Analysis Services projesi hazırlamak
2. data source (veri kaynağı) oluşturmak.
3. data source view (veri kaynağı görüntüsü) oluşturmak.

Analysis Services Projesi oluşturmak


Her Analysis Services projesi bir Analysis Services veritabanında bir şema tanımlar.
Analysis Services veritabanı madencilik modelleri,OLAP küpleri ve içerdiği tamamlayıcı
nesneler ile tanımlanır.
Bir Analysis Services projesi oluşturmak için
1. Business Intelligence Development Studio açılır.
2. dosya menüsünden newperoject seçenekleri seçilir.
3. proje tipi olarak Analysis Services Project seçilir, ve projeye bir isim verilir bu
dökümanda isim olarak AdventureWorks kullanılmıştır.
4. Ok tıklanır.
Yeni proje Business Intelligence Development Studio da açılacaktır.

Data Source oluşturmak

Bir data source pojede kayıt edilen ve Analysis Services veritabanına kayıt edilen veri
bağlantısı olarak nitelendirilebilir. Bu asıl verinin bulunduğu sunucu adı, database ve diğer
gerekli bağlantı parametrelerini içerir.
Bir data source oluşturmak için
1. Solution Explorer tabında Data Source proje seçeneğini sağ tıklayın ve çıkan menüde
New Data Source seçeneğini seçin.
2. Welcome sayfası açılır, Next butonunu tıklayın.
3. AdventureWorksDW veritabanına bir bağlantı oluşturmak için New butonunu
tıklayın.
4. Connection Manager dialoğu açılır. Server name drop-down kutusunda,
AdventureWorksDW database inin bulunduğu sunucu adını yazın (örneğin,
localhost), database tanımlarınızı (credentials) girin ve Select the database on the
server drop-down kutusunda AdventureWorksDW veritabanını seçin.
5. Connection Manager dialoğunu kapatmak için OK butonunu tıklayın.
6. Next butonunu tıklayın.
7. varsayılan olarak data source Adventure Works DW olarak isimlendirilir. Finish
butonunu tıklayın
yeni data source, Adventure Works DW, Solution Explorer tabında Data Sources
klasörünün altında görünür olacaktır.
Data Source View oluşturmak

data source view data source’un bir soyutlamasıdır, verinin yapısını proje için daha
uygun hale getirmek için değiştirmeye olanak tanır. data source view2ler kullanılarak
sadece proje ile ilgili olan tablolar seçilebilir, tablolar arasında bağlantılar sağlanabilir ve
hesaplanan kolonlar ve isimlendirilmiş görünümler ile orjinal data değiştirilmeden veri
üzerinde değiştirme yapmaya olanak tanır.
Bir data source view oluşturmak için
1. Solution Explorer tabında Data Source View proje seçeneğini sağ tıklayın ve çıkan
menüde New Data Source View seçeneğini seçin.
2. Welcome sayfası açılır, Next butonunu tıklayın.
3. önceki bölümde oluşturulan Adventure Works DW data source Relational data
sources penceresinde varsayılan olarak seçili gelir. Next butonu tıklanır.
4. eğer yeni bir data source oluşturmak isteniyorsa New Data Source butonu
tıklanarak Data Source Wizard başlatılabilir.
5. aşağıdaki listede bulunan tabloları yeni data source view’e eklemek için sağ ok
butonunu tıklayın:
6. vAssocSeqLineItems
7. vAssocSeqOrders
8. vTargetMail
9. vTimeSeries
10. Next butonunu tıklayın.
11. varsayılan olarak data source view Adventure Works DW olarak isimlendirilecektir.
Finish butonunu tıklayın
12. Data Source View Editörü the Adventure Works DW data source view’I gösterir şekilde
şekil 2 de gösterildiği gibi açılacaktır.ayrıca Solution Explorer tabı yeni data source
view’i içerecektir. buradan data source view istenildiği gibi yeniden düzenlenebilir.
Şekil 2 Adventure Works DW data source view

Data Source View’i Düzenlemek


Data Source View Editörü kullanılarak datanın görünümünde istenildiği gibi değişrirmeler
yapılabilir. Örneğin, herhangi bir nesnenin adı datanın orjanl adından ziyade projeye daha
uygun bir ad ile değiştirilebilir, orjnal veri kaynağında bir değişiklik olmadan nesnelere
daha anlamlı isimlerle hitap etmek mümkün olur.
Market sepeti (market basket) ve sıra kümeleme (sequence clustering) senaryoları için
vAssocSeqOrders ve vAssocSeqLineItems tabloları arasında bir çoktan-bire(many-to-one)
ilişki tanımlamak gerekir. Bu ilişki kullanılarak vAssocSeqLineItems tablosunu model
oluşturmak için vAssocSeqOrders tablosunun bir kümesi olarak tanımlamak mümkün
olur.
Yeni bir ilişki tanımlamak için
1. data source view’de , vAssocSeqLineItems tablosundan OrderNumber kolonunu
seçin.
2. seçilen kolonu vAssocSeqOrders tablosuna sürükleyin ve burada OrderNumber
kolonunun üstüne bırakın.
Bu işlem ile vAssocSeqOrders ve vAssocSeqLineItems kolonları arasında yeni çoktan bire
ilişki tanımlanmış olur.

Madencilik modelleri ile çalışmak


Şekil 4 te gösterilen data mining editörü madencilik modelleri ile çalışmak için gerekli tüm
araçları içerir.
Şekil 4 Data mining editor

Bu döküman sql server ile veri madenciliğini anlatmak için hedefe yönelik toplu mail
gönderimi (targeted mailing) senaryosunu anlatmaktadır. Bu senaryoda modeller inşa
edilecek, bu modellerin tahminsel yetenekleri Mining Accuracy Chart view ile
karşılaştırılacak ve Prediction Query Builder ile tahminler oluşturulacaktır.

Örnek Senaryo: Hedefe Yönelik Toplu Mail


Gönderimi (Targeted Mailing)
Adventure Works şirketinin satış departmanı özel müşterilere yapacağı bir mail kampayası ile
satışlarını arttırmak istemektedir. Bilinen müştirlerin, potansiyel müşterilere uygulanabilir
özelliklerini araştırarak Adventure Works şirketinden kimin daha fazla ürün satın alma
potansiyeline sahip olduğunu belirlemek istemektedirler.
Ek olarak satış departmanı veritabanlarında bulunan müşterilerin mantıksal gruplamalarını
görmek istemektedirler. Örneğin bir gruplama benzer satınalma ve demografik özellikleri
olan müşterileri içerebilir.
Adventure Works şirketi geçmiş müşterileri ve potansiyel müşterileri için birer listeye
sahiptir.
Bu listeler üzerinde veri madenciliği süreçleri tamamlandığında satış departmanı
aşağıdaki bilgilere sahip olacaktır,
• potansiyel müşteriler içinde müşteri olma ihtimali en yüksek olan kişileri gösteren bir
madencilik modeli kümesi.
• Geçerli müşterilerinin bir kümelemesi
Bu senaryonun tamamlanabilmesi için Microsoft Naïve Bayes, Microsoft Decision Trees,
and Microsoft Clustering algorithmaları kullanılacaktır. Senaryo beş ana başlıkta
tamamlanacaktır, bunlar;
• Madencilik modeli yapısnı oluşturma
• Madencilik modelini oluşturma
• Madencilik modelini inceleme
• modellerinin doğruluğunu test etme
• Madencilik modellerinden tahminler oluşturma

Targeted Mailing Madencilik Modelinin Yapısını Sihirbaz(wizard) Ile


Oluşturmak
Ilk adım Mining Model Wizard ile madencilik yapısını oluşturmaktır, Mining Model Wizard
Microsoft Decision Trees algoritmasını baz alarak bir başlangıç madencilik modeli zaten
oluşturacaktır.

targeted mailing madenciliği yapısını oluşturmak için


1. Solution Explorer tabındaki Mining Structures düğümünü sağ tıklayın çıkan menüde
New Mining Structure seçeneğini seçin.
Mining Model Wizard (madencilik modeli sihirbazı) açılır.
2. Welcome sayfası açılır, Next butonunu tıklayın.
3. From existing relational database or data warehouse seçeneğini seçim ve Next
butonunu tıklayın.
4. Which data mining technique do you want to use? Seçeneği altındaki Microsoft
Decision Trees seçeneğini seçin.
5. Next butonunu tıklayın.
Varsayılan olarak Adventure Works DW Select Data Source View penceresinde
seçili olacaktır. Browse butonuna basılarak data source view’deki tablolar görülebilir.
6. Next butonunu tıklayın.
7. vTargetMail tablosunun yanındaki Case check box’ını seçin ve Next butonunu
tıklayın.
8. CustomerKey kolonunun yanındaki Key check box’ını seçin.
Eğer data source view’deki kaynak tablo bir key(anahtar) içeriyorsa Mining Model
Wizard otomatik olarak bu kolonu model için key olarak seçecektir.
9. BikeBuyer kolonunun yanındaki Input ve Predictable check box’larını işaretleyin.
Bu hareket bu kolonu yeni veri kümelerinde tahmin için etkin hale getirecektir. Bir
kolon predictable olarak işaretlendğinide Suggest butonu etkin olur, bu butona
tıklandığında bu kolona en yakın değerleri listeleyen Suggest Related Column
dialoğu açılır.
Suggest Related Columns dialoğu nitelikleri bu nitekliklerin tahminsel nitelik ile
korelasyonuna gore sıralar. Columns with a value higher than 0.05 değerinden daha
büyük değere sahip kolonlar otomatik olarak modele dahil edilir, bu bir tavsiye
niteliğindedir, eğer bu tavsiye uygunsa OK butonu tıklanarak dialog kapatılır ve seçili
kolonlar wizard’da input olarak seçilmiş olur.
10. aşağıdaki tablodaki kolonların yanlarındaki Input check box’larını seçili hale getiriniz.

Age YearlyIncome Region


CommuteDistance HouseOwnerFlag TotalChildren
EnglishEducation LastName
EnglishOccupation MaritalStatus
FirstName NumberCarsOwned
Gender NumberChildrenAtHome

11. Next butonunu tıklayın.


12. Specify Columns' Content and Data Type, bölümünde Detect butonunu tıklayın.
Bu işlemle numeric değere sahip kolonların bir algoritma ile sürekli veya ayrık
değerlere sahip olup olmadığı belirlenir. Örneğin bir kolon gerçek satış rakamlarını
içeriyorsa sürekli değere sahiptir, ancak 1 = < $25,000; 2 = $25,000 dan $50,000,
vb gibi satış oranlarını temsil eden rakamlardan oluşuyorsa ayrıktır.
13. Next butonunu tıklayın.
14. Mining Structure Name and Mining Model Name, alanlarına Targeted Mailing
yazın.
15. Finish butonunu tıklayın.
data mining editorü şekil 5’de gösterildiği gibi açılır.

Şekil 5 Targeted Mailing madencilik yapısı tabı


Madencilik modellerini düzenlemek
Başlangıç madencilk yapısı sadece Microsoft Decision Trees modelini baz alan bir model
içermektedir. Bu bölümde, data mining editörünün Mining Models tabı kullnılarak
Microsoft Naïve Bayes modeli ve Microsoft Clustering modelini baz alan iki ek model daha
tanımlanacaktır.
Microsoft Clustering modeli oluşturmak için
1. Mining Models tabını tıklayın.
2. Targeted Mailing seçeneğini sağ tıklayın açılan menüde New Mining Model
seçeneğini seçin.
3. Model Name alanına TM_Clustering yazın.
4. Algorithm Name alanında Microsoft Clustering seçeneğini seçin.
5. OK butonunu tıklayın.
Mining Models tabında yeni bir model görünür olacaktır. Microsoft Clustering modeli
sürekli ve ayrık nitelikleri kümeleyebilir. Kolon kullanımı ve özellikler yeni model için
düzenlenebilir.

Microsoft Naïve Bayes modeli oluşturmak için

1. Right-click Targeted Mailing seçeneğini sağ tıklayın açılan menüde New Mining
Model seçeneğini seçin.
2. Model Name alanına TM_NaiveBayes yazın.
3. Algorithm Name alanında Microsoft Naïve Bayes seçeneğini seçin.
4. OK butonunu tıklayın.
Microsoft Naïve Bayes algortimasının Age ve Yearly Income kolonlarını sürekli olduğu
için desteklenmediğini ve göz ardı edileceğini belirten bir dialog kutusu açılacaktır.
5. Yes butonunu tıklayın.
Mining Models tabında yeni bir model görünür olacaktır. Microsoft Clustering modeli
sürekli ve ayrık nitelikleri kümeleyebilir. Kolon kullanımı ve özellikler yeni model için
düzenlenebilir. Bu döküman kapsamında değerler olduğu gibi bırakılmalıdır.

Madencilik Modellerini İşlemek


Yukarıda gerçekleştirilen işlemler neticesinde madencilik yapısı ve parametreleri işlemeye
hazır hale gelmiştir, artık modeler gerçek veri üzerinde işlenebilir.
projeyi yerleştirmek ve madencilik modellerini işlemek için
• F5 tuşuna basın.
Analysis Services’in ne tür bir hesap altında çalıştığına bağlı olarak data source’un
impersonation information (bağlantı bilgileri) parametrelerinin değiştirilmesi gerekebilir.
Değiştirmek için solution explorer tabında Adventure Works DW.ds açılmalı ve burada
Impersonation Information tabı gerektiği gibi düzenlenmelidir.

Bu işlemin ardından Analysis Services database’i server’a yerleştirilir, şimdi aşağıda


anlatıldığı gibi madencilik modelleri işlenmelidir.
madencilik modellerini işlemek için
1. Mining Model menüsünde Process seçeneği seçilir.
Process Mining Structure dialog kutusu Targeted Mailing seçeneğini listeler
şekilde açılacaktır..
2. Run butonu tıklanır.
Process Progress dialog kutusu açılır, burada model işleme süreci ile ilgili bilgiler
verilir. Bu işlem bilgisayara bağlı olarak biraz zaman alabilir.
3. model işleme süreci bittiğinde iki dialog kutusununda üzerindeki Close butonu
tıklanır.

Madencilik Modellerini Analiz Etmek


Modellerin işlenmesinin ardından Mining Model Viewer tabı aracılığı ile görüntülenebilirler,
tabın en üstündeki Mining Model combo box’I aracılığı ile madencilik yapısı içinde
modeler incelenebilir.

Microsoft Decision Trees Modelinin İncelenmesi


Mining Model Viewer tabı varsayılan olarak Targeted Mailing madencilik modelindeki ilk
modeli açacaktır. Tree viewer iki tab içerir bunlar, Decision Tree ve Dependency
Network tablarıdır.

Decision Tree
Decision Tree tabında Targeted_Mailing modelinden türeyen tüm ağaç yapıları
incelenebilir. Burada her tahminsel nitelik için bir ağaç modeli mevcuttur. Bizim
senaryomuzda tek tahminsel nitelik Bike Buyer olduğundan görüntülenecek tek bir ağaç
mevcuttur. Eğer daha fazla ağaç olsaydı Tree kutusu aracılığı ile diğerleri de seçilebilirdi.

Tree viewer varsayılan olarak ağacın ilk üç düzeyini gösterir. Eğer ağaç üç düzeyden daha
az düzey içeriyorsa sadece olanlar görüntülenir. Tree viewer sadece var olan düzeyleri
gösterir. Daha fazla düzey görebilmek için Show Level sliderı veya Default Expansion
kutusu kullanılabilir.
Şekil 6 da gösterilen ağacı elde etmek için
1. Show Level Sliderını 5 değerine sürükleyin.
2. Background list seçeneğinde 1 değerini tıklayın.
Bu ayarların bu şekilde yapmış olmak ağacın her düğümünde bike buyer durumu 1 e
eşit olanların bulunduğu manasına gelir. Ayrıca düğümün rengi ne kadar koyu ise bike
buyer değerinin 1 e eşit olma durumunun o düğümde o kadar fazla olduğu anlamına
gelir.
Şekil 6 Targeted Mailing modelinin Decision Tree tabı
decision tree deki her düğüm üç parka bilgi gösterir
• Bu düğümün bir önceki düğüme ulaşması için gerekli koşul. Tam düğüm yolu bir
tooltip’te veya açıklama bölgesinde gösterilir.
• Tahminsel kolon için durumların dağılımını popülariteye gore tanımlayan bir
histogram. Histogram controlü ile ne kadar durum gösterileceği belirlenebilir.
• Eğer tahminsel nitelik Background control de belirtildi ise Durumların
konsantrasyonu Durumların konsantrasyonu.
Eğer drillthrough seçeneği etkin ise, her düğümün desteklediği öğrenme durumları
düğüme sağ tıklayıp Drillthrough seçeneği tıklanarak görülebilir.

Dependency Network
Dependency Network tabı madencilik modelinin tahminsel yeteneğine katkıda bulunan
niteliklerin ilişkisini gösterir. Targeted Mailing modeli için dependency network’ü şekil 7’de
gösterilmiştir.
Şekil 7 Targeted Mailing modelinin Dependency Network tabı
Şekil 7’de de görüldüğü gibi merkezdeki düğüm tahminsel nitelik olan Bike Buyer
düğümüdür. Her bağlı düğüm tahmin edilen çıktı değerini etkileyen bir niteliği belirler,
yan taraftaki slider bu niteliklerin hangilerinin çıktıyı daha çok etkilediğini belirlemek için
kullanılır, öyleki slider aşağı doğru kaydırıldığında çıktıyı daha az etkileyen düğümler
kaybolmaya başlayacaktır.
Aşağıdaki renk bilgi bölümünden hangi renkteki düğümün tahmin edildiği, hangisinin
tahmin değeri oluşturmak için kullanıldığı görülebilir.
Microsoft Clustering Modelinin İncelenmesi
Editörün tepesindeki Mining Model combo box’ından TM_Clustering seçeneğini seçin. Bu
seçenek için cluster viewer dört alt tab açacaktır. Bunlar: Cluster Diagram, Cluster
Profiles, Cluster Characteristics, ve Cluster Discrimination tablarıdır. Varsayılan
olarak editor ilk önce Cluster Diagram tabını gösterir olacaktır.

Cluster Diagram
Cluster Diagram tabı ile algoritma tarafından bulunan kümeler arasındaki ilişkiler
incelenebilir. Kümeler(cluster) arasındaki çizgiler yakınlığı gösterir ve benzerlikleri ile
orantılı olarak koyu renkli çizilirler. Cluster’ın kendi rengi Shading Variable ve State
kutularında seçilmiş olan değişken ve durumunun frekansına gore koyu renk
alır.varsayılan değer population’dır fakat bu başka bir nitelik olarak değiştirilebilir.
Soldaki slider ile zayıf linkler filtrelenebilir.
Örneğin Shading Variable seçeneğini Bike Buyer ve State seçeneği 1 olarak
belirlendiğinde şekil 8’de gösterildiği gibi 5’inci cluster en fazla bike buyer’ a sahip cluster
olduğu anlaşılır. Ayrıca en güçlü ilişki 4’üncü cluster ile 7’inci cluster arasındadır.

Figure 8 TM_Clustering modelinin Cluster Diagram tabı


Cluster Profiles
Cluster Profiles tabı TM_Clustering modelinin kapsamlı bir görünümünü verir. Şekil 9’da
görüldüğü gibi, Cluster Profiles tabı her cluster için bir kolon içerir, ilk kolon en az bir
cluster ile ilişkili olan nitelikleri listeler. Her cluster için niteliklerin durumlarının dağılımları
editörün kalanını kaplar. Bars per histogram kutusunda ayrık değişkenlerin dağılımları
renklendirilmiş olarak gösterilir. Sürekli nitelikler ortalama ve standart sapmayı belirten
elmas grafiği ile gösterilir.

Şekil 9 TM_Clustering modelinin Cluster Profiles tabı


Cluster Characteristics
Cluster Characteristics tabı kullanılarak bir cluster’I oluşturan karakteristikler daha
ayrıntılı gözlenebilir. Örneğin şekil 10 da görüldüğü gibi 5’inci cluster’daki insanlar (Bike
Buyer) evden işe kısa mesafede gitmek (commute), araba sahibi olmamak ve evil olmak
gibi karakteristiklere sahip olmaya eğilimliler.

Şekil 10 TM_Clustering modelinin Cluster Characteristics tabı


Cluster Discrimination
Cluster Discrimination tabı kullanılarak bir cluster’ı diğerinden ayıran karakteristikler
incelenebilir. Iki cluster editörün üstündeki First cluster ve Second cluster alanlarından
seçildikten sonra editor farklılıkları yaratan nitelikleri belirler ve sıralı olarak gösterir.
Şekil 11’de Cluster 5 ile Cluster 10 kümelerini karşılaştırılmıştır. Cluster 5 en fazla bike
buyer (bisiklet alıcısı) yoğunluğuna ve Cluster 10 en az bike buyer (bisiklet alıcısı)
yoğunluğuna sahip kümeler. Örneğin Cluster 10 daki insanlar North America’dan ve genç
(23-31) olma eğilimindeyken, Cluster 5 deki insanlar Europe’dan ve kısa ev-iş mesafesine
(commute distance) sahip(0-1 mile) olma eğilimine sahipler.

Figure 11 TM_Clustering modelinin Cluster Discrimination tabı


Microsoft Naïve Bayes Modelinin İncelenmesi
Mining Model combo box’ını kullanarak TM_NaiveBayes modeline geçiş yapın. Bu model
için Naïve Bayes viewer dört tab içerecektir. Bunlar; Dependency Network, Attribute
Profiles, Attribute Characteristics, ve Attribute Discrimination tablarıdır.

Dependency Network
Dependency Network tabı Tree viewer’in Dependency Network tabı ile aynı şekilde
çalışır.editördeki her düğüm bir niteliği ve her düğümün arasındaki çizgiler ilişkiyi ifade
eder. Şekil 12 tahminsel nitelik olan Bike Buyer colonunu etkileyen düğümleri
göstermektedir.

Figure 12 TM_NaïveBayes modelinin Dependency Network tabı


Sağdaki slider2ı aşağı doğru sürükledikçe Bike Buyer kolonunu en fazla etkileyen
düğümler kalıp az etkileyenler yok olacaktır. Buradan sahip olunan otomobil sayısının
(number of cars owned) bike buyer niteliğini en fazla etkileyen factor olduğu görülecektir.
Attribute Profiles
Attribute Profiles tabı girdi değerlerinin farklı durumlarının tahminsel çıktı değerini nasıl
etkilediğini incelemek için kullanılır.
Predictable alanında Bike Buyer seçeneğini seçiniz. Tahminsel niteliğin durumunu
etkileyen nitelikler her durumdarıyla, değerleriyle ve her durumun dağılımıyla tahminsel
niteliğin her durumu için listelenecektir.
Şekil 13 Bike Buyer kolonu için Attribute Profiles tabını göstermektedir.

Figure 13 TM_NaïveBayes modelinin Attribute Profiles tabı


Attribute Characteristics
Attribute Characteristics tabı ile seçilen nitelik ve değer için, diğer nitelik ve değerlerin
ne sıklıkta bulunduğunun durumu görüntülenebilir.
Attribute alanında Bike Buyer ve Value alanında 1 seçiniz.
Örneğin şekil 14 görüldüğü gibi evde hiç çocuğu olmayanlar en fazla bisiklet almaya
yatkın olanlar olarak gözükmektedir.

Figure 14 TM_NaïveBayes modelinin Attribute Characteristics tabı


Attribute Discrimination
Attribute Discrimination tabı seçilen tahminsel nitelik ile diğer nitelik değerleri
arasındaki ayrık ilişki incelenebilir. TM_NaiveBayes modeli sadece 1 ve 0 olmak üzere iki
duruma sahip olduğundan editörde bir değişiklik yapmaya ihtiyaç yoktur.
Örneğin şekil 15 arabası olmayan insanların bisiklet almaya iki adet arabası olanların
bisiklet almamaya eğilimli olduğunu göstermektedir.

Figure 15 TM_NaïveBayes modelinin bir nitelik değeri için Attribute


Characteristics tabı

You might also like