Rozszerzanie się analitycznego spektrum to, obok sztucznej inteligencji oraz Internetu rzeczy, jeden z trzech głównych trendów we współczesnej analityce. Z punktu widzenia organizacji wydaje się on najbardziej aktualny, ale jednocześnie generuje istotne problemy, które wymagają pilnego rozwiązania.
W pierwszej części tego opracowania przyjrzeliśmy się jego naturze i konsekwencjom dla biznesu. Czas na analizę strategicznych kierunków rozwoju systemów BI, które stawiają sobie za cel zaadresowanie tych wyzwań.
Jak wykazaliśmy w pierwszej części artykułu, rozszerzenie analitycznego spektrum powoduje swego rodzaju klęskę urodzaju: wiele typów danych, w różnych formatach i lokalizacjach, szeroka paleta metod analitycznych, rosnąca liczba użytkowników o zróżnicowanych umiejętnościach. Organizacje legitymujące się pewnym doświadczeniem w wykorzystaniu analityki (czasami zwane data‑driven organizations), które próbują wykorzystywać nowe możliwości do rozwoju biznesu napotykają na szereg technicznych i organizacyjnych problemów: rozproszone, słabo skomunikowane zasoby ludzkie i systemy, chaotyczna, budowana pod bieżące potrzeby i dedykowane projekty architektura, przypominająca często archipelag odizolowanych wysp, trudności z operacjonalizacją i monetyzacją inwestycji w analitykę. Jedną z dróg wyjścia – i w tym kierunku zmierza branża informatyczna – jest całkowicie nowa koncepcja architektury środowiska analitycznego – tzw. platformizacja. Platforma analityczna to spójna, zintegrowana instancja, która powinna umożliwiać przetwarzanie wszystkich typów danych, ustrukturalizowanych i nieustrukturalizowanych, tradycyjnych i big data, w użyteczne biznesowo decyzje, w tempie adekwatnym do wymagań biznesowych. To oznacza nie tylko wzrost dostępności analityki w organizacji, ale także wysoce zautomatyzowany i powtarzalny sposób podejmowania decyzji.
Aby platforma analityczna idealnie wypełniła istniejącą lukę i spełniła pokładane w nią oczekiwania powinna w odpowiedni sposób adresować trzy podstawowe wymagania: prostotę użycia, wydajność i uniwersalność oraz automatyzację czynności.
Prostota użycia
W jaki sposób platforma powinna uprościć codzienną analitykę? Przede wszystkim poprzez możliwość realizacji całego cyklu analitycznego w ramach jednego środowiska.
Funkcjonalności obsługujące przygotowanie danych, raportowanie statystyczne, modelowanie analityczne i udostępnianie modeli odbiorcom końcowym powinny być dostępne w ramach jednego, uniwersalnego zestawu narzędzi. Dodatkowo każdy z użytkowników, menedżer, użytkownik biznesowy czy analityk (data scientist) powinien mieć możliwość wyboru metody pracy z danymi, która odpowiada jego umiejętnościom i potrzebom. Dzięki temu rozwiązany zostanie problem niedostatecznej współpracy producentów informacji, jej konsumentów i decydentów: różne interfejsy, ale to samo środowisko i te same dane.
W procesie analitycznym możemy zasadniczo wyróżnić trzech głównych aktorów: decydenta, użytkownika biznesowego i analityka danych. Decydent – menedżer – najczęściej korzysta z dashboardów – mniej lub bardziej dynamicznych raportów. Gdy dostrzega intersujące go aspekty lub niekorzystne trendy, z reguły żąda od użytkownika biznesowego, aby przyjrzał się bliżej zagadnieniu i zaproponował rozwiązanie. Jemu z kolei potrzebna jest wizualizacja danych, proste procedury statystyczne i możliwość zejścia do poziomu pojedynczych zdarzeń. Jeśli potrzebuje więcej szczegółów zwraca się do analityka danych z prośbą o bardziej zaawansowane analizy. Jest niezwykle istotne, aby wszyscy trzej uczestnicy tego procesu poruszali się w ramach tego samego środowiska oraz aby narzędzia, z których korzystają, operowały na tych samych danych. To zapewni ścisłą współpracę i pożądane efekty biznesowe.
Kolejną właściwością platformy cechującej się prostotą użycia jest otwartość na różne języki programistyczne wykorzystywane w analityce. Obecnie używane narzędzia korzystają ze ściśle określonych formatów danych i języków przetwarzania. Dotyczy to zarówno rozwiązań komercyjnych, jak i tak zwanego open source, gdzie języki takie jak Python czy R wymagają od użytkownika specjalizacji, a ich twórcy nie przewidują łatwej konwersji wytworzonego programu z jednego języka na drugi. Taki stan powoduje oczywiste problemy w organizacji, w której ścierają się zwolennicy różnych standardów i w naturalny sposób budują swoje królestwa, zwalczając przy okazji potencjalną konkurencję. Otwarta platforma powinna umożliwiać użytkownikom pracę w ich naturalnym, preferowanym języku, a rezultaty ich pracy powinny być dostępne innym użytkownikom, pracującym z kolei w ich ulubionych standardach.
Inną pożądaną cechą platformy przyjaznej użytkownikowi jest możliwość modelowania danych w interaktywnej formie wykorzystującej interakcje z maszyną w języku naturalnym (Natural Language Interaction – NLI), dzięki możliwościom automatycznego rozpoznawania mowy lub tekstu. Platforma powinna komunikować się z użytkownikiem w sposób imitujący ludzkie zachowanie, antycypować potrzeby i proaktywnie wskazywać rozwiązania.
PRZECZYTAJ TAKŻE: Przyszłość analityki »
Wydajność i uniwersalność
Aby platforma była w stanie umożliwić rozwiązanie każdego problemu, powinna udostępniać procedury z wszystkich czterech głównych dziedzin analitycznych: statystyki, prognozowania, optymalizacji i uczenia maszynowego. Dodatkowo, biblioteki powinny mieć otwarty charakter, tak aby można było swobodnie dodawać nowe algorytmy w miarę ich powstawania.
Rozwój internetu rzeczy spowodował skokowy wzrost zainteresowania i wykorzystania analityki strumienia danych oraz analityki rozproszonej wykonywanej na urządzeniach końcowych (edge). Okazuje się, że wiele wykorzystywanych obecnie algorytmów nie można zaadoptować do takiego reżimu pracy i trzeba je napisać od nowa, przy okazji adresując problem wydajności. Dla dużych wolumenów danych konieczne są wersje algorytmów potrafiące pracować wielowątkowo, na wielu procesorach, albo na wielu serwerach jednocześnie. Dodatkowo przy procesowaniu nieustrukturalizowanych danych, na przykład obrazów, niezwykle pomocne okazują się procesory graficzne stosowane w kartach graficznych (GPU).
Oprócz skalowalności w rozumieniu wolumenu danych, istotne są możliwości skalowania, nieliniowego wykorzystania umiejętności użytkowników platformy. Wszyscy mają świadomość ograniczonej dostępności talentów analitycznych, więc nasuwa się pytanie, jakie cechy platformy umożliwią lepsze, bardziej wydajne wykorzystanie zaawansowanych użytkowników z pożytkiem dla organizacji? Otóż pojawia się coraz więcej zaawansowanych metod, które mogą w skuteczny sposób wesprzeć analityka danych. Jedną z nich jest optymalizacja hyperparametrów na potrzeby uczenia maszynowego. O co chodzi? W uczeniu maszynowym dobierany jest zestaw parametrów modelu zanim zakończy się proces uczenia. To tzw. hyperparametry. Jeśli ukończony model nie jest satysfakcjonujący dla analityka danych, może on zmienić wartości niektórych z nich, robiąc to iteracyjnie aż do osiągnięcia akceptowalnych rezultatów. Analityka danych mogą wesprzeć wyspecjalizowane algorytmy, które przeglądają tysiące a nawet miliony kombinacji wartości hyperparametrów, w poszukiwaniu optymalnej kombinacji dla danego zbioru danych. W ten sposób można budować setki modeli albo setki prognoz w wysoce zautomatyzowany sposób.
Automatyzacja czynności
W ten sposób dochodzimy do trzeciego wymagania: automatyzacji. Realizacja tego postulatu na pozór wydaje się prosta, ale jeśli weźmiemy pod uwagę, że automatyzacja powinna dotyczyć całego cyklu analitycznego, warto się mu bliżej przyjrzeć. Wcześniejszy przykład porusza zagadnienie automatyzacji budowy modeli analitycznych z wykorzystaniem algorytmów optymalizacyjnych. Z kolei automatyzacja przygotowania danych będzie się opierać na kombinacji uczenia maszynowego i interakcji w naturalnym języku (NLI). Platforma automatycznie załaduje ostatnio udostępniony zbiór danych, wyliczy podstawowe statystyki i zaproponuje najwłaściwsze metody modelowania statystycznego.
Automatyzacja operacjonalizacji analityki to szereg zagadnień, począwszy od automatycznego odświeżania modeli, w miarę jak zmieniają się rozkłady statystyczne danych, na których działają, poprzez elastyczny, automatyczny dobór środowiska, w którym działa model (zautomatyzowana decyzja czy model powinien działać w bazie danych, wewnątrz strumienia danych, lub też w pamięci operacyjnej komputera), aż po zautomatyzowaną alokację zasobów obliczeniowych (wykorzystanie lokalnych zasobów, chmury obliczeniowej lub obu jednocześnie).
Wreszcie niezwykle istotnym aspektem automatyzacji jest sztuczna inteligencja (AI), która tak naprawdę jest zautomatyzowanym, ciągłym uczeniem maszynowym. Na prawdziwą AI przyjdzie nam jeszcze wiele lat poczekać, natomiast jeśli przyjrzymy się współczesnym systemom działającym w oparciu o mechanizmy AI, to cechuje je perfekcyjne wykonywanie jednej i tylko jednej czynności. Jeśli system jest wytrenowany do wykrywania cyfr, to nie będzie potrafił wykrywać liter i nie będzie się w stanie tego nauczyć, wykrywając cyfry. Potrzebne jest przeprogramowanie i ponowne wytrenowanie.
W przypadku nowoczesnej platformy analitycznej rolą sztucznej inteligencji powinno być dobranie i nadzorowanie wykonania sekwencji kroków analitycznych właściwej do rozwiązania konkretnego problemu. Data Scientist postawiony przed takim problemem nie ma z tym kłopotu, wie, które algorytmy analityczne powinny być wykonane sekwencyjnie i jakie są kryteria sukcesu na poszczególnych etapach procesu. Jeśli ma do rozwiązania problem optymalizacji cen detalicznych w sieci handlowej, najpierw stosuje procedury uczenia maszynowego, następnie algorytmy prognostyczne, a na końcu optymalizacyjne. W przypadku doboru najlepszej oferty dla klienta, posługuje się kombinacją metod uczenia maszynowego i optymalizacyjnych. Jeśli zauważy błąd, usuwa go i kontynuuje proces, jeśli wyniki nie są zadowalające, powtarza dany krok używając innych parametrów.
W przypadku automatyzacji procesów analitycznych z użyciem sztucznej inteligencji konieczne jest połączenie wielu podsystemów AI, z których każdy jest odpowiedzialny za wykonanie i nadzorowanie pojedynczej czynności, w jeden system synchronizujący ich działanie. System, który zostanie wytrenowany i dostosowany do potrzeb i preferencji użytkowników.
Rys.4. Główne cechy nowoczesnej platformy analitycznej
Wbrew pozorom nie jest to lista pobożnych życzeń ani futurystyczne dywagacje. Platformy analityczne nowej generacji powstają tu i teraz i są dostępne komercyjnie w mniej lub bardziej zaawansowanej wersji. Cel jest jasny: udostępnienie użytkownikom nowoczesnego środowiska analitycznego na miarę cyfrowej ekonomii – a więc upowszechnienie analityki, sensowne wykorzystanie sztucznej inteligencji i efektywne wykorzystanie analitycznych talentów w organizacji.
Ten tekst jest częścią projektu How to do IT. To twój sprawdzony przewodnik po cyfrowej transformacji i technologiach dla biznesu. Zapisz się na newsletter projektu!