IBM Veri Bilimi Sertifikası Projesi

Son birkaç aydır bir sürü kursa katıldım. Yeni Nesil Teknoloji Yatırımı, Dijital Dönüşüm, TRIZ, Tasarım Odaklı Düşünce ve en sonuncusu da 9 farklı dersin birleşimi olan üç aylık IBM Veri Bilimi kursu oldu. Bu kurs diğerlerine nazaran online bir kurs ve belki de çoğunuzun bildiği Coursera isimli online eğitim platformu tarafından veriliyor. Hayatının yarısından fazlasını eğitime adamış biri olarak şunu açıkça söylemeliyim ki, eğitimden alabileceğiniz en büyük şey “ilham”. Tabii ki öğrenilen teknik şeyler, uygulamalar vesaire illa ki bir şeyler katıyor insana, ama sizi daha fazlasını araştırmaya, daha fazlasını pratiğe dökmeye yönelten şey olan ilham, öğrenim açısından bunlardan çok daha önemli bir yere sahip. Beni de okuduklarım, araştırdıklarım kadar kendimden aldığım ilham veri bilimine, veri bilimi de IBM’in Veri Bilimi kursuna yönlendirdi. Kurs sırasında öğrendiklerimin tek başına bu işi meslek edinmeye yetmeyeceğine eminim, ancak başta aldığım ilham ve bunun üstüne edindiğim teknik bilgiler umarım beni bir gün veri bilimcisi olmaya itecek.

BÜTÜN BUNLAR DA NE?

Belki çoğunuz Veri Bilimi dendiğinde bunun ne anlama geldiğine vakıf değilsiniz. Belki de verinin, ama büyükçe verinin Microsoft Excel üzerinden yapılan analizlere dayandığı bir iş alanı olarak algılıyorsunuz. Girişimden de tahmin edebileceğiniz üzere konu bundan biraz daha karmaşık. Konuya dalmadan önce bir veri bilimcisi olmadığımı, hatta veri analizi veya direkt olarak sadece veriyle ilgili bir iş ile ilgilenmediğimi belirtmek istiyorum. Sadece Veri Bilimi ile ilgili kurs boyunca öğrendiklerimi ve araştırmalarım sonucu edindiğim bilgileri sizlerle paylaşırken, kursun gerekli gördüğü proje sunumunu gerçekleştirmiş olmayı planlıyorum. Bir taşla iki kuş anlayacağınız.


VERİ BİLİMİ

Wikipedia’ya göre -bu yazı yazıldığı tarihte ülkemizde hala kapalıydı- düzenli ya da düzensiz veriyi bilimsel metodlar, prosesler, algoritmalar ve sistemler kullanarak işleme ve bu işlemden bilgiler edinme yöntemidir. Bana ve daha genel bir anlayışa göre ise, veriyi kullanarak belli başlı şeyleri daha iyi anlamak ve bu işlemi Alan Bilgisi, Matematik, ve Bilgi Teknolojileri gibi üç farklı alanı birleştirerek yapmaktır. Örneklendirmek gerekirse; önce bir iş problemi seçiyoruz ve projemizin sonunda ne gibi bilgiler edinmek istediğimizi, nereye ulaşmak istediğimizi belirliyoruz. Yani kendimize hedef koyuyoruz. Bu Alan Bilgisinin kullanıldığı kısım. Daha sonra matematiksel yöntemler kullanarak bir model oluşturuyoruz. Mesela hastaneler muayene için gelen kişilerin kalıp kalmayacağını bilemiyor, bu da kaynak arzından karışıklıklara yol açıyor. Matematik bilgilerimizi kullanarak oluşturduğumuz model, sahip olduğumuz veriye göre gelen başka hastaların hastanede ne kadar kalacağını öngörmemizi sağlarken kaynak arzı hatalarını da minimuma indirgiyor. Eskiden bilgi teknolojilerinin imkanı kısıtlı, dijital ayakizi de oldukça sınırlı olduğu için bu işlemler iki boyutlu olarak veri ve modelleme yöntemiyle yapılıyor ve sonlandırılıyordu. Şimdi ise bilgisayar sistemlerinin gelişmesiyle matematiksel işlemler ve modellemeler bilgisayar üzerinden, daha fazla seçenek denenerek, dolayısıyla da hata oranı en aza indirgenerek bulunabiliyor. Bu noktada Python, R, Hadoop, SQL gibi yazılım dilleri ve programları veri bilimcisinin vazgeçilmez ekipmanları oluyorlar. Şu an veri bilimi işi için kullanılan en basit ve en yaygın yazılım dili ise Python. IBM de zaten bütün eğitim boyunca sadece Python kullandırıyor.


Birkaç sene önce Şangay’da MBA yaparken bir iş kurma hayalim vardı. Kısa zamanda ülkenin farklı yerlerine yayılabilecek bir Fast Food Restoran konsepti. O zamanlar gerçekten de Türkiye’nin dünyaya satabileceği, hele hele Çin gibi katma değeri düşük ürünler üreten bir piyasaya satabileceği şeyin gıda ve buna bağlı ürünler olduğu konusunda inançlıydım. O zamanlar veri bilimiyle ilgili herhangi bir tecrübem yoktu; o nedenle Çinli bir sınıf arkadaşımla bir fast food zincirinde ne gibi ürünleri ticarileştirebileceğimiz konusunda oldukça geleneksel yöntemlerle kafa patlatmaya başladık. Günün sonunda Şangay’daki fahiş kira ücretleri bu işe zayıf bir başlangıç için yer olmadığı konusunda bizi ikna etti ve aile şirketi tarafından yaşadığım endişeler de bununla birleşince marşa basmadan vazgeçtik.

   Market Search w Chinese Partner to Be

Çinli Sınıf Arkadaşımla Pazar Araştırması Yaparken

Dört yıl sonra IBM’in veri bilimi projesi Foursquare API’sini kullanmayı dikte edince aklıma gelen ilk şey bu oldu. Şangay’daki Fast Food ekosistemini analiz edebilir, vazgeçtiğimiz projeyle ilgili daha farklı detaylandırmalar yapabilirdim. Ancak verinin yetersizliği ve Çinlilerin Foursquare kullanmıyor oluşu bunun önünde büyük bir engel olmakla birlikte, çekeceğim verinin sadece birkaç turisti yansıtan sığ bir kitlenin meyvesi olacağı endişesi beni vazgeçirdi. Bu sebeple verinin bol ve ulaşılabilir olduğu Los Angeles, Kaliforniya’yı yeni oyun alanım yapmaya karar verdim.


LOS ANGELES’TA YENİ BİR FAST FOOD RESTORANI NEREDE AÇILMALI?

Projeye başlamadan önce, gelin size hangi metodolojiyi kullandığımı açıklayayım. IBM’in aşağıda şemasını da görebileceğiniz bir veri bilimi metodolojisi var. 10 adımdan oluşan bu metodolojiye oldukça aşina olduğum ve konseptini iyi anladığım için ben de olabildiğince buna bağlı kalmayı uygun buldum.


İŞİ ALANINI ANLAMA VE ANALİTİK YAKLAŞIM

Sanırım ne yapmak istediğim şu ana kadar anlattıklarımdan gayet iyi anlaşılmış oldu. Tabii biz bir kere daha kısaca yineleyelim; ben Los Angeles bölgesinde yeni bir fast food zinciri kurmak isteyen biriyim, bunun için en uygun bölgenin neresi olduğunu anlamak istiyorum. Uygunluktan kastım tabii ki finansal açıdan en hızlı başarıya ulaştıracak lokasyon. Şangay’da yaşarken karşılaştığım en büyük problemlerden biri fast food restoranlarının, ya da daha genel tabirle restoranların şehirde nasıl dağıldığını gösterecek bir verinin elimde olmamasıydı. Los Angeles semtlerini de işaretlediğinizde durumun ne kadar karmaşık olabileceğini hızlıca farkedebiliyorsunuz.

         

Neighborhoods in LA County by Coordinates


VERİ GEREKSİNİMLERİ, VERİ TOPLAMA, VERİYİ ANLAMAK

Öncelikle Los Angeles’taki tüm semtlerin isimlerine ve koordinatlarına ihtiyacım vardı. Daha sonra fast food restoranlarının diğer restoranlara göre bu semtlerde ne gibi dağılımlar gösterdiğini anlayacak oranları bulmaya. Daha sonra bu bölgelerin gelir dağılımlarını bularak bundan bir modelleme yapabileceğimi düşündüm. Bu noktada da kişi kişi gelir dağılımı verisi bulamayacağım, veya bu gelir verisinin benim işleyemeyeceğim kadar büyük olacağını düşündüğüm için medyan kira giderlerini bir gelir göstergesi sembolü olarak almaya karar verdim. Bu verilerin kira, semt isimleri, semt koordinatları kısmını Güney Kaliforniya Üniversitesi’nin yayınladığı açık bir veritabanından indirdim. Restoranlar ve bunların konumları ile ilgili veriyi ise Foursquare’in dışarıya veri çekmenizi sağlayan API’sini kullanarak elde ettim.

Güney Kaliforniya Üniversitesi – 2011-2016 yılları arası Medyan Kira Ücretleri Veri Tablosu – Toplam kira verisi 16055.

Yukarıda görebileceğiniz üzere kira ücretleri farklı lokasyonlar için binlerce kira verisi içeriyor. Bunun yanına bir de Foursquare API’dan bu bölgelerde bulunan en popüler mekanları ve bu mekanların koordinatlarını çekiyoruz. Tabii bu mekanlar için bir yarıçap ve mekan sayısı limiti koyuyoruz. Ben bu limitleri sırasıyla 10k metre ve 10k mekan olarak belirledim.


VERİYİ İŞLEME

      

Foursquare API’dan indirdiğim veriye kısa bir bakış

Veri İşleme bölümünde kısaca bütün gereksiz kolonları ve verileri temizledim. Bunlar bütün kira ücretlerinin başında “Kira Ücreti” yazan kolonlar, veri içermeyen, ya da oranların sıfır olduğu satırlar gibi şeylerdi. Makine Öğrenmesiyle model oluşturduktan sonra -buna sonra geleceğim- Python’da harita görseli oluşturmaya yarayan kütüphaneler karışıklık yaşamasın diye koordinatları dikey ve yatay olarak ayırdım. Kira verisi CSV olarak hazırdı, ancak Foursquare’den çekilecek veri için kod yazılması, çekilen datanın da kullanacağımız şekilde işlenmesi gerekiyordu. Foursquare’den veriyi çektikten sonra tablonun 24925 satır ve 7 kolon içerdiğini gördüm. Bu satırların tamamı tek tek mekanları temsil ediyordu. Daha sonra restoranları mekan kategorisine ayırıp, bu kategorilerin her bir farklı mekan tipi için semtlerde ne gibi sıklıkta görüldüğünü anlamaya çalıştım. Bunu da yaparken “One Hot Encoding” adı verilen, kategorik veriyi 0’lar ve 1’ler olarak ifade etmeye yarayan ve Makine Öğrenimi algoritmaları için işi kolaylaştıran tekniği uyguladım. Daha sonra topladığım verilerin tamamını bir tabloda birleştirdim.

Rent Price vs. Fast Food Restaurant Frequency

MODELLEME

En başta hayalim fast food restoranlarının sayısı ile gelir göstergesi olarak aldığım kira ücretleri arasında bir ilişki bulunacağıydı. Yandaki serpme tabloda(türkçesi buymuş) görebileceğiniz üzere bunu iddia edebileceğimiz, veya üzerine çalışmayı gerektirecek net bir korelasyon yok. En azından benim matematik bilgim ve öğrendiklerim kadarı için yok 🙂 O nedenle regresyon modellemelerini bir kenara koyup diğer matematiksel modelleme yöntemlerine yöneldim. Kullanabileceğim en hızlı ve kolay yöntem K-Ortalama algoritmasıydı. Bu bir denetsiz Makine Öğrenimi modelleme yöntemi ve diğer denetimli yöntemlere karşın sadece tabloyu yazılıma teslim ediyorsunuz ve o size istediğiniz sayıda farklı kümeler oluşturarak birbirine benzer verileri sunuyor. Bu kümeleri oluştururken istediğiniz küme sayısı kadar ortak nokta bulup arka arkaya hesaplamalarla her bir küme için en doğru merkezi buluyor. Yani makine deneye deneye veriyle ilgili ortak noktaları buluyor ve birbirine benzeyen verileri size sunuyor.

Ben algoritmadan 5 farklı küme talep ettim, o da verileri kira ücretlerine göre kümelendirmeyi tercih etti. Şimdi isterseniz çıkan sonuçlarda ne gibi detaylar var onları inceleyelim:

KÜME 0

İlk kümemiz $1600-$1877 kira ücreti aralığı için. Bu kümede Acton, Ramona, San Dimas, Chatsworth ve Hidden Hills sırasıyla 50%, 22.7%, 22.7%, 10.7% ve 10% fast food restoranı yoğunluğuyla öne çıkıyor.

KÜME 1

İkinci kümemiz $1171-$1347 kira ücreti aralığı için. Bu kümede SE Antelope Valley, Palmdale, Northwest Palmdale ve Whittier sırasıyla 67%, 30%, 20%, 20% fast food restoranı yoğunluğuyla öne çıkıyor.

KÜME 2

Üçüncü kümemiz $1369-$1566 kira ücreti aralığı için. Bu kümede Northwest Antelope Valley, Chatter Oak, Glendora, Norwalk ve Verne sırasıyla 33%, 25%, 25%, ve 13% fast food restoranı yoğunluğuyla öne çıkıyor.

KÜME 3

Dördüncü kümemiz $1914-$2332 kira ücreti aralığı için. Bu kümede Leona Valley, La Habra Heights ve Westlake sırasıyla 50%, 13% ve 13% fast food restoranı yoğunluğuyla öne çıkıyor.

KÜME 4

Beşinci ve son kümemiz $835-$1151 kira ücreti aralığı için. Bu kümede Catalina Island, Lancaster, Lynwood, ve East Compton sırasıyla 33%, 14.8%, 9.7%, ve 9.4%  fast food restoranı yoğunluğuyla öne çıkıyor.


BÜYÜK RESİM
DEĞERLENDİRME

Olan biteni daha iyi fotoğraflayabilmek için Python’ın Folium kütüphanesini kullanarak Koroplet ismi verilen tematik, ısı haritasına benzeyen bir harita kullandım. Kısa bir bakışta haritada fast food restoran yoğunluğunun 2% ile 65% arasında gittiğini görebilirsiniz. Kümelere baktığınızda ise Küme 1’in diğer kümelere karşı 10%’u geçen 8 farklı semt olması dikkat çekiyor. Burada atlanmaması gereken bir detay var tabi. Şehrin iç kısımlarında kalan, fast food restoran yoğunluğunun fazla olması beklenen bölümlerde oran 0. Bunun nedeni de muhtemelen bu bölgelerde limitli veri çekildiğinde diğer mekanların fast-food mekanlarının çok daha üzerine çıkması.  Yani 10k limit bile bu bölgedeki veriyi tam olarak analiz edebilmek için yeterli değil. Benim yorumum ise yoğunluğun nispeten fazla olduğu Küme 1 ve Küme 4’ten tepeden aşağı bir yöntem kullanarak araştırmaya başlanabileceği yönünde oldu. Bu noktada bu bölgelerin ve semtlerin sosyal başka nedenlerle diğerlerinden ayrılıp ayrılmadığının iyi irdelenmesi gerektiği yönünde fikrim açıkçası. Mesela Küme 1’de Antilop Vadisi en yüksek orana sahip, ancak bunun nedeni muhtemelen burasının bir turist atraksiyonu olması ile ilgili olabilir. Şehrin bu kadar dışında bir yeri ilk restoran lokasyonu olarak seçmek açıkçası şüpheyle yaklaşılması gereken bir durum olabilir. Kısaca özetlemek gerekirse yaptığım inceleme Los Angeles’taki fast food restoranlarının durumuna biraz daha ışık tutarken, nereden araştırmaya başlamak gerektiği konusunda da ciddi ipuçları veriyor. Ancak sonuç olarak son kararı almadan önce veri dışı faktörleri incelemenin gerekliliği de yadsınamaz bir gerçek.

Bu bilgilerin ışığında projemi Danimarkalı Futbol Direktörü Ebbe Skovdahl’ın sözleriyle tamamlamak istiyorum:

“İstatistik mini etek gibidir, iyi fikirler verir, ancak en önemli şeyleri daima saklar.”


Kaynaklar:

Jupyter Notebook: https://nbviewer.jupyter.org/github/berkaytekin…FF.ipynb
USC Price Kira Ücretleri 2011-2016: https://usc.data.socrata.com/Los-Angeles…
Foursquare API: https://developer.foursquare.com
Los Angeles Semt Sınırları: https://usc.data.socrata.com/dataset/Los…-Map/r8qd-yxsr


Yazı umarım hoşunuza gitmiştir. Sormak istediğiniz her soruyla ilgili bana mail aracılığıyla veya sosyal medya hesaplarımı kullanarak ulaşabilirsiniz.

Mail: bt@berkaytekin.com
Instagram: http://www.instagram.com/betekin
LinkedIn: http://www.linkedin.com/in/berkaytekin