SPSS Modeler – podsumowanie zmian w roku 2017 i perspektywy na 2018

Start / Blog / SPSS Modeler – podsumowanie zmian w roku 2017 i perspektywy na 2018

Rok 2017 przyniósł dwie nowe wersje narzędzia analitycznego SPSS Modeler: 18.1 i 18.1.1. Pod koniec czerwca zaprezentowano wersję 18.1, zawierającą szereg nowych rozwiązań, z czego kluczowe wydają się być rozwiązania integrujące Modelera z narzędziami open source. W wydaniu tym po raz pierwszy zaprezentowano węzły napisane w języku Python (XG Boost, SMOTE czy SVM z jedną klasą). Przebudowie uległy węzły do pisania skryptów w języku R, a sam Modeler działał już z dowolną wersją R. Kluczową nowością była również rozbudowana integracja z IBM CPLEX Optimization Studio. Pojawił się węzeł Optymalizacja CPLEX, który pozwalał z poziomu SPSS uruchamiać skrypty napisane w języku OPL. Od wersji 18.1 Modeler mógł odczytywać i zapisywać dane do narzędzi BigInsights, Hortonworks, Hive i Cloudera Impala bez pośrednictwa SPSS Analytical Server. O powyższych zmianach pisaliśmy na naszym blogu.
 
W ostatnich dniach października miała miejsce premiera wersji 18.1.1. Najnowsze wydanie zawiera szereg nowych rozwiązań, a także wskazuje kierunek w którym podąża ta uznana platforma analityczna.

 

Dalsza integracja z narzędziami open source

Intencją wydawcy oprogramowania jest udostępnienie użytkownikowi końcowemu Modelera możliwości, jakie dają narzędzia typu open source, bez konieczności nauki języków programowania takich jak Python czy Spark. Algorytmy oprogramowane w oparciu o te języki stopniowo będą poszerzać paletę dostępnych wprost z pudełka węzłów.

 

Nowe węzły w Sparku

 

Od wersji 18.1.1 dostępne są nowe węzły oprogramowane w Sparku: Izotoniczna-AS, XGBoost-AS, K-średnie-AS. Węzły działają zarówno lokalnie na desktopie, jak i mogą być wypychane na Hadoopa poprzez Analytic Server. Nie musimy programować aby skorzystać z ich funkcjonalności, węzły znajdują się w standardowym wydaniu Modelera.
Węzły XGBoost i K-średnich działają w podobny sposób do analogicznych węzłów zaimplementowanych w poprzednich wersjach Modelera. Nowością jest węzeł Regresji Izotonicznej. Regresja izotoniczna, inaczej nazywana monotoniczną to algorytm z rodziny regresji, który ma za zadanie dopasować się do obserwacji (najbliżej jak się da), przyjmując formę niemalejącej, ciągłej linii swobodnej.

 

 

Regresja izotoniczna daje lepsze dopasowanie do danych niż regresja liniowa. Dodatkowo, co sprawdziliśmy empirycznie, algorytm może być wykorzystany do kalibracji scoru pochodzącego z modeli klasyfikacyjnych

 

Nowe/ulepszone węzły w Pythonie.

 

W wersji 18.1.1 dostępne są także nowe węzły wykonujące algorytmy oprogramowane w Pythonie, a mianowicie Las losowy i t-SNE. Las losowy działa podobnie do zaimplementowanego we wcześniejszej wersji Modelera węzła Drzewa losowe. Węzeł wykorzystuje bibliotekę sci-kit learn i w wielu przypadkach buduje model szybciej niż wcześniej zaimplementowany węzeł.
T-SNE (t-distributed stochastic neigbor embedding), czyli stochastyczna metoda porządkowania sąsiadów w oparciu o rozkład t Studenta to technika redukcji wielowymiarowości danych w sposób pozwalający na prezentację skupień na dwu- lub trzywymiarowym wykresie. Algorytm opracowany przez panów Geoffrey Hinton’a i Laurensa van der Maaten’a należy do klasy algorytmów nauczania nienadzorowanego i zyskuje szybko na popularności, a wykorzystywany jest przede wszystkim do wykrywania anomalii, detekcji fraudów oraz przy predykcji awarii maszyn. Węzeł dostępny jest zarówno w zakładce Python, jak i w zakładce wykresy.
Węzły XGBoost i SVM z jedną klasą, oprogramowane w Pythonie i zaprezentowane w wersji 18.1 zyskały nową funkcjonalność: Optymalizacja hiperparametrów. Opcja ta pomaga zautomatyzować proces doboru parametrów, co przekłada się na redukcję ilości popełnionych błędów i czasu potrzebnego na zbudowanie modelu. Metoda optymalizacji RBFOpt została opracowana przez IBM, a następnie przekazana społeczności open source.

 

 

Ponadto, od wersji 18.1.1 wszystkie węzły Pythona i AS są dostępne w węźle Automodelowanie.

 

Usprawnienia w węźle integrującym z CPLEX

 

W wersji 18.1.1 rozszerzono funkcjonalność węzła CPLEX, wprowadzonego w wersji 18.1. Do tej pory węzeł można było podłączyć tylko do jednego węzła Modelera, co utrudniało podłączenie danych nie będących częścią głównego strumienia (jak np. ograniczenia budżetowe). Aby rozwiązać problem optymalizacyjny w najnowszej wersji Modelera użytkownik będzie mógł wykorzystać wiele źródeł, aby wprowadzić do węzła CPLEX koszty, ograniczenia lub inne parametry.

 

 

 

Nowe możliwości wizualizacyjne

Ponadto, w najnowszej wersji możemy przetestować nowy węzeł odpowiadający za wizualizację wyników, a mianowicie                         Wykres E-Plot (Beta).

 

W celu skorzystania z  węzła należy wykonać jednorazowo następującą procedurę: w zakładce Narzędzia/ Opcje/ Opcje użytkownika, w karcie Tryb należy odznaczyć „Tryb Analytic Server” a następnie ponownie „Tryb tradycyjny”. Węzeł wykresu pojawi się w zakładce Wykresy. Nowy rodzaj wykresu pozwoli użytkownikowi wybrać kolory wizualizacji, skalowanie czy nawet rodzaj wykresu. Po zebraniu wstępnej informacji zwrotnej od użytkowników, IBM planuje znacząco rozszerzyć możliwości Modelera w zakresie wizualizacji wyników.

 

 

 

Przyszłość Modelera.

Osoby odpowiedzialne za rozwój produktu w IBM, przy okazji wprowadzenia nowej wersji Modelera zapowiedają dalsze inwestycje w markę SPSS i rozwój produktu. W najbliższym czasie Modeler ma zyskać nowy, atrakcyjny interfejs oraz wiele wyczekiwanych przez użytkowników opcji. Następna wersja Modelera będzie współpracować z produktem IBM Data Science Experience w chmurze i lokalnie. Wydawca Modelera planuje dalszą integrację z narzędziami open-source, co pozwoli niekodującym użytkownikom na wykorzystanie algorytmów Sparka i Pythona. Rozszerzeniu ma ulec również część wizualizacyjna, co pozwoli użytkownikom w atrakcyjniejszej formie zaprezentować wyniki pracy. IBM pracuje nad wizją wspólnej platformy Data Science, pozwalającej na dostęp do takich narzędzi jak IBM SPSS Modeler, Data Science Experience czy Watson Machine Learning. Platforma taka miałaby być dostępna w publicznej bądź prywatnej chmurze, a użytkownik sam miałby decydować z których funkcjonalności chce skorzystać. Rozwiązanie takie zapewnia firmom ułatwienia przy wdrożeniu, skalowalność, rozszerza możliwości zarządzania i zwiększa bezpieczeństwo. Czekamy z niecierpliwością na kolejne wydania!