kurumsal verİlerİn yapay zek modellerİlefatihg/kurumsalg.pdf · i kurumsal verİlerİn yapay...
TRANSCRIPT
KURUMSAL VERİLERİN YAPAY ZEKÂ MODELLERİ İLE İŞLENMESİ İÇİN MODELLEME ARACI ALT YAPI TASARIM
VE GERÇEKLEŞTİRİMİ
DESIGN AND IMPLEMENTATION OF MODELLING TOOL FOR PROCESSING ENTERPRISE DATA BY ARTIFICIAL
INTELLIGENCE MODELS
FATİH MEHMET GÜLEÇ
Hacettepe Üniversitesi
Fen Bilimleri Enstitüsü Yönetmeliğinin
BİLGİSAYAR MÜHENDİSLİĞİ Anabilim Dalı İçin Öngördüğü
YÜKSEK LİSANS TEZİ
olarak hazırlanmıştır
2007
Fen Bilimleri Enstitüsü Müdürlüğü'ne,
Bu çalışma jürimiz tarafından BİLGİSAYAR MÜHENDİSLİĞİ ANABİLİM DALI'nda YÜKSEK LİSANS TEZİ olarak kabul edilmiştir.
Başkan :….......................................
Prof. Dr. Ünal YARIMAĞAN
Üye (Danışman) :.….......................................
Yrd. Doç. Dr. Harun ARTUNER
Üye :….......................................
Yrd. Doç. Dr. İbrahim ZOR
ONAY
Bu tez ...../...../..... tarihinde Enstitü Yönetim Kurulunca belirlenen yukarıdaki jüri üyeleri
tarafından kabul edilmiştir.
...../...../.....
Prof.Dr. Erdem YAZGAN
FEN BİLİMLERİ ENSTİTÜSÜ MÜDÜRÜ
i
KURUMSAL VERİLERİN YAPAY ZEKA MODELLERİ İLE İŞLENMESİ İÇİN MODELLEME KÜTÜPHANESİ ALT YAPI TASARIM VE GERÇEKLEŞTİRİMİ FATİH MEHMET GÜLEÇ
ÖZ
Kurumsal Kaynak Yönetimi ürünlerinin gelişmesi ve yaygınlaşması ile beraber
işletmelerin veri tabanlarında sakladıkları veri türleri de paralel olarak genişlemektedir.
İşletmelerin iş süreçlerinden temin ettikleri verilerin karar verme aşamasında bilgiye
dönüştürülmesi işi her geçen gün önem kazanmaktadır.
Bu tez kapsamında, işletmelerin mevcut verilerinden anlamlı bilgilerin üretilmesine
yönelik modelleme aracı tasarlanmıştır. Hazırlanan bu araç ile veri madenciliğinde
kullanılan farklı tekniklerin ortak bir modelleme ortamında toplanması sağlanmıştır.
Tekniklerin bir araya toparlanması yaklaşımı ile işletmelerin kurumsal verilerden
ilgilenen bilgileri daha hızlı ve daha az uzmanlık bilgisiyle elde edebilmeleri
amaçlanmıştır.
Hazırlanan bu araç ile modellerin ortak bir yapı içerisinde tanımlanmasına ve
çalıştırılmasına olanak verecek alt yapı kütüphanesi tanımlanmıştır. İşletim ortamı
içerisinde modellerin birbirleri ile etkileşimli çalışması yeteneği kazandırılmıştır.
Modeller için ortak veri kaynakları, veri tabanları, kullanıcılar, diğer modeller olabilecek
şekilde genişletilmiştir. Yine bu tez kapsamında, yukarıda sıralanan özellikler
gözetilerek, Doğrusal Programlama ve Support Vector Machine uygulamaları
örneklenmiştir.
Anahtar Sözcükler: Yöneylem Araştırması, İş Zekâsı, Veri Madenciliği
Danışman: Yrd. Doç. Dr. Harun ARTUNER, Hacettepe Üniversitesi, Bilgisayar
Mühendisliği Bölümü
ii
DESIGN AND IMPLEMENTATION OF MODELLING LIBRARY FOR PROCESSING ENTERPRISE DATA BY ARTIFICIAL INTELLIGENCE MODELS
FATİH MEHMET GÜLEÇ
ABSTRACT
In a parallel way to the extended usage of Enterprise Resource Planning Softwares;
types of data stored on the company databases improve. Transformation of data that is
provided by companies during their working processes into information while decision
making becomes more important day by day.
In the scope the thesis, a modelling tool is designed, which aims to generete
information from exsisting data of the companies. Designing this modelling tool,
provides assembling different techniques used in data mining into a common modelling
environment. The goal of assembling approach of the techniques is to make them
easily reached by the companies interested in any information in the instutional data
with a less expertise knowledge.
A Substructure library is defined by this tool, which enables defining and operating the
models in the same composition. In the execution environment, the models gained the
ability of working interactively with each other. The common data sources for models
are extended to data bases, users and the other models. Also in the scope of the
thesis, Linear Programming and Support Vector Machine applications are
exemplificated by considering the features listed below.
Key Words: Operational Research, Business Intelligence, Data Mining
Advisor: Asst. Prof. Dr. Harun ARTUNER, Hacettepe Üniversitesi, Bilgisayar
Mühendisliği Bölümü
iii
TEŞEKKÜR
Yazar, bu çalışmasının gerçekleşmesinde katkılarından dolayı, aşağıda adı geçen kişi ve kuruluşlara içtenlikle teşekkür eder.
Sayın Prof. Dr. Ünal Yarımağan, tez metnini inceleyerek biçim ve içerik bakımından son şeklini almasını sağlamıştır.
Sayın Yrd. Doç Dr. Harun Artuner (tez danışmanı), çalışmanın sonuca ulaştırılmasında ve karşılaşılan güçlüklerin aşılmasında yön gösterici olmuştur.
Sayın Dr. İbrahim Sinir, tez metnini inceleyerek biçim ve içerik bakımından son şeklini almasını sağlamıştır.
Sayın Dr. Ebru Sezer, tez metnini inceleyerek biçim ve içerik bakımından son şeklini almasını sağlamştır.
Bilgisayar Mühendisliği Bölümü, tez çalışmasının ortaya konmasında gerekli kaynakları sağlamıştır.
Desteklerini her zaman hissettiğim aileme teşekkür ederim.
iv
İÇİNDEKİLER DİZİNİ
ÖZ ................................................................................................................................. 1
ABSTRACT ................................................................................................................... 2
TEŞEKKÜR ................................................................................................................... 3
İÇİNDEKİLER DİZİNİ ..................................................................................................... 4
SİMGELER VE KISALTMALAR .................................................................................... 8
ŞEKİLLER DİZİNİ .......................................................................................................... 9
ÇİZELGELER DİZİNİ ................................................................................................... 11
1. GİRİŞ ......................................................................................................................... 1
2. KURUMSAL VERİLERİN İŞLENMESİNE İLİŞKİN KAVRAMLAR ............................. 4
2.1. İş Zekâsı .............................................................................................................. 6
2.2. Karar Destek Sistemleri ....................................................................................... 7
2.3. Yöneylem Araştırmaları ....................................................................................... 8
2.3.1. Doğrusal programlama ................................................................................. 9
2.3.2. Tamsayılı programlama ................................................................................ 9
2.3.3. Şebeke eniyilemesi ....................................................................................... 9
2.3.4. Doğrusal olmayan programlama ................................................................... 9
2.3.5. Proje yönetimi teknikleri ................................................................................ 9
2.3.6. Karar analizi teknikleri ................................................................................. 10
2.3.7. Öngörü teknikleri ......................................................................................... 10
2.3.8. Stok yönetimi modelleri ............................................................................... 10
2.3.9. Kuyruk teorisi modelleri ............................................................................... 11
2.4. Veri Madenciliği ................................................................................................. 11
2.4.1. Gürültülü veri sorunu ................................................................................... 12
2.4.2. Null değerler sorunu .................................................................................... 13
2.4.3. Eksik veri sorunu ......................................................................................... 13
2.4.4. Artık veri sorunu .......................................................................................... 14
2.4.5. Dinamik veri sorunu .................................................................................... 14
v
2.5. Veri Ambarı ....................................................................................................... 14
2.5.1. Veri ambarı mimarisi ................................................................................... 15
2.5.2. Genel veri ambarı mimarisi ......................................................................... 16
2.5.3. Bağımsız veri pazarı mimarisi ..................................................................... 16
2.5.4. Bağlantılı veri pazarı mimarisi ..................................................................... 16
2.6. Çevirimiçi Analitik İşleme ................................................................................... 17
3. İŞ ZEKÂSI UYGULAMA TEKNİKLERİ .................................................................... 18
3.1. Doğrusal Programlama ..................................................................................... 18
3.2. Genetik Algoritma .............................................................................................. 19
3.2.1. Evrimsel metotlar ........................................................................................ 20
3.2.2. GA parametreleri ......................................................................................... 21
3.2.3. Algoritmalar ................................................................................................. 22
3.3. İstatistiksel Öngörü (Zaman Serileri) ................................................................. 23
3.3.1. Durağan modeller ....................................................................................... 23
3.3.2. Mevsimsellik ................................................................................................ 24
3.3.3. Eğilim (Trend) modelleri .............................................................................. 26
3.4. Bayes Algoritması ............................................................................................. 27
3.5. Support Vector Machine .................................................................................... 28
3.6. Diğer Teknikler .................................................................................................. 32
4. VERİ İNCELEMEDE KULLANILAN MODELLER .................................................... 33
4.1. Eniyileme Modelleri ........................................................................................... 33
4.1.1. Örnek problem 1 ......................................................................................... 36
4.1.2. Örnek problem 2 ........................................................................................ 37
4.1.3. Örnek problem 3 ........................................................................................ 39
4.2. Ağ Modeli .......................................................................................................... 40
4.3. Proje Yönetimi ................................................................................................... 41
4.3.1. Kritik yol metodu ......................................................................................... 41
4.3.2. Program değerlendirme ve irdeleme tekniği ................................................ 44
4.3.3. PERT ve maliyet analizi .............................................................................. 47
4.3.4. Projenin hızlandırılması .............................................................................. 47
4.4. Stok Yönetimi .................................................................................................... 49
vi
4.5. Diğer Modeller ................................................................................................... 53
4.5.1. Kuyruk Teorisi ............................................................................................. 53
4.5.2. Öngörü ........................................................................................................ 54
4.5.3. Sınıflandırma ve kümeleme ........................................................................ 55
4.6. Modeller ve Tekniklerin Eşleştirilmesi ................................................................ 55
5. TİCARİ İŞ ZEKÂSI UYGULAMALARI ...................................................................... 57
5.1. Cognos .............................................................................................................. 57
5.2. Pentaho ............................................................................................................. 59
5.3. SAP BW ............................................................................................................ 60
5.4. Oracle ................................................................................................................ 63
5.5. Microsoft Business Intelligence ......................................................................... 64
5.6. Diğer Uygulamalar ............................................................................................ 65
5.7. Ticari Uygulamaların Genel Olarak Değerlendirilmesi ....................................... 66
6. UYGULAMA ............................................................................................................ 67
6.1. Tanım ve Amaç ................................................................................................. 67
6.2. Tasarım ............................................................................................................. 68
6.2.1. Modelleme altyapısı .................................................................................... 68
6.2.2. Veri tabanı erişim katmanı .......................................................................... 71
6.2.3. Model altyapısının doğrusal programlama için genişletilmesi ..................... 72
6.2.4. Model altyapısının support vector machine için genişletilmesi .................... 73
6.3. Gerçekleştirim ....................................................................................................... 74
6.3.1. Modelleme altyapısı gerçekleştirimi ............................................................ 74
6.3.2. Veri tabanı erişim katmanı gerçekleştirimi................................................... 76
6.3.3. Modelleme altyapısının doğrusal programlama ile gerçekleştirimi .............. 76
6.3.4. Modelleme altyapısının support vector machine ile gerçekleştirimi ............. 78
6.3.5. Ekran görünümleri ....................................................................................... 80
6.4. Uygulamanın Sınanması ................................................................................... 81
6.4.1. Örnek problemin tanımı .............................................................................. 81
6.4.2. Oracle DM kullanılarak oluşturulan model: .................................................. 83
6.4.3. Tez kapsamında geliştirilen uygulama kullanılarak oluşturulan model ........ 85
6.4.4. Oracle DM ve tez uygulamasının karşılaştırımı ........................................... 86
vii
7. SONUÇ VE ÖNERİLER ......................................................................................... 87
7.1. Sonuç ................................................................................................................ 87
7.2. Öneriler ............................................................................................................. 87
KAYNAKLAR ............................................................................................................... 90
ÖZGEÇMİŞ ................................................................................................................. 93
viii
SİMGELER VE KISALTMALAR
CPM Critical Path Method
CRM Customer Relationship Management
DP Doğrusal Programlama
EB En Erken Başlama Tarihi
ERP Enterprise Resource Planning
ES En Erken Sonlanma Tarihi
ESM Ekonomik Sipariş Miktarı
FS Faaliyet Serbestliği
GB En Geç Bitiş Tarihi
GS En Geç Sonlanma Tarihi
KKP Kurumsal Kaynak Planlama
KYM Kritik Yol Metodu
LDAP Lightweight Directory Access Protocol
LP Lineer Programming
OLAP Online Analytical Processing
OLTP Online Transaction Processing
OR Operational Research
PDİT Program Değerlendirme ve İrdeleme Tekniği
PERT Program Evaluation and Review Technique
SVN Support Vector Machine
ix
ŞEKİLLER DİZİNİ
Şekil 2. 1. İş Zekası Kavramları ..................................................................................... 4
Şekil 2. 2. İş Zekası Kavramları ve Modelleme Yeteneği ............................................... 5
Şekil 3. 1. Toplamsal Mevsimsellik Yapı ...................................................................... 24
Şekil 3. 2. Çarpımsal Mevsimsellik Yapı ...................................................................... 25
Şekil 3. 3. Support Vector Machine – W ve C Vektörleri .............................................. 30
Şekil 3. 4. Support Vector Machine X-C Vektörü ........................................................ 31
Şekil 4. 1. Örnek Ağ Modeli ......................................................................................... 40
Şekil 4. 2. Kritik Yol Metodu ......................................................................................... 42
Şekil 4. 3. Kritik Yol Metodu (EB,ES) ........................................................................... 42
Şekil 4. 4. Kritik Yol Metodu (EB,ES,GS,GB) .............................................................. 43
Şekil 4. 5. Kritik Yol Metodu (Kritik Yollar) ................................................................... 44
Şekil 4. 6. Ekonomik Sipariş Modeli............................................................................. 51
Şekil 5. 1. Analysis Process Designer [26] .................................................................. 61
Şekil 5. 2. Karar Ağacı Süreçleri [26] ........................................................................... 61
Şekil 5. 3. ABC Sınıflandırması [26] ............................................................................ 62
Şekil 6. 1. Model Yapısı ve Parametre Türleri ............................................................. 69
Şekil 6. 2. Veri Tabanı Parametresi ve Veri Tabanından Bağımsızlık ......................... 71
Şekil 6. 3. Doğrusal Programlama Modeli ................................................................... 72
Şekil 6. 4. Support Vector Machine Modeli .................................................................. 73
x
Şekil 6. 5. Modelleme Altypısı Gerçekleştirimi ............................................................. 74
Şekil 6. 6. Modelleme Altyapısı Parametre Yönetimi ................................................... 75
Şekil 6. 7. Veri Tabanı Erişim Katmanı ........................................................................ 76
Şekil 6. 8. Modelleme Altyapısı ve Doğrusal Programlama ......................................... 77
Şekil 6. 9. Modelleme Altyapısı ve Support Vector Machine ....................................... 79
Şekil 6. 10. Doğrusal Programlama Tanımlama Ekranı ............................................... 80
Şekil 6. 11. Doğrusal Programlama Kısıtlar ................................................................. 80
Şekil 6. 12. Oracle SVM Başarımı ............................................................................... 83
Şekil 6. 13. Oracle SVM Başarımı (Ayrıntılı) ................................................................ 84
Şekil 6. 14. Tez Uygulaması SVM Modeli Oluşturulması ............................................. 85
Şekil 6. 15. Tez Uygulaması SVM Eğitimi ................................................................... 85
Şekil 6. 16. Tez Uygulaması SVM Başarımı ................................................................ 86
xi
ÇİZELGELER DİZİNİ
Çizelge 4. 1. Örnek Problem (Zaman-Personel İlişkisi) ............................................... 36
Çizelge 4. 2. Örnek Problem 2 (Makine - Tahlil Grupları İlişkisi) ................................. 38
Çizelge 4. 3. Örnek Problem 2 (Tahlil Grupları ve Değişken Eşleştirmesi) .................. 38
Çizelge 4. 4. PERT Örneği (Süreler) ........................................................................... 45
Çizelge 4. 5. PERT Örneği (Standart Sapma) ............................................................. 46
Çizelge 4. 6. PERT Örneği (EB, ES, GB, GS, FS) ...................................................... 46
Çizelge 4. 7. Proje Hızlandırması ................................................................................ 48
Çizelge 4. 8. Modeller ve Tekniklerin Eşleştirilmesi ..................................................... 56
Çizelge 5. 1. Microsoft Veri Madenciliği Algoritmaları .................................................. 65
Çizelge 6. 1. Sınama Verisi Sütun Tanımları ............................................................... 81
Çizelge 6. 2. Örnek Eğitim Verisi ................................................................................. 82
Çizelge 6. 3. Oracle ve Tez Uygulaması Başarım Karşılaştırması .............................. 86
1
1. GİRİŞ
İşletmelerde kurumsal kaynak yönetimi (enterprise resource planning) uygulamalarının
daha geniş yer bulması ile diğer bir ifadeyle günlük süreçlerin elektronik ortamda takip
edilmesi sonucu işletimsel veriler çoğalmış, mevcut verilerin biçimsel kaliteleri artmıştır.
Bu gelişme verilerden anlamlı bilgilerin çekilmesine yönelik çalışmaların ticari
işletmelere uyarlanmasını beraberinde getirmiştir. Doğrusal Programlamanın ikinci
dünya savaşı dönemi askeri planlamaların gerçekleştirimi için ortaya çıkmış olması gibi,
hemen hepsi askeri ihtiyaçlardan ortaya çıkan birçok uygulama alanı, işletmelerin
mevcut verilerden alınacak kararlara destek olacak bilgilerin elde edilmesine yönelik
uyarlanmaya başlanmıştır. Değişik disiplinlerin ilgilendiği ve genel olarak iş zekâsı
olarak adlandırabileceğimiz bu sektörde, yakın zamanda birçok büyük firma (örn: HP)
çalışmalar başlatmıştır.
İş zekâsı, alınacak kararlara destek olmak üzere iş dinamikleri üzerinde kesin ve
belirgin bir anlayış geliştirmek üzere kullanılan yöntem ve süreçler bütünüdür. İş zekâsı
uygulamalarını karar destek sistemlerinden ayıran temel özellik ise, iş zekâsının tüm
paydaşlara yönelik bilgi aktarımı sağlayabilmesidir. Böylelikle karar destek sistemleri
sadece işletme içerisindeki yöneticilere yönelik geliştirilirken, iş zekâsı uygulamalarında
müşteriler ve tedarik zincirindeki diğer firmalar da sürece eklenmiştir.
Günümüz iş zekâsı uygulamalarının, veri madenciliği tekniklerinin kurumsal kaynak
planlama verilerine uyarlanmasından öteye geçmediği düşünülmektedir. Genel olarak
mevcut ürünler incelendiğinde, birçoğunun veri madenciliği ve gelişmiş raporlama
özelliklerini destekledikleri görülmüştür. Ancak yaptığımız incelemelerde ortaya çıkan bir
diğer gözlem ise işletme ve endüstri mühendisliği bilim dallarının ilgi alanına giren
yöneylem araştırması (operational research) tekniklerine gereken önemin verilmiyor
olmasıdır.
Yöneylem araştırmasının, eğitimli birçok yönetici tarafından az çok biliniyor olması,
daha çabuk kavrayabilecekleri gerçeğini de beraberinde getirmektedir. Yöneylem
araştırmasının ticari işletmeler üzerine veri madenciliği uygulamalarından daha önce
uyarlanmış olması ve lisans seviyesi yönetici eğitiminde yöneylem araştırması
2
derslerinin verilmesi, yöneticilerin yöneylem araştırmalarına yakınlığını açıklayan temel
etkendir. Konuya kullanıcıların bakış açısından yaklaşıldığı zaman, yöneylem
araştırması teknikleri veri madenciliği tekniklerinden daha yakın, daha tanıdıktır.
İş zekâsı uygulamalarının gelişmiş raporlama ve veri madenciliği uygulamaları olarak
ortaya çıkmaları, diğer bir ifade ile yöneylem araştırmasına gereken önemi vermemeleri
ve işletmede karar alma yetkisine sahip kullanıcıların/yöneticilerin yöneylem araştırması
tekniklerine daha yatkın olmaları, yaptığımız çalışmanın temelini oluşturan “iş zekâsında
yöneylem araştırması tekniklerinin uyarlanması” fikrini ortaya çıkarmıştır.
İş zekâsı uygulamalarının yöneylem araştırması tekniklerini içermesi, yöneylem
araştırması teknikleri ile veri madenciliği tekniklerinin bir arada işletilmesi gerekliliğini
doğurduğu düşünülmektedir. Modellerin bir arada işletilmesi ile modellerin etkileşimli
çalışabilmesi ifade edilmektedir. Bir başka değişle veri girişlerinde bir modelin diğerine
veri kaynağı olabilmesini anlatılmaktadır. Yapılan çalışmada, işletmelerin yönetimsel
problemlerinin değişik disiplinlerle çözümü üzerine yoğunlaşılmıştır.
Uygulamanın yetenekleri bir örnek ile açıklanabilir. Eniyileme problemlerinde
karşılaşılan en sık sorun, sabit olarak görülen değerlerin bulunamamasıdır. Bu durumda
sabitlerin değerleri için tahmin modelleri öngörülmeli, modelin kurulmasında bu sabitleri
tahmin edecek alt modellerin de kurulması gerekmektedir[7, s9]. Tahmin modellerinde
ise çözüm için, yöneylem araştırması teknikleri kullanılabileceği gibi tez çalışmasında
hedeflendiği gibi veri madenciliği yöntemleri ile istatistiksel yöntemler de
kullanılabilmektedir.
Uygulamanın disiplinler arası yapısı, modellerin karmaşıklığı, kullanılan tekniklerin
birbirlerinden çok farklı oluşları, geliştirilen uygulama çatısının tamamen dinamik ve
genişleyebilir özellikte olması gerekliliğini doğurmuştur. Uygulama çatısı temel olarak iki
farklı alanda tanımlama yapmaktadır. Model tabanı ile tüm problemler için temel bir yapı
oluşturulmuştur. Teknik algoritma yapısı ile tüm teknikler için temel bir diğer yapı
hazırlanmıştır. Uygulama çatısına yeni eklenecek tüm modeller ve teknikler bu iki temel
yapıdan kalıtımla eklenebilmektedir.
3
Tez metni çalışmasının bağlamına uygun olarak öncelikle bölüm 2’de iş zekâsı ile ilgili
temel kavramlar açıklanmıştır. Bölüm 3’te verilerden bilgi çıkarılmasına yönelik
kullanılabilecek teknikler anlatılmıştır. Bölüm 3’te anlatılan teknikler, veri madenciliğinde
ve yöneylem araştırmalarında kullanılan tekniklerin bir listesi ve açıklaması biçimindedir.
Bölüm 4’te işletmelerde karar verme sürecinde karşılaşılan problemler tanımlanmıştır.
Bu bölümde karşılaşılan problemler modellenerek biçimsel tanımları verilmiş ve kurulan
modellerin bölüm 3’te anlatılan tekniklerden hangileri ile çözülebileceği üzerinde
durulmuştur. Bu kesimde amaçlanan, işletmelerde ortaya çıkan problemlerin biçimsel
tanımlarının oluşturulabilmesi ve biçimsel tanımı verilen problemlerin çözüm
matrislerinin oluşturulmasıdır.
Bölüm 5’te ticari iş zekâsı uygulamaları incelenmiştir. Bu uygulamaların incelenmesinde,
uygulamaların işlevsel kısıtları ve yetenekleri belirtilmeye çalışılmıştır. Böylelikle ortaya
çıkarılacak çalışmanın başarımı ve karşılaması gereken işlevler belirlenmiştir. Bu
bölümün çalışmaya kattığı bir diğer anlam ise, iş zekâsı uygulamaların eksik kalan
yönlerinin ortaya çıkarılması ve bu eksiklikler üzerine bir uygulama çatısının
geliştirilmesi olmuştur.
Bölüm 6’da modelleme kütüphanesi alt yapısının tasarımı ve geliştirilmesi anlatılmıştır.
Tezde, yöneylem araştırması, veri madenciği ve veri ambarı uygulamalarını birbirleri ile
etkileşimli çalışabilecekleri, karar destek sistemi aracı tasarlanmış, eksileri, artıları ve
teknikler arası etkileşimler incelenmiştir.
Yapılan çalışma, uygulama geliştirme süreci öncesinde yapılmış araştırmaları temel
alsa da, uygulama geliştirme süresinde de devam ettiğimiz araştırmalar sonucu ilk başta
tanımlanmayan yeni gereksinimlerin olabileceği görülmüştür. Bu gereksinimler bölüm
7’de, sonuçlar ve öneriler başlığı altında detayları ile anlatılmıştır.
4
2. KURUMSAL VERİLERİN İŞLENMESİNE İLİŞKİN KAVRAMLAR
Veri Madenciliği tanımının ortaya atıldığı günden bu güne verilerden bir bakışta
anlaşılmayan ancak işletme için kimi durumlarda hayati öneme sahip bilgilerin
çıkartılmasına ilişkin değişik tanımlar ve algoritmalar geliştirilmiştir. Örneğin Karar
Destek Sistemleri, İş Zekâsı gibi kavramları birbirinden kesin sınırlarla ayırmak pek
mümkün olmamaktadır.
Veri Madenciliği, Karar Destek Sistemleri gibi kavramlar bilişim dünyasında tartışılırken,
İşletme biliminde Yöneylem Araştırması bilimi de verilerden anlam çıkarmanın ötesinde,
verilerle karar verme sürecine destek olma görevini üstleniyordu. Amaç açısından her iki
ilerleme de işletmelere karar verme süreçlerinde yardımcı olmaya çalışmaktadır.
Diğer terimlere göre yakın zamanda ortaya atılmış İş Zekâsı kavramı, çalışmamızda
Veri Madenciliği ve Yöneylem Araştırmasını kapsayan bir terim olarak kullanılmıştır.
Terimlerin anlamları üzerine ayrıntılı bilgi vermeden önce, genel bir görünümü şu
şekilde ortaya koyabiliriz.
Şekil 2. 1. İş Zekası Kavramları
5
Kurumsal sistemler birden çok farklı amaçlı ürünün bir araya gelmesinden oluşurlar.
Yukarıdaki şekilde veri ambarı, kurumsal kaynak yönetimi uygulamalarının ve iş zekâsı
modüllerinin bir arada çalışması modellenmiştir. Yaptığımız çalışma kapsamında iş
zekâsı modülleri incelenmiştir. Bu açıdan yukarıdaki çizimde verilen iş zekâsı kesimini
ayrıntılarıyla incelemeliyiz.
İş Zekası Motoru
Genetik Algoritma
Regresyon Analizi
SVM
Doğrusal Programlama
Bayes
Yapay Sinir Ağları
Model Değişkenleri Model Sabitleri
DataBase Query
DataBase Query
Temel Model Yapısı
Model
Model
Model Tabanı
Veri Ambarı
Şekil 2. 2. İş Zekası Kavramları ve Modelleme Yeteneği
6
Yukarıdaki çizimde ayrıntılandırılan kesim, İş Zekasının genel görünümü, veri ambarı
üzerinden alınan verileri işlemek amacıyla tanımlanmış modellerin iş zekası motoru
üzerinden işletilmelerini anlatmaktadır.
2.1. İş Zekâsı İş zekâsı, alınacak kararlara destek olmak üzere iş dinamikleri üzerinde kesin ve
belirgin bir anlayış geliştirmek için kullanılan metod ve süreçler bütünüdür. Diğer bir
ifade ile dağıtık veriler kullanılarak stratejik karar alma durumunda olan kişilere bilgi
üretilmesidir [1]. Veri analizi bakış açısı ile kişilere kararlarını belirlemek ve
varsayımlarda bulunmalarına yardımcı olabilmek amacıyla anlamlı bilgilerin toplanması
sürecidir[2]. Bilgi bakış açısı ile verinin incelenmesi, keşfedilmesi ve dönüştürülmesi ile
bilginin elde edilmesidir[3].
Temel olarak iş zekâsı, kurumların karar verme ve yönetim kabiliyetlerinin artırılmasına
yardımcı olan; çok sayıda verinin kurumsal bilgiye dönüştürülmesini ve böylelikle
kurumların rekabet ortamında avantaj sağlamasına yönelik kavramlar, metotlar, süreçler
ve yazılımlar bütünüdür. Kurumsal Bilgi Sistemleri (Enterprise Information Systems) ve
Karar Destek Sistemleri (Decision Support System) ile İş Zekâsının temel ayrım noktası,
iş zekâsının sadece yöneticilere yönelik olmayıp, süreç içerisine tüm paydaşların (üst-alt
düzey yöneticilerin, sistem dışı müşteri ve tedarik zincirinin) dâhil edilmesini
sağlamasıdır [3].
İş zekâsının yetenekleri aşağıda verildiği gibi sıralanabilir[4]:
1. Veri Yönetimi: veri kazanımları, veri üretimi, veri dönüşümleri, veri tümleşimi; mevcut
verilerden bilgi keşfedilmesi, büyük çaplı verilerin yönetimi ve bakımı
2. Veri Analizi: OLAP (Online Analytical Processing) ve OLTP (Online Transaction
Processing) gibi veri işleme yetenekleri, veri sorgulama ve raporlama yetenekleri
3. Karar Destek: Eğilim (trend) tahminleri, karşılaştırmalı analizler
4. Kurumsal Eniyileme: modelleme yetenekleri
7
İş zekâsı yukarıda verilen yetenekleri ile, süreçlere destek veren kullanıcı kümelerinin
genişletilmesinin yanında karar destek sistemleri ve veri madenciliği konuları üzerine
eniyilemeye yönelik modelleme yeteneklerini eklemektedir.
İş zekâsı Müşteri İlişkileri Yönetiminde (Customer Relationship Management - CRM),
müşteri değerlerinin ve verilen değerin oluşum sebeplerinin belirlenmesine ve böylelikle
işletme açısından belirli bir eşik değeri üstünde değer ifade eden müşterilerden elde
edilen faydanın artırılmasına yönelik çalışmalara destek verecek araçları
içermektedir[5]. Bu araçlar, daha önce de belirtildiği üzere kullanıcı gruplarının
genişlemesine örnek olarak, işletmenin arka planında bulunanlar, ön planda müşteri ile
etkileşimde bulunan kişilerin bir araya gelerek iş zekâsından hizmet almasını
sağlamaktadır.
Yapılan çalışma kapsamında eniyileme yetenekleri ön plana çıkarılmaya çalışılmıştır.
Ancak eniyileme modelleri için yapılacak veri dönüşümlerinin yapısal veri
dönüşümlerinin yanı sıra, sezgisel veri dönüşümlerine de yer verilmesi gerekliliği,
çalışma kapsamında mümkün olduğunca veri madenciliği metotlarına bu bakış açısı ile
yer verilmiştir.
2.2. Karar Destek Sistemleri Karar verme süreci, iş dünyasında birçok etmenin incelenerek ileriye dönük üretim,
pazarlama, personel istihdamı gibi birçok konuda öngörüde bulunmayı gerektirir. Karar,
geçmişteki işletme tecrübelerine dayanılarak, günümüzün verileri incelenerek
verilmektedir.
Bu sürecin başarılı bir karara dönüşmesinde, geçmişteki tecrübelerin bulunması ve
anlamlandırılması büyük önem taşımaktadır. İşletmenin tecrübesi bireysel tecrübelerin
bir bütünü gibi düşünülebileceği gibi, kurumsal kaynak yönetimi yazılımları ile işletmenin
günlük faaliyetlerinden toplanmış verilerinin içerisinde de düşünülebilir. İşletmelerin KKY
verilerinin içerisinde gizli kalmış bilgilerin, alınacak karar sürecine faydalı hale
getirilmesi, incelenmesi ve işlenmesi süreci Karar Destek Sistemleri tarafından ele
alınmaktadır.[30]
8
Karar destek sistemleri, basit birçok yöntemi içerdiği gibi, karışık algoritmalarla çalışmak
durumundadır. Veri tabanı sorguları ile üretilen ilk aşama raporları, ilk akla gelen karar
destek yöntemi olarak düşünülebilir. Bununla beraber, veri üzerinde matematiksel,
istatistiksel ve sezgisel yöntemlerin kullanımını, karar destek sistemlerinin karar
sürecinde, insan zekâsının kavrama yeteneğinin ötesine geçmesini sağlamaktadır.[31]
2.3. Yöneylem Araştırmaları Yöneylem araştırmasını Dr. İlker Topçu şu şekilde tanımlamaktadır:
“Yöneylem Araştırması (Yönetim Bilimi) genellikle kıt kaynakların tahsis edilmesi
gereken durumlarda en iyi şekilde bir sistemi tasarlamaya ve işletmeye yönelik karar
verme sürecine bilimsel bir yaklaşımdır.” [6]
Yapılacak bir yöneylem araştırmasında şu adımlar izlenmelidir:
1. Problemin Tanımlanması: Bu aşamada problemin tanımı, ve çözüm ile ulaşılacak
amaç tanımlanmalıdır.
2. Sistemin İncelenmesi: Sistemin incelenmesi ile problemin girdileri tanımlanmalıdır.
3. Matematiksel Modelin Kurulması: Problemin biçimsel tanımının yapılması sürecidir.
4. Modelin Doğrulanması: Kurulan modelin, problemin tanımı ve ulaşılmak istenen
sonuç ile ne derece uyumlu olduğu incelenmelidir.
5. Çözümün Belirlenmesi: Yöneylem araştırmasından birden çok çözüm yöntemi
bulunmaktadır. Problemin ve modelin doğasına uygun çözüm yöntemi belirlenmelidir.
6. Çözümün Doğrulanması: Hazırlanan modelin çözümü ile istenen amaca ulaşılıp
ulaşılmadığı kontrol edilmeli, model üzerinde gerekli düzeltmeler yapılmalıdır.
Yöneylem araştırması modelleri, eniyilenecek (min, max) amaç işlevinden, kısıtlardan
ve problemin doğasında bulunan değişkenlerden oluşmaktadır. Değişkenlerin işletmeye
uygun değerler alması kısıtlarla sağlanırken, ulaşılmak istenen amaç, amaç fonksiyon
olarak ifade edilir ve verilen değişkenlerin aldığı değerlere göre en büyük ya da en
küçük sonuca ulaşılmak istenir.
9
Yöneylem araştırmasında kullanılan teknikler çalışmamızın ilerleyen bölümlerinde
ayrıntılarıyla incelenmesine karşın, yöneylem araştırmasının içeriğinin anlaşılması
amacıyla bu aşamada bir liste verilmesi uygun görülmüştür.
Temel yöneylem araştırması teknikleri aşağıda listelenmiştir[7]:
2.3.1. Doğrusal programlama Doğrusal programlama yaklaşımı, doğrusal bir yapıdaki kısıtları (kuralları) ihlal etmeden,
doğrusal formdaki amaç fonksiyonunu en iyilemeyi (maksimize ya da minimize etmeyi)
sağlayan, bu eniyileme sonucunda karar değişkenlerinin aldıkları değerleri bulan
yaklaşımdır. [32]
2.3.2. Tamsayılı programlama Doğrusal programlama kısıtlarına, değişkenlerin değer aralıklarının tamsayı olması
kısıtının eklenmesi ile oluşturulan modeller, tamsayılı programlama teknikleri ile
çözülmektedir.
2.3.3. Şebeke eniyilemesi Bir şebeke bir malın gittiği nokta ya da geldiği nokta olarak tanımlanabilecek
düğümlerden ve otobanlara ya da benzer fiziksel akışa karşılık gelecek yaylardan
oluşmaktadır.
2.3.4. Doğrusal olmayan programlama Amaç fonksiyonun ya da kısıtların matematiksel ifadesinin doğrusal olmaması
durumunda kullanılan tekniklerdir.
2.3.5. Proje yönetimi teknikleri Proje yönetimi teknikleri ile proje planlamacısına aşağıdaki sorularda cevap arama
imkânı verilmektedir[7]:
• Projenin tamamlanabileceği minimum beklenen süre
• Projeyi oluşturan faaliyetlerden kritik olanlar ve olmayanlar
• Projeyi oluşturan tüm faaliyetlerin en erken ve en geç başlangıç ve bitiş tarihleri
• Faaliyetler üzerinde serbestlik miktarı
• Projeyi en düşük maliyetle tamamlama seçeneği
10
• Proje süresini kısaltmak için harcanması gereken ek maliyet düzeyi
• Projenin istenen bir tarihte bitirilebilme olasılığı
2.3.6. Karar analizi teknikleri Karar analizi yaklaşımında, geleceğe ilişkin belirsizliklerin ortaya çıkması durumunda,
olası değişik kararlar arasından bir kararın seçilmesine yardımcı olmak
hedeflenmektedir.
2.3.7. Öngörü teknikleri Bir değişkenin zaman içerisinde aldığı değerlere zaman serisi denmektedir. Zaman
serileri değişkenin geçmişteki seyrini ifade etmeleri sebebiyle, geleceğe ilişkin
öngörülerde bulunulmasında faydalı olmaktadır.
Verinin t+1 zamanında alacağı değer, geçmiş değerlerine bakılarak şu şekilde ifade
edilebilir:
, , , (2.1)
Bu noktadan sonra verinin dağılımına uygun şekilde bir çözüm yolu öngörülerek, f
fonksiyonu belirlenmektedir. Olası çözüm yöntemleri şu şekilde listelenebilir:
• Hareketli Ortalama
• Ağırlıklı Hareketli Ortalama
• Üstsel Düzleme
• Doğrusal Regresyon
• Kuadratik Regresyon
• Holt Metodu
• Holt-Winter Metodu
2.3.8. Stok yönetimi modelleri İşletmeler anlık arzı karşılayabilmek için belirli stok seviyeleri ile çalışmaktadırlar. Stok
seviyesinin belirlenmesi, stok maliyetleri ile doğrudan işletmenin karlılığını etkilemesi
sebebiyle oldukça önemli bir problem olarak karşımıza çıkmaktadır. ULUCAN [7], stok
yönetiminin matematiksel olarak modellenmesinin faydalarını şu şekilde sıralamaktadır:
11
• İşletmelerdeki operasyonların birbirlerinden bağımsız yürümesini sağlarlar.
Örneğin üretim ve dağıtım yapan bir işletmede, üretim hattında bir duraklama
meydana geldiğinde, eğer yeterli stok bulunuyorsa, dağıtım devam edecektir.
• Ürün talebindeki dalgalanmaları absorbe eder.
• Üretim planlamasında esneklik sağlar.
• Hammadde tesliminde meydana gelebilecek gecikmelere karşı güvence sağlar.
• Sabit maliyetlerde etkinliği artırır.
• Miktar indirim avantajı yaratır.
• Fiyat artışlarına karşı korur.
2.3.9. Kuyruk teorisi modelleri Kuyruk teorisi, bekleme hatlarının analizi ve yönetimi ile ilgilenmektedir. Kuyruk teorisi,
sistemlerinin davranışlarının tanımlanması (modellenmesini) ve servis birimlerinin
sayılarının, müşterilerin bekleme olasılıklarının, ortalama bekleme süresinin, sırada
bekleyen ortalama müşteri sayısının ve hizmet veren birimlerin boşta kalması
olasılıklarının belirlenmesidir.
2.4. Veri Madenciliği Günümüzde Kurumsal Kaynak Yönetimi sistemlerinin yaygınlaşması, işletmelerin
sistemlerinde mevcut veri üzerinde oldukça büyük artışlara sebep olmuştur. İşletmelerin
günlük işleyişlerini düzenleme amacıyla kullanılmakta olan kurumsal kaynak yönetimi
sistemleri, verileri günlük işlemlere uygun şekilde veri tabanlarında depolamaktan
sorumludur.
Depolana verilerin günlük işlemler dışında, işletmenin durumunun gözlenmesi, geleceğe
ilişkin analizlerin yapılması kısacası işletmeye ilişkin kararların alınmasında
kullanılabilmesi için değişik araçlarla ve algoritmalarla işlenmesi gerekmektedir.
Veri madenciliği, veri içerisinde gömülü bilginin elde edilmesine ilişkin yolları
tanımlamaktadır[14]. Veri madenciliği projeleri genelde oldukça büyük verilerle
çalışmaktadır, ve bu verilerde çalışma öncesi ve sonrası bazı düzenlemeler ve
değişiklikler yapılması gerekir[15].
12
Aydoğan [8]’ın ifadesi ile,
“Veri Madenciliği büyük miktarda veri içinden gelecekle ilgili tahmin yapmamızı
sağlayacak bağıntı ve kuralların bilgisayar programları kullanarak aranmasıdır.”
Veri Madenciliği yapılan diğer tanımlardan bazıları ise şu şekildedir [8]:
1. Holsheimer, büyük veri kümesi içinde saklı olan örüntülerin bulunması olarak
tanımlamaktadır [9].
2. Frawlet, önceden bilinmeyen ve potansiyel olarak faydalı olabilecek, veri içindeki gizli
bilgilerin çıkarılması olarak ifade etmektedir [10].
Veri madenciliğinde karşılaşılan sorunlar şu şekilde sıralanabilir:
2.4.1. Gürültülü veri sorunu Verilerin toparlanması, işletmenin günlük işlemlerinden sorumlu uygulama yazılımı ERP
modüllerinin görevidir. Ancak ERP modüllerinin kullanıcı kaynaklı yanlış veri girişlerine
karşı koyma yeteneği, tüm ticari yazılımlar için aynı seviyede olmadığı gibi, net bir
şekilde hatalı veri girişine de karşı koymak mümkün değildir. Söz gelimi, kullanıcı
herhangi bir değer için 100 yerine yanlışlıkla 1000 girmesi durumunda, verinin dağılımı
bozulacağından, bu veri kümesinden çıkarılacak bilgide de anlam kayması olacaktır.
Değişik sebeplerden kaynaklı veride ortaya çıkan gürültü, verinin ilgili algoritmalarla
incelenmesinden önce düzenlenmeli ve düzeltilmelidir.[33]
Gürültülü verilerin düzenlenmesinde temelde şu yöntemler kullanılmaktadır:
1. Uç değerlerde budama ya da en yakın değere benzetme işlemi yapılabilir.
Budamada, dağılımda uçta kalan değerler yok varsayılması esas alınmaktadır.
Diğerlerine benzetme ise, uç dağılımdaki değerlerin, uç dağılım olarak görülmeyen en
yakın değere eşitlenmesi sağlamaktadır.
2. Özellikle kümelemede birbirinden çok uzak değerler anlamsız ve küçük örneklere
sahip sınıfların oluşmasına sebep olabilmektedir. Bu durumda iki algoritma
kullanılmaktadır[14]:
13
• Top N most frequent algoritması: Algoritmanın temel mantığı küme sayısının
azaltılmasını sağlamaktır. En kalabalık N adet kümenin elemanları alınırken,
diğerleri N+1 kümesine aktarılır.
• Equi-Width Bining algoritması: Sayısal değerlerde kullanılan bu algoritma, veri
sayısının azaltılmasında kullanılır. Bu amaca yönelik N adet veri isteniyorsa,
veriler N küme olacak şekilde baştan sona doğru bölünürler, her kümenin
problem uygun olarak ortalaması alınır ve küme tek bir değerle olmak üzere bu
ortalamayla temsil edilir.
3. Değerler tahmini bir normalizasyona göre düzenlenebilir. Böylelikle istenen standart
sapmaya uygun şekilde, verilen aralığa değerler alınarak veriler düzenlenmektedir.
2.4.2. Null değerler sorunu Verilerin null ifadesiyle tanımlanması içeriğinin bilinmemesi anlamını taşımaktadır. Null
değerler SQL sorgularında da ele alınması gereken özel değerlerdir. Örneğin (NULL VE
DOĞRU) mantıksal işlemin sonucu beklenenin tersine doğru ya da yanlış değil, null
olacaktır.
Veri madenciliğinde null değerler iki yolla ele alınabilir:
1. Null değerli veriler yok varsayılır, algoritma içinde ihmal edilirler.
2. Null değerler diğer verilere göreli olarak en uygun değerle değiştirilirler.
a. Veri kümesinde en sık karşılaşılan değer seçilebilir.
b. Problemin doğasında bulunan varsayılan bir değer seçilebilir.
c. Null değerin bulunduğu kayıdın, diğer özelliklerine bakılarak seçilecek o kayda
en yakın değerin ilgili özelliği seçilebilir.
2.4.3. Eksik veri sorunu Eksik veri genelde verilerden alınan örneklemlerin yanlış seçilmesi sonucu ortaya çıkar.
Örnek alınırken, izdüşümü uygulanabileceği gibi, satır seçme işlemi de
yapılabilmektedir. Bu açıdan izdüşümü alınırken, problemin doğasında küme
belirlemede etken olan bir alanın izdüşümüne dâhil edilmemesi durumu doğru sonuca
ulaşılması engelleyecektir. Satır seçiminde ise, örneklemde bilinmeyen kümelerin
çıkarılmasında, kümelenmelerin yanlış oluşmasına sebep olabilir.[33]
14
2.4.4. Artık veri sorunu Artık veri, problemin sonuca ulaşmasında kullanılacak verilerde kullanılmaması gereken
nitelikleri ifade etmektedir. Artık niteliklerin elenmesi, problemin çözümünde daha kesin
bilgi edilmesini sağlayacağı gibi, çalışma zamanında gözle görünür farklar oluşturur.
2.4.5. Dinamik veri sorunu Modelin çalıştırılması sırasında veriler genelde veri tabanından elde edilmektedir. Ancak
veri tabanından elde edilen veriler, gün içerisinde sürekli günleniyor olması sebebiyle
güncellik sıkıntıları yaşanabilmektedir. Güncelleme sıkıntısı veri tabanı ile veri
madenciliği uygulamasının aynı üreticiden olduğu durumlarda, veride oluşan
değişiklikler eş anlı olarak modelin sonucuna da yansıtılmaktadır. (Bkz. Microsoft BI ve
Oracle DM). Diğer bir çözüm yolu ise modelin gerektiği zamanlarda yeniden
çalıştırılmasıdır.
Dinamik verinin ortaya çıkardığı bir diğer problem ise, modelin çalışması esnasında veri
tabanında ilgili satırların kilitlenmesi gerekliliğidir. Modellerin çalışma süreleri alışıldık
SQL sorgularına göreli olarak çok daha uzun sürdüğü düşünüldüğünde, modelin
çalıştırılması işletmenin günlük işlemlerinde ERP sistemlerinin başarımında gözle
görünür bir düşüşün ortaya çıkmasına sebep olabilir.
2.5. Veri Ambarı Bir işletme içerisinde değişik amaçlara yönelik farklı uygulamalar çalıştırılabilmektedir.
Müşteri hizmetleri için gelişmiş bir Müşteri İlişkileri Yönetimi (Customer Relationship
Management) uygulamasına ihtiyaç duyan bir firma, muhasebe otomasyonunu farklı bir
üreticinin ürününü kullanıyor olabilir. Bu her iki gereksinimin veri kümeleri “Data Mart”
olarak adlandırılır[16]. Data Mart üzerine örnekleri artırabiliriz. Örneğin LDAP
sunucusunda saklanan kullanıcı bilgisi ve organizasyon şeması Data Mart olarak
adlandırabilir. LDAP üzerinde saklanan bu veriler, bir başka Data Mart olarak tarif
edilebilecek Evrak Yönetim Otomasyonuna veri girişi sağlayabilir.
Veri ambarı, data martların birleşimi olarak ifade edilir. Diğer bir ifade ile veri ambarı,
işletimsel sistemlerin günlük işlemleri ele alırken ürettiği verilerin yönetildiği ve
kalıcılığının sağlandığı ortamlardır.
15
2.5.1. Veri ambarı mimarisi Veri ambarı olarak ifade edilen sistemler çok sayıda farklı mimari seçeneği
uygulamasının yanında, bir sistemin veri ambarı olarak ifade edilebilmesi için mutlaka
taşıması gereken özellikler vardır. Bu açıdan tek bir veri ambarı mimari tanımı vermek
mümkün olmasa da, veri ambarlarının mutlaka sahip olması beklenen mimari özellikleri
sıralanabilir.
Veri ambarı mimarisi ifadesi ile uç kullanıcıya sunulmak üzere hazırlanan bilgilerin
geçtiği sürecin, yani veriler ile verileri üreten ya da kullanılan sistemler arasındaki
iletişim ve gerçekleştirilen işlemlerin tamamının yapısı anlatılmaktadır. Bu yapı, birbiriyle
ilişkili birkaç bölümden oluşmaktadır. Bu yapıları AYDOĞAN [8] şu şekilde
tanımlamaktadır:
• Bilgi Erişim Katmanı: Uç kullanıcıyla doğrudan iletişime geçen katmandır. Uç
kullanıcının her gün kullandığı Excel, Lotus, Focus, Access gibi araçlar bilgi
erişim katmanında yer almakla birlikte çözümleme ya da sunum amacıyla
kullanılacak olan rapor, çizelge, grafik ya da tabloların görüntülenmesi ya da
çıktıların alınması gibi işlemler için kullanılan yazılım ve donanım da bu
katmanda bulunmaktadır.
• Veri Erişim Katmanı: Veri erişim katmanı, bilgi erişim katmanı ile işletimsel
katmanın birbiri ile konuşmasını sağlayan katmandır.
• Veri Kılavuzu (Üstveri) Katmanı: Tam olarak işlevsel bir veri ambarı için, uç
kullanıcının gördüğü veriler ile işletimsel veri tabanındaki veriler hakkında çeşitli
üstverilerin olması gerekmektedir. İdeal olarak, uç kullanıcılar veri ambarındaki
(ya da işletimsel veri tabanındaki) verilere, verinin nerede ya da nasıl saklandığı
hakkında hiç bir şey bilmeden erişebilmelidir. Üstveri kurum içindeki veriyi
tanımlayan veridir.
• İşlem Yönetim Katmanı: İşlem yönetim katmanı, veri ambarı ve veri kılavuzu
bilgilerinin yönetilmesi ya da oluşturulması için yerine getirilmesi gereken
görevleri planlayan katmandır.
• Uygulama İleti Gönderme Katmanı: Kurum içindeki bilgisayar ağında bilginin
taşınmasını sağlayan katmandır.
16
Veri ambarının gerçekleştiriminde, verilerin bulunduğu kümelerin birbirleri ile
etkileşimine göre değişik mimari seçenekler mevcuttur. Veri kümelerinin birbirleri ile
etkileşimi veri yönetim sistemlerinin aynı ortamda olması ya da fiziksel olarak dağıtık
olmasından bağımsız olarak düşünülmelidir. Fiziksel olarak dağıtık bir yapıda, veriler
birbirleri ile etkileşimli olabileceği gibi, aynı fiziksel ortamı paylaşan sistemler birbirleri ile
doğrudan etkileşim içerisinde olmayabilirler.
2.5.2. Genel veri ambarı mimarisi Veri ambarının genel veri mimarisine uygun olarak tasarlanması, işletmenin geneline
hizmet veren diğer bir ifade ile işletmenin tüm birimlerinin faydalanabildiği bir yapıyı
tanımlamaktadır. Daha açık bir ifade ile işletmede yapılan işlemler karşılığı oluşan eriler
tek bir ortak havuzda toplanmaktadır. Bu yaklaşımın en temel getirisi, veri ambarının
yönetimine ilişkin maliyetlerin tek kalemde düzenlenmesini sağlamasıdır.
2.5.3. Bağımsız veri pazarı mimarisi Bağımsız veri pazarı, işletme içerisinde birden çok birimin kendi verilerini diğerlerinden
bağımsız olarak yönetmesini ifade etmektedir. Bu duruma en güzel örnek,
üniversitemizin lisans seviyesi öğrenci işleri, lisansüstü öğrenci işleri ve personel
verilerinin tamamen ayrık yapıda düzenlenmiş olmasıdır. Yine üniversitemiz üzerinden
konuştuğumuz zaman, bu üç farklı sistemin yönetimi farklı birimler tarafından ele
alınmakla beraber, sistemlerin tümleşim yeteneği olmaması geliştirim ve yönetim ile
bakım maliyetlerini düşürmüştür.
2.5.4. Bağlantılı veri pazarı mimarisi Farklı birimlerin farklı veri pazarına sahip olmasına karşın, bu veri pazarları ilgili diğer
birimlere de hizmet üretmektedir. Üniversitemizin sistemlerini göz önünde
bulundurduğumuz zaman, 2006 Özdeğerlendirme raporunun [17] değişik kesimlerinde,
bu sistemlerin etkileşimli olması gerekliliği ifade edilmektedir. Böylelikle örneğin öğrenci
işleri sistemi, personel sisteminden üniversitemiz akademik personeli bilgisini
alabilecektir. Ancak bu mimari gerçekleştirim, sistemlerin baştan tümleşik kurulmasına
göreli olarak daha maliyetli olabilmektedir. Tümleştirme gereksinimlerinde, farklı veri
tabanlarında saklanan verilerin etkileşimli hale getirilmesindeki güçlükler göz önünde
bulundurulduğunda bu maliyetin sebebi daha net anlaşılmaktadır.
17
2.6. Çevirimiçi Analitik İşleme Yapılan çalışma modelleme yetenekleri ve veri madenciliği ile doğrusal programlama
tekniklerinin tümleşik çalışmasını sağlamayı amaçlamaktadır. Ancak konu bütünlüğü
açısından, karar destek sistemleri içerisinde anlatılan OLAP (Online Analytical
Processing) tekniklerine tez kapsamında deyinmek gerekmektedir.
OLAP, verilerin veri tabanında olduğu gibi satırlar ile sunulmasının ötesinde, pivot
tabloların daha hızlı kurulmasını ve kullanılmasını sağlamaktadır. OLAP veri üzerinde
satırlada etiket vererek, çapraz tabloların oluşturulmasını ve bakımını üstlenmektedir.
OLAP kullanılarak hazırlanacak çapraz tablolar, iki boyuttan n boyuta kadar
gidebilmektedir. Böylelikle hazırlanan rapor, yönteciye daha anlamlı olarak
sunulabilmektedir. OLAP kısaca n boyutlı çapraz tablolar olarak tanımlanabilir.
18
3. İŞ ZEKÂSI UYGULAMA TEKNİKLERİ
Bu kesimde bir önceki bölümde tanımlanan problemlere ilişkin çözüm yolları
tartışılacaktır. Disiplinler arası bir yaklaşımla tez kapsamında incelenen teknikler,
Yöneylem Araştırmaları ve Veri Madenciliği konularının incelemesi sonucu
belirlenmiştir.
Bu kesimde işletmelerde karar verme sürecinde modellenmesi istenen sorunlara ilişkin
çözüm teknikleri anlatılmaktadır. Problemler ile tekniklerin eşleştirilmesi bir sonraki
bölümde ele alınmaktadır.
Tekniklerin farklı birçok modelin çözümünde kullanılabilmesinin yanında, etkileşimli
kullanımları da düşünülmelidir. Tekniklerin etkileşimli kullanımları, bir tekniğin eksik
kaldığı kesimlerinin diğerlerince tamamlanması olarak düşünülebileceği gibi, tekniğin
parametrelerinden bir kısmının başka tekniklerce üretilmesi olarak da düşünülebilir.
Bu bölümde anlatılacak teknikler
1. Doğrusal programlama
2. Genetik algoritmalar
3. Zaman serileri
4. Bayes algoritması
5. Karar ağaçları
6. Kümele algoritmaları
7. Yapay sinir ağları
8. Support vector machine
9. Regresyon algoritmaları
3.1. Doğrusal Programlama Doğrusal programlama, amaç fonksiyonun en iyilenmesine yönelik, doğrusal yapıdaki
kısıtlara uygun olarak karar değişkenlerinin değerlerinin bulunmasına yönelik bir
yaklaşımdır [7]. Yukarıdaki tanımın da ortaya koyduğu gibi, doğrusal programlamanın
üç bileşeni (amaç fonksiyon, karar değişkenleri, kısıtlar) mevcuttur. Karar değişkenleri
problemde değerleri bulunması gereken değişkenlerdir. Amaç fonksiyon ise karar
19
değişkenlerinde oluşan bir formüldür. Amaç fonksiyonda eniyileme (maksimizasyon ya
da minimizasyon) amaçlanmaktadır. Değişkenlerin değer aralıkları ise kısıtlarla
sınırlandırılmıştır.
Doğrusal programlama modellerinin genel görünümü şu şekilde olacaktır:
Doğrusal programlama tanımı gereği bulunmak istenen değişkenler, amaç fonksiyon ve
kısıtlardan oluşmaktadır. Kısıtların, amaç fonksiyon içerisindeki değişken katsayılarının
değişmesinin problemin çözümüne etkisinin incelenmesine duyarlılık analizi
denmektedir.
Bir işletme açısından belirli ürünlerle tanımlanmış problemlerde amaç fonksiyon karı
maksimize etmek olacaktır. Bu yaklaşımda, her ürün için edilecek kar amaç fonksiyonda
üretim miktarlarının katsayıları olarak karşımıza çıkacaktır. Duyarlılık analizi ise
ürünlerin karlarının değişmesi durumunda ürünlerin üretim miktarları olarak bulduğumuz
sonucun ne kadar değişeceğinin gözlemlenmesidir. İşletme açısından ifadesi, ürün
karları ne kadar değişirse verdiğim karar hala doğru olacaktır sorusuna cevap verilmesi
ve böylelikle karar vericinin aldığı riski görmesinin sağlanmasıdır.
3.2. Genetik Algoritma Genetik algoritmalar yapay zekânın gittikçe genişleyen bir kolu olan evrimsel hesaplama
tekniğinin bir parçasını oluşturmaktadır. Evrimsel hesaplama ifadesindende de
çıkarılabileceği gibi, genetik algoritma Darwin’in evrim teorisinden esinlenerek
C sabitleri belirtmek üzere doğrusal programlama tanımı şu şekilde verilebilir.
Karar Değişkenleri : X1,X2,X3, … , Xn
Amaç fonksiyon : Min/Max( C1aX1 + C2aX2 + C3aX3 + … + CnaXn )
Kısıtlar :
Kısıt 1 : C11X1 + C11X2 + C11X3 + … + C1nXn<Karşılaştırma İşleci> C1
Kısıt 2 : C21X1 + C21X2 + C21X3 + … + C2nXn <Karşılaştırma İşleci> C2
Kısıt k : Ck1X1 + Ck1X2 + Ck1X3 + … + CknXn <Karşılaştırma İşleci> Ck
20
oluşturulmuştur. Herhangi bir problemin genetik algoritma ile çözümü, problemi sanal
olarak evrimden geçirmek suretiyle yapılmaktadır.
Genetik algoritma geleneksel yöntemlerle çözümü zor veya imkânsız olan problemlerin
çözümünde kullanılmaktadır. Çok genel anlamda genetik algoritmanın üç uygulama
alanı bulunmaktadır. Bunlar deneysel çalışmalarda optimizasyon, pratik endüstriyel
uygulamalar ve sınıflandırma sistemleridir.
Mühendislik problemlerinde en uygun şekle sokma amaçlı olarak kullanılmaya
başlanmıştır. Özellikle mekanizma tasarımında çok iyi sonuçlar verdiği bilinmektedir[11].
Bunlardan başka otomatik programlama, öğrenme kabiliyetli makineler, ekonomi,
ekoloji, planlama, üretim hattı yerleşimi gibi alanlarda da uygulanmaktadır. Ayrıca dijital
resim işleme tekniğinde de çokça uygulama alanı bulmuştur.
Bu problemlerin hemen hemen hepsi çok geniş bir çözüm havzasının taranmasını
gerektirmektedir. Bu çözüm havzasının geleneksel yöntemlerle taranması çok uzun
sürmekte, genetik algoritmayla ise kısa bir sürede kabul edilebilir sonuçlar
alınabilmektedir.
Algoritma ilk olarak popülâsyon olarak ifade edilen bir çözüm(kromozomlarla ifade edilir)
seti ile başlatılır. Bir popülâsyondan alınan sonuçlar bir öncekinden daha iyi olacağı
beklenen yeni bir popülâsyon oluşturmak için kullanılır. Yeni popülâsyon oluşturulması
için seçilen bireyler, çözüme yakınlık dercelerine göre belirlenirler. Çözüme yakın
bireylerin seçilmesi ve bu seçimden yeni bireylerin oluşturulması ile daha iyi sonuçlar
üretilmesi olasıdır. Bu istenen çözüm sağlanıncaya kadar devam ettirilir.
3.2.1. Evrimsel metotlar Evrimden esinlenerek, evrimsel metotların sınıflandırıcı tasarımları optimal sınıflandırıcı
için sezgisel aramayı kullanılırlar. Genel bir bakış ile
1. Birbirlerinden oldukça faklı olan çeşitli sınıflandırıcılar (population) oluşturulur.
2. Sınıflandırıcılar alınan örnekler üzerinden puanlandırılır. Biyolojik evrime benzer
biçimde bu puanlar fitness olarak adlandırılır.
21
3. Sınıflandırıcılar kendi içinde derecelendirilerek, en iyi sınıflandırıcı elde edilir. Bu
işlem, biyolojik terimlerle survival of fittest olarak adlandırılır.
Sonrasında, sınıflandırıcılar kendi soylarını (döllerini - offspring) oluşturacak biçimde
değişime uğratılır. Bu değişim sonucu ortaya çıkan nesil kendi ebeveynlerinden daha
yüksek puan alabilecekleri gibi, daha düşük puan da alabilirler. Tüm bu işlemler (
sınıflandırıcıların derecelendirilmesi – en iyisinin elde edilmesi – rastgele değişimler ile
yeni bir neslin oluşturulması), nesil içindeki en yüksek puanlı sınıflandırıcının istenen
eşik değeri puana sahip olmasına değin sürer. Her nesilden en iyinin seçilip, bir sonraki
nesilden bu sınıflandırıcıdan oluşturulması, sınıflandırıcıların puanlarında artışa sebep
olacağı görülecektir.
3.2.2. GA parametreleri GA tekniğinin çaprazlama olasılığı ve mutasyon olasılığı olmak üzere iki basit
parametresi vardır.
Çaprazlama olasılığı çaprazlamanın hangi sıklıkta yapılacağını belirtir. Eğer hiç
çaprazlama yapılmaz ise (çaprazlama olasılığı %0) yeni bireyler eski bireylerin aynısı
olur. Eğer bu oran %100 olursa yeni bireyler tamamıyla çaprazlama ile elde edilir.
Çaprazlama eski bireylerden iyi taraflar alınarak elde edilen yeni bireylerin daha iyi
olması umuduyla yapılır.
Mutasyon olasılığı ise mutasyonun hangi sıklıkta yapılacağını belirtir. Mutasyon olmaz
ise yeni birey çaprazlama veya kopyalama sonrasında olduğu gibi kalır. Eğer mutasyon
olur ise yeni bireyin bir kısmı değiştirilmiş olur. Eğer bu oran %100 olursa kuşak içindeki
bireyler tamamen değişir, %0 olursa hiç değişmeden kalır.
GA tekniği başka parametreler de içerir. Bunların en önemlilerinden birisi de popülâsyon
büyüklüğüdür.
Bu parametre popülâsyon içinde (yalnızca bir kuşakta) kaç adet kromozom yani birey
olduğunu söyler. Eğer kromozom sayısı az olursa GA çözüm aranan uzayın ancak bir
kısmını gezebilir ve çaprazlama için fazla bir seçeneği yoktur. Kromozom sayısı çok
22
fazla olursa GA çok yavaş çalışır. Araştırmalar belli bir noktadan sonra popülâsyon
sayısını artırmanın bir yararı olmadığını göstermiştir.
Yeni bireyler uyumluluğa göre veya rastgele olarak seçilebilir. Yeni bireylerin tamamen
rastgele seçilme durumunda yakınsama zorlaşabilir. Tüm bireyler uyumluluğa göre
seçildiğinde ise yeni kuşak içinde bölgesel yakınsamalar olabilir. Bu sorunların
üstesinden gelmek için belli bir oranda uyumluluk seçimi belli bir oranda da rastgele
seçim yapılabilir. Bu oran Kuşak Farkı (Generation Gap) ile ifade edilir. Kuşak farkı
%100 olduğunda yeni bireylerin tamamı uyumluluğa göre seçilir.
3.2.3. Algoritmalar Genetik algoritmalarda, sınıflandırıcılar kromozom olarak adlandırılan ikil bit dizileri ile
temsil edilir. Kromozomlar ile özelliliklerin ilişkileri probleme bağlı olmak üzere,
tasarımcıya geniş bir çalışma alanı sağlar.
1. begin initialize θ, Pco, Pmut, L N-bit chromosomes
2. do Determine fitness of each chromosome, fi, i = 1, . . . , L
3. Rank the chromosomes
4. do Select two chromosomes with highest score
5. if Rand[0, 1] < Pco
then crossover the pair at a randomly chosen bit
6. else change each bit with probability Pmut
7. Remove the parent chromosomes
8. until N offspring have been created
9. until Any chromosome’s score f exceeds .
10. return Highest fitness chromosome (best classifier)
11. end
23
3.3. İstatistiksel Öngörü (Zaman Serileri) Zaman serilerinin kullanımı, geçmişteki verilerin geleceğe ışık tuttuğu varsayımına
dayanmaktadır. Bu yaklaşımla zaman serileri ile öngörüyü şu şekilde ifade edebiliriz:
, , , (3.1)
Zaman serilerinin kullanımına ilişkin değişik metotların bulunması, bu metotlara ilişkin
karşılaştırma ölçütlerinin belirlenmesini gerekli kılmaktadır. Bu amaca yönelik, serinin
ortalama mutlak sapması, ortalama mutlak yüzde hata, ortalama hata karesi gibi
istatistiksel formüller uygulanabilir[7].
Ortalama Mutlak Sapma:
∑ | | (3.2)
Ortalama Mutlak Yüzde Hata:
∑ – (3.3)
Ortalama Hata Karesi:
∑ (3.4)
Ortalama Hata Karesi Karekökü:
√ (3.5)
3.3.1. Durağan modeller Zaman serisinin grafiksel olarak zaman içerisinde anlamlı bir seyri yoksa, zaman serisi
durağan olarak isimlendirilir. Durağan modeller için hareketli ortalama, ağırlıklı hareketli
ortalama ve üstsel düzeleme teknikleri uygulanabilmektedir.
Hareketli Ortalama:
… (3.6)
Ağırlıklı Hareketli Ortalama:
24
… (3.7)
∑ 1 (3.8)
ai değerleri, OHK’yı minimum yapacak şekilde doğrusal olmayan programlama modeli
çözülebilir.
Üstel düzleme, en yakın seri elemanın, sonuca daha çok etkisi olması gerekliliğini
sağlar.
Üstsel Düzleme:
1 (3.9)
1 1 … 1 (3.10)
α değerleri, OHK’yı minimum yapacak şekilde doğrusal olmayan programlama modeli
çözülebilir.
3.3.2. Mevsimsellik Mevsimsellik, zaman serisinin grafiksel görünümde belirgin ve düzgün bir dalgalanmayı
ifade etmektedir.
3.3.2.1. Toplamsal Mevsimsellik Yapı
Şekil 3. 1. Toplamsal Mevsimsellik Yapı
Yukarıdaki çizimde göründüğü gibi toplamsal mevsimsellik yapıda zaman serisi belirli bir
frekansta benzer örüntüyü göstermektedir.
01020304050607080
1 2 3 4 5 6 7 8 9 101112131415161718192021222324252627282930313233343536
Satışlar
Aylar
25
1 (3.11)
1 (3.12)
(3.13)
Yukarıdaki formüllerde St t dönemindeki mevsimsellik faktörünü gösterirken, Et zaman
serisinin t dönemindeki düzeyini ifade etmektedir. α ve β, [0,1] aralığında değer alan
sabitlerdir. p ise mevsimsellik sabiti olarak, haftalık veri için 7, aylık veri için 12, üç aylık
veri için 4 olarak alınır. Diğer bir ifade ile p frekansı göstermektedir.
3.3.2.2. Çarpımsal Mevsimsellik Yapı
Şekil 3. 2. Çarpımsal Mevsimsellik Yapı
Toplamsal Mevsimsellik Yapı başlığı altında verilen tanımlar ışığında, Çarpımsal
Mevsimsellik Yapının biçimsel tanımı şu şekilde verilebilir:
(3.14)
1 (3.15)
1 (3.16)
0
20
40
60
80
100
120
1 2 3 4 5 6 7 8 9 101112131415161718192021222324252627282930313233343536
Satışlar
Aylar
26
3.3.3. Eğilim (Trend) modelleri Zaman serilerinin grafik üzerinde belirli bir yönde hareketinin gözlenmesi, serinin
durağan olmaması anlamına gelmektedir. Zaman serilerinin belirli bir yönde eğilim
göstermesi durumu trend modelleri ile ele alınır.
3.3.3.1. Doğrusal Regresyon Modeli Eğilimin doğrusal olduğu durumlarda zaman serisi şu formülle ifade edilmelidir:
. (3.17)
Yukarıdaki formül, bağımlı değişken olan Y’t, t bağımsız değişkeninin doğrusal bir
fonksiyonu olarak ifade edilebilir. . İfadesi sistematik hareketi gösterirken,
hareketin sistematik olmayan yapısını uyarlamaktadır. Ancak ’nin seri üzerinden
değerlerinin ortalaması alındığı zaman 0 yaklaşması beklenir.
3.3.3.2. Kuadretik Regresyon Modeli Zaman serisi üzerindeki eğilimin doğrusal olmayıp, t bağımsız değişkenin ikinci derecen
bir denklemle ifade edilmesi durumunda, model kuadretik regresyon modeli olarak
isimlendirilir.
. . (3.18)
Doğrusal regresyon modeline benzer şekilde ifadesi sistematik yapıyı ifade ederken,
ifadesi problemin sistematik olmayan kesimi uyarlamaktadır.
3.3.3.3. Holt Metodu Et : Zaman serisinin t dönemindeki beklenen düzeyi
Tt : Zaman serisinin t dönemindeki beklenen trendi
α ve β : 0 ve 1 aralığında değer alabilen sabitler (Ortalama hata karesi minimum
olacak şekilde doğrusal olmayan eniyileme modelleri ile değerleri bulunabilir.)
Yukarıdaki açıklamalar ışığında holt metodunun biçimsel tanımı şu şekilde olacaktır:
(3.19)
1 (3.20)
1 (3.21)
27
3.3.3.4. Toplumsal Mevsimsellik Yapıda Holt-Winter Metodu Zaman serisinin trend modellerinin yanında mevsimsellik özelliklerini de barındırması
durumunda Holt-Winter modelleri uygulanır.
St : Mevsimsellik etkiyi göstermektedir.
(3.22)
1 (3.23)
1 (3.24)
1 (3.25)
3.3.3.5. Çarpımsal Mevsimsellik Yapıda Holt-Winter Metodu
(3.26)
1 (3.27)
1 (3.28)
/ 1 (3.29)
3.4. Bayes Algoritması İş dünyasında verilen kararlar çoğu durumda belirsizliklerin analiz edilmesi ile ortaya
çıkar. Verilen kararlar içersinde mevcut belirsizliklerin matematiksel bir dille ifade
edilmesi, olasılıklarının belirlenmesi, verilen kararın niteliğini doğrudan etkilemektedir.
Bayes karar verme algoritması, ortaya çıkması olasılığı birbirinden bağımsız olayların,
birleşerek incelenmesine olanak tanımaktadır. Bir karar probleminde H tane doğra
durumuna karşılık gelen H tane birbiriyle bağdaşmaz ve bütünü kapsayıcı olayı s1, s2,
s3, ... , sH ile gösterilsin. A başka bir olay olsun. A gerçekleştiğinde si’nin
gerçekleşmesinin koşullu olasılığını P(si | A) ile ve si veriyken A’nın olasılığını da P(A |
si) ile gösterilsin.
A veriyken si’nin koşullu olasılığı şöyle yazılabilir [23] :
28
s | A | (3.30)
s | A | | | … |
(3.31)
3.5. Support Vector Machine
X örüntü kümesi,
x örüntü kümesinin bir elemanı,
y ikil sınıf kümesinde x’in sınıfını belirtecek şekilde 1 veya 0 olmak üzere, (x,y) ikili
eğitim verisini oluşturmaktadır. [25]
(x1, y1), (x1, y1), ….., (x1, y1) Є X x {+1, -1}
Yukarıdaki tanımda X ‘in bir küme olmasının dışında bir varsayım bulunmamaktadır.
SVM’de amaç, eğitim verileri dışındaki verileri sınıflandırabilmektir. Örüntü tanıma
bağlamında x Є X olmak üzere, x ilgili y sınıfı ile ilişkilendirilir. Bu amaca yönelik
seçilen y ile yeni verilmiş x’den oluşan (x , y) ikilisi eğitim kümesindeki ikililere benzer
olmalıdır.[24] Bu benzerleğin incelenebilmesi için bir benzerlik ölçütü oluşturulması
gerekmektedir. Benzerlik ölçütünü k olarak isimlendirirsek,
k : X x X R
(x , x’ ) k(x , x’ )
x ve x’ üzerinden, k fonksiyonu ile benzerliklerini ifade eden gerçek bir sayı elde edilmiş
olur. Benzerlik ölçütünü, x’i bir verktör olarak düşündüğümüzde, matamatiksel olarak
vectörler üzerinde skaler çarpım ile elde edebiliriz.
. ∑ . (3.32)
Skaler çarpımın geometric anlamı, normalize edilmiş x ve x’ vektörlerinin arasındaki
açının kosinüs değeridir.
29
cos .
(3.33)
Ancak örüntülerin skaler çarpım uzayında olmasına ilişkin bir varsayım yapılması ya da
gerekli fonksiyonların tanımlanması gerekmektedir. H özellik uzayı olmak üzere,
tanımlanacak bir Ф işlevi ile gerekli dönüşüm yapılabilir.
Ф : X H
x x
Eşleştirme işlevi ile benzer ölçütü birlikte şu şekilde tanımlanabilir:
k(x , x’ ) = (x . x’) = (Ф(x) . Ф(x’))
Eşleştirme işlevi kullanılarak, skaler çarpım uzayına geçiş sayesinde problem üzerine
doğrusal cebir ve analitik geometri kuralları uyarlanabilir.
Eşleştirme işlevinin varlığı, seçilecek işlevin değişik problem ortamlarına özelleşmesini
de beraberinde getirmektedir. Dolayısıyla değişik problem tanım uzayları için ilgili
eşleştirme işlevinin tanımlanması gerekmektedir.[27,28] Ancak bu aşamada SVM
yapısının anlatılabilmesi için bu kesimin ayrıntısına girilmeyecektir.
Yukarıdaki tanımlar ve varsayımlarla örüntü tanıma problemine yoğunlaşabiliriz.
SVM’de tmel mantık örüntü uzayındaki sınıfların ortalamalarının hesaplanmasına
dayanmaktadır. [25]
c: ortalama
c-: Eksi ile işaretlenen sınıf elemanlarının ortalaması
c+: Artı ile işaretlenen sınıf elemanlarının ortalaması
m: örnek sayısı
m-: Eksi ile işaretlenen sınıf elemanlarının sayısı
m+: Artı ile işaretlenen sınıf elemanlarının sayısı olmak üzere,
∑ : (3.34)
30
∑ : (3.35)
Yukarıdaki tanımlamalarla beraber yeni verilen bir x örüntüsü, ortalamasına yakın
olduğu sınıf içerisine yerleştirilebilir. ( x örüntüsünün sınıfı bulunabilir.) Ortalamaya
yakınlık geometrik olarak skaler çarpım kullanılarak verilebilir.
c: c+ ve c- ortasından geçen vektör
w: c+ ve c- noktalarını birleştiren vektör ise c ve w şu şekilde tanımlanabilir:
(3.36)
(3.37)
Yukarıdaki tanımlar grafik üzerine gösterilebilir:
Şekil 3. 3. Support Vector Machine – W ve C Vektörleri
(x – c ) vektörü ile w vektörü arasındaki açının değerine göre sınıflandırma yapılabilir.
Açının kosinüsü, w vektörüne çizilen dike göreli yönüne göre artı ya da eksi değer
alacaktır. Bu değer sınıfı belirler.
31
Şekil 3. 4. Support Vector Machine X-C Vektörü
Karar ekseni, w vektörü ile c vektörünün kesiştirği noktada w vektörüne dik bir açı ile
geçmektedir. w ile (x – c) vektörünün arasındaki açıya bakılarak yeni verilen x
örüntüsünün sınıfı belirlenebilir. Açısının kosinüs değerinin işareti sınıfı belirleyecektir.
cos θ .
(3.38)
Yukarıdaki denklem iki vektör arasındaki açının kosinüs değerini vermektedir.
Denklemde alt tarafının sonucun işaretine etkisi olmadığından gidilerek sınıflandırma şu
şekilde ifade edilebilir:
cos θ .
. (3.39)
W ve (x – c) vektörleri yukarıda eşitliğe konursa, sınıflandırma işlemi tanımlanmış olur.
[25]
. (3.40)
. (3.41)
. . (3.42)
32
. . (3.43)
Daha önce verilen c+ ve c- değerleri yerine konursa,
∑ .: ∑ . : (3.44)
ve k tanımı formül üzerine konursa,
k(x , x’ ) = (x . x’) = (Ф(x) . Ф(x’)) (3.45)
∑ ,: ∑ ,: (3.46)
Yukarıda elde edilen eşitlikte, sınıflandırma algoritması k benzerlik ölçütü kullanılarak
tanımlanmıştır. K benzerlik ölçütü çoğu durumda çekirdek işlevi olarak ifade
edilmektedir.
SVN’nin önemli bir özelliği de sınıf ortalamasıa uzak değerlerin, eğitim setinden
çıkarılmasını sağlamasıdır. Sınıf ortalamasına uzak değerlerin eğitim setinden
çıkarılması ile genelleştirme hatasının düşürülmesi amaçlanmaktadır. Diğer taraftan bu
değerlerin çıkarılması ile daha küçük veri setleri ile çalışmak mümkün olmaktadır. Bu
şekilde seçilen eğitim verisine “support vector” denmektedir. [24]
3.6. Diğer Teknikler
Tez kapsamında alt yapı üzerinde kullanılabilecek çok sayıda teknik mevcuttur. Bu
tekniklerden ön plana çıkanların bir kısmını anlatmamızın yanında, hepsine yer
vermemiz, tezin amacının ötesine geçmektedir. Ancak burada hangi diğer tekniklerin
olduğuna ilişkin bilgi verilmesi diğer çalışmaları yönlendirici olacaktır.
Diğer önemli Veri Madenciliği Teknikleri:
• K-Means Algoritması • 0-Cluster Algoritması • Apriori Algoritması • Non Negative Matrix Factorization • Karar Ağaçları • Yapay Sinir Ağları
33
4. VERİ İNCELEMEDE KULLANILAN MODELLER
Bu kesimde, işletmelerin karşılaştığı problemlerin modeller başlığı altında kümelenmesi
amaçlanmaktadır. Tanımlanan modellerin çözümleri birden çok teknikle olabileceği gibi,
birden çok bilim dalının ilgi alanına giriyor olabilir. Örneğin eniyileme modelleri, doğrusal
programlama ile çözülebileceği gibi, genetic algoritmalar da eniyileme problemlerine
çözüm oluşturabilir. Ancak bu kesimde sadece modellerin diğer bir ifade ile problemlerin
tanımlaması yapılacak, bir sonraki kesimde çözümlerin/tekniklerin incelenmesinden
sonra, modeller ve çözümler eşleştirilerek, yorumlara yer verilecektir.
Bu bölümde incelenen modeller:
1. Eniyileme Modelleri
2. Şebeke Modeli
3. Proje Yönetimi
4. Stok Yönetimi
5. Kuyruk Teorisi
6. Öngörü
7. Sınıflandırma
8. Kümeleme
9. Karar Analizi
4.1. Eniyileme Modelleri Eniyileme modeli, belirli bir problemde amaç fonksiyonun değerini istenen en iyi değere
atayacak değişkenlerin değerlerinin bulunmasını amaçlamaktadır. Özellikle yöneylem
araştırmasında proje yönetimi, stok yönetimi, karar analizi gibi birçok problem eniyileme
modelleri ile çözülmektedir.
Eniyileme problemleri genelde bir amaç fonksiyon, değişkenler ve değişkenlerin değer
aralıklarını belirleyen kısıtlardan oluşmaktadır. Kısıtlar içerisinde bulunan sabitler ise
problemin doğası gereği veri ambarından çekilebileceği gibi, doğrudan model
işletiminde kullanıcı tarafından da belirlenebilmektedir. Yapılan çalışmanın en önemli
özelliği, sabitlerin değerlerinin veri tabanı ve kullanıcı dışında üçüncü bir alan olarak
mevcut diğer modellerden alınabilmesi sağlanabilmesidir.
36
Daha somut olarak, geleceğe ilişkin bir eniyileme modelinin çalıştırılmasında, kısıtlardan
toplam gelir gider farkının aşılmamasına ilişkin sabitin bir başka model tarafından
tahmin edilmesi gerekmektedir. Model işletimi sırasında öncelikle bu şekilde bulunması
gereken sabitler için gerekli modeller çalıştırılır ve son olarak eniyileme modeli
çalıştırılır.
4.1.1. Örnek problem 1 Vardiya – İş Yükü Personel Dağılımı [7, S89]
Veri tabanının yoğun olarak kullanılacağı bir örnek insan kaynakları yönetimi üzerinden
verilebilir. İşgücü planlamasında genellikle toplam ihtiyaç duyulan personel sayısı en
aza indirilmeye çalışılır. Örnek olarak bir hastane ele alındığı zaman, günün belirli
dilimlerinde gelen hasta sayısına göre gerekecek hemşire miktarından vardiyaları göz
önünde bulundurarak toplam çalıştırılması gereken personel sayısı, her bir vardiyada
ayrı ayrı belirtilmek üzere bulunmak istenecektir.
Problemin Tanımlanması 1. Günün ilişikteki periyotlarla ele alınacak ve hasta sayılarına göre gereken hemşire
sayısı bulunacaktır.
Periyot Gerekli Personel (Veri tabanından hesaplanacak değişkenler)
1 00:00 – 04:00 VT1
2 04:00 – 08:00 VT2
3 08:00 – 12:00 VT3
4 12:00 – 16:00 VT4
5 19:00 – 20:00 VT5
6 20:00 – 24:00 VT6
Çizelge 4. 1. Örnek Problem (Zaman-Personel İlişkisi)
2. Bir hemşire 8 saat çalışmaktadır ve vardiyaların başlangıç saatleri aşağıdaki gibi
olacaktır.
37
Problemin Modellenmesi 1. Karar değişkenleri
X1 = 00:00’da işe başlayacak personel sayısı
X2 = 04:00’da işe başlayacak personel sayısı
X3 = 08:00’da işe başlayacak personel sayısı
X4 = 12:00’da işe başlayacak personel sayısı
X5 = 16:00’da işe başlayacak personel sayısı
X6 = 20:00’da işe başlayacak personel sayısı
2. Amaç fonksiyon = Min( X1 + X2 + X3 + X4 + X5 + X6 )
3. Problemin kısıtları : Problemdeki temel kısıt grubu, her vardiyada o zaman aralığında
gerekli personeli işte olmasını sağlayan aşağıdaki 6 kısıttır.
Kısıt1. X6 + X1 >= VT1
Kısıt2. X1 + X2 >= VT2
Kısıt3. X2 + X3 >= VT3
Kısıt4. X3 + X4 >= VT4
Kısıt5. X4 + X5 >= VT5
Kısıt6. X5 + X6 >= VT6
4.1.2. Örnek problem 2 Makine – İş Dağılımı [7, S93]
Hastane içerisinde kan tahlilleri yapan mevcut üç makine üzerine gün içerisinde gelen
değişik tipteki kan tahlillerinin dağılımı çözülmeye çalışılacaktır. Problemin temelinde
mevcut makinelerin değişik tahlil tiplerinde değişik zamanlamalara sahip olmaları
yatmaktadır.
38
Problemin Tanımlanması 1. Gerekli Tahlil Süreleri : Tahlil grupları her makinenin gruplardaki tahlilleri
tamamlaması için gereken süreler
Makine / Tahlil
Grupları
G1 G2 G3 G4 G5
Makine A 6 8 9 12 7
Makine B 12 7 12 9 10
Makine C 5 12 7 7 9
Çizelge 4. 2. Örnek Problem 2 (Makine - Tahlil Grupları İlişkisi)
2. Yapılması gereken tahlil sayıları
Yapılması gereken tahlil sayıları her bir grup için, modelin işletildiği anda yapılmamış
tahlillerin veri tabanında gruplanması sonucu elde edilecektir.
Tahlil Gruplar Yapılacak Tahliller (Veri tabanından hesaplanacak
değişkenler)
1 G1 VT1
2 G2 VT2
3 G3 VT3
4 G4 VT4
5 G5 VT5
Çizelge 4. 3. Örnek Problem 2 (Tahlil Grupları ve Değişken Eşleştirmesi)
Problemin Modellenmesi 1. Karar Değişkenleri : Xij j makinesine atanan kan örneği sayısı
2. Amaç Fonksiyon = Min( ∑ Xij Tij )
3. Problemin Kısıtları
İlk kısıt gurubu makinelerin toplam çalışma sürelerine ilişkindir.
Kısıt1. ∑ XiA TiA 1200 Kısıt2. ∑ XiB TiB 1200
Kısıt3. ∑ XjC TjC 1200
İkinci kısıt grubu ise tahlil gruplarının hepsinin tamamlanmasını sağlamaya ilişkindir.
Kısıt4. ∑ X1j VT1
39
Kısıt5. ∑ X2j VT2
Kısıt6. ∑ X3j VT3
Kısıt7. ∑ X4j VT4
Kısıt8. ∑ X5j VT5
4.1.3. Örnek problem 3 Dinamik Doğrusal Programlama Modelleri, Çok Dönemli Üretim Planlaması
İş dünyasında verilen kararlar genelde periyodik verilerin analizi ile incelenmektedir.
Periyodik verilerin analizinde geçmiş verilere bakılarak yapılan çıkarımlarla ortaya çıkan
tahmini sonuçlar bir arada dinamik doğrusal programlama modellerinin girdilerini
oluşturur. Üretim planlaması yapmak isteyen bir firmanın, geleceğe ilişkin tahmini satış
oranları ve önceden kararı verilmiş minimum stok miktarları üzerinden her ürün ne
kadar üretilmesi gerektiği hesaplanmalıdır. Bu modelde dikkat çekici iki özellik,
öncesinde bir tahmin modelinin çalışması ve sonrasında yapılan tahminlere ilişkin
üretim miktarları çözülebilmesidir.
40
4.2. Ağ Modeli Ağ bir malın gittiği nokta ya da geldiği nokta olarak tanımlanabilecek düğümlerden ve
otobanlara ya da benzer fiziksel akışa karşılık gelecek yaylardan oluşmaktadır.
Şekil 4. 1. Örnek Ağ Modeli
Yukarıdaki şekilde, düğümler arası akışlar yönlü yaylarla gösterilmiştir. Problemin
çözümü, yolları temsil eden yaylar üzerindeki akış miktarının belirlenmesidir, bu açıdan
yaylar üzerindeki akış miktarları, problemin karar değişkenlerini oluşturmaktadır. (Xij; I
düğümünden j düğümüne akış miktarı.) Yayların üzerindeki değerler, problemde o yay
üzerinde birim ürün akışının maliyeti olarak belirlenmektedir.
Arz Düğümü: Sadece dışarıya doğru akış olan düğümlerdir. Düğümlerde arz edilen ürün
miktarı eksi işaretle belirtilirler.
Talep Düğümü: Dışarıya akış olmaksızın sadece içeri doğru akış olan düğümlerdir.
Düğümlerde talep edilen miktarlar pozitif işaretle belirtilirler.
41
Aktarma Düğümü: Hem dışarıya akış gönderen, hem içeri akış kabul eden düğümlerdir.
4.3. Proje Yönetimi İşletmeler açısından proje, birbiriyle ilişkili işlemlerin belirli bir hedefe yönelik
eşgüdümlenmesi ve planlanması demektir. Bu plan dâhilinde proje planının incelenmesi
süre ve maliyet açısında işletmeler açısından önemlidir. Eş anlı projeler üretmekte olan
bir işletmede, projelerin üzerinde çalışıldığı birimlerde çakışmamasının sağlanması,
dolayısıyla en az bekleme sürelerinin dışında, minimum sürede minimum maliyetle
projenin tamamlanması bu başlık altında ele alınacaktır.
Proje Yönetimi İş zekâsı uygulamalarından yöneticilerin elde edebileceği faydaları
Ulucan[7] şu şekilde sıralamaktadır.
1. Projenin tamamlanabileceği minimum beklenen süre belirlenebilir.
2. Projeyi oluşturan faaliyetlerden kritik olanlar ve olmayanlar belirlenebilir.
3. Projeyi oluşturan tüm faaliyetlerin en erken ve en geç başlangıç ve bitiş
tarihleri bulunabilir.
4. Faaliyetler üzerindeki serbestlik miktarı incelenebilir.
5. Projeyi en düşük maliyetle tamamlama olanağı bulunabilir.
6. Proje süresini kısaltmak için harcanması gereken ekstra maliyet düzeyi
belirlenebilir.
7. Projenin istenen bir tarihte bitirilme olasılığı incelenebilir.
Projelerin planlanmasına yönelik Kritik Yol Metodu (CPM) ve Program Değerlendirme
ve İrdeleme Tekniği (PERT) olmak üzere iki farklı süreç öngörülmüştür[7].
4.3.1. Kritik yol metodu Kritik yol metodunun ilk adımı proje şebekesinin oluşturulmasıdır. Proje şebekesinde
projenin alt adımları, alt adımların bitirilme süreleri ve ve süreç içerisinde alt adımların
birbirlerini izlemeleri gereken sıralar belirlenir. Örnek bir proje şebekesi şu şekilde
verilebilir (kutular içerisinde alt sürecin adı ve bitirilme süreleri verilmiştir):
42
Şekil 4. 2. Kritik Yol Metodu
Bir sonraki aşamada her adım için en erken başlangıç ve en erken sonlanma tarihleri
bulunacaktır. Bu değerlerin bulunabilmesi için başlangıç süreçlerinin en erken başlangıç
tarihi 0 olarak, en erken sonlanma tarihleri ise sürecin tamamlanma süresi olarak atanır.
Ve diğerleri için şu formüller uygulanır:
En Erken Başlama Tarihi (EB) Ö ş
En Erken Sonlanma Tarihi (ES) ş ü
Şekil 4. 3. Kritik Yol Metodu (EB,ES)
En erken başlama ve en erken sonlanma tarihleri kullanılarak, uç düğümden başlanarak
geriye doğru En Geç Başlama ve En Geç Sonlanma tarihleri bulunur. Uç düğünümün
43
GB ve GS tarihleri EB ve ES tarihleri olarak atandıktan sonra diğer düğümler için şu
formüller uygulanır:
En Geç Sonlanma Tarihi (GS) ı ş
En Geç Bitiş Tarihi (GB) ç ş ü
Şekil 4. 4. Kritik Yol Metodu (EB,ES,GS,GB)
Ortaya çıkan proje şebekesi, faaliyetlerin serbestliklerinin hesaplanmasında
kullanılabilir.
Faaliyet Serbestliği ç ş ü
FSA = 0 FSB = 0 FSC = 7 FSD = 0
FSE = 7 FSF = 6 FSG = 0
Faaliyet serbestliği alt adımın esnekliğini ifade etmektedir. Faaliyet serbestliği sıfır olan
adımlar kritik adımlar olarak nitelendirilir. Kritik faaliyetler arası çizgede çift okla
gösterimi ile kritik yol belirlenmiş olur.
44
A30
C5
F9
D12
E8
B8
G5
EB ES
0 30
30 38
30 35 35 44
35 43
38 50
50 55
GB GS
8 30
30 38
38 50
42 50
50 55
37 42 41 50
Şekil 4. 5. Kritik Yol Metodu (Kritik Yollar)
4.3.2. Program değerlendirme ve irdeleme tekniği CPM yaklaşımında faaliyetlerin sürelerinin bilinmesi gerekmektedir. Ancak gerçek
hayatta faaliyet süreleri belirli kestirimler sonucu ortaya çıkabilir. Yapılan kestirimlerin
kesin bir değer gibi modele dâhil edilmesi, karar vericiyi yanıltabilecektir. Faaliyet
sürelerinin kesin olmadığı ve kestirimlerle belirlendiği durumlarda Program
Değerlendirme ve İrdeleme Tekniği (PERT) kullanılır. PERT’de faaliyet süresi için en
iyimser, olasılığı en yüksek ve en kötümser olmak üzere üç değer belirlenir.
ai : Faaliyeti gerçekleştirmek için gereken iyimser süre
mi : Faaliyeti gerçekleştirmek için gereken olası süre
bA : Faaliyeti gerçekleştirmek için gereken kötümser süre
Faaliyet süre değerlerinden ortalama ve standart sapma değerleri Beta dağılımı ile
bulunabilir[7]:
Ortalama Tamamlanma Süresi:
μ (4.1)
45
Standart Sapma:
(4.2)
Varyans:
(4.3)
Yukarıdaki tanımlamaların yanı sıra PERT içerisinde önemli üç varsayım mevcuttur[7]:
Varsayım 1: Kritik yol kullanımında CPM tekniğine benzer şekilde ortalama
tamamlanma süreleri kullanılır ve proje bitirme süresi kritik yol üzerindeki faaliyetlere
göre belirlenebilir.
Varsayım 2: Faaliyetlerin tamamlanma süreleri birbirinden bağımsızdır. Bağımlılık
ardıllık ve öncüllük ilişkilerindedir.
Varsayım 3: Kullanılan normal dağılım için projede yeteri sayıda faaliyet bulunmaktadır.
CPM modelinde yer verilen örneği PERT için uyarlaması şu şekilde olacaktır:
Faaliyet
Önceki
Faaliyetler İyimser Süre Olası Süre
Kötümser
Süre
A ‐ 28 30 35
B A 5 8 10
C A 4 5 6
D B 10 12 13
E B,C 4 8 12
F C 8 9 10
G D,E,F 3 5 7
Çizelge 4. 4. PERT Örneği (Süreler)
46
Faaliyet Ortalama Süre Standart Sapma Varyans
A 30,50 1,17 0,07
B 7,83 0,83 0,06
C 5,00 0,33 0,04
D 11,83 0,50 0,05
E 8,00 1,33 0,08
F 9,00 0,33 0,04
G 5,00 0,67 0,06
Çizelge 4. 5. PERT Örneği (Standart Sapma)
Ortalama sürelere göre yeniden hazırlanmış proje şemasının çizelgesi :
Faaliyet Öncelik Süre EB ES GB GS FS
A ‐ 30,50 0,00 30,50 0,00 30,50 0,00
B A 7,83 30,50 38,33 30,50 38,33 0,00
C A 5,00 30,50 35,50 36,16 41,16 5,66
D B 11,83 38,33 50,16 38,33 50,16 0,00
E B,C 8,00 38,33 46,33 42,16 50,16 3,83
F C 9,00 35,50 44,50 41,16 50,16 5,66
G D,E,F 5,00 50,16 55,16 50,16 55,16 0,00
Çizelge 4. 6. PERT Örneği (EB, ES, GB, GS, FS)
Projenin çizelgesinde faaliyet serbestliği (fs) incelendiği zaman kritik yolun değişmediği
ortaya çıkar. Projenin beklene süresi A-B-D-G üzerinden hesaplandığı zaman 55,16 gün
olarak belirlenebilir.
Proje süresinin varyansı, kritik yol üzerindeki faaliyetlerin varyansları toplamına eşittir :
0,07 0,06 0,05 0,06 0,24
Proje süresinin standart sapması ise, kritik yol üzerindeki varyansların karekökü ile
hesaplanır:
0,24 0,49
47
Tüm bu hesaplamalar sonucu, proje yöneticisi basit istatistiksel hesaplamalar
yapabilecektir. Örnek olarak aşağıdaki sorulara matematiksel cevaplar verilebilecektir:
1. Projenin %99 olasılıkla bitirileceği süre nedir?
2. Projenin normal dağılıma uygun olarak %97,5 olasılıkla bitirileceği günler
nelerdir?
3. Projenin ortalama süresi olan 55,16 gün içerisinde tamamlanma olasılığı nedir?
4. Projenin 60 gün içerisinde bitmesi olasılığı nedir?
5. Projenin 40 günden uzun sürmesi olasılığı nedir?
4.3.3. PERT ve maliyet analizi Projelerin kimi faaliyetlerinin süreleri kesin çizgilerle belirlenmişken (örneğin inşaatlarda
betonun kuruması için geçen süre gibi) bazı faaliyetlerde ise iş alt yüklenicilere verilerek
işletmenin imkânlarından kaynaklı daralmalar ortadan kaldırılabilir. Ancak işletmenin
ilgili faaliyeti kendisinin yapması ile bir başka firmaya alt yüklenici olarak devretmesi
arasında sürede kısalma yaşanmasının yanında maliyette de bir artış olacaktır.
Diğer taraftan işletme proje çalışmasında sürede belirli kıstaslara göre anlaşma
yapabilir. Örneğin müşteri işletmenin 55 hafta ortalama süreyle hesapladığı bir projede
50 hafta içerisinde bitirmesi durumunda ek ücret ödemeyi teklif ederken, geç teslim
ettiği her hafta için artan oranlarda ceza ödenmesini karara bağlamak isteyebilir.
Müşterinin bu teklifi uygun şekilde cevap üretilebilmesi için bu yeni durumun işletmeye
getirdiği maliyetin hesaplanması ve proje yöneticisi açısından ölçülebilmesi
gerekmektedir.
Projenin ödül ve ceza süreleri ös ve cs ve x’de proje tamamlanma süre değişkeni olmak
üzere maliyet analizi şu şekilde verilebilir.
Beklenen net ilave kar = P(x<ös)(ödül) + P(ös<x<cs)(0) + P(x>cs)(ceza)
4.3.4. Projenin hızlandırılması Projenin hesaplanan zamandan önce bitirilmesi kimi durumda işletmeye kar sağlarken
kimi durumda ise gelebilecek maddi zararların önüne geçilmesini sağlayabilir. Projenin
alt adımları olan faaliyetlerden sürelerinin kısaltılmasının belirli maliyetleri vardır. Bu
48
durumda proje yöneticisi hangi faaliyetin süresini kısaltarak istenen günde projenin
tamamlanabileceğini öğrenmek isteyebilir, ya da belirli bir mali yükle, projenin
kısalabileceği en kısa sürede bitirilmesi istenebilir.
Bu gibi isteklerde ilk bakılacak kesim, projenin süresine doğrudan etkisi olan kritik yol
üzerindeki faaliyetlerdir. Ancak kritik yol üzerinde bir faaliyetin süresinin azaltılması
projenin kritik yoluna değiştirilebilir.
Bu gibi problemlerin çözülmesi için öncelikle her alt adımın birim zaman kısaltılması için
yüklenilmesi gereken maliyetleri içeren bir çizelge hazırlanmalıdır:
Faaliyet Öncelik
Normal Kısaltılmış Birim
Kısaltma
Maliyeti Süre Maliyet Süre Maliyet
A ‐ 30,00 15.000,00 TL 20 21.000,00 TL 600,00 TL
B A 8,00 3.500,00 TL 5 5.000,00 TL 500,00 TL
C A 5,00 3.000,00 TL 4 5.000,00 TL 2.000,00 TL
D B 12,00 7.000,00 TL 8 8.000,00 TL 250,00 TL
E B,C 8,00 7.000,00 TL 7 11.000,00 TL 4.000,00 TL
F C 9,00 6.000,00 TL 6 10.000,00 TL 1.333,33 TL
G D,E,F 5,00 3.500,00 TL 3 4.000,00 TL 250,00 TL
Çizelge 4. 7. Proje Hızlandırması
Örnek problem üzerinden devam edersek, 55 haftada bitirilmesi öngörülen projenin 50
haftada bitirilmesi için hangi adımlarda iyileştirilmesi yapılması gerektiği sorusu
modellenmelidir.
Ti : i faaliyetinin başlangıç süresi
hi : i faaliyetinin süresindeki kısaltma miktarı (karar değişkeni)
mi : i faaliyetinin birim kısaltma maliyeti
msi : i faaliyetinin en çok kısalabileceği süre
Si : i faaliyetinin normal bitirilme süresi
49
olmak üzere, hedeflenen toplam ek maliyeti en düşük çözümün bulunması için karar
değişkenlerinin belirlenmesi, amaç fonksiyonun kurulması ve kısıtların düzenlenmesi ile
modelleme çalışması yapılması gerekmektedir:
4.4. Stok Yönetimi İşletmelerin stok politikaları karlılıklarını belirleyen en önemli etkenlerdendir. Stok
politikası ile işletme, ürün taleplerine etkin cevap verebilme yeteneği ile stokta mal
bulundurma maliyeti arasında denge kurmak zorundadır. Değişik talep, üretim ya da
satın alma durumlarına ilişkin modellerin oluşturulması bu başlık altında irdelenecektir.
Stok hesaplamalarında sipariş (üretim) miktarı değişkeni Q ile belirtilir, benzer şekilde
yeniden üretilen miktar değişkeni de R ile belirtilmektedir. C üretim ya da satın alma
maliyetini ifade etmektedir. [7]
Stok problemleri modellenirken, göz önünde bulundurulması gereken diğer değişkenler
ise,
Elde bulundurma maliyeti : CH = H.C
Elde bulundurma maliyeti, ürünün değeri (C) ile belirli bir yüzdesi (H) değişkenlerinin bir
fonksiyonudur. Elde bulundurma maliyeti, ürüne bağlanan sermaye, depolama elektrik
su gibi giderler, sigorta, işgücü, vergiler gibi sabit giderler ve ürünün eksilmesi,
bozulması gibi fiziksel giderlerin toplamıdır.
Karar Değişkenleri : hi (I faaliyet numaraları olmak üzere)
Amaç fonksiyon : ∑
Kısıtlar:
1. Öncüllük, ardıllık kısıtları Ti > Max(Tö+Sö-hö, ö: i’nin öncülü olan faliyetler)
2. Karar değişkenlerinin ilgili faaliyetin en çok kısalabileceği miktardan düşük olmamasına ilişkin kısıtlar hi < msi 3. Bitirilmesi istenen süre Ts + Ss – hs < Bitirilmesi istenen süre (s son faliyet olmak üzere)
50
Sipariş verme maliyeti : CO
Siparişin işletmeye getirdiği ek maliyetler sipariş verme maliyeti olarak belirlenir. Sipariş
vermede temel maliyet kalemi nakliye işlemidir. Her bir sipariş kalemi ürün sayısına
doğrudan bağlı olmaksızın sabit maliyetler getirmektedir. Üretim yapan işletmelerde ise
sipariş verme maliyeti, personelin ve üretim hattının hazırlanmasına ilişkin zaman
maliyeti olarak düşünülebilir.
Elde bulundurmama maliyeti : CS
Elde bulundurmama maliyeti, işletmenin gelen istekleri karşılayamaması sonucu dolaylı
olarak müşteri ve itibar kaybı ile karşılaşacağı maliyetlerdir.
İşletmede stok politikası düzenli bir takibi gerektirmektedir. ULUCAN [7], düzenli takip
sürecini iki farklı yolla yapılabileceğini belirtmiştir:
Sürekli Takip Yaklaşımı: Stoktaki ürünler sürekli kontrol edilir. Herhangi biri ürünün stok
düzeyi kritik bir düzeye indiğinde sabit bir miktar sipariş verilir. Bu kritik düzey, yeniden
sipariş noktası, R, olarak adlandırılır.
Periyodik Takip Yaklaşımı: Sipariş verme 1 gün, 1 hafta ya da 1 ay gibi sabit periyotlarla
yapılır. Her periyot sonunda stok düzeyleri gözden geçirilir. Ne kadar sipariş verileceği
belirlenir. Sipariş miktarı sabit değildir.
Ekonomik sipariş modeli, birçok varsayımla modelleme sürecinin basitleştirilmesi ile
sipariş ve stok problemlerinde temel modeldir. ULUCAN [7] bu varsayımları şu şekilde
sıralamaktadır:
• Ürüne olan talep, D, tüm periyot boyunca sabit ve düzgündür.
• Sipariş miktarı, Q, sabittir.
• Ürün fiyatı tüm periyot boyunca sabittir.
• Tedarik süresi (sipariş verilmesi ile teslimat arasında geçen süre) sabittir.
• Elde bulundurma maliyeti hesaplanırken, ortalama stok miktarı göz önünde
bulundurulur.
• Sipariş verme maliyeti sabit ve sipariş miktarından bağımsızdır.
51
• Tüm sipariş aynı anda teslim edilir.
• Aynı sipariş ve talep döngüsü sürekli tekrarlar.
Ekonomik Sipariş Modeli grafik üzerinden daha rahat incelenebilir:
L : sipariş süresi
R : Minimum stok düzeyi
Q : Minimum sipariş miktarı
Şekil 4. 6. Ekonomik Sipariş Modeli
R minimum stok seviyesi, L teslim süresi boyunca gelecek talebe cevap verilebilecek
miktarı belirtmektedir. Yukarıda verilen varsayımlar gereği, her defasında stokta Q
seviyesi kadar sipariş verilmektedir. Ve model T zaman içerisinde düzenli olarak kendini
tekrarlamaktadır. Çizgede gösterilmemiş D değişkeni ise, yıllık toplam sipariş miktarını
göstermektedir.
Yukarıdaki tanımlarla Elde bulundurma maliyeti (CH), Sipariş verme maliyeti (CO), Elde
bulundurmama maliyeti (CS) tanımlarını bir araya getirerek işletmenin yıllık toplam
siparişleri üzerine bilgi sahibi olabiliriz.
Toplam Yıllık Sipariş Maliyeti: (Maliyet/Sipariş)*(sipariş sayısı/yıl)
. (4.4)
52
Toplam Yıllık Elde Bulundurma Maliyeti: (Birim başına stok maliyeti / yıl) * (ortalama
stok)
. (4.5)
Toplam Yıllık Satın Alma Maliyeti: (birim başına satın alma maliyeti) * (toplam yıllık
talep)
. (4.6)
Yıllık Toplam Değişken Maliyet: (toplam sipariş verme maliyeti) + (toplam elde
bulundurma maliyeti)
. . (4.7)
Yıllık Toplam Maliyet: (toplam sabit maliyet) + (toplam değişken maliyet)
. . . (4.8)
En son verilen yıllık toplam maliyet tanımında, eğimi sıfır olan noktada Q değişkeni en
küçük değerini alır. İfadenin eğimi ise türevle bulunur ve sıfıra eşlenirse, Q değişkenin
en küçük değeri bulunmuş olur.
0 0 (4.9)
(4.10)
(4.11)
53
4.5. Diğer Modeller Veri Madenciliği ve Yöneylem Araştırması alanları içerisinde çok sayıda farklı model
tanımlanabilmektedir. Tez kapsamında hepsine ayrıntısı ile yer vermemiz mümkün
olmadığı için bazı önemli modelleme problemlerini bu kesimde sadece tanımlarını
vererek geçeceğiz.
4.5.1. Kuyruk Teorisi Kuyruk teorisi, bekleme hatlarının analizi ve yönetimi ile uğraşır. Kuyruk modellerini
kullanarak, kuyruk sistemlerinin davranışını tanımlayıp, servis düzeyini belirleyip,
alternatif kuyruk sistemlerini değerlendirebiliriz.[7] Kuyruk modellerini kullanan yönetici,
• Ne kadar servis birimi kullanacağını
• Müşterilerin bekleme olasılığını
• Müşterilerin ortalama bekleme süresini
• Sırada bekleyen ortalama müşteri sayısını
• Hizmet veren birimlerin boşta kalma olasılıklarını
belirleyebilir.
Kuyruk sisteminin ana bileşenlerini Aydın ULUCAN şu şekilde tanımlamaktadır [7]:
Geliş Süresi: Geliş süreci, hizmet almak üzere sisteme gelen birimlerin geliş yapısını
tanımlar. Gelişler genelde aşağıda fonksiyonu verilen, Poisson tesadüfî değişkeni olarak
tanımlanır.
!
(4.12)
Servis Süreci: Birimlerin servis alırken geçirdikleri süre servis süresi olarak adlandırılır.
Bu süre kuyrukta geçirilen süreyi kapsamaz.
Servis Birimi Sayısı: Kuyruk sistemlerinde zaman zaman tek bir servis veren birim
yerine birden fazla sayıda servis birimi olabilir. Örneğin, süper marketteki kasalar,
fabrikalardaki paralel üretim hatları, sinema gişeleri birden fazla sayıda eş servis birimi
ile hizmet verirler.
54
Kanal Sayısı: Kuyruk sistemindeki bekleme hatları kuyruk kanalları olarak
adlandırılırlar. Sistemde birden fazla sayıda servis birimi olması durumunda kanallar iki
farklı yapıda kurulabilir. Klasik olarak her servis birimi önüne bir kuyruk kanalı
olabileceği gibi, sadece bir kuyruk kanalı olabilir ve harhangi bir servis birimi
boşaldığında bu kanaldan o birime müşteri gidebilir.
Kaynak Popülâsyon Yapısı: Kuyruk sisteminden hizmet alma potansiyeli taşıyan
müşteriler kaynak popülâsyonunu oluştururlar. Kaynak popülâsyonu sonsuz ya da sonlu
sayıda birimden oluşabilir. Sonsuz kaynak popülâsyonu ifadesi ile kastedilen,
popülâsyonun her an hizmet almak için gelebilecek sayıda birim içermesidir.
Kuyruk Disiplini: Kuruk disiplini, müşterilerin hizmet alma sıralarının belirlenmesinde
uyulan kuraldır. Kuyruk disiplinine ilişkin 3 farklı kural tanımlanabilir:
• İlk gelen ilk servis alır.
• Son gelen ilk servis alır.
• Önemli olan ilk servis alır.
4.5.2. Öngörü Birçok bilim dalınca incelenen öngörü modelleri, genelde mevcut verilere bakılarak yeni
olası verilerin durumlarının incelenmesini temel alır. Öngörü modellerinin başarımı
problemin durumuna göre aşığdaki koşullara bağlı olarak değişmektedir:
• Mevcut verilerin doğruluğu
• Mevcut verilerin biçimsel yapısı
• Kullanılan öğrenme metodu
• Kullanılan tahmin metodu
Öğrenme sürecinin başlangıcı, verilerin özelliklerinden hangilerinin önemli olduğunun
belirlenmesi ile başlar. Öngörü sürecinde önemli olduğu belirlenen özellikler, öğrenme
algoritmasına uygun şekilde yeniden düzenlenmesi gerekebilir. Öğrenme süresi, genel
olarak verinin özellikleri üzerinde istatistiksel çıkrımların yapılmasıdır. Öğrenme
sürecinin başarımı, test verileri ile sınanması ile ortaya çıkarılır.
55
Döngüsel olarak, öğrenme ve test işleminin istenen düzeye gelmesine değin, özelliklerin
belirlenmesi ve dönüşümü, öğrenme algoritmasının seçimi işlemi yeniden yapılabilir.
Test verisi ile modelin başarımı istenen düzeye gelmesinin sağlanması ile model yeni
verilere uygulanmaya hazır hale getirilmesi ile öngörü modeli tamamlanmış olur.
4.5.3. Sınıflandırma ve kümeleme Sınıflandırma, eğitim verisinde ilgili her verinin hangi sınıflarda yer aldığı bilgisinin
verilmesi ile yeni verilerin hangi sınıfta yer aldığının bulunmasıdır. Kümeleme de ise,
verilerin kümeleri eğitim verisi ile verilmez. Modelden kümelerin bulunması
beklenmektedir.
4.6. Modeller ve Tekniklerin Eşleştirilmesi Problemin biçimsel olarak tanımlanması ile elde edilen modeller, yine problemin
doğasına uygun tekniklerle çözülmeleri gerekmektedir. Tez kapsamında tanımlanmış
modeller ve teknikler bu başlık altında eşleştirilmiştir.
56
Ano
maly Detecetion
Association
Rules
Attribu
te Im
portan
ce
Classification
Clustering
Feature Extraction
Regression
Estimation
Proje Yö
netimi
Şebe
ke M
odelleri
(Ulaştırma, Atama, Aktarma, En kısa yol)
Stok
Yön
etim
i
Ekon
omik Sipariş M
iktarı
Karar Ana
lizi
Kuyruk
Teo
risi
Support Vector Machine x x x Apriori x
Minimum Description Length x Adaptive Bayes Network x Decision Tree x Naive Bayes x K‐Means x O‐Cluster x
Non Negative Matrix Factorization x Artificial Neural Network x x Doğrusal Programlama x x x x
Doğrusal Olmayan Programlama x x x xGenetik Algoritma x x x xZaman Serileri x İstatistik / Analitik x x
Çizelge 4. 8. Modeller ve Tekniklerin Eşleştirilmesi
57
5. TİCARİ İŞ ZEKÂSI UYGULAMALARI
İş zekâsı üzerine hazırlanmış birçok ticari ürün bulunmaktadır. Bu ürünler
incelendiğinde iş zekâsı olarak sunulan yapıların gelişmiş raporlama olmaktan öteye
geçmediği görülmektedir. Genel olarak verilen hizmetler data-drilling olarak ifade edilen
SQL ve OLAP sorguları ve bu tekniklerin yan ürünleri olarak çıkarılan Dash Board,
Score Card ve Business Event Management olarak gösterilebilir.
Karşılaştırma yapabilme amacıyla tez kapsamında bu ürünlerden açık kaynak kodlu
olan Pentaho ve ticari ürünler arasında en çok referansa sahip Cognos incelenmiştir.
Ticari ürünlerden ise ön plana çıkanlar:
• Syncsort http://www.syncsort.com/
• Information Builders http://www.informationbuilders.com
• Noetix http://www.noetix.com
• Scentric http://www.scentric.com
• Sirana http://www.sirana.com
Yine tez kapsamında veri ambarı uygulaması olarak ön plana çıkan SAP BW (Business
Information Warehouse), Oracle Data Warehousing, Microsoft BI (Business Intelligence)
uygulamaları incelenmiştir.
5.1. Cognos Cognos BI uygulamaları içerisinde referanslarının sayısı ve işlem kapasiteleri göz
önünde bulundurulduğunda lider konumdadır. BI uygulamalarının genelinde görülen ve
aslında “intelligence” ifadesini sadece dikkat çekmek üzere kullanılması durumu sonucu
cognos’da gelişmiş bir raporlama aracı olarak sınıflandırılabilir. Ancak raporlama
yetenekleri açısından klasik anlayışın ötesinde işlevselliğe sahip olması sebebiyle
incelenmesinde fayda vardır.
Cognos, belirli ERP ürünleri üzerinde çalışmaktadır. Veri tabanı ya da uygulama
bağımsızlığı öngörülmemiştir. Bu seçim işlevselliği ilgili ürünler üzerinde artırırken,
uygulamanın kullanım alanını daraltmaktadır. Özellikle ülkemizde, ERP ürünlerinin hali
hazırda durağan bir yapıya kavuşmaması ve lider bir ERP üreticisinden
58
bahsedilememesi, bu şekilde belirli ERP ürünleri üzerine çalışmayı imkânsız
kılmaktadır. Zira ülkemizde en yoğun kullanılan ERP ürünlerinde dahi çekirdek yapı hala
durağan bir yapıya kavuşmamıştır ve durağan olmayan bir çekirdeğe göre sabit bir araç
geliştirmek, sık günleme maliyeti açısından ekonomik olmayacaktır.
Cognos’un yetenekleri:
1. Raporlama: Kullanılan ERP’ye özel çözümler ürettiği için verilerin bulunduğu tablolar
nesneler olarak ifade edilmiş ve bu nesneler üzerinde tümleşik sorgulamalar veri
tabanı bilgisi gerektirmeden üretebilmektedir.
2. Pivot tablo kullanım özelliği bulunmaktadır.
3. OLAP küpleri kullanım özelliği bulunmaktadır.
4. Metrikler: Veri nesneleri üzerinden tanımlanacak ve kontrol edilecek değerleri ifade
etmektedir. Metriklerin kaynağı veri nesneleri olabileceği gibi, bir metrik diğer
metriklerin bir formülü olarak da bulunabilmektedir.
5. Eylemler: Elektronik posta göndermek, metrikleri günlemek, raporları çalıştırıp
sonucunun saklanması gibi eylemler tanımlanmıştır. Raporların çalıştırıp sonucun
saklanması günlenen veriler üzerinde elde edilecek raporlarla değişimin
gözlenmesini amaçlamaktadır.
6. Zamanlanmış görevler: Zamanlanmış görevler eylemlerin belirlenen bir zamanda ya
da belirli bir periyot içerisinde çalıştırılmasını sağlamaktadır. Örneğin rapor alma
eylemi belirli bir periyoda bağlanarak veri değişimi daha etkin bir şekilde
gözlemlenebilmektedir. Diğer işlevsel bir örnek ise metrikler üzerinde verilebilir.
Metriğin belirli bir eşiği (artı ya da eski yönde) aşması durumunda ileti gönderme
eylemi tetiklenebilir. Böylelikle işletme kendi için önemli değerleri yakından takip
edebilir.
59
5.2. Pentaho Pentaho açık kaynak kodlu, BI uygulama kümesi tanımlamaktadır. Pentaho BI
kavramını gelişmiş raporlama mantığı içerisinde sunar. Pentaho ile işletmelere ilişikteki
yetenekler sağlanmaktadır:
1. SQL tabanlı raporlama: Rapor formatları BIRT ve Jasper Reports gibi araçlarla ya da
Pentaho’nun kendi rapor uygulaması ile geliştirilebilir. Raporların geliştirilmesi
masaüstü uygulaması ile sağlanırken, raporların sunulması WEB tabanlı
yapılabilmektedir.
2. OLAP: JPivot Kütüphanesi kullanılarak MDX sorguları desteklenmiştir. Böylelikle
kullanıcılara kolaylıkla Pivot tablo kullanma yeteneği sağlanmıştır.
3. SVG: Scable Vector Graphics kullanılarak coğrafik konumlandırmalar Google Maps
aracı ile kullanıcılara sunulmuştur.
4. Grafiksel Raporlar: Pentaho JReport kütüphanesini kullanarak grafiksel rapor
geliştirme yeteneğini genişletmiştir. HTML, Excel ve PDF olarak raporlar
üretebilmektedir.
5. Dashboard: Pentaho işletme için önemli olan verilerin çevirim içi izlenebilmesini
sağlamaktadır. Temelde dashboard raporların tek bir ekranda tümleşik olarak
sunumudur.
6. Raporların yayınlanması: Pentaho üretilen tüm raporları ve veri analizi sonuçlarını
HTML, XML, Excel ya da PDF olarak WEB üzerinden yayınlanmasına olanak
sağladığı gibi ilgili raporların e-posta ile dağıtılmasını da destekler.
Pentaho incelediği verileri değişik kaynaklardan elde edebilmektedir. Bu amaçla
RDBMS ve LDAP sunucuları yanında XML ve WEB servisleri de veri kaynağı olarak
kullanılabilmektedir.
60
5.3. SAP BW SAP (Systems Analysis and Program Development), sektörde yer alan en güçlü ERP
ürünüdür. Standart ERP hizmetleri olarak finansal kaynakların, insan kaynaklarının,
kurumsal hizmetlerin yönetilmesinde, müşteri ilişkileri yönetiminde, ürün ömrü yönetimi,
tedarik zinciri yönetimi gibi uç noktalarda çözümler sunar.
SAP'ın ürünleri kurumsal kaynak planlama sektöründe yer almaktadırlar. Şirketin ana
ürünü olan SAP R/3'deki "R" gerçek zamanlı ("Realtime") veri işleme özelliğini, 3 rakamı
ise veritabanı, uygulama sunucusu ve istemciden oluşan üç seviyeli uygulama
mimarisini simgeler. R/3, R/2'nin ardılıdır. Şirket tarafından geliştirilen diğer ürünler APO
(Advanced Planner and Optimizer), BW (Business Information Warehouse), CRM
(Customer Relationship Management), SRM (Supplier Relationship Management)
olarak özetlenebilir.
Tezin içeriği açısından SAP’ın iş zekası yeteneklerinin incelenmesi karşılaştırma
olanağı açısından önemlidir.
SAP business intelligence uygulamalarını NetWear ürünü içerisinde veri madenciliği
olarak tanımlamaktadır. Veri madenciliğini örüntü tanıma, istatistiksel ve matematiksel
yöntemler kullanılarak büyük veriler üzerinde ilişkilerin, örüntülerin ve eğilimlerin (trend)
“madencilikle” keşfedilmesi işlemi olarak tanımlamaktadır. SAP OLAP tekniklerini veri
madenciliğinde ham veri kaynaklarından biri olarak görmektedir.
1. Analysis Process Designer: Verinin sorgulanması, satırların seçilmesi, istenen
alanların izdüşümü, birden çok tablonun birleşimi ve ortaya çıkan sonuçların
gruplanmasına yönelik bir araçtır. Araç aşağıda sayılan maddeleri de gerekli adımlarda
kullanabilmektedir.
61
Şekil 5. 1. Analysis Process Designer [26]
2. Karar Ağaçları: Mevcut veriler üzerinde istenilen soruya cevap verecek şekilde karar
ağacının eğitilmesi ve yeni veriler üzerinde çalıştırılmasına olanak vermektedir. Karar
ağacı süreçleri şu şekilde verilmektedir.
1. Karar ağacı mevcut verilerle eğitilir.
2. Mevcut veriler üzerinde karar ağacı başarımı değerlendirir.
3. Yeni veriler üzerinde karar ağacı kullanılarak tahminlerde bulunulur.
Şekil 5. 2. Karar Ağacı Süreçleri [26]
62
3. Doğrusal ve Doğrusal Olmayan Regresyon: SAP regresyonu bir değişkenin diğer
değişkenlerin kullanılması ile açığa çıkarılması ve değerinin ölçülmesini sağlayan bir
tahmin yöntemi olarak tanımlamaktadır.
SAP kullanılarak müşterilerin, personelin, ürünlerin gruplaması, değerlendirilmesi
yapılabilmektedir. Bununla beraber regresyon, yeni verilere ilişkin tahminlerde
bulunmak amacıyla kullanılabilmektedir.
4. Kümeleme (Clustering): Sınıflandırma kayıtlardan belirli bir grup içerisindeki diğer
kayıtlarda olanlar ve tüm gruplardan ayrı olanlar göz önünde bulundurularak yeni
grupların oluşturulması olarak tanımlanmıştır.
5. ABC Sınıflandırması: ABC sınıflandırması belirli nesneleri (müşteriler, personel ya da
ürünler gibi) belirli ölçümlere göre (gelir ve fayda gibi ) sınıflandırılmasını sağlar.
Şekil 5. 3. ABC Sınıflandırması [26]
6. Birleşim Analizi (Association Analysis): Birleşim analizi tüm iş süreçleri içerisinde
düzenliliklerin (regularity) bulunmasını ve düzenliliklerin kurallar olarak (örn. “Eğer bir
kullanıcı A’yı alıyorsa, B ve C ürünleri de alıyor demektir.”) ifade edilmesini sağlar.
63
5.4. Oracle Oracle veri tabanı yönetim sistemine tümleşik olarak Veri Ambarı uygulamalarına yer
vermektedir. Veri Madenciliği ve gelişmiş OLAP teknikleri Data Warehousing
uygulamalarını oluşturmaktadır. Oracle içerisinde Data mining işlevleri supervised ve
unsupervised olmak üzere iki farklı kümede ele alınabilecekleri gibi başka bir yaklaşımla
predictive ve descriptive olarak da ele alınabilirler.
ODM tekniklerinin etkili çalışabilmesi için veriler üzerinde ön çalışma yapılması gerektiği
öngörülmüştür. Veri hazırlama işlemi tabloların ve görünümlerin SQL sorgulama
tümceleri ile düzenlenmesinin yanında,
• Uç değerler üzerinde trimming (uç değerlerin yok sayılması, tıraşlanması) ya da
winsorizing (uç değerin en yakın makul değere dönüştürülmesi) işlemlerinin
uygulanması
• Farklı değer sayısının azaltılması
o Top N most frequent algoritması
o Equi-Width Bining algoritması
• Normalleştirme (Normalization)
işlemlerini de gerektirmektedir.
Oracle veri madenciliği teknikleri iki temel grup içerisinde şu şekilde sıralamaktadır.
1. Supervised data mining • Classification
o Decision Tree Algoritması o Naive Bayes Algoritması o Adaptive Bayes Algoritması (Oracle tescillidir.) o Support Vector Machine Algoritması
• Regression o Support Vector Machine
• Attribute Importance o Minimum Desription Length Algoritması
• Anomaly Detection o Naïve Bayes Algoritması o Support Vector Machine Algoritması
2. Unsupervised data mining • Clustering
64
o Enhanced k-Means Algoritması o Orthogonal Partitioning Clustering (O-Cluster) algoritması
• Association Model o Apriori Algoritması
• Feature Extraction o Non-negative Matrix nFactorization algoritması
5.5. Microsoft Business Intelligence Microsoft veri madenciliği, OLAP, raporlama araçlarını iş zekâsı platformu olarak
sunmaktadır. Microsoft BI ortamı bir uygulamalar bütünü olarak tarif edilebilir. BI
platformu içerisinde
• Microsoft Office Excel 2007
• Microsoft Office PerformancePoint Server 2007
• Microsoft Office SharePoint Server 2007
• Microsoft SQL Server 2005
• Microsoft Visual Studio 2005
• Business Intelligence Development Studio
uygulamaları sayılabilir.
Uygulamalar, sıradan raporların üretilmesinden gelişmiş veri madenciliğine kadar birçok
iş zekâsı uygulamasını desteklemektedir. Veri tabanından bağımsız veri madenciliği
uygulamaları geliştirme ortamına sahip olmasının yanında Microsoft Visual Studio 2005
ile entegrasyonu ile güçlü geliştirme ortamı desteği verilmiştir. Ancak bu güçlü geliştirme
ortamının bir dezavantajı olarak, veri madenciliği uygulamalarını geliştirmek için uzman
programcı iş gücüne sahip olunması gerekmektedir.
Microsoft BI kapsamında Veri Madenciliği için kullanılan algoritma türleri:
• Sınıflandırma algoritmaları (Classification Algorithms)
• Regresyon algoritmaları (Regression Algorithms)
• Segmentation algoritmaları (Segmentation Algorithms)
• Birleşim algoritmaları (Association Algorithms)
• Sıralama İnceleme Algoritmaları (Sequence Analysis Algorithms)
Veri Madenciliğinde kullanılabilen algoritmalar :
• Microsoft Decision Trees Algorithm
65
• Microsoft Clustering Algorithm
• Microsoft Naive Bayes Algorithm
• Microsoft Association Algorithm
• Microsoft Sequence Clustering Algorithm
• Microsoft Time Series Algorithm
• Microsoft Neural Network Algorithm (SSAS)
• Microsoft Logistic Regression Algorithm
• Microsoft Linear Regression Algorithm
İş Zekâsı ve Veri Madenciliğinde kullanılabilen algoritma matrisi
Classification Segmentation Estimation Association Forecasting Text
Analysis
Advanced
Data
Exploration
Association
Rules
X X X
Clustering X
Decision
Tree
X X X X
Linear
Regression
X
Logistic
Regression
X X X
Naïve Bayes X X X
Neural Nets X X X
Sequence
Clustering
X X
Time Series X
Çizelge 5. 1. Microsoft Veri Madenciliği Algoritmaları
5.6. Diğer Uygulamalar Tez kapsamında yapılan çalışmada, diğer ürünlerin yeteneklerini göstermek üzere
yukarıda anlatılan ürünlerin yanında, önemli özellikleri ve yetenekleri ile ön plana çıkan
diğer bazı ürünlerinde isimlerinin verilmesi, ileriki çalışmalar için anlamlı olacaktır.
Veri Madenciliğinde önemli diğer ürünler:
DBMiner, Weka 3, YALE, SPSS Clementine
66
5.7. Ticari Uygulamaların Genel Olarak Değerlendirilmesi Sektörün lider ürünleri üzerinde yaptığımız çalışmalarda görülen eksik noktalar temel
olarak şu şekilde sıralanabilir:
1. Yöneylem Araştırması teknikleri hiç bir veri madenciliği uygulamasında doğrudan
bulunmamaktadır. Bazı cılız third party uygulamaları ile ele alınmışlardır.
2. İstatistiksel yöntemler, yapay zekâ algoritmalarının gerisinde kalmıştır. Hatta
birçok uygulamada istatistiksel karar verme süreçleri ele alınmamıştır. Benzer
şekilde verilen kararların istatistiksel değerlendirmesi alınamamaktadır.
3. Model tanımlama tüm ürünlerin ortak özellikleri olmasının yanında, modellere veri
girişleri sadece veri tabanı ya da xml gibi veri kütüklerinden olmaktadır.
Modellerin birbirleri ile etkileşimi, diğer bir ifade ile birinin sonucunun diğerine
doğrudan girdi olması sağlanamamaktadır. Ancak çalışılması durumunda XML
üzerinden veri aktarımı söz konusu olabilmektedir, yine de bu yönde de gelişmiş
araçlar mevcut değildir.
67
6. UYGULAMA
Yüksek Lisans Tezi çalışması kapsamında önceki bölümlerde anlatılan yöntemlerin
kullanılması ile etkileşimli modeller oluşturulmasına yönelik modelleme kütüphanesi alt
yapısı gerçekleştirimi yapılmıştır.
6.1. Tanım ve Amaç İşletmelerde her geçen gün yaygınlaşmakta olan Kurumsal Kaynak Yönetimi (KKY)
sistemler ile işletmelerin günlük süreçlerine ilişkin veriler elektronik ortamlara
aktarılmaktadır. Ülkemizde de KOBİ’lere geri ödemesiz çok sayıda destek verilerek,
küçük ve orta ölçekli işletmelerinde bu sürece dâhil edilmesi sağlanmaktadır[19].
İşletmelerin günlük süreçleri dışında, politikalarını belirlemek amacıyla karar alma
süreçlerinde bu verilerden faydalanarak Karar Destek Sistemlerinin oluşturulması KKY
gelişimiyle paralel bir gelişim izlemektedir.
Hazırlanan uygulamanın amacı, işletmelerde toplanmakta olan verilerden karar alma
sürecine destek verebilecek raporların üretilmesidir. Genel olarak SQL tümceleri ile
rapor almanın ötesinde, verilerden bilgilerin üretilmesine yönelik bir uygulama
geliştirilmiştir.
Ticari ürünlerin incelemesinde ortaya çıkan Yöneylem Araştırması’na ilişkin desteğin az
oluşu durumu, uygulamanın geliştiriminde esas dayanak noktasını oluşturmaktadır.
Uygulama aracılığı ile Yöneylem Araştırmasında incelenen problemler
modellenebilmektedir.
Uygulamanın önemli bir özelliği de, modellerin birbirleri ile etkileşimli çalışabilmeleridir.
Böylelikle hazırlanan model için gerekli bir parametre bir başka modelin çıktısı
olabilmektedir. Örnekle açıklamak gerekirse, gelecek döneme ilişkin bütçeleme yapmak
amacıyla kurulacak bir modelde, tahmini satış oranları parametresi, veri madenciliği
teknikleri kullanılarak tahmin edilebilmektedir.
68
6.2. Tasarım Yapılan çalışmanın temel tasarımı temel modelleme alt yapısı ve parametrelerin
belirlenmesine yönelik sınıf kütüphanesinden oluşmaktadır. Bununla beraber
modelleme alt yapısının Doğrusal Programlama ve Support Vector Machine algoritması
için genişletilmesi de verilmiştir.
6.2.1. Modelleme altyapısı Temel model altyapısı, modellerin oluşturulması, veri tabanında saklanması,
düzenlenmesi ve işletiminden sorumludur. Model işletimi, modelin parametrelerinin
işletilmesi, değerlerinin ilgili değişkenlere aktarılması ve modelin bu değerlerle
çalıştırılmasını sağlamaktadır.
69
Varia
ble
Varia
ble
Varia
ble
Varia
ble
Varia
ble
Varia
ble
Dat
abas
e P
aram
eter
Mod
el P
aram
eter
Mod
el P
aram
eter
Use
r Par
amet
er
Dat
abas
e P
aram
eter
Varia
ble
Varia
ble
Varia
ble
Varia
ble
Model Variables
Con
stan
t
Con
stan
t
Con
stan
t
Model Constants
Database
Dat
abas
e P
aram
eter
Database
DataBase Query
DataBase Query
DataBase Query
Temel Model Yapısı
Model
Model
Şekil 6. 1. Model Yapısı ve Parametre Türleri
Yukarıdaki şekilde Temel Model Yapısı anlatılmaktadır. Temel Model yapısı diğer
modellerin kalıtımda esas aldıkları soyut sınıflar kütüphanesini tanımlamaktadır. Bu
kütüphane, modelin işletiminden önce değeri belirlenmesi gereken değişkenlerin, ön
işletim ile değer atamasını sağlayacak yapıları da içermektedir.
70
Ön çalıştırma işlemi, modelin esas işletiminde sabit olarak görülebilecek ancak, esas
itibariyle bir başka modelden gelen, ya da veri tabanından gelen değerlerin alınmasını,
dolayısıyla bir başka modelin işletilmesini ya da veri tabanı sorgusunun çalıştırılmasını
sağlamaktadır.
Temel model yapısında üç temel nitelik ele alınmıştır:
Değişkenler Modelin işletimine ilişkin değişkenlerden farklı olarak, temel model yapısı içerisindeki
değişkenler, model işletilmeden önce değerleri belirlenecek yapılardır.
Parametreler Modelin işletiminden önce temel model değişkenlerinin değerleri temel model yapısı
içerisindeki parametrelerin işletilmesi ile elde edilir. Üç farklı parametre türü
belirlenmiştir:
a. Öncül Model Parametreleri: Modellerin girdilerinden bir kısmı bir başka modelin
sonucu olabilir. Bu durumda model işletiminden önce öncül modellerin işletimi ve
sonuçlarının esas modelin temel model değişkenlerine aktarılması gerekmektedir. Bu
işlem Öncül Model Parametreleri ile gerçekleştirilir.
b. Kullanıcı Değer Girişi Parametreleri: Kullanıcıdan değer alınmasına yönelik
parametrelerdir.
c. Veri Tabanı Parametreleri: Veri tabanında elde edilecek sonuçları ilgili değişkenlere
aktarılmasını sağlayan parametrelerdir.
Parametreler değişkenlerin eşleştirilmesi işleminde 4 farklı yöntem kullanılabilir.
Parametrenin sonucunun tek bir değer olması durumunda bu değer doğrudan değişken
ya da değişkenlere aktarılabilir. Parametrenin sonucunun iki boyutlu bir matris olması
durumunda ise, kolonlarla ya da satırlarla parametreler arası eşleştirme yapılabileceği
gibi, iki boyutlu matris doğrudan değişkene aktarılabilir. Sütunların ya da satırların
değişkenlere aktarılması durumunda değişkenlerin veri yapısı tek boyutlu dizi olması
gerekirken, matrisin doğrudan aktarılabilmesi için değişken veri yapısının iki boyutlu dizi
olması gerekmektedir.
71
Sabitler Modeller için sabitlerin ele alınması temel model alt yapısı seviyesinde ele alınmıştır.
Böylelikle geliştirilecek diğer model türleri için kalıtımla sabitlerin yönetimi yeteneği
aktarılmış olacaktır.
6.2.2. Veri tabanı erişim katmanı Model alt yapısı içerisinde veri tabanlarından bağımsızlık gereksinimi, tanımlanan soyut
sınıflarla ele alınmıştır. Sorgu soyut sınıfı, gerçekleştirimine bağlı olmak üzere, veri
tabanında ilgili sorgunun çalıştırılmasını sağlamaktadır.
Database
DataBase Query
DataBase Query
PostGreSQL
Query
Query
Query
PostGreSQLDriver
ORACLE
Query
Query
Query
OracleDriver
Şekil 6. 2. Veri Tabanı Parametresi ve Veri Tabanından Bağımsızlık
Yukarıdaki şekil, temel model alt yapısında yer verilen veri tabanı parametre türünün alt
yapısını anlatmaktadır. Temel model yapısı içersindeki veri tabanı parametre yapıları,
veri tabanı sorgu nesneleri ile veri tabanından verilerin çekilmesini sağlamaktadır. Veri
72
tabanı sorgu nesneleri ise, önceden sistem yöneticisi tarafından tanımlanmış veri tabanı
bağlantı nesneleri ile ilişkilendirilmiştir. Böylelikle esas olan veri sorgu nesnesi içerisinde
sadece sorgunun tanımı değil, hangi kaynaktan çekileceği bilgisini de içermektedir.
Bağlantı nesneleri ise, sistemde ön tanımlı veri tabanı sürücülerini kullanmaktadır.
Bağlantı nesnelerinin oluşturulması, model kütüphanesinin ilgili işletmeye uyarlanması
aşamasında ele alınmaktadır. Bağlantı nesnesi, hangi sunucuya hangi sürücünün
kullanılarak bağlanılacağı bilgisinin yanında, veri tabanı kullanıcı tanımlamasının
kullanıcı adı ve parola bilgilerini de içermektedir.
6.2.3. Model altyapısının doğrusal programlama için genişletilmesi Temel model yapısından kalıtımla üretilen doğrusal programlama modeli temel çizimi
ise aşağıda verilmiştir.
Şekil 6. 3. Doğrusal Programlama Modeli
73
Doğrusal Programlama içerisinde tanımlanan amaç fonksiyon ve kısıtların formülleri
içerisinde kullanılan sayılar, temel model altyapısı içerisinde tanımlanan parametrelerle
belirlenebilmektedir. Doğrusal Programlama model kütüphanesi, temel model
yapısındaki değişkenler ve değişmezler ile kendine özel LP Değişkenleri ve sabitlerini
eşleştirme işlemini gerçekleştirmektedir.
6.2.4. Model altyapısının support vector machine için genişletilmesi Doğrusal Programlama benzer şekilde modelleme kütüphanesi Support Vector Machine
algoritması için genişletilebilir. Ancak Support Vector Machine alogoritması kendine özel
değişkenler algoritmanın işletimine ilişkin değerler olması sebebiyle modelleme alt
yapısını kullanmamaktadır. Bu açıdan temel modelleme kütüphanesine ek olarak
gerçekleştirim ve işletim sınıflarını genişletmektedir. Ancak doğrusal programlamadan
farklı olarak modelin eğitilmesi gerektiği için model içerisinde eğitim ve test verilerinin
elde edileceği sorgu nesnelerine yer verilmiştir.
Şekil 6. 4. Support Vector Machine Modeli
74
6.3. Gerçekleştirim
6.3.1. Modelleme altyapısı gerçekleştirimi Uygulamanın gerçekleştiriminde önce tasarıma uygun olarak model alt yapısı
oluşturuldu. Model alt yapısına ilişkin temel sınıfların sınıf çizeneği aşağıda verilmiştir.
Şekil 6. 5. Modelleme Altypısı Gerçekleştirimi
75
Model altyapısı parametreler ve değişkenler ile değişmezleri eşleştirmek üzere üç farklı veri kaynağı tanımlamaktadır. Bu sınıflara ilişlin sınıf çizeneği aşağıda verilmiştir.
Şekil 6. 6. Modelleme Altyapısı Parametre Yönetimi
76
6.3.2. Veri tabanı erişim katmanı gerçekleştirimi Modelleme alt yapısının bir diğer paketi ise veri tabanından verilerin çekilmesine ilişkin
gerçekleştirimden sorumludur.
Şekil 6. 7. Veri Tabanı Erişim Katmanı
6.3.3. Modelleme altyapısının doğrusal programlama ile gerçekleştirimi Temel model paketini kullanarak geliştirilen doğrusal programlama paketinde, doğrusal
programlama kütüphanesi olarak hazır kullanılan açık kaynak kodlu DRA System’e ait
OR-Objects kütüphanesi adaptör kullanılarak uygulamanın model yapısına
uyarlanmıştır.
Şekil 6.7’de gösterildiği gibi, Modellerin işletiminden sorumlu motor sınıf, ilgili
algoritmayı kendi gerçekleştirebileceği gibi adaptör olarak bir başka kütüphaneden bu
hizmeti alarak, temel model alt yapısına uygun olarak genişletebilir. LPModelBuilder
sınıfı ise, modelin oluşturulması aşamasında kullanılmaktadır.
77
Şekil 6. 8. Modelleme Altyapısı ve Doğrusal Programlama
78
6.3.4. Modelleme altyapısının support vector machine ile gerçekleştirimi Modelleme altyapısının Support Vector Machine algoritması için genişletilmesi temelde
Doğrusal Programlama için genişletilmesinden farklı değildir. Ancak modellerin farklı
yapıları gereği, doğrusal programala modelleri eğitilmeksizin çalıştırılabilirken, Support
Vector Machine modelleri oluşturulmaları aşamasında eğitilmeleri gerekmektedir.
Şekil 6.7 ile Şekil 6.8 arasında temel fark SVMModelTrainer sınıfının oluşturulması
gereğidir. IModelTrainer sınıfı soyut sınıf olarak modelleme altyapısının eğitilmesi
gereken modellerin oluşturulmasında eğitim işlemlerini tetiklemek amacıyla
tasarlanmıştır.
79
Şekil 6. 9. Modelleme Altyapısı ve Support Vector Machine
80
6.3.5. Ekran görünümleri Son olarak sisteme ilişkin tamamlayıcı bilgi veren bir kaç ekran görüntüsü verilmiştir.
Şekil 6. 10. Doğrusal Programlama Tanımlama Ekranı
Yukarıdaki ekran görüntüsünde Doğrusal Programlama (Linear Programming –LP) modelinin oluşturulmasına ilişkin DP’ye özel tanımların yapıldığı ekran görüntüsü verilmiştir.
Şekil 6. 11. Doğrusal Programlama Kısıtlar
81
6.4. Uygulamanın Sınanması Tez kapsamında hazırlanan uygulama kullanılarak oluşturulacak svm modeli, aynı veri
kümesi ve benzer parametreler ile Oracle Data Mining API kullanılarak yeniden
oluşturulacak ve böylelikle sistemin başarımı test edilebilecektir.
6.4.1. Örnek problemin tanımı Müşterilerin alışveriş alışkanlıkları üzerinden, değerli müşterilerin belirlenmesi
sağlanacaktır. Bu amaca yönelik veri tabanında müşterilerin alışverişlerini saklayan bir
görünüm oluşturulmuştur. Görünümün veri alanları şu şekildedir:
Sutun Açıklama
CUST_ID Müşteri numarası
CUST_GENDER Cinsiyeti
AGE Yaşı
CUST_MARITAL_STATUS Evlilik durumu
COUNTRY_NAME Ülkesi
CUST_INCOME_LEVEL Geliri
EDUCATION Eğitim durumu
OCCUPATION Mesleği
HOUSEHOLD_SIZE Ev halkı sayısı
AFFINITY_CARD Hedef alan, Affinity Card verilecek mi? (Model
ile bulunmak istenen bilgi burada saklanıyor.)
FLAT_PANEL_MONITOR Flat panel monitor kullanıyor mu? HOME_THEATER_PACKAGE Home Theater sahibi mi? BOOKKEEPING_APPLICATION Muhasebe uygulamasına sahip mi?
Çizelge 6. 1. Sınama Verisi Sütun Tanımları
İşletme içerisinde müşteriye ilişkin özel bilgiler ile müşteriye özel kredi kart verilmesi
ilişkilendirilmiş. Modelle amaçlanan, daha önce şirketin reklam amaçlı bir banka ile
anlaşmalı hazırladığı kredi kartının kimlere verilebileceğinin bulunması. Bu amaca
yönelik mevcut bilgilerle model eğitiliyor ve yeni müşteriler için uygulanıyor.
Model için kullanılan veri Oracle SVM için hazırladığı örnek uyguladan edinilmiştir.[34]
Veri kümesinin bir kısmı modelin eğitimi için kullanılırken, bir kısmı da modelin test
82
edilmesi için kullanılmıştır. Model amaç kolonun, diğer kolonlara bakarak modelin ilgili
değeri tahmin etmesi ve bu değerin bulunması beklenen değerle karşılaştırıması ile test
edilmektedir.
Örnek problem için kullanılan veri kümesinden bir kesit Çizelge verilmiştir. cust_id
cust_gen
der
age
cust_m
arital_status
cust_incom
e_level
education
occupa
tion
househ
old_
size
yrs_reside
nce
affin
ity_card
bulk_p
ack_diskettes
flat_pa
nel_mon
itor
home_theater_pa
ckage
book
keep
ing_ap
plication
printer_supp
lies
y_bo
x_games
os_d
oc_set_kan
ji
101501 1 41 1 1 5 5 5 4 0 1 1 1 1 1 0 0 101502 2 27 1 2 1 13 5 3 0 1 1 0 1 1 1 0 101503 1 20 1 4 10 6 5 2 0 1 0 0 1 1 1 0 101504 2 45 2 12 1 11 2 5 1 0 0 1 1 1 0 0 101505 2 34 1 5 5 13 3 5 1 1 1 0 1 1 0 0 101506 2 38 2 5 10 7 2 4 0 1 1 1 1 1 0 0 101507 2 28 2 1 2 13 2 3 0 1 1 0 1 1 1 0 101508 2 19 1 5 10 13 5 2 0 1 1 0 1 1 1 0 101509 2 52 2 5 1 7 2 5 0 1 1 1 1 1 0 0
Çizelge 6. 2. Örnek Eğitim Verisi
83
6.4.2. Oracle DM kullanılarak oluşturulan model:
Oracle örnek şeması içerisinde SUPPLEMENTARY_DEMOGRAPHICS tablosu modelin
eğitilmesi ve test edilmesi için kullanılmıştır. Bu amaca yönelik, tablo içerisindeki
verilerin 900 satırı modelin oluşturulması için kullanılmıştır. Modelin test edilmesi için,
oluşturulmasında kullanılanların dışında geriye kalan 600 satır kullanılmıştır.
Modelin test verileri ile incelenmesinin sonucu aşağıdaki grafiklerde görülebilir.
Şekil 6. 12. Oracle SVM Başarımı
Tahmin Güvenliği: Yaklaşık %76 başarılı olarak ölçülmüştür. (İki sınıflıda doğruluk
olasılığı %50’dir. Yukarıdaki grafik, rastgele tahmin yapan bir modele göreli başarıyı
vermektedir.)
84
Şekil 6. 13. Oracle SVM Başarımı (Ayrıntılı)
Doğruluk: Bir(1), AFFINITY CARD verilmesi gerekenleri göstermektedir. 0 olarak
işaretlenen 435 kişiden 95’i test verisinde 1 olarak görülmüştür. 0 işaretlemede başarı
oranı %77,93 olarak hesaplanmıştır. 1 olarak işaretlenen 167 kişinin 27’si test verisinde
0 olduğu belirlenmiştir. 1 işaretlemede başarı oranı %74,85 olarak hesaplanmıştır.
85
6.4.3. Tez kapsamında geliştirilen uygulama kullanılarak oluşturulan model Tez kapsamında hazırlanan uygulama kullanılarak, Oracle DM kullanılarak hazırlanan
model benzer biçimde tanımlanmıştır. Aynı eğitim verisi kullanılarak hazırlanan modelin
çalışmasına ilişkin ekran görüntüleri aşağıda verilmiştir.
Şekil 6. 14. Tez Uygulaması SVM Modeli Oluşturulması
Yukarıdaki ekran görüntüsünde modelin eğitim ve test parametreleri verilmiştir.
Şekil 6. 15. Tez Uygulaması SVM Eğitimi
Modelin eğitimi ve testi için gerekli veri kümesini hazırlayacak ilgili veri tabanı sorguları
belirlenmiştir.
86
Şekil 6. 16. Tez Uygulaması SVM Başarımı
Eğitim verisinin hazırlanmasını sağlayan sorgu sonucu 900 satır ile sistem eğitilmiş, test
versinin hazırlanmasını sağlayan sorgu sonucu 600 satır ile sistem test edilmiştir.
Yapılan test sonucu 1500 satırdan 455’ine modelin verdiği sınıf bilgisi ile mevcut sınıf
bilgisi örtüşmüştür. Dolayısıyla modelin başarımı %75.83 olarak ölçülmüştür.
6.4.4. Oracle DM ve tez uygulamasının karşılaştırımı
Oracle ile tez uygulamasında aynı model, aynı veri kümesi ile çalıştırılmıştır. Oracle
başarımı %76.30 olarak ölçülürken, tez uygulamasının doğruluğu %75.83 olarak
ölçülmüştür. Tez uygulamasında kullanılan SVM algoritmasının sonucunun Oracle ile
yakın olduğu tesbit edilmiştir.
Tez uygulamasında modelin kurulması için gerekli parametreler ile Oracle üzerinde
modelin kurulması için gerekli parametreler karşılaştırıldığı zaman, tez uygulamasında
model tanımlayan kişiye modelini daha özgür oluşturma olanağı sağlandığı
görülmektedir.
Eğitim Veri Büyüklüğü
Test Veri Büyüklüğü
Test Başarımı
(Doğru Cevap Oranı)
Oracle 900 600 %76.30
Tez Uygulaması 900 600 %75.83
Çizelge 6. 3. Oracle ve Tez Uygulaması Başarım Karşılaştırması
87
7. SONUÇ VE ÖNERİLER
7.1. Sonuç Değişik disiplinlerin işletmelerin karar verme aşamasında verilerinden bilgi üretmesine
yönelik kullandığı birçok yöntem bulunmaktadır. Bu yöntemler genelde kullanıldıkları
disiplinlerle eşletirilmiş araçlarla işletmelerin kullanımına sunulmaktadır. Ancak değişik
disiplinlerden yöntemleri bir arada işletme olanağı tez kapsamında incelenen araçlarda
bulunamamıştır. Karar verme sürecine ilişkin tek bir araç kullanımıyor olması, işletmeler
için birden çok araç için katlanılan maliyeti ve daha uzman personel gereksinimi ve iş
gücü kaybını beraberinde getirmektedir.
Tez kapsamında geliştirilen modelleme kütüphanesinin, farklı disiplinlerde incelenilen
tekniklerin tek bir ortamda tanımlanmasına izin vermesinin yanında modellerin
etkileşimli çalışmalarıda sağlanmıştır. Modellerin etkileşimli çalıştırılabilmesi, kullanım
kolaylığı yanında, veri incelemede değişik modellerin çıktılarının bir modele
aktarılabilmesi sonucu, farklı yaklaşımların ürettiği sonuçların incelenmesini de
kolaylaştırmıştır.
Modellerin veri kaynakları, yukarıda da anlatıldığı gibi bir başka model olabileceği gibi,
sürücüsü sistemde tanımlanmış herhangi bir veri tabanı da olabilir. Veri kaynağı olarak
kullanıcı ve kütüklerde kullanılabilmektedir.
7.2. Öneriler 1. Modelleme Kütüphanesi temel olarak karar destek sürecinde işletmelere faydalı
olmak amacıyla hazırlanmıştır. Ancak alınan modelleme ile elde edilen özellikle ileriye
dönük öngörüleri içeren kararlarda, kesinlikten söz edilemez. İstatistik ve Yöneylem
araştırmalarında karar analizinde alınan kararın riski olasılıksal olarak ifade edilebiliyor
olmasına karşın, modelleme alt yapısının bu bağlamda temel eksiği olasılıksal karar
değerlendirmelerden yoksun oluşudur. Diğer bir ifade ile modeller arası etkileşimlerde
geçirilen parametrelerin doğruluk ihtimalleri de aktarılmalı ve uç model (en son çalışan
model) verdiği kararı öncüllerinden gelen olasılıkları da göz önünde bulundurarak
kullanıcıya sunmalıdır. Bu amaca yönelik kullanılan birçok algoritmanın bulanık mantıkla
yeniden ele alınması ve modelleme kütüphanesinin bulanık mantıkla yeniden
88
düzenlenmesi, verilen kararın kullanıcı açısından riskinin belirlenmesinde faydalı
olacaktır[20,21].
2. Tez çalışması kapsamında Uzman sistemler ve veri yönetimi konuları işlenmemiştir.
Ancak her türlü teknolojiyi içeren bir İş Zekâsı uygulamasında uzman sistemlerin
tümleşik olarak sunulması karar destek sürecine işletmenin geliştirdiği işine yönelik
tecrübesinin daha yoğun katılımını sağlayacaktır[22].
3. Uygulamanın veri tabanından bağımsızlığı gerek bir özellik olmasının yanında,
verilerin veri tabanından çekilmesine ilişkin tanımlamaların yapılmasında gerekli
kullanım kolaylığını sağlamaya yeterli değildir. Bu amaca yönelik veri tabanında gerçek
varlıkların belirlenmesine ve diğer ilişkilerin (örneğin n-n’lik ilişkilerden ortaya çıkan veri
tabanı tablolarının) kullanıcıdan soyutlanmasını sağlayan sorgulama aracı eklenmelidir.
Böylelikle kullanıcının günlük iş hayatında kullandığı varlıklar üzerinden veri hazırlama
işlemini yapması sağlanabilir. Bu yapının geliştirilmesi ile verilere vekil (proxy)
tanımlama olanağı ile verinin sadece veri tabanından değil XML kütükleri gibi diğer
kaynaklardan da elde edilmesi sağlanabilir.
4. Uygulamada modeller hem problem hem çözüm için gerekli algoritmayı içerir şekilde
tasarlanmıştır. Diğer bir ifade ile problem tanımlanırken, çözüleceği algoritma
belirlenmelidir. Ancak problem ile algoritma modelleme aşamasında da birbirinden
ayrılması böylelikle aynı problemin bir başka algoritma ile çözülmesinde problemin
yeniden tanımlanmasına gerek kalmaması sağlanabilir.
5. İşletmelerin günlük verileri kimi durumlarda akan zaman içerisinde günlenmektedir.
Bu durum ise günlene veri ile anlık karar durumunun kaybolmasına sebep olmaktadır.
Bu olumsuz durumun ortadan kaldırılması için iki çözüm önerilebilir. Modeller belirli
periyotlarla çalıştırılır ve sonuçları kaydedilir, ya da modeller ilgili oldukları veri
değiştikçe yeniden çalıştırıl ve sonuçları kaydedilir. Belirli periyotlarla verilerin
kaydedilmesi işlemi Veri Tabanı Yönetim Sisteminden ve veriyi değiştiren uygulamadan
(çoğu durumda Kurumsal Kaynak Yönetim Sistemi) bağımsız yürütülebilirken, ikinci
çözümde modelin çalıştırılmasına yönelik tetikleme işi için Veri Tabanı Yönetim Sistemi
ya da KKY ile etkileşimli çalışılması gerekmektedir.
89
6. Uygulamada veri tabanı sorgularından ve çalıştırılan modellerin sonuçlarından rapor
üretilmesi sağlanmıştır. Ancak birçok durum için açıklayıcı bir görünüm sergileyen
OLAP küplerinin uygulamaya eklenmesi işlevselliği ve kullanım kolaylığını olumlu yönde
geliştirecektir.
90
KAYNAKLAR
[1] Michael H. Brackett, Business Intelligence Value Chain, DM Review, 1999
[2] BI: What is Business Intelligence? DM Review, 1999
[3] Xie Wei, Xu Xiaofei, Sha Lei, Business Intelligence Based Group Decision
Support System, IEEE 2001
[4] The Challenge of Business Intelligence Access for Insurance Industry, SQLiaison
Inc. 1999
[5] Sid Adelman, Larissa Moss, ve Les Barbusinski, “I found several definitions of
BI”, DM Review, Ağustos 2002
[6] Topçu, İlker, Dr., İstanbul Teknik Üniversitesi, İşletme Fakültesi Yöneylem
Araştırması Ders Notları, 2007
[7] ULUCAN, Aydın, Yöneylem Araştırması, Siyasal Kitapevi, 2004
[8] AYDOĞAN, Fatih, E-Ticarette Veri Madenciliği Yaklaşımlarıyla Müşteriye Hizmet
Sunan Akıllı Modüllerin Tasarımı ve Gerçekleştirimi, Hacettepe Üniversitesi Fen
Bilimleri Enstitüsü Bilgisayar Mühendisliği anabilim Dalı, Yüksek Lisans Tezi, 2004
[9] Holsheimer, M. and Siebes, A.P. J. M, Data Mining:The search for knowledge in
databases., Technical Report CS-R9406, CWJ, P .0. Bo x 94079, 1090 BG Amsterdam,
The Netherlands, 1994
[10] Frawley, W. J., Piatetsky-Shapire, G., Matheus, c. J., 1991, Knowledge discovery
databases: An overview, In Knowledge Discovery In Databases (G. Piatetsky-Shapiro
and W. J. Frawley, eds.), Cambridge, MA: AAAI/M1T pp. 1-27
[11] I. Erkmen, A.M. Erkmen, H. Günver: Robot Hand Preshaping and Regrasping
Using Genetic Algorithms
[12] Deb, Kalyanmony: Multi-objective Genetic Algorithms, Evolutinary computation
91
[13] Farhad, Azadivar and John (Jian), Wang: Facility layout optimization using
simulation and genetic algorithms
[14] Data Mining Q&A with Dr. Kudyba DM Review, 2004
[15] Oracle Data Mining Concepts, 10g Release 2 (10.2) B14339-01, June 2005
[16] Data Mart Does Not Equal Data Warehouse, Bill Inmon , DM Review, Published
in DM Direct in November 1999
[17] Hacettepe Üniversitesi, 2006 yılı Özdeğerlendirme Raporu
[18] BROCKWELL Peter, DAVIS Richard, Introduction to Time Series and
Forecasting, Second Edition, Springer, 2002
[19] KOSGEB, www.kosgeb.gov.tr
[20] Oliver Thomas, Otmar Adam, Katrina Leyking, Peter Loos, A Fuzzy Paradigm
Approach for Business Process Intelligence, Proceedings of the 8th IEEE International
Conference on E-Commerce Technology and the 3rd IEEE International Conference on
Enterprise Computing, E-Commerce, and E-Services (CEC/EEE’06)
[21] Janusz Kacprzyk Fellow ofIEEE, IFSA, Web Intelligence, Business Intelligence
and Decision Support Systems: A Challenge for Fuzzy Logic and Soft Computing, 1-
4244-0195-X/06/$20.00 t2006 IEEE
[22] Luan Ou, Hong Peng, Knowledge and Process Based Decision Support in
Business Intelligence System, Proceedings of the First International Multi-Symposiums
on Computer and Computational Sciences (IMSCCS'06), 2006
[23] İşletme ve İktisat için İstatistik; Newbold, Paul; 1998 Prentice-Hall, Inc.
[24] A Tutorial on v-Support Vector Machines, Pai-Hsuen Chen, chih-Jen Lin, and
Bernhard Scholkopf
[25] A Tutorial on Support Vector Machines for Pattern Recognation, Christopher J.C.
BURGES, Bell Laboratories, Lucent Technologies
92
[26] SAP WEB Sayfası – http://www.sap.com
[27] A statistical learning framework for data mining of large-scale systems: Algorithms, implementation, and applications by Tsou, Ching-Huei, Ph.D., Massachusetts Institute of Technology, 2007
[28] Enhancing supervised learning by coalescing data into groups by Cao, Dongwei, Ph.D., University of Minnesota, 2007
[29] Error control for support vector machines by Davenport, Mark A., M.S., Rice University, 2007
[30] Autonomous anomaly detection and fault diagnosis by Liu, Jianbo, Ph.D., University of Michigan, 2007
[31] Decision support system for form verification of manufactured parts by Aguirre Cruz, Juan Antonio, Ph.D., The University of Oklahoma, 2007
[32] Optimal control of production and distribution in a supply chain system operating under a JIT delivery policy by Biswas, Pablo, Ph.D., Louisiana State University and Agricultural & Mechanical College, 2007
[33] Evaluating performance information for mapping algorithms to advanced architectures by Santiago Santiago, Nayda G., Ph.D., Michigan State University, 2003
[34] Oracle DM. http://www.oracle.com/technology/products/bi/odm/index.html
93
ÖZGEÇMİŞ
Adı Soyadı : Fatih Mehmet GÜLEÇ
Doğum Yeri : Ankara
Doğum Yılı : 1982
Medeni Hali : Evli
Eğitim ve Akademik Durumu :
Lise 1993-2000 Gazi Anadolu Lisesi, ANKARA
Lisans 2000-2004 Hacettepe Üniversitesi Bilgisayar Mühendisliği Bölümü, ANKARA
Yabancı Dil : 2007 Mart ÜDS- İngilizce 87,5
İş Tecrübesi :
2004-… Hacettepe Üniversitesi Bilgisayar Mühendisliği Bölümü, Araştırma Görevlisi