SPSS Modeler (eski adı ile Clementine) IBM tarafından yazılmış bir data mining ve text mining programıdır. Sıklıkla üniversitelerde öğretilen SPSS Statistics ile karıştırılmaktadır. Bu durumu CRM bölümünde işe başladığım zaman yaşamıştım. Biz SPSS kullanıyoruz dediklerinde “aaa onu ben yüksek lisansta öğrenmiştim” demiştim. Ancak gerin görün ki SPSS Modeler ile Statistics arasında bir uçurum varmış.
Statistics programı daha çok veri girişi ve hazır verilerden sonuçların istatistiksel olarak yorumlamaya dayalıdır. Diğer yandan Modeler ise uç uca bir veri manipülasyonu ve veri madenciliği akışları kurabilmenizi sağlamaktadır. Aslında işi anket ya da hazır veri ile olan herkesin SPSS Statistics kullanması daha kolaydır ki günümüzde üniversiteler genelde hazır veriler üzerinden eğitim verilmektedir.
Gelgelim iş aslında sahada bambaşkadır. Özellikle büyük şirketlerde ya da danışmanlıklarda çok farklı boyutta, hacimde, kuvvette ya da ölçekte datalar bulunmaktadır. İster veri madenciliği ister veri bilimi olsun dataları hazırlamak ve modele uygun bir hale getirmek bu işin en zor ve zaman alıcı yanlarından birisidir. İşte bu noktayı SPSS Statistics ile yapamazsınız. Bu yüzden IBM düşünmüş ve neredeyse yarı ETL özellikli bir akış şeması oluşturabilen Modeler’i piyasaya sürmüştür.
SPSS Modeler programının çalışma mantığı sürükle bırak (drag & drop) akış diyagramı şeklindedir. Bu anlamda kullanıcılar için öğrenmesi kolay ve yaratıcılığı geliştiren bir tarafı bulunmaktadır. Aynı zamanda da stabil bir yapıya sahiptir (yazının sonunda deneyimime göre eksi ve artı yönlerinden bahsedeceğim). Rapid Miner, Knime gibi programlar ile aynı aileden olduğu söylenebilir.
Peki SPSS Modeler bize neler sağlıyor.
Veri alma/yazdırma (data import & export)
Öncelikle CRISP-DM yöntemini esas alan program çeşitli türlerden verileri içerisi almanıza olanak sağlıyor. CSV, EXCEL, XML gibi formatların yanında farklı veri tabanlarına bağlanabilmektedir. Yine aynı yerlere yazma imkanı da sağlamaktadır. Yani siz SQL ortamından aldığınız verinin üzerinde çalışıp yine SQL ortamına yazdırabilirsiniz.
Veri ön hazırlığı ve manipülasyonu (data pre-processing)
Yukarıda da bahsettiğim gibi analitik dünyanın (ya da data science evreninin) en can alıcı konusudur datayı bir model için anlamlı bir hale getirebilmek. Çünkü yapacağınız bir değişiklik ile modelin başarısını artırabilir ya da hiç ummadığınız başarısızlıklar yaşayabilirsiniz. Örneğin farklı özelliklere sahip kolonlar bir aradayken oto-korelasyon olabilecek iken bir başka kolon ile birleştirip (merge) farklı matematiksel işlemler ile veriyi zenginleştirip doğru bir korelasyon sonucu elde edebilirsiniz. Bunun yanında SQL dilinde satırlarca kod yazarak oluşturduğunuz tabloları çok daha kısa bir sürede SPSS’de sürükle bırak ile hızlıca yapabilirsiniz. Birkaç kavram IBM tarafından özelleşse de çoğunlukla veri ile uğraşan insanların rahatlıkla anlayabileceği şekilde tasarlanmıştır.
Modelleme (Data Modelling)
İşin kaymanın yendiği ve yorumların havada uçuştuğu modelleme konusunda SPSS’de istenilen algoritma kolayca verilere uygulanabilir. Kısaca verimizi ön işlemeden geçirdikten sonra test ve train olarak ikiye ayıran bir node kullanırız. Ardından Modeling Paletinin altında yer alan algoritmalardan birisini ya da birkaçını kullanarak veriyi modelleyip test edebilir.
Görselleştirme (Data Visualization)
Bu konuda SPSS’in çok başarılı olduğunu söyleyemem ancak günü kurtaracak kadar sunumlarınıza ekleyeceğiniz kadar görsellikte grafikleri bulunduğunu söyleyebilirim. Yeni sürümlerinde harita üzerinde de başarılı gösterimleri bulunuyor. Yine konjonktürle gelen popüler grafikler de yer almaktadır.
Otomasyon(Deployment)
SPSS Modeler ile birlikte gelen C&DS programı ile yapılan streamler zamanlanarak istenilen sıklıkta çalıştırılıp sonuçları mail ile gönderilebilmektedir. Tabi bu sonuçlar mailin ekinde Excel olarak gönderilmektedir. Gönül isterdi ki mail bodysine grafikleri ve tabloları güzelce ekleyip her gün stream’i run ederek bilgilendirme sağlamak. Ancak bu ne yazık ki mümkün değil.
Diğer program ve programlama dilleri ile karşılaştıracak olursam;
- Knime ve Rapid Miner gibi programlardan çok daha fazla lisanslama maliyeti bulunmaktadır.
- Knime ve Rapid Miner’a göre daha az esnek ancak daha fazla stabil olduğu söylenebilir.
- Knime ve Rapid Miner’ın kolayca desteklediği diğer programlama dillerini SPSS Modeler de destekler ancak kolay bir entegrasyon süreci sağlamaz.
- Python ve R’a kıyasla öğrenimi oldukça basit olan SPSS Modeler, bu programlama dillerinin verdiği kütüphane ve algoritma zenginliğini sağlayamaz.
Kısacası veri bilimi ile ilgileniyorsanız iyi bir başlangıç sağlayabilir. Veri dünyasını size sevdirir ancak zaman geçtikçe Python gibi dillerin verdiği esnekliği hissetmek istersiniz. Python ya da SQL gibi datanın daha uzun sürelerde manipüle edildiği dillere nazaran gündelik işlerinizi ya da model hazırlıklarınızı bu programlama dillerine nazaran oldukça hızlı şekilde yapmanızı sağlayarak aksiyon olmanızı kolaylaştırır