MAKİNE ÖĞRENME YÖNTEMLERİ İLE TRAFİK KAZALARI İÇİN RİSK TAHMİNİ YAPABİLEN WEB TABANLI BİR YAZILIM Tarık KAYA YÜKSEK LİSANS TEZİ BİLGİSAYAR EĞİTİMİ ANABİLİM DALI GAZİ ÜNİVERSİTESİ BİLİŞİM ENSTİTÜSÜ NİSAN 2015 iv MAKİNE ÖĞRENME YÖNTEMLERİ İLE TRAFİK KAZALARI İÇİN RİSK TAHMİNİ YAPABİLEN WEB TABANLI BİR YAZILIM (Yüksek Lisans Tezi) Tarık KAYA GAZİ ÜNİVERSİTESİ BİLİŞİM ENSTİTÜSÜ Nisan 2015 ÖZET Günümüzde, ulaşım ve özellikle karayolu taşımacılığı en önemli ihtiyaçlardan biridir. Bununla birlikte, giderek artan araç sayısı ve araç kullanımının yaygınlaşması nedeniyle trafik sıkışıklığı ve trafik kazaları da her geçen gün sıkça karşılaşılan bir sorun olmaya devam etmektedir. Ülkemizde trafik kazaları ile ilgili veriler farklı kurum ve kuruluşlar tarafından kayıt altına alınmakta ve istatistikî sonuçlar türetilmesi için kullanılmaktadır. Bu verileri kullanarak kazalara karşı bazı önleyici tedbirlerin geliştirilmesi de mümkündür. Bu amaca yönelik olarak tez çalışmasında, SBM (Sigorta Bilgi Merkezi) tarafından kayıt altına alınmış 5000 adet maddi hasarlı trafik kazası verisine makine öğrenmesi teknikleri uygulanarak kaza riskini hesaplayan ve kaza riski tahmininde bulunan web etkileşimli dinamik bir sistem gerçekleştirilmiştir. Çalışmada öncelikle farklı makine öğrenme teknikleri test edilerek performansları karşılaştırılmış ve en uygun sonucu veren algoritma belirlenmiştir. Sonraki aşamada ise bu algoritmayı kullanarak kaza riski tahmini yapabilen bir web ara yüzü geliştirilmiştir. Geliştirilen uygulama ile kullanıcının bulunduğu konum yazılım tarafından otomatik olarak tespit edilebilmekte ve buna göre ilgili güzergâhtaki meteorolojik koşullar ve önceden gerçekleşmiş kaza bilgilerine göre kullanıcıya dinamik uyarılar verilebilmektedir. Sunulan uygulama, trafik kaza verilerine makine öğrenme yöntemlerinin uygulanması ile metodolojik bir yenilik içermekte olup geliştirmeye açık birçok yönü de bulunmaktadır. Bilim Kodu Anahtar Kelimeler Sayfa Adedi Danışman : 702.1.014 : Veri madenciliği, makine öğrenmesi, trafik kazaları, karayolu güvenliği, kaza riski tahmini, web yazılımı : 77 : Prof. Dr. Halil İbrahim BÜLBÜL v WEB BASED SOFTWARE CAPABLE OF RISK PREDICTION FOR TRAFFIC ACCIDENTS WITH MACHINE LEARNING METHODS (M. Sc. Thesis) Tarık KAYA GAZİ UNIVERSITY INSTITUTE OF INFORMATICS April 2015 ABSTRACT Nowadays transport, especially road transport is one of the most important requirement. However, traffic jams and traffic accidents continue to be a problem frequently encountered due to increasing number of vehicles and its widespread use. In our country data concerning traffic and traffic accidents is recorded by several institutions and it is used to reproduce statistical results. It is possible to develop some preventive measures against traffic accidents by using this recorded data. In the thesis, it has been developed dynamic web based software, which calculates and predicts the traffic accident risk by the method of machine learning that were applied to 5000 property damaged traffic accident data provided by the Insurance Information Center (IIC). In the study, as a first several machine learning techniques were tested and the results were compared. Then, the algorithm giving the most appropriate results was determined. Next step was to develop a web interface predicting traffic accident risk. With this application, driver location could be detected automatically and dynamic alerts could be ensured to him by the use data concerning meteorological conditions through the itinerary and data regarding traffic accident happened before. Presented application includes methodological innovations and also it has many features that can be improved. Science Code Key Words Page Number Supervisor : 702.1.014 : Data mining, machine learning, traffic accidents, road safety, crash risk prediction, web software : 77 : Prof. Dr. Halil İbrahim BÜLBÜL vi TEŞEKKÜR Araştırmalarım sırasında değerli zamanını ve yardımlarını esirgemeyen, katkılarıyla araştırmanın gelişimine ışık tutan danışmanım Prof. Dr. Halil İbrahim Bülbül’e, çalışmalarım sırasında kıymetli bilgilerini esirgemeyen Yrd. Doç. Dr. M. Fatih Amasyalı, arkadaşım Özkan Ünsal’a ve her konuda desteklerini hissettiğim aileme en içten teşekkürlerimi sunmaktan onur duyarım. vii İÇİNDEKİLER Sayfa ÖZET ...................................................................................................................................... iv ABSTRACT ............................................................................................................................... v TEŞEKKÜR .............................................................................................................................. vi İÇİNDEKİLER ......................................................................................................................... vii ÇİZELGELERİN LİSTESİ ............................................................................................................ ix ŞEKİLLERİN LİSTESİ ................................................................................................................. x RESİMLERİN LİSTESİ............................................................................................................... xi SİMGELER VE KISALTMALAR ................................................................................................ xii 1. GİRİŞ ................................................................................................................................. 1 2. LİTERATÜR ARAŞTIRMASI ........................................................................................... 5 3. KAVRAMSAL ÇERÇEVE ............................................................................................... 11 3.1. Trafik .......................................................................................................................... 11 3.2. Trafik Kazaları ............................................................................................................ 12 3.3. Trafik Kazalarının Değerlendirilmesi .......................................................................... 13 3.4. Veri Madenciliği ......................................................................................................... 15 3.4.1. Veri madenciliğinin gelişimi ................................................................................ 17 3.4.2. Veri madenciliği uygulamaları ............................................................................ 18 3.5. Makine Öğrenmesi .................................................................................................... 24 3.5.1. Makine öğrenmesinin gelişimi ............................................................................ 25 3.5.2. Makine öğrenmesi uygulamaları ........................................................................ 27 3.5.3. Makine öğrenmesi teknikleri .............................................................................. 29 3.6. Weka Programının Kullanımı ..................................................................................... 35 3.6.1. Performans değerlendirilmesinde kullanılan performans kriterleri .................. 37 4. MATERYAL VE METOD ............................................................................................... 41 4.1. Uygulamanın Hazırlanması İçin Kullanılan Araçlar .................................................... 41 viii Sayfa 4.2. Verilerinin Elde Edilmesi ............................................................................................ 41 4.3. Uygulamanın Genel Özellikleri .................................................................................. 43 5. KAZA TAHMİN SİSTEMİ VE TASARIMI .................................................................... 45 5.1. Veri Önişleme ............................................................................................................ 45 5.2. Weka ile En Uygun Modelin Belirlenmesi ................................................................. 50 5.2.1. Weka ile algoritmaların uygulanması ve değerlendirilmesi ............................... 51 5.3. Kaza Tahmin Sistemi .................................................................................................. 62 5.3.1. Sistemin teknik yapısı ......................................................................................... 62 5.3.2. Sistemin kullanımı............................................................................................... 62 5.3.3. Sistemin özellikleri .............................................................................................. 64 6. SONUÇ VE ÖNERİLER ................................................................................................. 65 6.1. Sonuçlar ..................................................................................................................... 65 6.2. Öneriler ...................................................................................................................... 66 KAYNAKLAR .......................................................................................................................... 67 EKLER .................................................................................................................................... 71 EK-1. Makine öğrenmesi modelinin uygulanmasında kullanılan PHP ve HTML komutları.. 72 ÖZGEÇMİŞ ............................................................................................................................ 77 ix ÇİZELGELERİN LİSTESİ Çizelge Sayfa Çizelge 4.1. KTT tablosu yapısı ............................................................................................. 42 Çizelge 4.2. Meteorolojik verilerin yapısı ............................................................................. 43 Çizelge 5.1. Cart algoritması katmanlı çapraz doğrulama tablosu....................................... 52 Çizelge 5.2. Cart algoritması sınıfa göre ayrıntılı doğruluk tablosu ..................................... 53 Çizelge 5.3. Cart algoritması karmaşıklık matrisi ................................................................. 53 Çizelge 5.4. C 4.5 algoritması katmanlı çapraz doğrulama tablosu ..................................... 53 Çizelge 5.5. C 4.5 algoritması sınıfa göre ayrıntılı doğruluk tablosu .................................... 54 Çizelge 5.6. C 4.5 algoritması karmaşıklık matrisi ................................................................ 54 Çizelge 5.7. NaiveBayes algoritması katmanlı çapraz doğrulama tablosu........................... 54 Çizelge 5.8. NaiveBayes algoritması sınıfa göre ayrıntılı doğruluk tablosu ......................... 55 Çizelge 5.9. NaiveBayes algoritması karmaşıklık matrisi ..................................................... 55 Çizelge 5.10. Regresyon algoritması katmanlı çapraz doğrulama tablosu .......................... 55 Çizelge 5.11. Regresyon algoritması sınıfa göre ayrıntılı doğruluk tablosu ......................... 55 Çizelge 5.12. Regresyon algoritması karmaşıklık matrisi ..................................................... 56 Çizelge 5.13. K en yakın komşu algoritması katmanlı çapraz doğrulama tablosu ............... 56 Çizelge 5.14. K en yakın komşu algoritması sınıfa göre ayrıntılı doğruluk tablosu .............. 56 Çizelge 5.15. K en yakın komşu algoritması karmaşıklık matrisi .......................................... 57 x ŞEKİLLERİN LİSTESİ Şekil Sayfa Şekil 1.1. 2007 yılı verilerine göre trafik kazalarında aylara göre ölüm sayısı ....................... 2 Şekil 1.2. Yapay sinir ağları ile trafik kazası tahmini için geliştirilmiş modelin yapısı ............ 3 Şekil 3.1. 2011-2020 Karayolu güvenliği için on yıllık eylem hedef göstergesi.................... 14 Şekil 3.2. Veri madenciliğinin alanları .................................................................................. 16 Şekil 3.3. Veri madenciliği modelleri .................................................................................... 19 Şekil 3.4. Veri madenciliği süreci.......................................................................................... 22 Şekil 3.5. Sınıflandırma süreci .............................................................................................. 30 Şekil 5.1. Weka'nın hiyerarşik yapısı .................................................................................... 51 Şekil 5.2. Veri seti ................................................................................................................. 52 Şekil 5.3. C 4.5 karar ağacı ................................................................................................... 58 xi RESİMLERİN LİSTESİ Resim Sayfa Resim 3.1.Weka applications menüsü ................................................................................. 35 Resim 3.2. Ön işlem sekmesi................................................................................................ 36 Resim 3.3. Sınıflandırma sekmesi ........................................................................................ 37 Resim 5.1. Araç tipi seçimi ara yüzü .................................................................................... 63 Resim 5.2. Uygulama ara yüzü ............................................................................................. 63 xii SİMGELER VE KISALTMALAR Bu çalışmada kullanılmış bazı simgeler ve kısaltmalar, açıklamaları ile birlikte aşağıda sunulmuştur. Kısaltmalar Açıklama DVM Destek Vektör Makinesi KTT Kaza Tespit Tutanağı MGM Meteoroloji Genel Müdürlüğü ODBC Açık Veritabanı Bağlantısı (Open Database Connectivity) OLAP Çevrimiçi Analitik İşlem (Online Analytical Processing) PHP Metin Önişlemcisi (Hypertext Preprocessor) RDBMS İlişkisel Veritabanı Yönetim Sistemi (Relational Database Management System) SBM Sigorta Bilgi Merkezi SPSS Sosyal Bilimler için İstatistik Paketi (Statistical Package for the Social Sciences) SQL Yapısal Sorgulama Dili (Structured Query Language) YSA Yapay Sinir Ağları 1 1. GİRİŞ Motorlu taşıtların gelişmesi ve çoğalması ile trafik problemleri ve trafik kazaları artarak devam etmektedir. Trafik problemleri sosyal, çevresel, maddi konularda önemli kayıplara neden olmaktadır. Sanayileşme ekonomik olarak daha güçlü toplumların ortaya çıkmasını sağlamıştır. Kırsalda yaşamanın getirdiği zorluklar ve kent yaşamının görece avantajları 20. yüzyılın başlarından itibaren kentlere göçü artırmıştır. Göçler ile kalabalıklaşan şehirler trafik problemlerinin en önemli sebeplerindendir. Örneğin İstanbul’da 1914 yılında 800 bin kişi yaşamakta iken 2014 yılında bu sayı 14 milyonu geçmiştir. Şehirleşme ile ortaya çıkan zaman kıtlığı, stres gibi etmenler ile insanlar daha sabırsız bir hale gelmiştir. Kalabalık yollar ve sabırsız sürücüler, yayaların etkisi ile trafik içinden çıkılması güç bir sorun halini almıştır. Trafikteki artış ile çoğalan trafik kazaları sürekli büyüyen bir problemdir. Trafik kazalarının en önemli etkilerinden olan can kaybı, yaralanma, maddi kayıplar her geçen gün daha fazla zararlara neden olmaktadır. Türkiye genelinde 2006 yılında 728 bin ölümlü, yaralanmalı ve maddi hasarlı trafik kazası gerçekleşmişken 2011 yılında 1 milyon 200 binden fazla trafik kazası gerçekleşmiştir (Karayolları Genel Müdürlüğü, 2013). Araç sayısı ve kazaların sürekli artmasına rağmen, ölüm vakalarının da düzenli bir gerileme ile azaldığı görülmektedir (World Health Organization, 2009). Trafik güvenliği aşağıdaki gibi 5 aşamada değerlendirilebilir. 1. Karayolu güvenliği yönetimi ve denetimi 2. Güvenli yollar 3. Güvenli araçlar 4. Güvenli sürücü ve yayalar 5. Kaza sonrası müdahale Görüldüğü gibi trafik kazası, nedenlerinin araştırılmasından, önlenmesi ve kaza sonrası müdahaleye kadar devam eden bir süreç vardır. Bu aşamalardan kaza risklerin en aza indirilmesi çözümünün tercihi, sorunun önlenmesine yönelik en etkili ve en faydalı tercih olacaktır. Trafik kazalarının önlenmesi için denetimler, güvenli yollar, güvenli araçlar, güvenli sürücü ve yayalar gerçekleştirilmesi için önemli çalışmalar yapılmış ve yapılmaya 2 devam etmektedir. Bu süreçte elde edilen veriler ve bu veriler sonucunda anlamlı bilgiler üretilerek her aşamada değerlendirilmesi çalışmaları kazaların önlenmesinde oldukça destekleyici olduğu düşünülmektedir. Yol güvenliği 1920’li yıllardan itibaren üzerinde çalışılan bir konudur. Küresel olarak önem verilen trafik güvenliği konusunda, 2 Mart 2010 tarihinde Birleşmiş Milletler Genel Kurulu toplantısında “Küresel Yol Güvenliğinin İyileştirilmesi” konulu bir karar alınmıştır. Bu karar sonucunda üye ülkelerden 10 yıllık (2011-2020) eylem planları talep edilmiştir. Bu karar sonucunda ülkemizde 10 yıllık eylem planı hazırlanmıştır. Benzer önleyici faaliyetler, daha güvenli araçlar, destekleyici teknolojiler ve daha güvenli yollar geliştirilmesine rağmen trafik kazaları hala insanların yaralanması ve ölmesinde en önemli sebeplerdendir. Özellikle araç kullanımının yoğunlaştığı yaz aylarında Şekil 1.1.’de görüldüğü gibi trafik kazası sebebi ile ölümler katlanarak artmaktadır. Dünya Sağlık Örgütü’ne (DSÖ) göre, trafik kazalarında her yıl 1 milyonun üzerinde kişi hayatını kaybetmekte ve bu sayı gittikçe artmaktadır. Kaza kurbanlarının neredeyse yarısını yayalar ile bisiklet ve motosiklet sürücüleri oluşturmaktadır. Ölümlü trafik kazalarının yaklaşık %90’ı orta ve düşük gelirli ülkelerde meydana gelmektedir. Oysa bu ülkelerdeki toplam araç sayısı dünyadaki toplam araç sayısının yarısından azdır. Gerekli önlemler alınmaz ise 2030 yılına gelindiğinde 2,4 milyon kişinin trafik kazaları sebebi ile hayatını kaybetmesi beklenmektedir (Kartal ve diğerleri, 2011). Şekil 1.1. 2007 yılı verilerine göre trafik kazalarında aylara göre ölüm sayısı (Kartal ve diğerleri, 2011) 3 Büyük çaplı verilerden bilgiye erişim makine öğrenmesi teknikleri ile mümkündür. Günümüzde bilimsel çalışmalar, ticari faaliyetler, pazarlama, sağlık gibi pek çok alanda çözüm üretmekte kullanılan makine öğrenmesi, trafik kazaları ile ilgili veriler aracılığı ile kaza tahmini için de kullanılmaktadır. Literatür incelendiğinde yapay sinir ağları, karar ağaçları, istatistiğe dayalı yöntemler ile trafik kazaları ve sebepleri tahmin etmeye yönelik yapılmış çalışmalar bulunmaktadır. Şekil 1.2.’de trafik kazası tahmini için yapay sinir ağları ile geliştirilmiş bir model görülmektedir. Trafik kazalarının sebepleri hava, yol şartları, trafik yoğunluğu gibi etmenlerdir. Şekil 1.2. Yapay sinir ağları ile trafik kazası tahmini için geliştirilmiş modelin yapısı (Mussone ve diğerleri, 1999) Bilgisayar teknolojisindeki gelişmeler ulaştırma sektörünün gelişmesini olumlu yönde etkilemiştir. Özellikle son yıllarda Akıllı Ulaşım Sistemleri yaygınlaşmaya başlamıştır. Günümüzde karayolu trafiğinde karşılaşılan farklı sorunların çözümünde dijital teknolojiler kullanılarak yenilikçi yöntemler geliştirilmektedir. Dünya’da karayolu trafiği açısından, trafik güvenliği alanında acil durum yönetimi, elektronik denetim ve sürücü uyarı sistemleri gibi teknikler kullanılmaktadır. Ayrıca gelecekte otonom araçlarla ulaşımın yapılabilir olması karayolu ulaşımına yepyeni bir boyut kazandıracaktır (World Health Organization, 2009). 4 Yukarıda bahsedilen problemlerin çözümüne katkı sağlayabilmek için makine öğrenmesi yöntemleri kullanılarak kaza riskini hesaplayabilen, anlık verileri kullanarak anlık bildirimler ile sürücüleri uyaran bir sistem geliştirilmiştir. 5 2. LİTERATÜR ARAŞTIRMASI Bu bölümde yapılan çalışma ile ilgili kaynaklar, internet kaynakları, kütüphaneler ve YÖK tez merkezi başta olmak üzere araştırılmış ve bu kaynaklar özetlenmeye çalışılmıştır. Trafik kazalarının sonuçlarında yaşanan maddi kayıplar, yaralanma, engelli olma, ölüm gibi durumlar trafik kazalarının önlenmesi için çözümler üretilmesini zorunlu kılmaktadır. Teknolojiden faydalanılarak güvenli araçlar, sürücü destekleyici sistemler ve güvenli yollar geliştirilmektedir. Konu hakkında yapılan çalışmaların farklı alanlarda gelişmeler gösterdiği görülmektedir. Bu çalışmayla ilgili Kartal ve arkadaşları (2011), yol güvenliği 1920’lerden bu yana üzerinde çalışılan bir konu olduğunu göstermektedir. Yol güvenliği ile ilgili ilk geniş çaplı çalışma 1924 yılında Amerika Birleşik Devletlerinde düzenlenen bir konferans ile gerçekleşmiştir. Çalışma sonucunda, yol güvenliği için araçlar, sürücüler, çevre güvenliği ile ilgili bir dizi düzenleme getirilmiştir. 2005-2009 yılları arasındaki verilere bakıldığında gelişmiş ülkelerde yapılan düzenlemeler ile trafik kazalarında ölüm oranları azalırken, gelişmekte olan ülkelerde artarak devam ettiği görülmektedir. Gerekli tedbirler alınmaz ise, 2030 yılında trafik kazalarından ölüm oranlarının diğer ölüm sebeplerine göre artarak beşinci sıraya yükseleceği tahmin edilmektedir. Dünya’da trafik kazalarından kaynaklanan ölüm sayısı yıllık 2,4 milyon kişiye ulaşması beklenmektedir. Türkiye’de araç sayısı 1990 yılından 2007 yılına kadar 3,5 kat artmıştır. Trafik kazasına karışan araç oranı ise 1990 yılında 1000’de 31 iken 2007 yılında 1000’de 63’e yükselmiştir. 2007 yılında gerçekleşen trafik kazaları incelendiğinde en çok ölümlü kazaların yaz aylarında gerçekleştiği görülmektedir. Trafik kazaları ile ilgili veriler incelendiğinde Avrupa Birliği’ne üye ülkelere göre, Türkiye çok daha tehlikelidir. Ekonomik boyutuna bakıldığında ise trafik kazalarının maliyeti Gayri Safi Milli Hâsılanın % 2’si kadardır. Trafik kazalarının gerçekleştiği tehlikeli bölgeler(kara noktalar) her geçen gün arttığı için veya bu sonuçlara ulaşılmasını sağlayacak veri sistemleri arttığı için bu noktalar farklı metotlar ile belirlenebilmektedir. Son yıllarda coğrafi bilgi sistemleri de trafik kaza analizinde kullanılmaktadır. Yapılan çalışma sonuçlarına bakıldığında coğrafi bilgi sistemleri ile kaza olması muhtemel noktalar 6 belirlenebilir, gerekli önlemler alınır ve bu sistemin gerçek zamanlı olması sağlanabilir ise kaza sayısında önemli bir azalma olabileceği belirtilmiştir (Karaşahin ve Terzi, 2011). Mussone ve arkadaşları (1999), Trafik kazalarının sonucunda ortaya çıkan değişkenlerin etkisini (örneğin araç akışı, yol yapısı, taşıt karakteristikleri gibi) ve bu değişkenlerin kaza tahmininde işlevini incelemişlerdir. 1992-1995 yılları arasında kaza tahmininde tanımlayıcı istatistiksel analiz önerilmektedir. Çalışmada Milano şehri trafik kazalarının verileri kullanılmıştır ve yapay sinir ağları (YSA) kullanımına dayalı alternatif bir yöntem önerilmektedir. Farklı senaryolar kullanılarak kavşaklar da tehlike derecesi bir YSA modeli ile ölçülebilir. Çalışmanın yapıldığı dönemde, trafik kazalarını önlemek için YSA kullanımı yenilikçi bir yaklaşımdır. Çalışma sonucunda, kesişim karmaşıklığı yüksek kavşaklarda kaza oranı da yüksek görülmektedir. Yaya kazaları sonuçlarına bakıldığında, gece saatlerinde sinyal kontrolü olmayan kavşaklarda daha yüksek oranda meydana geldiği görülmektedir. Bayam ve arkadaşları (2005), Veri madenciliği yöntemleri ile özellikle yaşlı sürücüleri inceleyen çalışmalarında, trafik kazalarında yaş, cinsiyet gibi faktörlerin etkilerini değerlendirmektedir. Yapılan araştırma sonuçlarına veri madenciliği uygulamasında kullanılan veriler, yaş grubu, bölge, eklem ağrısı, yolcu durumu, gözlük kullanımı, gece sürüşü, günlük kat edilen mesafe, haftalık araç kullanım süresi, son 5 yılda yaşanan kaza sayısı olarak belirlenmiştir. Veriler incelendiğinde yaşlı-tecrübeli sürücülerin daha az kazaya karıştığı görülmektedir. Ayrıca cinsiyet ayrımına bakıldığında da kadın sürücülerin erkek sürücülere oranla daha az kazaya karıştığı görülmektedir. Bu sonucu ortaya çıkaran durumlar incelendiğinde ilginç sonuçlar ortaya çıkmıştır. Yapılan anket çalışmasında, yaşlıtecrübeli sürücülerin daha az araç kullanmaları daha az kazaya karışmaları sonucu ortaya çıkarmaktadır. Ayrıca hava koşulları, sürüş saati gibi trafik kazalarında etkili durumlarda uygun koşulları tercih ettikleri görülmüştür. Güvenli sürüş için önemli olan görüş keskinliği, refleks, motor hareketleri gibi faktörler incelendiğinde dezavantajlı olan yaşlı sürücüler, araç kullanım alışkanlıklarındaki olumlu sebepler ile trafik kazalarına karşı avantajlıdır. Çalışmada tahmine dayalı veri madenciliği tekniklerinden sinir ağları ve karar ağaçları kullanılmıştır. Bu çalışma ile veri madenciliği yöntemleri kullanılarak veriler ile kaza arasındaki bilinmeyen ilişkiler ortaya çıkarılarak, yaşlı sürücüler için daha güvenli 7 sürüş durumları sağlanabileceği görülmektedir. Bu çalışmadan alınan sonuçlar tüm sürücü gruplarını ilgilendirilen çalışmalarda kullanılabilir. Xie ve arkadaşları (2007), çalışmalarında karayolu güvenliği çalışmalarında, bayes sinir ağlarının geriye yayılma sinir ağlarına göre daha uygun olduğunu belirtmektedirler. Çalışmada, Teksas eyaletindeki karayolu verilerini kullanılarak geri yayılım sinir ağı, Bayes sinir ağı ve negatif binom regresyon modellerinin karşılaştırılması yapılmıştır. Çalışma sonucunda genel olarak sinir ağı modellerinin, regresyon modelinden daha iyi sonuç verdiği görülmektedir. İki sinir ağı modeli, tahmin yetenekleri açısında birbirine benzer sonuçlar üretse de Bayes sinir ağı en uygun model olarak görülmektedir. Karayolu güvenliği çalışmalarında, geri yayılım sinir ağı modeli aşırı uyum, karmaşıklık gibi sebepler ile daha az tercih edilmektedir. Sheng-Xue ve arkadaşları (2009), Trafik kazaları analizi için geçmişte yapılan çalışmalarda regresyon analizi, lojistik ve sıralı probit modelleri gibi teknikler kullanılmıştır. Fakat bu modeller varsayımlar içermektedir. Bu varsayımların bozulması durumunda modelin tahmin yeteneği azalmaktadır. Bu çalışmada Bayes ağlarını kullanarak trafik ağının kilit noktası olan kavşaklar için güvenlik konusunda çalışmışlardır. Bayes ağı belirsizlikler mantığına dayalı bir olasılık teorisidir. Çalışmada kavşak güvenliği 3 aşamada değerlendirilmiştir: Tasarım, yönetim ve işletme şartları. Öncelikle Bayes ağları ile kavşak güvenlik değerlendirme modeli çıkartılarak, uzman görüşlerine ihtiyaç duymadan uygun sonuçlar elde edilebilen bir sistem tasarlanmıştır. İkinci aşamada uzman görüşleri ve model sonuçları ile sürecin topolojik yapısı oluşturulmaktadır. Güvenlik değerlendirmesinde model 5 farklı seviye de sonuç üretmektedir. Beshah ve Hill (2010), çalışmalarında karayolu güvenliği için yol faktörlerinin rolünü Etiyopya trafik verilerinden yararlanarak incelemişlerdir. Çalışmada, karar ağacı, NaiveBayes ve K-en yakın komşu teknikleri seçilerek sonuçları incelenmiştir. Test verilerinin niteliklerine bakıldığında yol tipi, kaplama türü, hava ve zemin şartları, kaza durumu gibi veriler ile karşılaşılmaktadır. Çalışmada verilere makine öğrenmesi modellerinin uygulanması için Weka yazılımı kullanılmıştır. Test edilen verilerin sonuçlarına bakıldığında bu üç model arasında anlamlı olmayan farklar görülmektedir. 8 Gerekli destekler sağlandığında bu modeller kullanılarak tatmin edici sonuçlar ortaya çıkacağı görülmektedir. Hongguo ve arkadaşları (2010), trafik kazalarının sebeplerinin incelenmesi için, anket verileri ile istatistiksel analize dayalı bayes ağı modeli geliştirmişlerdir. Nitelik olarak daha önceki çalışmalarda gördüğümüz yol durumu tercih edilmiştir. Farklı olarak kaza gerçekleşme şekli, yaralanma, ölüm durumları ve kazanın maddi boyutları kullanılmıştır. Çalışmada belirtilen önemli noktalar ise verilerin çeşitliliğinin trafik kaza analizi için kısıtlı olması sebebi ile çalışmanın geliştirilmesi gerektiği ve dağılım tanımı kullanılarak Bayes ağ uygulaması geliştirilebileceği sonucuna varılmıştır. Başka bir çalışmada Çelik (2010), Trafik güvenliği ile ilgili yöntemlerden birisi de teknoloji ile birlikte gelişen elektronik sistemler ile bunları kontrol eden yazılımlardan oluşan “Akıllı Ulaşım Sistemleri” olarak görülmektedir. Akıllı Ulaşım Sistemleri ulaşım altyapısına ve araçlara, bilgi ve iletişim teknolojisinin yeteneklerini sunarak, güvenliği artırma, ulaşımı kolaylaştırma çalışmaları olduğu açıklanmıştır. Trafik lambaları, uzaktan kontrollü elektronik bilgilendirme panoları, kritik ulaşım bilgilerinin toplanması ve değerlendirilmesi, otomatik yol denetim sistemleri Akıllı Ulaşım Sistemleri uygulamalarına örnek olarak verilebilmektedir. Çalışma da “Akıllı Trafik Sistemleri” ’nin tanımı, içeriği, kullanılan teknolojiler ile trafik sıkışıklıkları ve trafik güvenliğine ne gibi etkilerde bulunduğu araştırılarak sonuçları sunulmuştur. Antalya ve Konya illeri çevresinde bulunan “Akıllı Ulaşım Sistemleri” kapsamında kullanılan sistemlerden “Led’li radar göstergeleri” ’nin yaralanmalı ve ölümlü trafik kazalarına etkisi incelenmiştir. Türkiye’de “Akıllı Ulaşım Sistemleri”nin hangi amaçla, nerelerde kullanılabileceği tartışılarak, yerel yönetimler için bazı öneriler getirilmiştir. Kaygısız (2012) çalışmasında, Trafik güvenliği öncelikli kent planlaması stratejilerine katkıda bulunmayı amaçlamıştır. Trafik kazaların % 90’ı kentsel alanlarda gerçekleşmekte ve kentsel alanlarda gerçekleşen bu kazalar sonucunda her gün ortalama 4 insan ölmektedir (toplam ölümlerin % 33’ü), 300 insan yaralanmakta (toplam yaralanmaların % 54’ü) ve milyonlarca liralık ekonomik kayıp meydana geldiği görülmektedir. Trafik kazaları kentsel alanlarda var olan önemli bir halk sağlığı ve güvenlik sorunudur, trafik güvenliği 9 öncelikli olarak kentsel planlama çalışmaları yapılması trafik kazalarını ve etkilerini azaltacağını belirtmektedir. Kentsel alanlarda trafik kazaları tahmin modeli trafik kazalarına neden olan kentsel unsurları belirlemek için uygulanabileceğini belirtmektedir. Çalışmada, Eskişehir Kenti örneklem alanında geliştirilen trafik kazası tahmin modelleriyle kentsel arazi kullanım kararlarının trafik kazalarına etkisi incelenmiştir. Çinicioğlu ve arkadaşları (2013), Türkiye’de ulaşım için öncelikli olarak karayolunun kullanılması ve mevcut altyapının bu yoğunluğa karşılık vermekte zorlanması, sürücü ve yayaların kuralları ihlal etmesi sonucunda ülkemizde çok sayıda trafik kazası gerçekleşmektedir. Trafik kazalarının önlenebilmesi, gerekli tedbirlerin alınabilmesi için kazalara neden olan unsurların detaylı bir şekilde analiz edilmesi gerekmektedir. Çalışmada trafik kazaları ve trafik kazalarına sebep olan unsurlar Bayes Ağları aracılığıyla analiz edilmiştir. Bayes Ağları, yapılan çıkarımların görsel olarak kullanıcıya aktarılması açısından önemli bir modeldir. Çalışmada Silivri Bölge Trafik Şube Müdürlüğü ve İlçe Jandarma Trafik Tim Komutanlığı’ndan alınan trafik kaza tespit tutanaklarının içerdiği bilgiler kullanılarak oluşturulan veri setinden Bayes Ağı öğrenilmiştir. Oluşturulan model ile doğru tahmin oranı test verisi ile denenmiştir. Oluşturulan modelin performans kriterleri kullanılarak ölçülmüştür. Özen ve arkadaşları (2014), Trafik kazaları ülkelerin ekonomik ve sosyal yapısında önemli kayıplara sebep olmaktadır. Ekonomik kayıpların telafisi kolay iken, sosyal ve toplumsal kayıpların telafisi mümkün değildir. Çalışmada trafik kazalarının sosyal boyutu ele alınmaktadır. Trafik kazalarının sebeplerini kişilerin bakış açısı ile değerlendirmektedir. Bu amaçla Uşak ilinde 506 kişilik bir gruba anket çalışması yapılarak elde edilen veriler SPSS paket programı kullanılarak tek yönlü anova testi yardımıyla analiz edilmiştir. Sonuçlara bakıldığında, kazalarda sürücü ve yayaların önemli kusurları olduğu kabul edilmektedir. Ayrıca kazaların yol kusurlarının da önemli bir etmen olduğu görüşü ön plana çıkmaktadır. Çiçek (2014), Ülkemizde her gün yaklaşık 600 ve her saat 27 trafik kazası gerçekleştiğini, bu kazalarda günde 5-20 kişi öldüğünü belirtmiştir. Trafik kazalarının oluşmasının en önemli etmeni olan insan faktörünün etkisi %94’lere ulaşmaktadır. Trafik kazalarına etki eden faktörler, insan faktörü (sürücü, yaya, yolcu), araç faktörü, yol faktörleri, çevresel 10 faktörler, trafik yönetim, denetim ve uygulamasından kaynaklanan faktörler olarak özetlenmektedir. Trafik kazalarında coğrafi şekil, konum ve iklim ile ilgili faktörler, mevsim özellikleri ve kar, yağmur, sis gibi hava durumu faktörleri trafik kazalarında önemli rol oynadığı görülmektedir. Yolun geometrisi, yapım kalitesi ve bakımı, geçit ve kavşakların varlığı ve kullanışlılığı, trafik kontrol ve işaretlerinin yerleri, sürekliliği ve görünürlüğü ve sürüş ortamlarının çeşitliliği, sürücü performansını ve taşıt tasarımını etkileyen önemli faktörler olduğu belirtilmektedir. Kazalara neden olan yol faktörü istatistiklere çok az girmektedir, kaza sonunda rapor verenlerin ve karar vericilerin bu konuda bilgi eksiklikleri bunun önemli sebebi olabileceği belirtilmektedir. Trafiğin akışı için önemli olan yolların özellikleri; yol düzeni, kalitesi, işaret ve uyarıcı levhalar ve trafik yükünden oluştuğu görülmektedir. Trafikte güvenliğin insan boyutunun en önemli birey olan sürücülerdir, sürücü psikolojisi üzerine yapılan araştırmalar, sık sık kazaya karışanların çok düşük bir oran oluşturduğu, kazalara karışanların büyük oranda ilk kazasını yapanların olduğu görülmektedir. Trafik güvenliği aktif güvenlik ve pasif güvenlik olarak ikiye ayrılır. Aktif güvenlik, bireylerin kazalardan kaçınması için, taşıtın kumanda ve frenleme yetenekleri, bilgilendirme sistemleri ve ergonomik bir dizaynı kapsamaktadır. Pasif güvenlik, kaza gerçekleştiğinde, kazanın olumsuz sonuçlarını azaltmak amacıyla yapılan bütün yapısal ve tasarım özelliklerini kapsamaktadır. 11 3. KAVRAMSAL ÇERÇEVE Bu bölümde genel olarak çalışma konusunda arka plan oluşturacak olan trafik kazaları, veri madenciliği, makine öğrenmesi konuları ile ilgili bilgiler verilmiştir. İnsanlık tarihinde göçebe yaşam ile ortaya çıkan ulaşım ihtiyacı katlanarak artmaktadır. Karayolu taşımacılığı ulaştırma hizmetlerinin büyük bir bölümünü oluştururken beraberinde çözümü güç problemler getirmektedir. Büyük maddi kayıplar ile birlikte toplum üzerinde olumsuz sosyal etkileri olan trafik kazaları karayolu ulaşımının çözülmesi zorunlu problemlerindendir. Teknolojik gelişmelerin kazanımlarından olan veri ambarlarının büyümesi, bu verilerden bilgiye erişim için yenilikçi yöntemlerin geliştirilmesini sağlamıştır. Veri madenciliği kısaca veriden bilgiye erişim olarak tanımlanabilir. Günümüzde teknolojinin her alanda kullanılıyor olması, veri madenciliğinin geniş uygulama alanlarının olması sonucu ortaya çıkarmaktadır. Bu çalışma ile trafik kaza verilerinden faydalanarak anlık kaza tahmininde bulunabilen bir uygulama hazırlanmıştır. Kaza riskini tahmin ederek sürücüyü anlık olarak uyarabilen bir sistemin trafik kazalarının azaltılması yönünde olumlu etkileri olacaktır. Bu bölümde ise trafik, trafik kazaları veri madenciliği, makine öğrenmesi ve makine öğrenmesi tekniklerinden bahsedilmiştir. 3.1. Trafik Eski çağlarda kent hayatının rahatlığı ve sakinliği yerini günümüzde çeşitli sorunlara bırakmıştır. İnsanlık tarihinde göçebe yaşam sebebi ile ortaya çıkan ulaşım ihtiyacı yerleşik düzene geçilmesine karşın, sanayileşme ile başlayan ulaşım sorunlarına dönüşmüştür. Ulaşım araçlarının çoğalması ile artan trafik sorunlarına en yaygın çözüm olarak seçilen, yeni yollar açmak ve yolları genişletmek kalıcı bir çözüm üretmemektedir. Trafik; sosyal problemler, çevresel ve gürültü kirliliği gibi başka problemlerinde ortaya çıkmasına sebep olmaktadır. Bu problemlerin aşılması için ulaşım alternatifleri ve politikaları belirlemeden 12 önce ulaşım alternatiflerini Özel Otomobil, Taksi-Dolmuş, Minibüs, Otobüs, Raylı Sistemler, Yaya ve Bisiklet Ulaşımı şeklinde gruplar halinde ayırarak değerlendirmek gereklidir (Güvenal ve diğerleri, 2005). Ülkemizde Cumhuriyet’in ilk yıllarında demiryolu ve denizyolu ulaşımı alanında yapılan atılım, nüfusun üretime ve tüketime daha fazla katılmasına, ticaretin ve sanayinin gelişmesine önemli katkılarda bulunmuştur. Günümüzde Türkiye’de ulaştırma sistemi ülke ekonomisine büyük boyutlarda zarar vermektedir. Türkiye’de özellikle yolcu ve yük taşımacılığında yıllardır maliyeti yüksek, kalite düzeyi düşük taşımacılık yapılmaktadır. 2008 yılı itibarıyla AB’de yolcu taşımacılığının %83,2’si, yük taşımacılığının ise %45,9’u karayolu ile yapılmaktadır. Ülkemizde ise yükte %88,3 ve yolcuda %91,8 taşıma karayolu ile yapılmaktadır. Son yıllarda demiryolu ve hava ulaşımında ilerlemeler kaydedilmesine rağmen yük taşımacılığının %80,63’ü, yolcu taşımacılığının 89,59’u halen karayolları ile yapılmaktadır. Ulaşım ağının ve taşıt filosunun oluşturulması için gerekli olan yatırım maliyetlerinin yanında, ulaşım ağları üzerinde taşıtların hareketi sırasında oluşan yüksek maliyetler büyük yük oluşturmaktadır ve trafik yoğunluğunda hızlı bir artışa sebep olmaktadır (Kaya, 2008; Çinicioğlu ve diğerleri, 2013). 3.2. Trafik Kazaları 2013 verilerine göre Türkiye’de her gün yaklaşık 3300 kaza gerçekleşmekte her 10 kazadan 1’i ölüm veya yaralanma ile sonuçlanmaktadır. Bu kazalarda her gün ortalama 10 ölüm gerçekleşirken, 750 kişide yaralanmaktadır. Yıllık zaman dilimine bakıldığında trafik kazaları en çok yaz aylarında, haftalık olarak incelendiğinde ise hafta sonları gerçekleştiği görülmektedir. Saatlik olarak incelendiğinde en çok kaza 15-18 saatleri arasında gerçekleşmekte iken, kaza başına ölüm oranının ise 06-09 saatlerinde yoğunlaştığı görülmektedir. Bu sonuçların ortaya çıkışındaki en büyük etken ise araç kullanımının ve seyahat yoğunluğunun bu zaman dilimlerinde gerçekleşmesidir. Ölümlü trafik kazaları daha çok yerleşim yeri dışında gerçekleşmekte iken, yaralanmalı kazalar ise yerleşim yeri içinde gerçekleşmektedir. Ölümlü ve yaralanmalı kazaların yarısı tek araçlı kazalar iken, diğer yarısı ise 2 ve daha fazla aracın karıştığı kazalardır. Ölümlü ve yaralanmalı kazaların büyük çoğunluğu sürücü hatasından gerçekleşmektedir ve en büyük kusur oranı ise hız 13 kurallarına uyulmaması olarak görülmektedir. Son 10 yılda ülke nüfusu ortalama %1 artmaktadır, buna karşın araç ve sürücü belgesine sahip olma oranının artışı %5’in üzerindedir. Trafik kaza oranı da araç ve sürücü sayısına orantılı olarak artmakta iken alınan önlemlerin etkisi ile ölümlü kazaların miktarı ise orantılı olarak azalmaktadır.2003 yılında kat edilen her 100 milyon kilometrede ölüm sayısı 5,72 iken bu sayı 2013 yılında 2,33’e kadar düşmektedir. AB üyesi ülkelerde her 1000 kişiye 618 araç düşmekte iken Türkiye’de bu sayı 234’e kadar düşmektedir. Araç/ölüm sayısı oranına bakıldığında Türkiye’de her 100.000 araca karşın 21 ölüm gerçekleşirken bu oran AB üyesi ülkelerde ortalama 11 de kalmaktadır. Trafik ve bunun sonucunda ortaya çıkan trafik kazalarının maddi ve sosyal etkileri, artarak devam eden önleyici çalışmalara rağmen büyümektedir. Bu alanda ülkemizde sorumlu kurumların yaptığı önemli çalışmaların artırılarak devam etmesi ve yenilikçi yöntemlerle desteklenmesi gerekmektedir (Trafik Kazaları Özeti, 2013). 3.3. Trafik Kazalarının Değerlendirilmesi Gelişmiş ülkeler trafik kazalarının önlenmesi için çeşitli stratejiler geliştirmekte ve çalışmalar için gerekli destekleri sağlamaktadır. Gelişmekte olan ve diğer ülkelerde ise trafik güvenliği ile ilgili çalışmalar yetersizdir veya hiç desteklenmemektedir. Bu durumun sonucunda trafik kazalarının maddi ve manevi etkileri gelişmiş olan ülkelerde azalmakta iken diğer ülkelerde katlanarak artmaktadır. Türkiye trafik güvenliği ile ilgili bir stratejiye sahiptir. Sorumlu kuruluşların da belli olduğu bir ülke olmasına rağmen hedefleri ölçülebilir olmayan ve finansal açıdan destekleri belirsiz bir yapıya sahiptir. Dünya trafik kazalarının önlenmesi raporunun önerileri önemlidir ve rapor önerilerinin uygulandığı ülkelerde trafik kazalarının olumsuz etkileri azalmaktadır. Ölümlere sebep olan sağlık problemlerindeki gelişmeler ve trafik sorununun büyümesi göz önüne alınarak yapılan bir tahmine göre 2004 yılı itibari ile 2,2 milyon ölüm sayısı ile ölüme sebep olan etkenler sıralamasında trafik kazaları 9. sıradır. Gerekli tedbirler alınmaz ise 2030 yılında 5. sıraya yükselerek 3,6 milyon kişinin ölümüne sebep olması öngörülmektedir. Ülkelerin geleceğini şekillendirecek 5-14 yaş aralığındaki bireylerin ölüm sebeplerine bakıldığında trafik kazaları 2. sıradadır, 15-29 yaş aralığındaki bireylerin 1. ölüm sebebi yine trafik kazalarıdır. Bu göstergeler de trafik kazalarının etkilerinin ne kadar kalıcı ve önemli olduğunu göstermektedir (World Health Organization, 2009). 14 Farklı bir perspektiften bakıldığında trafik kazalarına erkeklerin karışma oranının çok daha yüksek olduğu görülmektedir. Genele bakıldığında her 4 kazadan 3’ü erkeklerin sebep olduğu veya etkilendiği kazalardır. 15-29 yaş aralığına bakıldığında ise erkeklerin kazaya karışma oranı %80 seviyesine çıkmaktadır. Bu durum erkeklerin aşırı hız yapma, alkollü araç kullanma gibi riskli davranışlara daha yatkın olmasından kaynaklanır. Sonucunda erkekler için hem kaza riskini hem de kazanın etkilerini artırmaktadır. Avrupa Birliği’nde trafik kazalarının ekonomik maliyeti incelendiğinde tahminlere göre trafik kazalarının toplam yıllık maliyeti 180 milyar Euro’ya ulaşmaktadır (World Health Organization, 2004). Şekil 3.1. 2011-2020 Karayolu güvenliği için on yıllık eylem hedef göstergesi (WHO, 2009) Trafik kazalarının en büyük sebebi sürücülerin ihlal ve ihmalleridir. Denetimler, ağır cezalar, yaptırımlar gibi sürücüleri daha dikkatli olmaya, kurallara uymaya zorlayıcı etmenler önemli etkiler göstermesine rağmen kesin çözüm değildir. Ülkemizde etkileri ve sürüş alışkanlıkları sebebi ile trafik kazalarında en riskli sürücü gruplarının başında kamyon, tır vb. gibi taşımacılıkta kullanılan büyük araç sürücüleri gelmektedir. Öğrenim 15 düzeyinin trafik kazalarına etkisine bakıldığında, öğrenim düzeyi yükseldikçe kural ihlali ve hata yapma oranının arttığı, buna karşın öğrenim düzeyi düştükçe dikkatsizlik ve kontrolsüzlüğün arttığı görülmektedir. Öğrenim düzeyi ayrımı yapmadan sürücülerin özellikle risk yükseldiğinde etkili olarak uyarılması, bilgilendirilmesinin gerekliliği görülmektedir. Trafik kazaları doğrudan veya dolaylı olarak çevresel sebeplerden kaynaklanabilmektedir. İklim şartları ve kalabalık gibi durumlar bireydeki stres, saldırganlık ve kontrolsüzlük düzeyini artırmaktadır. Aşırı sıcak ve aşırı sıcaklık ile birlikte aşırı nem gibi sebeplere bağlı olarak kaza riski artmaktadır. Sürücü ve yayaları etkileyen, trafikte karşılaşılabilecek riskleri etkileyen önemli bir faktörde yol durumudur. Yapılan birçok çalışmada belli noktaların trafik kazası için daha riskli olduğun göstermektedir (Sönmez, 2000). 3.4. Veri Madenciliği Teknolojinin gelişmesi ve yaygınlaşması sonucunda Evren’deki her hareket, değer ve ölçüm veri ambarlarında saklanmaktadır. Veri ambarlarından klasik istatistik yöntemleri ile belli sonuçlar çıkartılabilmektedir. Veri miktarının artması ve bu verileri analiz etme araçlarının gelişmesi, toplanan veriyi analiz etmeye yönelik ilgiyi arttırmıştır. Bu gelişmeler sonucunda, akademik ve iş dünyasında veri madenciliği çalışmalarının yaygınlaştığı görülmektedir. Veri madenciliği ile büyük veri tabanlarından anlamlı bilgiye ulaşmak; verilerde gizli desenleri, ilişkileri ve eğilimleri keşfetmek ve karar vermeye yardımcı olmak için kullanılan bir yaklaşımdır. Basit bir ifadeyle, veri madenciliği verileri anlamlı bütüne dönüştürmenin bir yoludur. Veri madenciliği bilgi keşfi olarak adlandırılan sürecin bir aşamasıdır. Veri madenciliği ile doğrulama yapılmadan otomatik olarak güvenilir desenler ve bilgi bulunamaz. Bu süreçte varsayımlar oluşturmak için iş analistleri çalışır. 16 Veri madenciliğinde kullanılan farklı teknikler vardır. Bu teknikler; istatistik, yapay zekâ, makine öğrenmesi, örüntü tanımlama ve veri görselleştirmesi gibi alanlarda kullanılmaktadır (Seyrek ve Ata, 2010). Şekil 3.2. Veri madenciliğinin alanları (Baykasoğlu, 2005) 17 3.4.1. Veri madenciliğinin gelişimi Veri madenciliğinin temeli 18. asırda yaşamış Thomas Bayes’in olasılık kuramı üzerine yapmış olduğu çalışmalar ile atılmıştır. Daha sonra Bayes teoremi olarak adlandırılan bu teorem ilk veri madenciliği çalışmalarındandır. Veri madenciliğindeki gelişmeler 20. asrın başında ortaya çıkan istatistik bilimindeki gelişmeler ile devam etmiştir. 1950’li yıllarda yapay sinir ağları ile 1960’lı yıllarda makine öğrenmesi kavramları veri madenciliğinin tarihinde önemli yere sahiptir. 1960’lı yıllarda ortaya çıkan veritabanı teknolojisi, veri madenciliğinin dijital ortamda uygulanmasının kapısını açmıştır. Dijital ortamda verilerin saklanması ile başlayan süreçte, ilk aşama olan veri toplama aşamasıdır. Veri toplama aşamasında basit hesaplamalar yapılmak üzere veriler toplanmıştır. Elde edilen veriler ve hesaplamalar, giriş düzeyinde ticari soruları yanıtlamak ve temel düzeyde bilgiler sağlamaktan öteye geçmemiştir. İkinci aşama veriye erişim olarak adlandırılmaktadır. Bu aşamada yapılandırılmış, belli kuralları olan verileri depolamak için veritabanları kullanılmaya başlanmıştır. Veri toplama ve yönetim verilerinin raporlanması sağlanarak şirketlerin politikaları oluşturulmuştur. Her çalışma yapısı kendine özgü ihtiyaçlara veya biçime uygun olduğu için verilerin sonucunda elde edilen çıktılar da sınırlı olmuştur. Sonraki aşamada tek tek figürleri bilinen, toplu çalışmaların performansını belirleyecek sorular sorulabilmiştir. Örneğin bir bölgedeki, belli bir zaman dilimi için kayıtların filtrelenmesi, toplamının ve ortalamasının alınması gibi sonuçlar veri gezinme aşamasında kullanılabilir olmuştur. Çok boyutlu veritabanları ile farklı kurumların performanslarına ilişkin detayların karşılaştırılabileceği bir seviyeye gelinmiştir. Son seviyede günümüzde kullanılan anlamıyla veri madenciliği ortaya çıkmıştır. Çevrimiçi analiz araçlarının geri bildirimi ve işbirliği içindeki iş birimleri ile bilgi alışverişi sağlanır. Günümüzde her alanda hızla değişim ve gelişim devam etmektedir. Zamanın değerli olduğu, her işletmenin, kurumun bir biri ile yarıştığı bu süreçte çevrimiçi veri depolama, değerlendirme ve analiz yapma önemli bir ihtiyaçtır. Veri madenciliğin ortaya çıkan bu ihtiyaçları karşılayabilmesi ve devam eden gelişim süreci gibi özellikleri ile yararlılık 18 düzeyini artırmaktadır. Kurumlar stratejik kararlar alırken veya yeni politikalar belirlerken veri madenciliğinin birçok sürecinden faydalanmaktadır. Örneğin müşterilere cazip gelecek bir kampanya belirlerken, mağaza yerleşimine, tasarımına karar verirken veri madenciliği ile elde edilen bilgilerden yararlanmaktadır. Bu kararların verilebilmesi için geçmiş deneyimlerin, alışkanlıkların, verilerin veri madenciliğinin alana uygun modellerine göre saklanması gerekir. Gelişmiş algoritmalar ile hazırlanan uygulamalar, geniş kapsamlı verilerden bilgiler ortaya çıkarırken, veriler arasındaki ilişkileri de ortaya çıkarabilir. Veri madenciliği teknolojisinin temel bileşenleri olan; istatistik, yapay zekâ ve makine öğrenmesi gibi alanlarda gelişim yıllardır devam etmektedir. Günümüzde bu teknolojiler gelişmiş ve ilişkisel veritabanı sistemleri ve veri bütünleştirme kültürü ile birleştiğinde, eskiden kullanılan gömülü sistemlerin yerini almıştır. Çizelge 3.1.’de veri madenciliğinin gelişim aşamaları görülebilmektedir (Rygielski, 2002). Çizelge 3.1. Veri Madenciliğinin Gelişim Aşamaları Aşama Teknoloji Özellikler Veri Toplama (1960'lar) Bilgisayarlar, bantlar, diskler Geçmişe yönelik, statik veri iletim Veri Erişim (1980'ler) İlişkisel veritabanları (RDBMS), Structured Query Language (SQL), ODBC Geçmişe yönelik, düzeyde dinamik veri iletim kaydı Veri Gezinme (1990'lar) Çevrimiçi analitik işleme (OLAP), çok boyutlu veritabanları, veri ambarları Geçmişe yönelik, birden düzeyde dinamik veri iletimi Veri Madenciliği (2000) Gelişmiş algoritmalar, çok bilgisayarlar, büyük veritabanları Muhtemel, önleyici bilgi teslimi işlemcili fazla 3.4.2. Veri madenciliği uygulamaları Veri madenciliği yöntemlerini denetimli ve denetimsiz olarak iki kategoriye ayırmak mümkündür. İyi tanımlanmış kesin bir hedef belirlendiğinde denetimli, iyi tanımlanmamış veya belirsizlik durumunun olduğu yöntemler denetimsiz olarak adlandırılır. Denetimsiz yöntemler daha çok veriyi anlamak, tanımak, keşfetmek için kullanılır. Bu yöntemlerde amaç sonraki uygulamalara yönelik fikir vermek ve temel oluşturmaktır. Denetimli yöntemler veriden bilgi ve sonuca ulaşmak için kullanılmaktadır. Veri madenciliği modelleri işlevlerine göre değerlendirmek gerekir ise; 19 • Değer tahmini(Sınıflandırma) ve Regresyon • Kümeleme • Birliktelik kuralları olmak üzere 3 grupta incelebilir. Sınıflama modelleri denetimli(tahmin edici), kümeleme ve birliktelik kuralları modelleri denetimsiz(tanımlayıcı) modellerdir (Özkan, 2008). Şekil 3.3. Veri madenciliği modelleri (Narli ve diğerleri, 2014) Veri madenciliğinin kullanım alanları Veri madenciliği verinin olduğu ve sonucunda veri ambarlarının oluştuğu her alanda kullanılmaktadır. Veri madenciliğinin kullanıldığı alanlar; Bilimsel ve mühendislik alanları Günümüzde laboratuvar veya bilgisayar ortamında bilimsel veri üretilmektedir. Elde edilen bu verilerin anlamlandırılması için veri madenciliği çok uygun bir platform sağlar. Ampirik veriler üzerinde modeller kurularak bilimsel ve teknik problemlerin çözümlenmesi gibi uygulama örnekleri bulunmaktadır. 20 Sağlık alanları Veri madenciliğinin en umut verici uygulama alanlarından birisi tıp ve sağlık alanıdır. Özellikle tarama testleri, hasta verileri ve belirtilerine göre hastanın risk, uygun tedavi yöntemleri ve önceliklerinin belirlenmesi gibi geniş uygulama alanları vardır. Endüstri alanları Üretim ve pazarlama süreçleri çeşitli veriler üretilir. Bu veriler karar verme işlemlerinde kullanılabilir. Üretim sürecindeki veriler ile kalite kontrol, lojistik ve pazarlama verileri ile ürünün pazar değeri, talep ve müşteri beklentileri gibi farklı alanlarda bilgi üretimi veri madenciliği ile sağlanmaktadır. Alışveriş ve pazarlama alanları Veri madenciliği ile bu alanda en çok sepet analizi uygulamaları görülmektedir. Müşterinin tercihleri değerlendirilerek ürünler arasındaki ilişkilerin, desenlerin çıkartılması sağlanmaktadır. Bu ilişkiler ile müşterinin tercihlerine göre yapılacak düzenlemeler ile işletmenin karı artırılabilir. Benzeri çalışmalar ile pazarlama politikaları belirlemek amacı ile çapraz satış analizleri, müşteri segmantasyonu için veri madenciliği çalışmaları yapılmaktadır. Bankacılık ve finans alanları Bankacılık alanında en çok risk analizi için ve usulsüzlük tespitinde veri madenciliği tercih edilir. Kredi ve kredi kartı sahtekârlığı, risk, müşteri eğilimi, kar analizi gibi alanlarda veri madenciliği uygulamaları görülmektedir. Eğitim alanları Öğrenci verileri analiz edilerek öğrencilerin başarı ve başarısızlık nedenleri, başarının arttırılması için uygulanması gereken politikaları belirlenmesi, akademik eğitimin devamı 21 ile okul başarısı ilişkisinin belirlenmesi gibi alanlarda yapılan çalışmalar ile eğitim kalitesi arttırılabilir. İnternet verileri İnternette üretilen veriler yoğunluk ve karmaşıklık olarak hızla artmaktadır. Web madenciliği yoğun veri üretimi sebebi ve gelişmiş toplumların birçok ihtiyacını web üzerinden gerçekleştirmesinden dolayı, gelişmeye açık ve yeni fırsatlar ortaya çıkan alandır. Bu alanda web sayfaları arasındaki ilişkiler belirlenebileceği gibi, web içeriklerinden anlamlı bilgiler üretilebilir veya web sitesi ziyaretçilerinin erişim verileri ile davranış ve tutumları belirlenebilir. Metin (Doküman) alanları Metin veri madenciliği yöntemi ile dokümanlar arasında benzerlikler belirlenebilir. Metindeki anlamlı ve nitelikli bilgiler; özet üretilmesi veya metin ile modelleme yapılması yoluyla kullanıcı, müşteri gibi bireylerin davranışlarının belirlenmesinde kullanılabilir. Bu alanlar dışında veri madenciliğinin kullanıldığı sayısız örneklerde bulunabilir. Örneğin; sigortacılık, borsa, taşımacılık, ulaşım, turizm, telekomünikasyon gibi alanlarda yapılmış çalışmalar bulunmaktadır (Akgöbek ve Çakır, 2009). Veri madenciliğinin uygulanması Veri madenciliği, birbirini izleyen adımlardan oluşan tekrarlı bir süreçtir. Veri yığınları içinde, sanal araştırmalar yapılarak işlevsel veriyi ortaya çıkartma ve bilgi keşfi aşamasında desenleri belirleyerek süzme ve sonraki aşamaya hazırlama sürecidir. Şekil 3.4.’de süreç detaylı olarak görülmektedir. Veri madenciliğinde, veri özelliklerinin yapılacak çalışmaya göre yeterli ve detaylı incelenmesi uygulamanın başarısı ile doğrudan orantılıdır. 22 Şekil 3.4. Veri madenciliği süreci Veri madenciliği süreci aşağıdaki gibidir. • Problemin tanımlanması, • Verinin kavranması ve toplanması • Verilerin hazırlanması, • Modelin kurulması ve değerlendirilmesi, • Modelin izlenmesi (Shearer, 2000). Problemin tanımlanması İlk aşama olarak yapılması beklenen işe göre problem tanımlaması yapılır. Çalışmanın hangi iş için yapılacağının açık bir şekilde tanımlanmalıdır. İlgili iş, çözüm geliştirilecek problem üzerine odaklanmış ve açık bir dille ifade edilmiş olmalıdır. Bu aşama bundan sonraki aşamaların temelini oluşturacağı için iyi tasarlanmalıdır ve hedefler açıkça belirlenmelidir (Tüzüntürk, 2010). 23 Verilerin kavranması ve toplanması Tanımlanan probleme göre ihtiyaç duyulan verilerin belirlenmesi, toplanması ve verilerin tanımlanması ile devam eder. Veri toplanması ile başlayan süreç sonuca ulaşılmak istenen iş ile ilgili veri kalitesi sorunlarını belirlemek, verinin ilk kavranışını keşfetmek ya da gizli bilgilere ulaşmak için alt kümeler ortaya çıkarma için faaliyetler devam eder. Bu adımda veri kalitesi belirlenir. İşin kavranması ile verinin kavranması arasında yakın bir bağlantı bulunmaktadır. Verilerin hazırlanması Veri madenciliğinin üçüncü adımı verilerin hazırlanmasıdır. Bu aşama ile toplanan veriler, problemin çözümü için belirlenen modele uygun hale getirilir. Verilerin hazırlanması süreci 5 evrede gerçekleşir. Veri temizleme evresi ile veriler içindeki uygun olmayan veya hatalı veriler temizlenir. Bu evrede, eksik veriler tamamlanır, sayısal verinin normal dağılımda olduğu varsayılarak normal dağılım haricindeki kayıtlar silinebilir. Veri bütünleştirme evresi ile farklı ortam ve yapıdaki verilerin, ortak ortam ve yapıda birleştirilmesi sağlanır. Probleme uygun seçilen veriler farklı ortamlardan bulunabilir, uygulamada bu durum performansı veya sistemin kararlılığını düşürebilir. Performans ve kararlılığın üst seviyede olması beklenen veri madenciliği uygulamasında bu engel, veri bütünleştirme aşaması ile aşılmaktadır. Veri indirgeme, sonuca etkisi olmayacak veya tolere edilebilecek parametreler bu evrede devre dışı bırakılır. Sonucu etkilemeden yapılacak parametre temizliği ile sistemin performansı artırılarak, gereksiz kaynak kullanımı engellenir. Veri seçimi evresinde, değer tahmininde etkin parametreler belirlenir. Etkin özellikler belirlenerek gerekli veriler seçilir ve kullanılır. Son evre olan veri dönüştürme ile belirlenen modele göre verilerin dönüşümleri yapılır. Veri madenciliği modeline göre seçilen algoritmanın çalışabileceği veri yapılarına göre verilerin tür ve yapı dönüşümü bu evrenin sürecini oluşturur. Modelin kurulması ve değerlendirilmesi Bu aşamada hazırlanan veriler ile modelleme gerçekleştirilir. Modelleme evreleri sırası ile modelin seçimi, farklı modelleri değerlendiren fonksiyonları belirlenmesi, sonuç 24 fonksiyonunu optimize etmek için uygun algoritma ve metotların belirlenmesidir. Veri analizine uygun, etkili bir ya da daha fazla model oluşturulur. Seçilen modelin amaca uygun olarak çalıştığının değerlendirilmesi ve modelin belirlenmesi için gerçekleştirilen adımların gözden geçirilmesi bu aşamada yapılır. Değerlendirme yapılırken çeşitli araçlar kullanılır. Kullanılan modelin uygunluğunu belirlemek için, MAPE(Mutlak hata yüzdesi ortalaması) veya R2 (Belirlilik katsayısı) kullanılabilir. Modelin izlenmesi Modelin uygulanma ve değerlendirilme sonuçları izlenerek, çalışmasının hedeflere ulaştırıp, ulaştırmadığı değerlendirilir. Beklenen sonuçlara ulaşılması durumunda uygulamanın kullanımı uygun olarak sonuçlandırılır. Hedeflerin sağlanmaması en başa dönülerek bütün aşamaların elde edilen deneyimlere göre tekrarlanmasını gerektirir (Küçüksille, 2009). 3.5. Makine Öğrenmesi Veri madenciliğinin evrelerinden birisi olan yapay zekânın alt dalı olan makine öğrenmesi, verileri ve geçmiş deneyimleri kullanarak tahmin yapar veya modeller çıkarabilir. Makine öğrenmesi, insanların geri beslemeli öğrenim şeklinin bilgisayarda taklit edilmiş halidir. Makine öğrenmesi ve veri madenciliği sığ bir bakış açısı ile eş anlamlı olarak değerlendirilebilmektedir. Veri madenciliği uygulamalarında makine öğrenmesi algoritmaları kullanılmaktadır. Bayes ağları, destek vektör makineleri, karar ağaçları gibi makine öğrenmesi uygulamaları algoritmayı eğitmek için eğitim seti olarak verileri kullanmaktadırlar. Eğitim verileri kullanılarak anlamlı sonuçlara ulaşılmaktadır. Verilerde bulunabilecek küçük bir bilgiye ulaşabilmek için makine öğrenmesi iyi bir yaklaşım olacaktır. Örneğin sinemaseverler tarafından bir filmin beğenilmesine veya beğenilmesine sebep olan bilgi açıkça görülemeyebilir. Bu nedenle büyük bir içerik sağlayıcının kullanıcılarının verdiği cevapların bir örneklemine dayanarak, hazırlanan bir film derecelendirme tahmini algoritması çalışmasında makine öğrenmesi teknikleri oldukça başarılı olmuştur. Öte yandan makine öğrenmesinin doğrudan veri madenciliğinin amaçlarını yerine getiremediği görülmektedir. Başka bir çalışmada bir film yapım şirketi 25 tarafından hazırlanan web üzerinden özgeçmiş taraması yapan makine öğrenme uygulamasında içerik değerlendirme için el ile yapılacak düzenlemeler kaçınılmazdır. Sürekli müdahaleye ihtiyaç duyan, geliştirilmesi gereken böyle bir sistemde makine öğrenmesi tekniklerinin çok avantajının olmadığı görülmüştür. Makine öğrenmesi üç evrede gerçekleşir: • Dokümanların Hazırlanması • Öğrenme Yöntemlerinin Uygulanması • Öğrenme Performansının Değerlendirilmesi (Rajaraman ve Ullman, 2011) 3.5.1. Makine öğrenmesinin gelişimi Makine öğrenmesi yapılabilmesi için öncelikle veri seti üzerinde veri madenciliği yöntemleri kullanılarak uygulanacak makine öğrenmesi tekniğine uygun düzenlemeler yapılmalıdır. Makine öğrenmesi teknikleri istatistiksel yaklaşımdan türemiştir ve aynı yapı üzerinde gelişmektedir. Yeni algoritmalar geliştirildiğinde performansı değerlendirilir ve geçerli teknikler ile performansı karşılaştırılır. Makine öğrenmesinin ortaya çıkışından itibaren yeni teknikler üretilmeye devam etmektedir. Bu tekniklerin algoritma yapılarına göre gruplanması aşağıdaki gibi yapılmıştır. • Denetimli Öğrenme • Denetimsiz Öğrenme • Yarı-Denetimli Öğrenme • Ödüllü Öğrenme • Uyum Sağlama ile Öğrenme • Öğrenme ile Öğrenme Denetimli öğrenme: Gözetimli öğrenme eğitim verilerini kullanarak bir yaklaşım üreten makine öğrenmesi tekniğidir. Olumlu ve olumsuz örneklerden oluşan bir sınıf aracılığı ile algoritma girdilerle, çıktılar arasında ilişkiyi tanımlayan bir fonksiyon üretir. Eğitim verisi, girdiler ve çıktılarından oluşur. Tahmin yapılırken, eğri uydurma (regresyon) ya da sınıflama yöntemleri kullanılmaktadır. Gözetimli öğrenme, 26 • Eğitim verisinin tiplerini belirleme, • Eğitim verisinin toplanması, • Öğrenme fonksiyonunun gösterimi, • Öğrenme algoritmasının belirlenmesi, • Öğrenme algoritmasının performansının ölçülmesi adımlarından oluşur. Örnek bir denetimli öğrenme çalışmasında, bir otomobil hakkında toplanan veriler kullanılarak otomobilin sınıfı tahmin edilebilir. Belli bir otomobil grubu deneklere gösterilerek aracın sınıfı hakkında karar vermeleri istenebilir ve bu aşamada göz önünde bulundurulan verilerin özellikleri belirlenebilir. Bu süreç içinde göz önünde bulundurulan veriler ile öğrenen bir yapının otomobillerin sınıfı hakkında tahmin de bulunması sağlanabilir. Denetimsiz öğrenme: Denetimli öğrenmede doğru değerler bir danışman tarafından sağlanmaktadır. Denetimsiz öğrenmede ise danışman yoktur. Sadece girdi verileri kullanılarak, çıktı verileri kullanılmadan öğrenme işlemini gerçekleştirir. Amaç girdi verilerinin düzenini bulmaktır. Denetimsiz öğrenme, gözlemlere bağlı bir makine öğrenmesi tekniğidir. Denetimsiz öğrenme tekniği, özellikle olasılık temelli kümeleme işleminde kullanılır. Kümeleme ile desenlerin yoğunluğu incelenerek, farklı gruptaki benzer desenler sınıflandırılır. Denetimsiz öğrenme; makine öğrenmesi, veri madenciliği, desen tanımlama gibi alanlarda kullanılan istatistiksel veri analizi tekniğidir (Alpaydın, 2004). Yarı-Denetimli öğrenme: Yarı-Denetimli öğrenme, uygun sınıflama veya fonksiyonu bulmak için sınıflandırılmış ve sınıflandırılmamış veriler kullanılır. Sınıflandırılmış örneklemin büyüklüğü, sınıflandırılmamış örnekleme göre daha azdır. Tüm etiketlenmemiş verileri de etiketlemek zordur. Bu sebeplerden dolayı yarı-denetimli öğrenme kullanışlı bir yöntemdir (Chapelle ve Schölkopf, 2006). Ödüllü öğrenme: Hedefe ulaşmak için uygun işlemlerin kullanılması için politikanın belirlenmesi önemlidir. Herhangi bir algoritmanın doğru politikalar ile kullanılması önemlidir. Böyle bir durumda, makine öğrenmesi uygulaması politikaların performansını 27 değerlendirir. Bir politika geliştirmek için geçmiş iyi eylem dizilerini belirlemek gerekir. Ödüllü öğrenme ile satranç, tavla gibi oyunların basit kuralları sonucunda ortaya çıkan karmaşık hamle yapısının eylemlerini değerlendirerek iyi bir politika belirlenmesi sağlanabilir. Ödüllü öğrenme asansör sistemi, tavla, satranç, robotik sistemler, iletişim sistemleri gibi çeşitli alanlarda kullanılabilir. Uyum sağlama ile öğrenme: Bu yöntem denetimli öğrenme yöntemine benzer bir yöntemdir. Farklı olarak kesin bir fonksiyona dayanmaz. Uyum sağlama ile öğrenme, yeni girdi ve çıktıları tahmin etmeye çalışır. Uyum Sağlama ile öğrenme yöntemi Vladimir Vapnik tarafından tanımlanmıştır. Öğrenmek için öğrenme: Geçmiş deneyimleri kullanarak, kendi tümevarımsal eğilimi ile öğrenen bir algoritmadır (Alpaydın, 2004). Günümüzde makine öğrenmesi çalışmaları, genellikle denetimli öğrenme ve denetimsiz öğrenme yöntemleri ile geliştirilmektedir. Bu çalışma da bu iki yöntem ile geliştirilen makine öğrenmesi teknikleri incelenecektir. 3.5.2. Makine öğrenmesi uygulamaları Günümüzde veri ambarlarının ve bilgiye duyulan ihtiyacın katlanarak büyümesi bilim insanlarını bu konuda çalışmaya yönlendirmektedir. Ticaret, bankacılık ve finans, bilim ve mühendislik, eğitim, web, sağlık, metin ve dil işleme, güvenlik, , oyun, bilgisayarlı görme gibi onlarca alanda makine öğrenmesi uygulamaları yapılmaktadır. Bu çalışmalarda geçmişte farklı amaçlar ile toplanmış veriler üzerinde makine öğrenmesi yöntemleri uygulanarak gizli örüntüler bulma, tahmin veya sınıflandırma yapılmaktadır. Makine öğrenmesi; veri madenciliğinin bir parçasıdır. Veri madenciliği çalışmaları yapılan birçok alanda makine öğrenmesi yöntemleri kullanılmaktadır. Makine öğrenmesinin uygulamalarına örnekler vermek gerekir ise; Bilim ve mühendislik uygulamaları: Bilimsel ve mühendislik alanında yapılan çalışmalarda yoğun veri üretimi gerçekleşmektedir. Üretim sistemi performansı, kalite kontrol süreci, deprem analizi gibi pek çok alanda uygulama örnekleri görülmektedir. 28 Sağlık uygulamaları: Sağlık alanı umut verici uygulama alanlarındandır. Tarama testleri verileri hastalıkların ön tanısı, kalp krizi riskinin tespiti, acil servis hastalarının durumlarına göre risk ve önceliklerin belirlenmesi gibi pek çok alanda uygulamaları görülmektedir. Ticari uygulamalar: Ticari faaliyetler geniş çapta veri üretirler. Bu veriler karar verme süreçlerinde kullanılabilir. Personel verileri ile performansı etkileyen faktörler belirlenebilir ve yeni alınacak personel seçiminde bu analizin sonuçları kullanılabilir. Müşteri verileri kullanılarak reklam ve promosyon ile ilgili pek çok faydalı bilgiye ulaşmak mümkündür. Perakendecilik uygulamaları: Perakendecilik uygulamalarında yaygın olarak sepet analizi uygulamaları kullanılır, amaç satın alınan ürünlerin ilişkisini bulmaktır. İlişkinin bilinmesi işletmenin satışlarını artırıcı düzenlemeler yapması için kullanılır. Bir ürünü alan müşterilerin yanında alabileceği ürünlerin tahmin edilmesi amaçlanmaktadır. Bu bilgi ile raf tasarımı birlikte alınan ürünlerin yakın, dikkat çekici şekilde yerleştirilmesi ile satışları artırılmaktadır. Bankacılık ve finans uygulamaları: Bankacılık sektöründe kredi ve kredi kartı risk düzeyinin tahmini, sahtekârlık yöntemlerinin tespiti, kâr analizi gibi alanlarda uygulamalar görülmektedir. Finans kuruluşları stok fiyat tahmini, portföy yönetimi gibi alanlarda uygulamalar kullanmaktadır. Eğitim uygulamaları: Öğrenci verileri ile başarı ve başarısızlık nedenleri, başarıyı artırıcı politikaların belirlenmesi, meslek seçiminde doğru yönlendirmenin yapılabilmesi, akademik başarı ile öğrenci verilerinin ilişkisinin bulunması gibi farklı uygulamalar ile eğitim kalitesini ve performansını artırıcı faaliyetler yapılabilir. Web uygulamaları: Web üzerindeki hizmetlerin çeşitlenmesi ve artması ile web verileri kapasite ve karmaşıklık olarak hızla artmaktadır. Web madenciliği kısaca internetten işlevsel bilgi keşfi olarak tanımlanabilir. İnternetten satış yapan firmalar makine öğrenmesi uygulamaları ile müşterilerine ilgilendikleri ürünlere göre satın almaları için tavsiyelerde bulunabilmektedir. 29 Metin uygulamaları: Amaç dokümanların tasnif edilmesi, benzerlik ve içerik gibi özelliklerine göre makineler tarafından ayrıştırılmasını sağlamaktır. Uygulamalar genellikle makineler tarafından belirlenen anahtar sözcüklerin belirlenmesi, içeriğin başka dokümanlarla karşılaştırılması gibi yöntemler ile yapılır. Ses ve görüntü tanıma uygulamaları: Dijital ortamda kayıt altına alınmış ses veya görüntü makineler tarafından tanınabilmektedir. Birçok alanda uygulama örnekleri olan bu el yazısı tanıma, karakter tespiti, kimlik tespiti, konuşmaların tanınması, yüz tanıma, plaka okuma, tıbbi görüntülerden tanınması, robot algılaması, savunma sistemleri, uydu görüntüleri tanıma, üretim hatalarının tespiti gibi pek çok uygulamaları vardır (Baykasoğlu, 2005). 3.5.3. Makine öğrenmesi teknikleri Makine öğrenmesi, makinelerin geçmiş tecrübelerden faydalanarak kendi kendine öğrenmesi ve sonucunda öngörülerde bulunması beklenen bir yaklaşımdır. Öğrenme sürecinde eğitim veri seti, modelin performansını ölçmek için ise test veri seti kullanılır. Eğitim veri setinin mümkün olduğunca geniş, doğru ve geçerli verilerden oluşması sistemin öğrenmesini artırarak daha doğru sonuçlar almamızı sağlayacaktır. En uygun model belirlendikten sonra sistem tahminde bulunmaya hazırdır. Farklı uygulamaların analizinde amaçlanan çıktı farklı olacaktır. Makine öğrenmesi tekniklerini beklenen çıktılara, amaçlara göre sınıflandırmak mümkündür (Alpaydın, 2004). Sınıflandırma En sık kullanılan makine öğrenmesi tekniklerinden birisi sınıflandırma tekniğidir. Kısaca sınıflandırma tekniği, geçmiş verilerin ait olduğu sınıfları değerlendirerek, yeni gelen verinin hangi sınıfa ait olduğunun tahmin edilmesidir. Sınıflandırma tekniği, örneklerden çıkarım olarak da adlandırılır. Beklenen sonuç, modelleme ile daha önce tanımlanmamış örnekleri kullanarak en iyi performansı verecek sınıflandırıcıyı tanımlamaktadır. Veri setinin nitelikleri sayısal ya da sembolik değerler olabilir. Sınıfın nitelikleri kategorik değerler alır, sınıflandırıcı nitelik iki değer alır, ikiden fazla değer alması durumunda çoklu 30 sınıflandırma modeli kullanılmalıdır. Literatürde, farklı sınıflandırma algoritmaları kullanan yöntemler bulunmasına karşın çalışma mantıkları benzerdir. Sınıflandırma yöntemi ile işlev ve fonksiyonları oluşturan kurallar öğrenilebilir (İkizler ve diğerleri, 2002). Sınıflandırma tekniği ile tıp, kredi kartı portföyü, kredi derecelendirmesi, satın alma davranışları ve stratejik yönetim gibi çeşitli alanlarda birçok uygulama hazırlanmıştır. Bir sınıflandırma çalışmasında, eğitim veri seti gözlemlerden oluşur. Ayrıca, veri setinin her gözlem verisi x, gözlem sınıfının etiketi y olarak adlandırılır ise veri seti (x, y) vektörü şeklinde gösterilmektedir. Sınıflandırma önceden tanımlanmış sınıfın bir y etiketinin, özniteliklerinin vektörü ile eşleşen x bir fonksiyonun öğrenme sürecidir. Giriş Sınıflandırma Nitelik vektörü(x) Çıkış Sınıf etiketi(y) Modeli Şekil 3.5. Sınıflandırma süreci Eğitim veri setinin içinde bulunan verilerin bir sınıfa ait olma olasılığı, sınıflandırma modelleri ile tahmin edilir. Sınıflandırma modelinde sınıflandırma süreci iki aşamada gerçekleşir. Öncelikle eğitim verilerine uygun modelleri belirlemek için kullanılacak algoritmanın seçildiği eğitim aşaması tamamlanır. Bu aşamanın ana amacı uygun modeli belirlemektir. İkinci aşamada test verileri kullanılarak uygulanan modelin performansı ölçülür, test aşaması olarak da adlandırılabilir. Bu aşamada aynı zamanda belirlenen modelin uzmanlara yönelik açıklaması da tanımlanır. Sınıflandırma yöntemleri olarak karar ağaçları, yapay sinir ağları, destek vektör makinesi ve istatistiksel sınıflandırma kullanılmaktadır (Durak, 2011). Karar ağacı: Karar ağacı yönteminde, ağaçlar karar düğümleri ve sınıf etiketlerini gösteren yapraklardan oluşur. Karar ağacı ile ortaya çıkan ağaç modeli ters dönmüş bir ağaç yapısındadır. Hiyerarşik bir yöntem olan karar ağacı, diğer algoritmalara göre yorumlanması, hataların bulunması ve algoritma sonucunda uygulamanın hazırlanması daha basittir. Sınıflandırma işleminde öncelikle en önemli özellikler belirlenerek kök düğümü belirlenir. Karar düğümü sayısına, düğümler arasındaki eşik değerlerine ve 31 sonuçta verinin ait olduğu sınıfı gösteren sonuç yapraklarına bakılarak, en iyi sonucu veren karar ağacı oluşturulur. Her dal yeni bir karar düğümüne bağlanırken, yeni özellikler test edilir ve bu düğümlerden de yeni dallar devam etmektedir. Karar ağacı algoritmalarından en çok kullanılanları, CHAID, CART, ID3 ve C4.5’dir (Wu ve diğerleri, 2006). Yapay sinir ağları: Yapay sinir ağları(YSA) insan beyninin çalışmasından örnek alınarak geliştirilmiştir. YSA yapısı nöron, bağlantılar ve öğrenme algoritmasından oluşmaktadır. YSA mühendislik, işletme, finans ve eğitim gibi birçok kullanılmaktadır. YSA ile çok faktörlü analizler gerçekleştirilmektedir. YSA ile oluşturulan modellerin uygulanması, anlaşılması ve yorumlanması nispeten daha zordur. İnsan beyninden taklit edilen sinir hücreleri nöronlardan oluşmaktadır. Nöronlar öğrenme sürecinde birbirlerine bağlanarak ağı oluştururlar. Oluşan bu yapı ile öğrenme, hatırlama ve veriler arasında kurulan ilişkiyi belirleyebilir. YSA, insan beyninin yeteneği olan, yaşayarak veya test ederek öğrenme yeteneğini kullanan bir yöntemdir. YSA bağımlı ve bağımsız verilerin arasındaki karmaşık ve düzensiz ilişkileri modelleyebilmesi sebebi ile tercih edilen bir yöntemdir (Dayhoff, 2001). Destek vektör makinesi: Destek vektör makinesi(DVM), denetimli öğrenme yapısındadır. Performansının yüksek olması sebebi ile tercih edilen bir yöntemdir. Sınıfları birbirinden ayıran marjı en büyük, doğrusal bir ayırt edici fonksiyon bulunmasını amaçlar. Doğrusal olarak ayrıştırma yapılamayan veri setleri için, doğrusal olarak ayrıştırma yapılabilen daha büyük düzleme taşınarak sınıflandırma yeni düzlemde yapılır. Bu dönüşüm işleminde DVM’nin kernel olarak adlandırılan fonksiyonlar kullanılır (Kavzoğlu ve Çölkesen, 2010). İstatistiksel yöntemler: Regresyon analizi, lojistik regresyon, zaman serileri analizi ve Bayesyen yaklaşımı gibi istatistiksel yöntemler veri madenciliğinde sınıflandırma algoritması olarak kullanılmaktadır. Bunlardan en yaygın kullanılan yaklaşım Bayes teoremidir. Bayes teoremi bir veri seti (X) ile bu veri seti üzerinde tanımlanan yi (i=1,2,..,n) sınıfları arasındaki ilişkiyi ele alır. Bu ilişki ön olasılık ve son olasılık kavramları ile açıklanır. X veri seti üzerinde yi sınıfının bulunma olasılığını gösteren P(yi) fonksiyonu bir ön olasılıktır. yi sınıfında olduğu bilinen verinin, x olma olasılığını gösteren P(x|yi) şartlı olasılık 32 değeri ile aynı x ölçümünün tüm sınıflar ile birlikte eldeki veri kümesinde bulunma olasılığını gösteren P(x) fonksiyonu ön olasılık değeridir. P( x) = P( y1)P( x|y1)+P(y2)P(x|y2) , (n= 2 için) denklemi ile hesaplanır. Ön olasılıkların değerleri ile son olasılık değeri Eşitlik 3.1’de görüldüğü gibi P(yi|x) fonksiyonu ile hesaplanır. (3.1) Bayes teoreminin sınıflama problemlerine uygulanmasında, Saf Bayes, Üç Artırılmış Saf Bayes, k-Bağımlı Bayes sınıflayıcısı gibi yaklaşımlar vardır. Bu yaklaşımların sınıflama değişkenleri arasındaki bağımlılık ilişkilerini değerlendirme biçimi farklılık gösterir. Son olasılık ile x verisinin yi sınıfında bulunma olasılığını belirtir. X verisinin ait olduğu sınıfı belirlemek için en yüksek son olasılık değerini veren yi sınıfı seçilir. Saf Bayes yaklaşımında bir sınıfa ait bütün niteliklerin şartlı bağımsız olduğu varsayılır. P(x) değeri her sınıf için aynı olacağından, son olasılık değerini hesaplayan P(yi|x) fonksiyonu bu varsayıma göre düzenlenir. (3.2) Elde edilen P(x|yi) fonksiyonu P(yi|x) fonksiyonunda kullanıldığında Eşitlik 3.3’de görüldüğü gibi olacaktır. (3.3) Saf Bayes teoreminde P(yi|x) fonksiyonu ile sınıflama probleminin çözümü için en büyük değer bulunmaya çalışılır (Akan, Demirok ve Kilic, 2012). 33 Kümeleme Kümeleme yöntemi ile veri setindeki kayıtların birbirine olan benzerliklerine bakılarak gruplandırılması gerçekleştirilir. Sınıflandırma yönteminden farkı gruplanan verilerin sınıflarının önceden belli olmamasıdır. Küme oluşturma tekniği ve kullanılan verilere göre kullanılacak algoritma belirlenir. Kümeleme yönteminde, iki farklı yaklaşım kullanılır. Bunlar mesafeye göre ve model tabanlı yaklaşım teknikleridir. Mesafeye göre yaklaşımda, veriler arasında mesafe veya benzerlik ölçüsü kullanılır. Model-tabanlı yaklaşımda, veri sonlu karışım modeli tarafından oluşturulan modelin parametreleri ile tahmin yapılır. Her iki yaklaşımda da, bir bölümlemeli veya hiyerarşik kümeleme yöntemi kullanılır. Bu yaklaşımların kapsamında 3 farklı algoritma türü ortaya çıkmaktadır. Bölümlemeli algoritmalar: Kümelerin arasında en çok veya en az uzaklığın, kümelerin benzerlik kriterlerinin ve oluşturulacak küme sayısının uzman tarafından belirlendiği algoritmalardır. Bölümlemeli algoritmalar hızlı çalışması sebebi ile büyük veritabanlarının kümelenmesi için tercih edilmektedir. Yoğunluğa dayalı algoritmalar: Düzensiz ve farklı ortamlarda bulunan verilere sahip veritabanlarının sadece uzaklığına bakılarak bölümlemeli algoritmalar ile kümelenmesi zordur. Hiç bir kümeye dâhil olmayan aşırı uç noktalar içeren veritabanlarının bölümlemeli algoritmalar ile kümelenmesi ile geçerli kümeler oluşmayacaktır. Bu yapıdaki veritabanlarında bulunan verilerin aynı kümede gruplanması temelli yoğunluğa dayalı algoritmalar kullanılmalıdır. Grid temelli algoritmalar: Özellikle geniş çaplı veritabanlarının kümelenmesinde numaralandırılmış çizgilerden oluşan hücresel yapıları kullanan algoritmalardır. Bu algoritma türünde hiyerarşik yapının kullanıldığı görülmektedir (Chen ve diğerleri, 2012). 34 Birliktelik kuralları Makine öğrenmesi uygulamalarında ilk kullanılan tekniklerden olan birliktelik kuralları tekniği tanımlayıcı bir tekniktir. Birliktelik kuralı, bulunan sınıf veya kümeler arasında ilişkilerin bulunmasını amaçlar. Geçmiş veriler analiz edilerek bu veriler arasındaki birliktelik davranışlarının tespiti ile geleceğe yönelik çalışmalar yapılmasını sağlar. Günümüzde en yaygın kullanım alanlarından birisi sepet analizidir. Sepet analizi ile bireylerin satın aldıkları ürünler arasındaki birliktelik ilişkisini bulmak, bulunan birliktelik ilişkisi kullanılarak bireylerin alışveriş alışkanlıkları bulunmaktadır. Pazarlama politikaları belirlenirken, bulunan bu birliktelik ilişkileri kullanılır. Birliktelik ilişkileri kullanılarak etkili ve kazançlı pazarlama gerçekleştirilebilir. Açıklayıcı bir örnek vermek gerekirse, marketten ekmek ve peynir alan bireylerin %80’i aynı zamanda meyve suyu da almıştır. Bu tür birliktelik örüntüsünün belirlenmesi için, örüntü içinde yer alan ürünlerin birden çok satın almada birlikte görülmesi gerekmektedir. Bu şekilde yapılacak bir çıkarım ile pazarlama politikaları, reyon tasarımı belirlenmesi gibi kar artırıcı sonuçlar elde edilebilir. Büyük veri tabanlarına uygulanan, birliktelik sorgusu için kullanılan algoritmaların hızlı olması gerekmektedir. Milyonlarca satırdan oluşan veritabanından anlamlı ve işlevsel bir zaman diliminde sonuca ulaşabilmek ancak çalışmanın etkili olmasını sağlayacaktır. En yaygın kullanılan birliktelik kuralı algoritması, apriori algoritmasıdır (Özçakır, 2007). Regresyon Regresyon sınıflandırma tekniği gibi tahmin edici bir tekniktir. Sınıflandırma tekniğinden farklı olarak geçmiş verilere karşılık gelen sınıfları kullanmak yerine sürekli değişen verilerin kullanıldığı tekniktir. Bir ya da daha çok verinin farklı verilerin tipinde tahmin edilmesini sağlayan ilişkileri bulmayı amaçlamaktadır. Regresyon tekniğini farklı dokümanlarda karşılaşabileceğimiz kredi skoru hesaplayan bir örnek ile inceleyebiliriz. Evi olan, evli, 5 yıldır aynı iş yerinde çalışan ve önceki kredilerinin taksitini zamanında ödeyen bir erkek müşterinin kredi skoru 100 üzerinden 80’dir. Örnekte ulaşılan sonuç bir regresyon ilişkisidir. Başka bir örnekte regresyon modeli ile geliri ve mesleği bilinen bir müşterinin alışveriş yaparken yapabilecekleri harcamaları tahmin etmek için kurulabilir. 35 Doğrusal regresyon, girdi ile sonuç verisi arasında var olan doğrusal ilişkiyi kabul eder. Her tahmin için kesin parametreler türetir ve bu parametreler bağımlı değişkenin her bir tahmin için etki düzeyini belirler (Han ve Kamber, 2006). 3.6. Weka Programının Kullanımı Weka çalıştırıldığında Resim 3.1.’de görüldüğü gibi, application sekmesinden çalışma yöntemleri seçilebilmektedir. Bu yöntemler grafik ortamda adım adım çalışma imkânı veren Explorer, birden çok veri kümesi ve algoritma ile çalışabilme imkânı veren Experimenter, komut modunda çalışmayı sağlayan Simple CLI, sürükle bırak tekniği ile çalışmayı sağlayan Knowledge Flow yöntemlerinden oluşur. Resim 3.1.Weka applications menüsü Temel grafiksel kullanıcı ara yüzü olan Explorer seçeneği işaretlendiğinde, Resim 3.2.’de görülen sekme karşımıza gelecektir. Bu sekme önişlem(preprocess), sınıflama (classify), kümeleme (cluster),ilişkilendirme (associate), öznitelik seçimi (selectattributes) ve görselleştirme (visualize) bölümlerinden oluşur. Ekranın alt kısmında bulunan “Status” bölümü gerçekleştirilmiş işlemler hakkında bilgi sağlamaktadır. “Preprocess” sekmesi çalışılacak verinin seçilmesi, veri hazırlama işlemleri, kullanılacak değişkenlerin belirlenmesi ve temel seviyede istatistikî bilgilerin gösterilmesi için kullanılır. Öncelikle, verilerin yüklenmesini için “Open file”, “OpenURL”, “Open DB” ve “Generate” seçenekleri ile üzerinde çalışılacak veri seçilir. Veri hazırlama için “Filter” bölümünden “Choose” 36 komutu aracılığı ile veri üzerinde gerçekleştirilecek veri hazırlama işlemi seçilir. “Apply” komutu verilerek filtrenin uygulanması sağlanır. Resim 3.2. Ön işlem sekmesi “Classify” sekmesinde sınıflandırıcı algoritmaları işlemleri gerçekleştirilir. Resim 3.3.’de görülen bu ekranda “Classifier” bölümünden en yaygın kullanılan karar ağacı sınıflandırma algoritmalarından CART (SimpleCart) ve C 4.5 (J48), istatistiğe dayalı algoritmalardan Bayesyen (NaiveBayes) ve Regresyon (OneR), mesafeye dayalı algoritmalardan K en yakın komşu algoritması (IBk) gibi sınıflandırıcı algoritmalardan birisi seçilir. Bu ekranda “Test Options” bölümünden eğitim setinin tamamını (Use training set), farklı bir veri setini (Supplied test set), parçalara ayırarak(Crossvalidation) ve belli oranlarda(Percentagesplit) test amaçlı kullanılması mümkündür. Performans göstergeleri için “Classifier output” ekranında genel olarak veri setinin adı, örnek sayısı, öznitelik sayısı, doğru ve yanlış olarak sınıflandırılmış örnek sayısı, doğruluk tablosu gibi sonuçlar görülmektedir. 37 Resim 3.3. Sınıflandırma sekmesi Diğer sekmeler ise sırası ile “Cluster” kümeleme algoritmaları, “Associate” ilişkilendirme uygulamaları, “Select attributes” öznitelik seçimi, “Visualize” özniteliklerin dağılımının gösterildiği sekmelerden oluşmaktadır. 3.6.1. Performans değerlendirilmesinde kullanılan performans kriterleri Bu çalışmada, kullanılan algoritmaların performansını ölçmek için sınıflandırma doğruluk değeri, Kesinlik(Precision), Duyarlılık(Recall), F-Ölçütü, ROC Area değeri, Kappa istatistiği incelenmelidir. Sınıflandırma doğruluk değeri: Model tarafından doğru veya yanlış olarak tahmini yapılmış test kayıtlarının sayısını gösterir. Bu sayılar karmaşıklık matrisi üzerinde gösterilir. Karmaşıklık matrisinin girişlerine göre, model tarafından doğru tahmin sayısı (doğru 0. sınıf + doğru 1. sınıf) ve yanlış tahminlerin sayısı (yanlış 1. sınıf + yanlış 0. sınıf) şeklinde hesaplanmaktadır. Karmaşıklık matrisi sonuçlarına göre modelleri performansını karşılaştırmak için doğruluk değeri aşağıdaki gibi hesaplanır. Doğruluk değerinin %80’in üzerinde olması modelin veri seti ile uyumlu çalıştığını gösterir. (3.4) 38 Kesinlik(Precision): Sınıfı 1 olarak tahmin edilmiş doğru(true) pozitif örnek sayısının, sınıfı 1 olarak tahmin edilmiş bütün örnek sayısına oranı alınarak hesaplanır. (3.5) Duyarlılık(Recall): Doğru olarak sınıflandırılmış pozitif örnek sayısının toplam pozitif örnek sayısına oranı alınarak hesaplanır. (3.6) F-Ölçütü: Kesinlik ve duyarlılık ölçütleri birlikte değerlendirildiklerinde daha doğru sonuç vermektedir. F-ölçütü, kesinlik ve duyarlılık değerlerinin harmonik ortalaması alınarak hesaplanır. F-ölçütü değerinin 1’e yakın olması modelin performansının iyi olduğunu gösterir. (3.7) Roc area değeri: Roc eğrisi, duyarlılık ve özgüllük değeri kullanarak tanı koymanın problemlerini istatistik karar teorisine dayanarak yok etmek için geliştirilmiş bir yöntemdir. ROC eğrisi sınıflandırma değerlerine göre doğru pozitiflerin sayısının, yanlış pozitiflerin bir fonksiyonu olarak çizilmesiyle ortaya çıkmaktadır. Roc eğrisi altında kalan alan ise Weka’da Roc area değeri olarak gösterilen veriyi sağlamaktadır. Roc area değeri 1’e yaklaştıkça modelin performansının yüksek olduğunu gösterir. Kappa istatistiği: Değerlendiriciler arasındaki uyumun istatistiksel ölçüsüdür. Kappa istatistik değerinin 0,6 ile 0,8 arasında olması uyum olduğunu, 0,8 ile 1 arasında olması ise çok iyi bir uyumun olduğunu gösterir. Uyum olmaması durumunda Kappa istatistiği değeri sıfıra eşittir veya sıfırdan küçük olacaktır. (3.8) 39 Makine öğrenmesi modelleri yukarıda da açıklandığı gibi tahmin edici ve tanımlayıcı teknikler olarak ikiye ayrılabilir. Bu çalışmada amaçlanan kaza riskini tahmin etmektir. Bu hedef uygulamada kullanılacak tekniğin tahmin edici olmasını zorunlu kılmaktadır. Elde edilen veriler ve üzerinde çalışan sistem değerlendirildiğinde bu tekniğin sınıflandırıcı bir teknik olmasını gerektirmektedir. Çalışmanın devam eden bölümlerinde ulaşılmak istenilen sonuca uygun ve performansı en yüksek sınıflandırma yöntemini ve algoritmasını belirlemek amaçlanmaktadır. Belirlenecek algoritma kullanılarak trafik kaza riskini tahmin edecek bir uygulama hazırlanacaktır. 40 41 4. MATERYAL VE METOD Bu bölümde, çalışmada kullanılan materyal ve metotlardan bahsedilmiştir. Kullanılan materyal ve metotların seçim sebepleri, geliştirilen sistemin genel özellikleri ve verilerin kaynaklarından bahsedilmiştir. Çalışmada SBM alt kuruluşu olan TRAMER tarafından saklanan trafik kaza verilerinden yararlanılmıştır. Trafik kazaları, yasal olarak belirlenmiş bildirim yöntemi olan Kaza Tespit Tutanağı(KTT) ile kayıt altına alınmaktadır. 4.1. Uygulamanın Hazırlanması İçin Kullanılan Araçlar Veriler üzerinde öncelikle SQL ile veri önişleme gerçekleştirilmiş ve WEKA programı kullanılarak sınıflandırma algoritmaları uygulanmıştır. Sınıflandırma algoritmalarından en iyi sonucu veren C 4.5 algoritması seçilmiştir. Seçilen algoritma PHP programlama dili ile kodlanarak, problemin çözümü için Adobe Dreamweaver Programı Web yazılımı hazırlanmıştır. 4.2. Verilerinin Elde Edilmesi SBM tarafından akademik çalışmalar için veri talebi karşılanmaktadır. Çalışma için ihtiyaç duyulan verileri SBM tarafından sağlanması için “SBM akademik veri talep formu” doldurularak kuruma ulaştırılmıştır. SBM tarafından 5000 adet çarpışmalı trafik kazasına ait veri gönderilmiştir. Bu verilerin niteliklerinin kurumun belli politikaları ve gizlilik sebepleri ile yeterli olmaması meteorolojik veriler ile desteklenmesini gerektirmiştir. Trafik kazasının gerçekleştiği zaman dilimi ve kaza yerine göre meteorolojik kayıtlardan alınan veriler var olan veri seti ile birleştirilmiştir. SBM veri ambarından veriler Excel formatında gönderilmiştir. Veri seti, KTT üzerinde kuruma sunulmuş verilerden 5000 adet trafik kazası verisi içermektedir. MGM’nin genel kullanıma açık veri ambarından alınan veriler meteorolojik bilgiler için kullanılmıştır. Kaza ve meteorolojik bilgiler iki ayrı veri tabanı tablosuna aktarılarak veri önişleme için hazırlanmıştır. 42 Kaza tablosu yapısı Bu tablo KTT üzerinden alınan veriler ile oluşturulmuştur, tabloda var olan kayıtların tamamı kaza olduğunu gösteren sınıfa aittir. Bu noktada sınıflandırma yöntemlerinin uygulanması için iki sınıf olması gerekmektedir. Kaza olmama durumunun kayıtları belirlenecek kontrol zaman dilimine göre sınırsız olabilir. Bu aşamada her kaza kaydına karşılık bir adet kaza olmadığı varsayılarak veri ambarına satır eklenerek kaza olmadığını gösteren sınıfın verileri üretilmiştir. Tabloda bulunan verilerin yapısı Çizelge 4.1.’de görülmektedir. Çizelge 4.1. KTT tablosu yapısı Sütun adı Açıklama Id Kayıtların sıra numarasını saklayan alandır. Arac1 KTT üzerinde kazaya karışan ilk araç verisi bu alandadır. Bu veri otomobilotobüs-motosiklet vb. araç tipini gösterir. Arac2 KTT üzerinde kazaya karışan ikinci araç verisi bu alandadır. Bu veri otomobilotobüs-motosiklet vb. araç tipini gösterir. Tarih Kazanın gerçekleştiği zaman bilgisini gösterir. Il_kodu Kazanın gerçekleştiği il plaka kodunu gösterir. Ilce_kodu Kazanın gerçekleştiği ilçe kodunu gösterir. Arac_sayi Kazaya karışan araç sayısını gösterir. 43 Meteoroloji tablosu yapısı Meteoroloji kayıtlarından oluşturulan tablodur. Tablo zaman, il, hava durumu gibi bilgileri gösterir. Tablonun yapısı Çizelge 4.2. üzerinde görülmektedir. Çizelge 4.2. Meteorolojik verilerin yapısı Sütun adı Açıklama Id Kayıtların sıra numarasını saklayan alandır. Tarih Meteorolojik bilgilerin zaman bilgisini gösterir. Il_kodu Meteorolojik bilgilerin il plaka kodunu gösterir. Sicaklik Önceki sütunlarda belirtilen zaman ve yer için sıcaklık bilgisini gösterir. -17 ile +37 santigrat derece arasında değerler almıştır. Ruzgar Rüzgârın hızını km cinsinden gösterir. 0-30 km arası değerler bulunmaktadır. Ortalama değeri yaklaşık 4 km’dir. Gorus Görüş mesafesini m cinsinden gösterir. 0-30 000 m arası değerler bulunmaktadır. Ortalama değeri yaklaşık 13 500 km’dir. Nem Havadaki nem oranını gösterir. 10-100 arası değerler bulunmaktadır. Ortalama değeri yaklaşık 75’dir. Yagis Yağış miktarını gösterir. 0-32 kg/m2 arası değerler almaktadır. 4.3. Uygulamanın Genel Özellikleri Php programlama dili ile hazırlanan uygulama, günümüzde kullanılan bir çok cihaz ve yazılım tarafından işlenebilen html ve jscript kodları ile istemciye sunulmaktadır. Hazırlanan uygulama da HTML 5 ile birlikte gelen konum bilgilendirme sağlayan Geolocation(Coğrafik yer) eklentisi ile konum belirleyerek, bu konum için Meteoroloji Genel Müdürlüğünden alınan anlık meteorolojik veriler ile kaza riski hesaplaması gerçekleştirmektedir. 44 Bu çalışmada, ülkemizde gerçekleşen trafik kazaları verileri ile öğrenen bir sistem ile trafik kaza riski hesaplanmıştır. Çalışma ile istenilen sonuçlara ulaşmamızı sağlayacak en uygun algoritma belirlenerek, tahminde bulunabilen uygulama hazırlanmıştır. 45 5. KAZA TAHMİN SİSTEMİ VE TASARIMI Bu bölümde, geliştirilen uygulama ile kaza riski tahmini yapılırken kullanılan algortimanın uygulama aşamalarından ve hazırlanan uygulamanın kullanımından bahsedilmiştir. 5.1. Veri Önişleme Veri birleştirme Kaza kayıtlarının bulunduğu tablo ile meteoroloji verilerinin bulunduğu iki tablo veri ön işleme çalışmalarının yapılabilmesi için birleştirilmelidir. Bu aşamada kaza kayıtlarının bulunduğu tabloya yeni sütunlar eklenerek meteoroloji tablosundaki verilerin bu sütunlara aktarılması sağlanmıştır. Kaza tablosuna sicaklik, ruzgar, gorus, nem, yagis sütunları eklenmesini sağlayan SQL kodları; ALTER TABLE kaza ADD sicaklik FLOAT NULL , ADD ruzgar INT NULL , ADD gorus INT NULL , ADD nem INT NULL , ADD yagis FLOAT NULL ; Meteoroloji tablosundan bulunan sıcaklık, rüzgâr hızı, görüş mesafesi, nem ve yağış verileri il ve zaman bilgilerine göre kaza tablosuna aktarılarak veri seti hazırlanmıştır. Veri temizleme Veri temizliği, makine öğrenmesi sürecinin en önemli aşamalarındandır. Kaza sınıfı bilgilerini saklayan KTT tablosu incelendiğinde her kaza kaydında iki araç bulunduğu görülmektedir. Kazaya karışan araçlar için tekil değerlendirme yapıldığında her araç için bir veri satırı oluşturmak gerekliliği ortaya çıkmaktadır. Bu aşamada kaza tablosunda bulunan 2. araç bilgisi 1. araç bilgisi satırına aktarılarak veri setinde bulunan kayıt sayısı 2 katına çıkarılmıştır. 46 INSERT INTO kaza (arac1,tarih,il_kodu, ilce_kodu, arac_sayi, sicaklik,ruzgar, gorus, nem, yagis) SELECT arac2,tarih, il_kodu, ilce_kodu, arac_sayi, sicaklik, ruzgar, gorus, nem, yagis FROM kaza arac2 sütununda bulunan veriler yeni satırlara aktarıldığından bu sütun veri setinden kaldırılmıştır. ALTER TABLE kaza DROP COLUMN arac2; Veri setimiz incelendiğinde bütün KTT kayıtlarında var olan araç sayısının 2 olduğu için etkili bir sütun olmadığı görülmektedir. Ayrıca ilce_kodu alanını uygulama sürecinde kullanılmayacaktır. Bu iki alan veri setinden çıkartılmıştır. ALTER TABLE kaza DROP COLUMN ilce_kodu, DROP COLUMN arac_sayi; Veri dönüştürme Veri birleştirme, verilerin daha soyut seviyede gösterilmesidir. Makine öğrenmesi için kullanışsız ve düzensiz olan verileri toplanarak kullanışlı ve düzenli hale getirilir. Bu aşamada makine öğrenmesi algoritmaları için etkili olmayan, dağılımı geniş veya çok çeşitli verilerin belli standartlarda sayısal değerlere dönüştürülmesi sağlanmıştır. Arac1 alanında bulunan kazaya karışan araçların niteliğine bakıldığında 20 farklı veri çeşidi görülmektedir. Bu araçların yarısından çoğunun otomobil olması ve veri çeşidini azaltmak için veri dönüşümü uygulanmıştır. Bu sütun otomobil olanlar için true, olmayanlar için false olarak güncellenmiştir. Arac1 sütununun etiketi otomobil olarak güncellenmiştir. UPDATE kaza SET arac1 = true where arac1="otomobil" UPDATE kaza SET arac1 = false where arac1<>"otomobil" ALTER TABLE kaza CHANGE arac1otomobil BOOLEAN NULL; 47 Tarih alanın kazanın gerçekleştiği tarih ve saati göstermektedir. Bu sütundan haftanın günü ve günün saati olarak iki alan türetilerek kullanışlı bir veri dönüştürme yapılmıştır. ALTER TABLE kaza ADD gun INT NULL , ADD saat INT NULL ; UPDATE kaza SET gun=weekday(tarih) ,saat= hour(tarih); Günün saatini gösteren sütununu günün dönümlerine göre gruplandırarak “0-5” -> 0, “611” ->1, “12-17”->2, “18-23”->3 aralıklarında düzenlenmiştir. UPDATE kaza SET saat=0 WHERE saat >=0 and saat <6; UPDATE kaza SET saat=1 WHERE saat >=6 and saat <12; UPDATE kaza SET saat=2 WHERE saat >=12 and saat <18; UPDATE kaza SET saat=3 WHERE saat >=18; 81 ilde gerçekleşen kazalardan oluşan veri setimizde il_kodu alanı 81 farklı değer almaktadır. Trafik kazalarının gerçekleşme oranı büyükşehirlerde daha fazladır. Bu bilgi ışığında il_kodu alanında var olan veriler düzenlenerek yeni oluşturulan bsehir alanına aktarılmıştır. Kıstas nüfusu iki milyondan büyük şehirler için true, diğerleri için false olacaktır. Tarih sütunu bu düzenlemeden sonra uygulamada kullanılmayacaktır. ALTER TABLE kaza ADD bsehir BOOLEAN NULL ; UPDATE kaza SET bsehir=1 WHERE il_kodu = 01 or il_kodu=06 or il_kodu=07 or il_kodu=16 or il_kodu=34 or il_kodu =35 or il_kodu = 42; UPDATE kaza SET bsehir=0 WHERE bsehir<> 1; ALTER TABLE kaza DROP tarih; Sıcaklık sütununda -17 ile +37 arasında çeşitli değerler bulunmaktadır. Trafikte yaşanan problemlerin en önemlilerinden birisi buzlanmadır. Buzlanma en çok 0 santigrat derece ve 48 altında gerçekleşir. Bu bilgileri dikkate alınarak anlamsal farklılıkları olan aralıklar belirlenerek sıcaklık sütunu yeniden düzenlenmelidir. Aralıklar “<=0”-> 0, “1-10” -> 1, “1030” -> 2 ve “>31” ->3 şeklinde belirlenerek gerekli dönüşümler sağlanmıştır. UPDATE kaza SET sicaklik = 0 WHERE sicaklik<= 0; UPDATE kaza SET sicaklik = 1 WHERE sicaklik> 0 and sicaklik<10; UPDATE kaza SET sicaklik = 2 WHERE sicaklik>= 10 and sicaklik<30; UPDATE kaza SET sicaklik = 3 WHERE sicaklik>= 30; Rüzgâr hızı sütununda 0 ile 29 km arasında değerler bulunmaktadır. Bu sütun için belirlenen aralıklar “>5” -> 0, “5-15” -> 1, “>15” -> 2 olarak dönüşüm yapılmıştır. UPDATE kaza SET ruzgar = 0 WHERE ruzgar< 5; UPDATE kaza SET ruzgar = 1 WHERE ruzgar>= 5 and ruzgar<=15; UPDATE kaza SET ruzgar = 2 WHERE ruzgar> 15; Görüş mesafesi alanında 0 ile 30000 m arasında değerler bulunmaktadır. Bu sütun için belirlenen görüş mesafesi aralıkları “>=500” -> 0, “501-2000” -> 1, “>2000” -> 2 olarak dönüşüm yapılmıştır. UPDATE kaza SET gorus = 0 WHERE gorus<=500; UPDATE kaza SET gorus = 1 WHERE gorus>500andgorus<=2000; UPDATE kaza SET gorus = 2 WHERE gorus> 2000; Nem sütununda 10 ile 99 arasında değerler bulunmaktadır. %45ve altı kuru %46 ve %75 arası normal ve %75 üzeri nem oranı yüksek nemli olarak kabul edilmektedir. Bu oranlar dikkate alınarak 3 seviyede dönüştürme yapılmıştır. 49 UPDATE kaza SET nem = 0 WHERE nem <=45; UPDATE kaza SET nem = 1 WHERE nem >45and nem<=75; UPDATE kaza SET nem = 2 WHERE nem >75; Yağış sütununda 0 ile 32 kg/m2 arasında yağış değerleri bulunmaktadır. 1 kg/m2 altındaki değerler yağışın olmadığını veya etkisiz olduğunu göstermektedir. Bu sütun için 1 kg/m2 altı yağış yok -> 0, 1 ve üzeri değerler yağış var ->1 şeklinde dönüştürülecektir. UPDATE kaza SET yagis = 0 WHERE yagis<1; UPDATE kaza SET yagis = 1 WHERE yagis>=1; Sınıflandırma algoritmalarının uygulanabilmesi için 2 adet sınıf olması gerekir. Var olan veri setimizde sadece kaza var verileri bulunmaktadır. KTT kayıtlarından oluşturulan kaza veri setine Boolean tipinde kaza sütunu eklenerek KTT kayıtlarından gelen bu verilerin kaza sütunu 1 olarak düzenlenmiştir. Bu sınıfa karşılık kaza yok sınıfının oluşturulması için rastgele 10000 adet kayıt oluşturulacaktır. Bu veriler herhangi bir anı ve yeri tarif edecektir. Bu sebeple veriler tesadüfî örnekleme yöntemi ile üretilmiştir. DECLARE x INT; SET x = 0; REPEAT INSERT INTO kaza (otomobil, gun, saat, bsehir, sicaklik, ruzgar, gorus, nem, yagis, kaza) VALUES (CONVERT(RAND()*1,SIGNED),CONVERT(RAND()*6,SIGNED), CONVERT(RAND()*8,SIGNED),CONVERT(RAND()*1,SIGNED), CONVERT(RAND()*3,SIGNED),CONVERT(RAND()*2,SIGNED), CONVERT(RAND()*2,SIGNED),CONVERT(RAND()*2,SIGNED), CONVERT(RAND()*1,SIGNED),0); SET x = x + 1; 50 UNTIL x > 10000 END REPEAT; Veri hazırlanması süreci tamamlanan veri seti ile öncelikle hangi sınıflandırma algoritmasının daha iyi performans göstereceği bulunacaktır. Bu aşamada yaygın kullanılan veri madenciliği araçlarından olan Weka programı kullanılacaktır. 5.2. Weka ile En Uygun Modelin Belirlenmesi Weka (Waikato Environment for Knowledge Analysis), Waikato Üniversitesi tarafından java programlama diliyle geliştirilmiştir. Weka ücretsiz, açık kaynak kodlu, sınıflandırma, regresyon, bağıntı kuralları, yapay sinir ağları algoritmaları ve önişleme metotları barındıran bir araçtır. Weka, ham verinin işlenmesi, öğrenme metotlarının veri üzerinde performansının değerlendirilmesi, ham verinin ve ham veriden öğrenilerek çıkarılan modelin görsel olarak gösterilmesi gibi veri madenciliğinin tüm basamaklarını uygulama imkânı sunmaktadır. Veri seti, arff, csv, c45, libsvm, svmlight, Xarff gibi formatlarda kullanılabilirken web ve direkt veritabanı üzerinden de çalışabilir. Weka uygulamasının desteklediği işlemler ve algoritmalar Şekil 5.1.’de detaylı olarak görülmektedir. 51 Şekil 5.1. Weka'nın hiyerarşik yapısı (Tapkan ve diğerleri, 2011) 5.2.1. Weka ile algoritmaların uygulanması ve değerlendirilmesi Weka uygulamasını ile en yaygın kullanılan algoritmalardan karar ağacı sınıflandırması yöntemi için CART (SimpleCart), ve C 4.5 (J48), istatistiğe dayalı yöntem için Bayesyen (NaiveBayes) ve Regresyon (OneR), mesafeye dayalı yöntem için K en yakın komşu (IBk) veri setimize uygulanmıştır. Veri setimizin öznitelikleri ve aldığı değerler Şekil 5.2.’de görülmektedir. 52 Şekil 5.2. Veri seti CART(SimpleCart) algoritması sonuçları Test için kullanılan yöntem: Çapraz doğrulama, kıvrım sayısı 10 Yaprak düğümlerinin sayısı: 584 Ağacın büyüklüğü: 1167 Modelin oluşturulması için geçen süre: 16.89 saniye Çizelge 5.1. Cart algoritması katmanlı çapraz doğrulama tablosu Doğru sınıflandırılmış veriler: 17504 87.52 % Yanlış sınıflandırılmış veriler: 2496 12.48 % Kappa istatistik sonuçları 0.7504 Ortalama mutlak hata 0.1758 Ortalama hata karekökü 0.2948 Bağıl mutlak hata 35.1532 % Bağıl hata karekökü 58.9622 % Örneklerin sayısı 20000 53 Çizelge 5.2. Cart algoritması sınıfa göre ayrıntılı doğruluk tablosu Ağırlıklı Ortalama Doğru Yanlış Kesinlik Duyarlılık F-Ölçütü Pozitif Pozitif Oranı Oranı 0.884 0.134 0.868 0.884 0.876 0.941 0 0.866 0.116 0.882 0.866 0.874 0.941 1 0.875 0.125 0.875 0.875 0.875 0.941 b Sınıf 8843 1157 a=0 1339 8661 b=1 Sınıf Alanı Çizelge 5.3. Cart algoritması karmaşıklık matrisi a ROC C 4.5 (J48) algoritması sonuçları Test için kullanılan yöntem: Çapraz doğrulama, kıvrım sayısı 10 Yaprak düğümlerinin sayısı: 92 Ağacın büyüklüğü: 125 Modelin oluşturulması için geçen süre: 0.24 saniye Çizelge 5.4. C 4.5 algoritması katmanlı çapraz doğrulama tablosu Doğru sınıflandırılmış veriler: 18110 90.55 % Yanlış sınıflandırılmış veriler: 1890 9.45 % Kappa istatistik sonuçları 0.811 Ortalama mutlak hata 0.1787 Ortalama hata karekökü 0.282 Bağıl mutlak hata 35.7407 % Bağıl hata karekökü 56.399 % Örneklerin sayısı 20000 54 Çizelge 5.5. C 4.5 algoritması sınıfa göre ayrıntılı doğruluk tablosu Ağırlıklı Ortalama Doğru Yanlış Kesinlik Duyarlılık F-Ölçütü Pozitif Pozitif Oranı Oranı 0.891 0.08 0.917 0.891 0.904 0.948 0 0.92 0.109 0.894 0.92 0.907 0.948 1 0.906 0.095 0.906 0.906 0.905 0.948 b Sınıf 8913 1087 a=0 803 9197 b=1 Sınıf Alanı Çizelge 5.6. C 4.5 algoritması karmaşıklık matrisi a ROC Bayesyen (NaiveBayes) algoritması sonuçları Test için kullanılan yöntem: Çapraz doğrulama, kıvrım sayısı 10 Modelin oluşturulması için geçen süre: 0.16 saniye Çizelge 5.7. NaiveBayes algoritması katmanlı çapraz doğrulama tablosu Doğru sınıflandırılmış veriler: 1719885.99 % Yanlış sınıflandırılmış veriler: 280214.01 % Kappa istatistik sonuçları 0.7198 Ortalama mutlak hata 0.1634 Ortalama hata karekökü 0.3042 Bağıl mutlak hata 32.6863 % Bağıl hata karekökü 60.842 % Örneklerin sayısı 20000 55 Çizelge 5.8. NaiveBayes algoritması sınıfa göre ayrıntılı doğruluk tablosu Ağırlıklı Ortalama Doğru Pozitif Oranı 0.884 Yanlış Pozitif Oranı 0.164 Kesinlik Duyarlılık F-Ölçütü ROC Alanı Sınıf 0.844 0.884 0.863 0.952 0 0.836 0.116 0.878 0.836 0.856 0.952 1 0.86 0.14 0.861 0.86 0.86 0.952 Çizelge 5.9. NaiveBayes algoritması karmaşıklık matrisi a b Sınıf 8837 1163 a=0 1639 8361 b=1 Regresyon (OneR) algoritması sonuçları Test için kullanılan yöntem: Çapraz doğrulama, kıvrım sayısı 10 Modelin oluşturulması için geçen süre: 0.05 saniye Çizelge 5.10. Regresyon algoritması katmanlı çapraz doğrulama tablosu Doğru sınıflandırılmış veriler: 16164 80.82 % Yanlış sınıflandırılmış veriler: 3836 19.18 % Kappa istatistik sonuçları 0.6164 Ortalama mutlak hata 0.1918 Ortalama hata karekökü 0.4379 Bağıl mutlak hata 38.36 % Bağıl hata karekökü 87.59 % Örneklerin sayısı 20000 Çizelge 5.11. Regresyon algoritması sınıfa göre ayrıntılı doğruluk tablosu Ağırlıklı Ortalama Doğru Pozitif Oranı 0.662 Yanlış Pozitif Oranı 0.045 Kesinlik Duyarlılık F-Ölçütü ROC Alanı Sınıf 0.936 0.662 0.775 0.808 0 0.955 0.338 0.738 0.955 0.833 0.808 1 0.808 0.192 0.837 0.808 0.804 0.808 56 Çizelge 5.12. Regresyon algoritması karmaşıklık matrisi a b Sınıf 6618 3382 a=0 454 9546 b=1 K en yakın komşu (IBk) algoritması sonuçları K=1 Test için kullanılan yöntem: Çapraz doğrulama, kıvrım sayısı 10 Modelin oluşturulması için geçen süre: 0.02 saniye Çizelge 5.13. K en yakın komşu algoritması katmanlı çapraz doğrulama tablosu Doğru sınıflandırılmış veriler: 17482 87.41 % Yanlış sınıflandırılmış veriler: 2518 12.59 % Kappa istatistik sonuçları 0.7482 Ortalama mutlak hata 0.1264 Ortalama hata karekökü 0.2838 Bağıl mutlak hata 25.2734 % Bağıl hata karekökü 56.7592 % Örneklerin sayısı 20000 Çizelge 5.14. K en yakın komşu algoritması sınıfa göre ayrıntılı doğruluk tablosu Ağırlıklı Ortalama Doğru Pozitif Oranı 0.901 Yanlış Pozitif Oranı 0.153 Kesinlik Duyarlılık F-Ölçütü ROC Alanı Sınıf 0.855 0.901 0.877 0.958 0 0.847 0.099 0.895 0.847 0.871 0.958 1 0.874 0.126 0.875 0.874 0.874 0.958 57 Çizelge 5.15. K en yakın komşu algoritması karmaşıklık matrisi a b Sınıf 9010 990 a=0 1528 8472 b=1 Algoritmaların sonuçları incelendiğinde bütün algoritmaların verdiği sonuçların yeterli düzeyde olduğu görülmektedir. Buna rağmen diğer algoritmalara göre en iyi sonucu C 4.5(J48) algoritması vermiştir. Kullanılan eğitim veri setinin seçilen modeller ile uyumlu olduğu görülmektedir. Weka tarafından J48 algoritması sonucunda görsel bir karar ağacı oluşturmaktadır. Şekil 5.3.ve Şekil 5.4.’de oluşturulan karar ağacı görülmektedir, kaza tahmin sistemi uygulaması için bu karar ağacı kullanılacaktır. 58 Şekil 5.3. C 4.5 karar ağacı 59 Şekil 5.3. (devam) C 4.5 karar ağacı 60 Şekil 5.3. (devam) C 4.5 karar ağacı 61 Şekil 5.3. (devam) C 4.5 karar ağacı 62 5.3. Kaza Tahmin Sistemi Bu bölümde tez çalışması sonucunda ortaya çıkan dinamik kaza riski tahmin sistemi tasarımı, programlama ve kullanım aşamaları anlatılacaktır. 5.3.1. Sistemin teknik yapısı Uygulamanın kullanım amacı göz önüne alındığında, bilgisayar, tablet, akıllı cep telefonu gibi cihazlarda çevrimiçi hizmet vermesi beklenir. Günümüzde web hizmetlerine erişimin kablo ve mekân gibi bağımlılıklardan kurtulmuş olması sebebiyle kullanımı katlanarak çoğalmaktadır. Bu öngörüler değerlendirilerek uygulamanın web ortamında çalışmasının daha avantajlı olacağına karar verilmiştir. Hazırlanan uygulama PHP dili ile programlanmıştır. Görsel tasarım ve kodlama Adobe Dreamweaver web tasarım ve programlama platformunda gerçekleştirilmiştir. 5.3.2. Sistemin kullanımı Yazılımın kullanımı oldukça basit tasarlanmıştır. Kullanıcı sisteme ilk ulaşımında Resim 5.1’de görülen ara yüzü kullanarak araç tipini seçmektedir. Daha sonra karşısına dinamik olarak yenilenen ve meteorolojik veriler, tarih gibi kaza riski tahmininde kullanılan veriler ve kaza riskini görebileceği Şekil 5.2’da görülen ara yüz gelmektedir. 63 Resim 5.1. Araç tipi seçimi ara yüzü Resim 5.2. Uygulama ara yüzü 64 5.3.3. Sistemin özellikleri Sunucu tarafında php programlama dili ile hazırlanan uygulama, kullanıcı tarafında html ve jscript kodları ile desteklenmiştir. Özellikle istemci kısmında salt html ve jscript komutlarının kullanılmış olması internet bağlantısı olan cep telefonu, navigasyon cihazı, multimedia cihazları, tablet bilgisayar gibi birçok cihazda uygulamanın çalışmasını sağlayacaktır. Hazırlanan uygulama da Geolocation eklentisi kullanılarak otomatik konum bilgisi elde edilmektedir. Elde edilen konum bilgisine göre Meteoroloji Genel Müdürlüğünden alınan meteorolojik veriler kaza riski hesaplamasında kullanılmaktadır. Meteorolojik veriler, konum verisi ve araç verileri kullanılarak sunucu tarafında php komutları yardımı ile kaza riski hesaplanmaktadır. 65 6. SONUÇ VE ÖNERİLER 6.1. Sonuçlar Bu bölümde kaza riski tahmini uygulaması ile ilgili sonuçlar yer almaktadır. Bu çalışma sonucunda görüldüğü gibi karayolu ulaşımında en önemli sorunlardan biri trafik kazalarıdır. Trafik kazaları, araçların çoğalması ve insanlarının güvenli trafik konusunda bilinç düzeylerinin yetersiz olması sebebi ile hızla artmaktadır. Trafik kazalarının önemli bir kısmı sürücü hatalarından kaynaklanmaktadır. Güvenli trafik düzeninin sağlanabilmesi için sürücülerin bilinç düzeylerinin artırılması ve kaza riski konusunda bilgilendirilmesi gerekmektedir. Bu çalışma da KTT üzerinden alınan veriler ile kaza riski tahmini yapılmaktadır. Tahmin oranı oldukça yüksek olan 9 ölçüt, 5000 adet gerçekleşmiş trafik kaza verisi kullanılarak, meteoroloji veri tabanından filtrelenen veriler ile birleştirilmiş ve veri seti ortaya çıkmıştır. Veri seti kullanılarak yüksek oranda kaza riski tahmini yapan bir sistem geliştirilmiştir. Literatürdeki bilgilere göre, trafik kazaları, cinsiyet, yaş aralığı gibi faktörler ile ilgilidir. Trafik kazalarının önemli etmenlerinden olan aşırı hız, alkollü araç kullanımı, tehlikeli ve dikkatsiz araç kullanma gibi faktörler daha çok genç erkekler tarafından gerçekleştirildiği tespit edilmiştir. Çalışma kapsamında geliştirilen kaza riski tahmin sistemi ile sürücülerin ve denetleme birimlerinin dinamik olarak bilgilendirilmesi sağlanmıştır. Kaza riskinin arttığı durumların bilinmesi ve uyarı sistemlerinin devreye girmesi kazaların azalmasını sağlamaktadır. Bu çalışma, kaza riskini tahmin etmektedir. Veri seti ve uygulamanın hedefleri değerlendirilerek sınıflandırıcı teknikler kullanılmıştır. Elde edilen verilerden kaza riski tahmin sistemi algoritmalarından geliştirilirken 5 adet CART(SimpleCart), algoritma C kullanılmıştır. 4.5(J48), Sınıflandırma Bayesyen(NaiveBayes), Regresyon(OnerR), K en yakın komşu (IBk) uygulanarak, en iyi sonucu veren C 4.5 algoritması kullanılmıştır. 66 Çalışma sonucunda, model tarafından doğru olarak tahmini yapılmış test kayıtlarını veren doğruluk değeri için en iyi sonucu %90.55 ile C 4.5 algoritması vermiştir. Kaza riski doğru pozitif olarak tahmin edilen örnek sayısının, tüm pozitif tahminlere oranını veren kesinlik ve duyarlılık değerleri en yüksek olan C 4.5 algoritmasında 0.906 sonucu elde edilmiştir. Duyarlılık ve kesinlik ölçütleri birlikte değerlendirildiğinde daha anlamlı sonuçlar veren fölçütü sonuçları incelendiğinde 0.905 ile en iyi sonucu C 4.5 algoritması vermiştir. Roc eğrisi olarak da bilinen Roc area değeri için en uygun sonuç Naive Bayes algoritması ile elde edilmiştir. Değerlendiriciler arasındaki karşılaştırmalı uyumun güvenirliğini gösteren Kappa değerleri arasında en güçlü sonuç 0.811 ile C 4.5 algoritmasından elde edilmiştir. Sonuçlar etraflı olarak incelendiğinde en iyi sonucu C 4.5 algoritması vermiştir. C 4.5 algoritması uygulanarak oluşturulan karar ağacı kaza riski tahmin sisteminin temelini oluşturmaktadır. 6.2. Öneriler Web üzerinde çalışan ve dinamik olarak tasarlanan sistem trafik kazası tahmini ile ilgili çalışmalara ışık tutacaktır. Trafikte gerçekleşen vakaların kayıt altına alınması esnasında ölçek çeşitliğinin artırılması ve daha geniş çaplı veri setlerinin hazırlanması daha iyi öğrenen ve daha iyi tahminde bulunan sistemler geliştirilmesini sağlayacaktır. Gelecekte SBM gibi kurumların veri tabanları ile etkileşimli bir yapının gerçekleştirilmesi yine sistemlerin başarım oranlarını önemli ölçüde artıracaktır. Çalışma sonucunda ortaya çıkan kaza riski tahmin sisteminin kullanımı ve veri setinin büyümesi gibi faktörler, sonuçların daha iyi görülmesini ve geliştirilmesini sağlayacaktır. Yapılan bu çalışma ile trafik sorunlarının en önemli etmeni olan trafik kazalarının önlenmesine katkı sağlanacağı düşünülmektedir. 67 KAYNAKLAR Akan, H., Demirok, U. and Kilic, N. (2012, April). The effect of feature reduction techniques on diagnosis of diabetes. In Signal Processing and Communications Applications Conference (SIU), 2012 20th (pp. 1-4). IEEE. Akgöbek, Ö. ve Çakır, F. (2009). Veri Madenciliğinde Bir Uzman Sistem Tasarımı. Akademik Bilişim, 9, 801-806. Alpaydın, E. (2004). Introduction to machine learning (Adaptive Computation and Machine Learning). Cambridge: The MIT press, 11-26. Aşırdizer, M., Uluçay, T., Hekimoğlu, Y., Yılmaz, İ., ve Yavuz, M. S. (2014). Türkiye'de trafik kazaları, nüfus yoğunluğu ve motorlu taşıt sayısı arasındaki ilişki. Adli Tıp Bülteni, 19(1). Bayam, E., Liebowitz J. and Agresti, W. (2005). Older drivers and accidents: A meta analysis and data mining application on traffic accident data. Expert Systems with Applications , 598-62. Baykasoğlu, A. (2005, Şubat). Veri madenciliği ve çimento sektöründe bir uygulama. Akademik Bilişim Konferansında sunuldu, Gaziantep Üniversitesi, Gaziantep. Beshah, T. and Hill, S. (2010, March). Mining road traffic accident data to ımprove safety: role of road-related factors on accident severity in ethiopia. Paper presented at the AAAI Spring Symposium: Artificial Intelligence for Development. Chapelle, O. and Schölkopf, B. (2006). Semi-supervised learning. Cambridge: MIT press, 14. Chen, T., Zhang, N. L., Liu, T., Poon, K. M. and Wang, Y. (2012). Model-based multidimensional clustering of categorical data. Artificial Intelligence, 176(1), 2246-2269. Çelik, M.A. (2010), Akıllı trafik sistemleri’nin trafik ve yol güvenliğine etkisinin araştırılması, Yüksek Lisans Tezi, Gazi Üniversitesi Fen Bilimleri Enstitüsü , Ankara. Çiçek, B.T. (2014). Erzurum şehir içi trafik kazalarının analizi ve çözüm önerileri, Yüksek Lisans Tezi, Gazi Üniversitesi Fen Bilimleri Enstitüsü , Ankara. Çinicioğlu, E. N., Atalay, M., ve Yorulmaz, H. (2013). Trafik kazaları analizi için bayes ağları modeli. Internatıonal Journal Of Informatics Technologıes, 6(2), 41. Dayhoff, J. E. (2001). Artificial neural networks. Cancer , 91(S8), 1615-1635. Durak, B. (2011). A classification algorithm using mahalanobis distance clustering of data with applications on biomedical data sets, Doktora Tezi, Orta Doğu Teknik Üniversitesi, Ankara. 68 Güvenal, B., Çabuk, A., & Yavuz, M. (2005). Trafik kazaları verilerine bağlı olarak CBS destekli ulaşım planlaması: Eskişehir kenti örneği. Harita ve Kadastro Mühendisleri Odası, Mühendislik Ölçmeleri STB Komisyonu, 2. Han, J. and Kamber, M. (2006). Data Mining, Southeast Asia Edition: Concepts and Techniques. Morgan Kaufmann, 81. Hongguo, X., Huiyong, Z. and Fang, Z. (2010, August). Bayesian network-based road traffic accident causality analysis. Paper presented at the WASE International Conference on Information Engineering ICIE2010, BeiDai River, China. Ikizler, N., Aykanat, C. and Baray, M. (2002). Benefit maximizing classification using feature intervals, Teknik Rapor, Bilkent Üniversitesi, Ankara, 5-8. Karaşahin, M., ve Terzi, S. (2011). Coğrafi bilgi sistemleri ile Isparta-Antalya-Burdur karayolunun kara nokta analizi. Pamukkale University Journal Of Engineering Sciences, 9(3). Karayolları Genel Müdürlüğü. (2013). Trafik kazaları özeti. (2013). Ankara: Karayolları Genel Müdürlüğü, 1. Kartal, M., Kutlar, A., ve Beğen, A. (2011). Lojistik regresyon tekniği ile trafik kazalarını etkileyen risk faktörlerinin incelenmesi: Sivas, Kayseri, Yozgat Örneği. AİBÜ-İİBF Ekonomik ve Sosyal Araştırmalar Dergisi, 47-68. Kavzoğlu, T., ve Çölkesen, İ. (2010). Destek vektör makineleri ile uydu görüntülerinin sınıflandırılmasında kernel fonksiyonlarının etkilerinin incelenmesi. Harita Dergisi, 144(7), 73-82. Kaya, S. (2008). Türkiye’de ulaştırma sektörünün genel görünümü ve sorunları. İzmir: İzmir Ticaret Odası Ar&Ge Bülteni. Kaygısız, Ö. (2012). Kentsel arazi kullanımı trafik kazası ilişkisi: Eskişehir örneği, Doktora Tezi, Gazi Üniversitesi Fen Bilimleri Enstitüsü , Ankara. Küçüksille, E. (2009). Veri madenciliği süreci kullanılarak portföy performansının değerlendirilmesi ve imkb hisse senetleri piyasasında bir uygulama, Doktora Tezi, Süleyman Demirel Üniversitesi Sosyal Bilimler Enstitüsü , Isparta. İnternet: Machine learning group at the university of waikato. URL:http://www.cs.waikato.ac.nz/ml/weka/index.html, Son Erişim Tarihi: 10.10.2014. Mussone, L., Ferrari, A. and Oneta, M. (1999). An analysis of urban collisions using an artificial intelligence model. Accident Analysis & Prevention, 31(6), 705-718. Narli, S., Aksoy, E. and Ercire, Y. E. (2014). Investigation of prospective elementary mathematics teachers’ learning styles and relationships between them using data mining. International Journal of Educational Studies in Mathematics , 37-57. 69 Özçakır, F. C. ve Çamurcu, A. Y. (2007). Birliktelik kuralı yöntemi için bir veri madenciliği yazılımı tasarımı ve uygulaması, İstanbul Ticaret Üniversitesi Fen Bilimleri Dergisi , 21-37. Özen, E., Genç, E. ve Kaya, Z.(2013) Trafik Kazalarının Nedenlerine İlişkin Düşünceler ve Trafikte Farkındalık: Uşak İli Örneği. Optimum Journal of Economics and Management Sciences, 1-19. Özkan, Y. (2008). Veri madenciliği yöntemleri. İstanbul: Papatya Yayıncılık Eğitim, 37-50. Rajaraman, A., and Ullman, J. D. (2011). Mining of massive datasets. Cambridge University Press, 2-4. Rygielski, C., Wang, J. C., and Yen, D. C. (2002). Data mining techniques for customer relationship management. Technology in society, 24(4), 483-502. Seyrek, İ. H., ve Ata, H. A. (2010). Veri zarflama analizi ve veri madenciliği ile mevduat bankalarında etkinlik ölçümü. BDDK Bankacılık ve Finansal Piyasalar, 4(2), 67-84. Shearer, C. (2000). The CRISP-DM model: the new blueprint for data mining. Journal of data warehousing , 13-22. Sheng-Xue, Z., Jian, L., Qiao-Jun, X., and Linli, Y. (2009, April). Intersection safety evaluation method based on Bayesian network. Paper presented at the Measuring Technology and Mechatronics Automation, 2009. ICMTMA'09. International Conference on (Vol. 3, pp. 234-237). IEEE. Sönmez, A. (2000). Türkiye'de trafik kazaları ve sürücü kusurları sorunu. Polis Bilimleri Dergisi , 5-6. Tapkan, P., Özbakır, L., ve Baykasoğlu, B. (2011, 30 Eylül / 1-2 Ekim). Weka ile veri madenciliği süreci ve örnek uygulama. Endüstri Mühendisliği Yazılımları Ve Uygulamaları Kongresinde sunuldu. (S. 247-262). İzmir: Makina Mühendisleri Odası. Tüzüntürk, S. (2010). Veri madenciliği ve istatistik. Uludağ Üniversitesi İktisadi ve İdari Bilimler Fakültesi Dergisi , (29) 65-90. World Health Organization. (2004). Preventing road traffic injury: a public health perspective for Europe. Geneva: WHO, 3-6. World Health Organization (Ed.). (2009). Global status report on road safety: time for action. Geneva: WHO, 1-40. Wu, R. C., Chen, R. S., and Chian, S. S. (2006). Design of a product quality control system based on the use of data mining techniques. IIE Transactions,38(1), 39-51. Xie, Y., Lord, D., and Zhang, Y. (2007). Predicting motor vehicle collisions using Bayesian neural network models: An empirical analysis. Accident Analysis & Prevention, 39(5), 922933. 70 71 EKLER 72 EK-1. Makine öğrenmesi modelinin uygulanmasında kullanılan PHP ve HTML komutları //Şehir isminden plaka numarasını bulmak için kullanılacak dizi $sehirdizi = array("","ADANA","ADIYAMAN","AFYONKARAHİSAR", "AĞRI", "AMASYA", "ANKARA","ANTALYA","ARTVİN","AYDIN", "BALIKESİR","BİLECİK","BİNGÖL","BİTLİS","BOLU", "BURDUR","BURSA","ÇANAKKALE","ÇANKIRI","ÇORUM", "DENİZLİ","DİYARBAKIR", "EDİRNE","ELAZIĞ","ERZİNCAN", "ERZURUM","ESKİŞEHİR","GAZİANTEP","GİRESUN", "GÜMÜŞHANE","HAKKARİ","HATAY","ISPARTA","MERSİN", "İSTANBUL","İZMİR","KARS", "KASTAMONU","KAYSERİ", "KIRKLARELİ","KIRŞEHİR","KOCAELİ","KONYA","KÜTAHYA", "MALATYA","MANİSA","KAHRAMANMARAŞ","MARDİN","MUĞLA", "MUŞ","NEVŞEHİR", "NİĞDE","ORDU","RİZE","SAKARYA", "SAMSUN","SİİRT","SİNOP","SİVAS", "TEKİRDAĞ","TOKAT", "TRABZON","TUNCELİ","ŞANLIURFA","UŞAK","VAN", "YOZGAT","ZONGULDAK","AKSARAY","BAYBURT","KARAMAN", "KIRIKKALE","BATMAN", "ŞIRNAK","BARTIN","ARDAHAN","IĞDIR", "YALOVA","KARABÜK","KİLİS", "OSMANİYE","DÜZCE"); //C4.5 Karar ağacı yapısını tanımlayan dizi $c45 = array(array(0,1,2,3,4,5,6,7,"sutun"), array(2,9,17,"","","","","","gorus"), array(3,"0","","","","","","","yagis"), array(4,"0","0","","","","","","ruzgar"), array("0","0",5,"","","","","","nem"), array("0",6,"0","0","","","","","sicaklik"), array("",7,8,"0","0","0","0","0","gun"), array("0","1","1","1","","","","","saat"), array("1","0","","","","","","","bsehir"), array("0","0",10,"","","","","","nem"), array("0",11,"0","0","","","","","sicaklik"), array(12,15,"0","","","","","","ruzgar"), array("0",13,"","","","","","","bsehir"), array(14,"0","","","","","","","yagis"), array("","1","1","0","0","0","0","1","gun"), array("0","0",16,"0","","","","","saat"), array("","0","0","0","0","0","0","1","gun"), array(18,23,29,"","","","","","ruzgar"), array("0",19,21,"1","","","","","sicaklik"), array("0",20,"1","","","","","","nem"), array("0","1","1","1","","","","","saat"), array("0","1","1",22,"","","","","saat"), array("0","1","1","","","","","","nem"), array("0",24,25,"1","","","","","sicaklik"), array("0","1","1","","","","","","nem"), 73 EK-1. (Devam) Makine öğrenmesi modelinin uygulanmasında kullanılan PHP ve HTML komutları array("0","1","1",26,"","","","","saat"), array("","1",27,"0","1","1","0","0","gun"), array("1",28,"","","","","","","otomobil"), array("0","1","0","","","","","","nem"), array("0",30,"","","","","","","bsehir"), array("0",31,"0","1","","","","","sicaklik"), array("0","0",32,"","","","","","nem"), array("","0","0","1",33,"1","0","0","gun"), array("0","1","1","0","","","","","saat") ); $otomobil = $_GET["arac"]; $gun = date("N"); $saat = floor((date("G"))/6); $plaka = array_search($sehir,$sehirdizi); $bsehir = ($plaka ==1 | $plaka ==6 | $plaka == 7 | $plaka == 16 | $plaka == 34 | $plaka == 35 | $plaka == 42) ? 1 : 0; if($sicaklik <=0) $sicaklik = 0; else if($sicaklik <10) $sicaklik =1; else if($sicaklik <30) $sicaklik =2; else $sicaklik = 3; if($ruzgar <5) $ruzgar = 0; else if ($ruzgar <15) $ruzgar = 1; else $ruzgar = 2; if($gorus <=500) $gorus =0; else if($gorus<=2000) $gorus =1; else $gorus =2; if($nem<=45) $nem =0; else if($nem<=75) else $nem=2; $sira = 1; $sinif =0; $devam = 1; do { $nem =1; 74 EK-1. (Devam) Makine öğrenmesi modelinin uygulanmasında kullanılan PHP ve HTML komutları $sutun = $$c45[$sira][8]; $veri = $c45[$sira][$sutun]; if(gettype($veri) == "string") { $sinif=$veri; $devam =0; } else{ $sira=$veri; } }while($devam==1); <div id="genel"> <div id="banner">C4.5 Makine Öğrenmesi Modeli Tabanlı <br />Dinamik Kaza Riski Tahmin Sistemi</div> <div id="icerik"> <table width="400" border="0" cellspacing="10" align="center"> <tr> <th scope="row">Şehir</th> <td><?php echo $sehir?></td> <td width="100px">&nbsp;</td> </tr> <tr> <td colspan="3"><hr /></td> </tr> <tr> <th scope="row">Araç Tipi</th> <td><?php echo ($otomobil == 1) ? "Otomobil":"Otomobil değil"?></td> <td>&nbsp;</td> </tr> <tr> <td colspan="3"><hr /></td> </tr> <tr> <th scope="row">Sıcaklık</th> <td><?php echo $sicaklik?> </td> 75 EK-1. (Devam) Makine öğrenmesi modelinin uygulanmasında kullanılan PHP ve HTML komutları <td><font size="-4">0=> <0 &deg; altı <br />1=> 0-9 &deg; <br />2=> 10-30 <br />3=>30 üzeri</font></td> </tr> <tr> <td colspan="3"><hr /></td> </tr> <tr> <th scope="row">Görüş</th> <td><?php echo $gorus?></td> <td><font size="-4">0=> 500 m altı <br /> 1=> 500-2000 m<br /> 2=> 2000 m üzeri</font></td> </tr> <tr> <td colspan="3"><hr /></td> </tr> <tr> <th scope="row">Nem</th> <td><?php echo $nem?></td> <td><font size="-4">0=> %45 altı<br /> 1=> %45-%75<br />2=>%75 üzeri</font></td> </tr> <tr> <td colspan="3"><hr /></td> </tr> <tr> <th scope="row">Yağış</th> <td><?php echo ($yagis == 0)? "Yağış yok":"Yağış var"?></td> <td>&nbsp;</td> </tr> <tr> <td colspan="3"><hr /></td> </tr> <tr> <th scope="row">Rüzgar</th> <td><?php echo $ruzgar;?></td> 76 EK-1. (Devam) Makine öğrenmesi modelinin uygulanmasında kullanılan PHP ve HTML komutları <td><font size="-4">0=> 5km altı<br />1=> 5-15 km<br />15 km üzeri</font></td> </tr> <tr> <td colspan="3"><hr /></td> </tr> <tr> <th scope="row">Tarih</th> <td><?php echo date("d:m:y H:i")?></td> <td>&nbsp;</td> </tr> <tr> <td colspan="3"><hr /></td> </tr> <tr> <th scope="row">Kaza Riski</th> <td bgcolor="#<?php echo ($sinif == 0) ? "0099FF":"FF0000"?>"><?php echo ($sinif == 0) ? "Risk düşük":"Risk yüksek"?></td> <td >&nbsp;</td> </tr> <tr> <td colspan="3"><hr /></td> </tr> </table> </div> <div id="alt">Gazi Üniversitesi Bilişim Enstitüsü Yüksek Lisans Projesi olarak hazırlanmıştır. <br />Tarık KAYA 2014</div> 77 ÖZGEÇMİŞ Kişisel Bilgiler Soyadı, Adı : KAYA, Tarık Uyruğu : T.C. Doğum tarihi ve yeri : 10.06.1981 Ankara Medeni hali : Evli Telefon : 0 (312) 413 33 63 E-mail : [email protected] Eğitim Derecesi Okul / Program Mezuniyet tarihi Yüksek Lisans Gazi Üniversitesi / Bilgisayar Eğitimi Devam ediyor Lisans Marmara Üniversitesi / Bilg. ve Kont. Öğrt. 2004 Lise İstanbul Kartal EML 1998 İş Deneyimi, Yıl Yer Görev 2004 - Devam ediyor Milli Eğitim Bakanlığı Öğretmen Yabancı Dil İngilizce