Bu yazıda
büyük veri ve işlenmesi için temel unsur haline gelen veri bilimcinin temel
uğraş alanına ilişkin kendi fikirlerimi paylaşacağım. Okuyucu büyük verinin
geçmişi, bugünü ve geleceğine ilişkin genel bir bilgi edinecek, konunun temel
bileşenleri ve aralarındaki ilişkileri verilen referanslarla birlikte
zenginleştirme ve kendi yorumunu oluşturma fırsatı bulacaktır. Konu hakkında bilgi
ve tecrübesi olan kişiler için de farklı bir görüş alma fırsatı sunulmaktadır.
Büyük
Veri Kavramı
1960 lı
yıllardan itibaren gelişme evresinde olan veri analizi ve entegrasyonu
çalışmalarının bir bütün olarak değerlendirilmesi ile Veri Bilimcisi (ing. Data Scientist)
[1] teriminin 1996 yılında ortaya çıkmasını ilişkilendirebiliriz [2, 7]. O yıllar, büyük miktarda verinin
toplandığı ilişkisel veri tabanlarında önceden fark edilemeyen bilginin
keşfedilmeyi beklediği yıllar olarak da hatırlanır [3] .
Büyük verinin anlamlandırılması
ve bilgiye dönüştürülme süreci, önceki bilimsel ve teknolojik birikimlerin
üzerine yeni yapılan çalışmaların ve ortaya konan yeni problemlerin eklenmesi, Hadoop [6] gibi dağıtık işleme
yapan ve kolayca erişilebilen açık kaynak kodlu bir yazılımın ortaya konması
ile farklı bir aşamaya geldi. Daha önce başa çıkılabilenden çok daha fazla veri
ile başa çıkmak, dolayısı ile iş dünyasına, araştırmalara yön verecek kararlar
alacak bilgiler elde etmek mümkün hale geldi.
Büyük verinin grid
hesaplama (ing. Grid
Computing) yöntemleri ile işlenmesinin en az yirmi yıllık bir geçmişi olmasına
rağmen, uygulandığı problem ve uygulayan kurum ve şirketlerin sayısı yıllar
içinde sınırlı kaldı. Bu sınırlamada verinin her işlem öncesi ağ (ing. Network) üzerinde ilgili makineye taşınmasının
problemler çıkarması ve çözümün bir türlü istenen şekilde gelmemesinin etkili
olduğu söylenebilir. Yeni fikir, verinin merkezi silolarda tutulup onu
işleyecek griddeki makinelere taşınması yerine,
doğrudan en başta verinin gridi oluşturan makinelere
dağıtılması, çalışacak prosedürün verinin olduğu
makineye yollanması şeklinde ortaya çıktı. Bunu ilk çözen Google şirketi oldu
ve problemi nasıl çözdüğünü 2003 yılından itibaren yayınladığı üç makale ile
dünyaya duyurdu [16, 17, 18]. Böyle bir sistemin temel bileşenlerini anlatan bu
makaleler, özel bir dağıtık dosyalama sistemi ( ing.
Google File System -GFS), Dağıtık tablo yapısı (ing. BigTable ) ve bu dağıtık yapıda işleme yapacak bir
algoritma (ing. MapReduce) dan oluşmaktaydı.
Daha sonraki süreçte bu
makalelere dayanarak yapılan çalışmalar sonucu Hadoop
doğdu. Tabii bu süreçte verinin birçok makineye dağıtılarak dağıtık
işlenmesinin mümkün hala getirilmesi, aynı verinin anlamlandırılması ve sonuç
çıkarımında da çok yol alındığı anlamı çıkarılmamalı [8]. Bu problemin henüz
tam anlamı ile çözülememesinin sebeplerini aşağıda detaylandıracağız, fakat
öncelikle bu sürecin sahibi olarak isimlendirilen Veri Bilimci ve neden bu ismin
ön plana çıktığı üzerinde durmakta fayda var.
Veri
Bilimci ve Ontoloji Kavramı
Science
yani bilim nedir? Latince scientia kelimesi yani bilgiden geldiği söylenir. Evren
hakkında test edilebilir açıklamalara ve tahminlere dayandırılmış bilgiyi,
organize eden, sınıflandıran disiplin olarak tanımlamak mümkündür [5]. Tabii bu
işle meşgul olan kişiye de bilimci diyoruz. Bilimsel çalışmalar gözleme dayanır
ve bu veri (ing. Data) toplamak ile eşdeğerdir.
Toplanan verilerin daha önce çözülmemiş bir problemi çözmek için belli bir
sistematiğe dayanarak incelenmesi bilimsel, daha önce çözülmüş bir problemin
farklı bir alanda yada ölçekte uygulanması ise genellikle
mühendislik olarak görülebilir. Bu
açıdan bakıldığında bilim insanı çözülmüş problemlerle uğraşmaz, yani gözlem
zaten bilinen bir gerçeği, örüntüyü ortaya çıkarmak için yapılıyorsa
mühendislik alanına geçilmiş olur. Verinin mühendisliği ile bilimi arasında ki
bu fark nereden kaynaklanıyor? Bu konuda birçok yazı var ve henüz üzerinde
uzlaşılan genel net bir tanım olduğunu söylemek güç [19, 20].
Konu üzerinde kendi görüşümüzü
geliştirmek için, Türkiye’de yazılım dünyasında akademik çalışma yapanlar
dışında pek ilgi görmediğini düşündüğümüz farklı bir disiplinden bahsetmek zorunluluğu
hissediyoruz. Felsefenin bir kolu olan ve metafizik olarak adlandırılan bir
çalışma alanının içinde yer alan Ontoloji [9] nin “Varlık
nedir? Varoluş nedir? Bir nesnenin özellikleri veya ilişkileri nedir? Var oluş
bir özellik midir? Bir nesne nasıl değişir, nasıl yok olur?” gibi sorulara
cevap ararken kullandığı bilimsel birikimden yararlanmak gerekiyor. Peki büyük veriyi incelerken yazılım dünyası ontolojiden
nasıl faydalanabiliyor?
Büyük veri içindeki bilgiye
dönüştürme sürecinin en önemli aşamalarından olan nesneleri tespit etmek ve bu
nesneler ve aralarındaki ilişkilerin gösterim yapısına karar verme sürecinde, bilgi
mühendisi (ing. Knowledge Engineer)
[13], ontoloji biliminin de katkısı ile
geliştirilmiş dilleri kullanır. Bilgi Tabanlı Sistemler (Knowledge-Based Systems) kurmak için bu
kaçınılmazdır [14]. Bilimsel bir problem çözme yöntemi uygulanmadığı durumda, ontolojik [12] açıdan incelenme süreci
yerine her zaman tekrar tekrar aynı analiz ve çözümleme çabalarına girişmek,
ciddi zaman ve emek kaybı anlamına gelmektedir. Daha da önemlisi çözülen
problem her defasında yeniden çözülmek durumundadır. Bu çalışmalar sırasında
alana bağlı olarak değişik bilim dallarından insanlar işbirliği içinde
olabilirler. Örneğin, fiziksel nesneler ile ilgili bir veriden bahsediyorsak,
fizik bilimcisi, okyanus ile ilgili bir veriden bahsediyorsak okyanus
bilimcisi, uzay ile ilgili bir veriden bahsediyorsak uzay bilimcisi gibi. Peki,
ya eldeki verinin gerçek dünyada doğrudan bir karşılığı yoksa ve sanal dünya
dışında var olmayan bir bilgiden söz ediyorsak hangi bilim dalından yardım alınacak?
İşte bu noktada veri bilimcisinin devreye girmesi gerekiyor ve veri dünyasında
olan nesneler ve ilişkileri konusunda bilgi mühendisi ile birlikte çalışıyor.
Tabii, bilgi mühendisi zaten bilgi teknolojileri dünyasından olan bir kişi
olduğundan dolayı veri bilimcisi ile bilgi mühendisini çoğu durumda aynı kişide
birleştirmek pratik bir sonuç olacaktır. Ontolojik olarak incelenen veri,
özellikle alan bilgisinin de olduğu bir ontolojik yapı içerisinde
incelendiğinde, tekrarlar algoritmalara aktarılmış olacak, veri bilimcisi daha
önce yapılmayana odaklanacaktır [10]. Bu seneki Ontology
Summit 2014 ün ana konusu ve vurgusu bu odaklanmayı somut
bir şekilde göstermektedir “Big Data and Semantic
Web Meet Applied Ontology” [11].
Büyük
Veri İle İlgili Yeni Yaklaşımlar
1989 da HTTP (HyperText
Transfer Protocol) protokolünü ve HTML (HyperText Markup Language) formatını icad
ederek; yazı, resim ve video içeren zengin içerikli dokümanların birbirine
bağlanması fikri olan WWW (World Wide Web) nin mucidi ve babası olan Tim Berners-Lee,
benzer bir
devrimin verilerin birbirine bağlanması ile de gerçekleşeceğine inanıyor [15]. Lee
nin Bağlı Veriler (ing. Linked Data) olarak adlandırdığı verilerin birbirine
bağlanması ile Semantic Web gerçek olacak ve Web de
yer alan verilerin otomatik olarak algoritmalarla işlenebilir bir semantik
yapıda olması sağlanabilecek. Her yeni gelen verinin daha ilk saklanma
aşamasında aynı insan beyninde olduğu gibi ilişkili olduğu bilgi ile birlikte
saklanması bu şekilde çok büyük miktarda bir sonradan işleme (ing. post processing) gereksinim
duyulmadan aranan bilginin bulunması ve çıkarım yapılabilmesinin mümkün olması
sağlanmış olacak. Yani büyük veride en acılı süreç olan verilerin toplanması ve
tasnif edilmesi aşaması Web in kendisinin bu şekilde organize olması ile
önceden çözülmüş olacak.
Veri
Bilimcisinin Kullandığı Yaklaşımlar
Verinin yapılanması dışında,
işlenip bilgiye dönüştürülürken kullanılacak algoritmalar veri bilimcisinin
sıklıkla başvurduğu araçlar olmak durumundadır. Bu algoritmalardan en çok
kullanılanlar veriyi ele alma tarzına göre iki yaklaşıma dayanmaktadır.
Birinci yaklaşım olarak, gözlenen
sistemden elde edilen verinin stokastik yani bir şekilde
rastgelelik taşıdığı ve çözüm için verinin modellenmesinin
öncelikle bu rastgeleliği modellemekten geçtiği düşüncesi
hakimdir ve istatistiki algoritmalara dayanır.
İkinci yaklaşım ise aynı verinin
yapısının bilinmez kabul edildiği ve bir veri modeli kurmadan doğrudan uygun
algoritma ile sonuç elde etmenin mümkün olduğu düşüncesini savunur ve
bilgisayar bilimlerinin bir alt dalı olan makine öğrenmesi içinde ele alınır [4].
Yapay sinir ağları ve karar ağaçları bu yöntemlere örnek olarak verilebilir. İki
yaklaşımın da başarılı olduğu alanlar vardır ve bu alanlar iki yaklaşımın da
halen kullanılmasının ana nedenidir. İlk yaklaşım ile ilgili adı geçen
çalışmada 205.sayfada ".. how the commitment to data modeling
has prevented statisticians
from entering new scientific and commercial fields where the
data being gathered is not suitable for analysis
by data models."
denerek istatistikçilerin sadece modellemeye uygun veriler üzerinde
yoğunlaşarak yapısal olmayan verilerin bir anlamda ihmal edildiğine dikkat
çekilmektedir.
Son olarak, bilgiye ulaşmak
dışında bunun kullanılabilirliği de günümüzün en önemli konularından biridir.
Ayrı bir uzmanlık alanı olarak da görenler vardır. Özellikle bellekte analitik
çözümleme (ing. in-memory analytics ) ve bunun görsel bir şekilde karar vericilere
sunulması büyük veri ile birlikte üretilen çözümün bir parçası haline
gelmiştir. Büyük analitik çözüm firmaları geçtiğimiz yıl ve bu yıl yaptıkları
çalışmalarda tamamen bu konuya odaklanmış görünmekteler.
Özetle;
Veri bilimci, bilimsel yöntemler
kullanarak büyük veriyi
- analiz ederek gösterimi için en uygun yapıya karar verir ve tasniflemesini yapar,
- dağıtık bir şekilde otomatik olarak işleyecek mimari konusunda uzmanlığını ortaya koyar,
- kullanımına ilişkin temel kural ve çıkarım mekanizmasını ortaya koyar,
- faydalanma yöntemlerini de ortaya çıkarır ve sunar.
Not: Bu yazım ilk olarak 7 Mart 2014 tarihinde www.devveri.com da yayımlanmıştır.
Kaynaklar;
[1] http://devveri.com/big-data/data-scientist-veri-bilimci-kimdir
[2]
http://www.forbes.com/sites/gilpress/2013/05/28/a-very-short-history-of-data-science
[3] From
Data Mining to Knowledge Discovery in Databases, Usama Fayyad, Gregory Piatetsky-Shapiro, and Padhraic Smyth, AI Magazine
Volume 17 Number 3 1996
[4] 2001 Leo
Breiman, "Statistical Modeling:
The Two Cultures",
Statistical Science, , Vol.
16, No. 3, 199–231, 2001
[5]
http://en.wikipedia.org/wiki/Science
[6] http://hadoop.apache.org/
[7] What
is Data Science ? Fundamental Concepts
and a Heuristic Example, Proceedings of the Fifth Conference of the International Federation of Classification Societies
(IFCS-96), Kobe, Japan, March
27–30, 1996
Yorumlar