Nagromadzenie danych to jeszcze nie jest nauka (Galileusz)
Duże bazy danych na określony temat – najczęściej mowa o zachowaniach klientów ? to ostatnio temat pierwszych, najdalej drugich, stron gazet. BigData to temat przewodni konferencji i artykułów na pierwszych stronach periodyków branży IT. W 2011 roku artykuł na podobny temat kończyłem pytając:
Budowanie modeli na bazie małych partii danych jest po pierwsze wiarygodniejsze (paradoksalnie) niż proste wnioskowanie statystyczne, po drugie daje szanse odkrycia czegoś nowego. W czym problem? To drugie jest nie możliwe z pomocą deterministycznej maszyny jaką jest komputer. To wymaga człowieka, ten jednak nie daje się produkować masowo? ;), korporacja na nim nie zarobi.
Hm? czy przypadkiem promowanie systemów hurtowni danych, BI, pracy z terabajtami danych itp.. to nie tworzenie sobie rynku przez dostawców tych technologii? (Ujarzmić dane – ale po co ich aż tyle?). Ale po kolei. Jednak problem nadal jest. Redakcja COMPUTERWORLD tak zachęca do udziału w swojej konferencji z BigData w tytule (fragment):
Big Data nie jest tylko kolejnym hasłem marketingowym dostawców IT. To antycypacja zjawiska przekroczenia masy krytycznej wielkości, różnorodności, liczby i dynamiki źródeł gromadzonych w przedsiębiorstwie danych. Gdy mamy ich naprawdę dużo, gdy pochodzą one z wielu różnych miejsc, gdy są stale aktualizowane i ciągle ich przybywa, wtedy możliwości analityczne i potencjał wykorzystania wiedzy zgromadzonej w tych danych rośnie wykładniczo. Ale wymaga to całkiem nowych platform technologicznych i zestawów kompetencji.
Wniosek jaki wysnuto: potrzebna nowa, ?lepsza? technologia. Czy aby na pewno? Jeżeli jednak BigData ma nie być kolejnym hasłem marketingowym to znaczy, że nie jest najlepszym rozwiązaniem kupienie kolejnego jeszcze większego i jeszcze szybszego ?sprzętu?. Moim zdaniem w dalszej części zaproszenia zwrócono uwagę na kierunek dający większe szanse powodzenia:
Liczba danych gromadzonych w biznesie przyrasta rocznie o 50 procent. Więcej jednak wcale nie znaczy lepiej – by hasło Big Data przełożyło się na Big Business potrzeba nowych umiejętności, odpowiednich narzędzi i odpowiedniej strategii zarządzania informacją. (źr. Zaproszenie na konferencję BigData COMPUTERWORLD luty 2013)
Pada hasło strategia, na którym postaram się skupić w dalszej części. Wcześniej jednak zdefiniujmy pojęcie BigData by wiadomo było o czym tu będę traktował:
W 2001 roku META Group (obecnie Gartner) opublikowała raport, który opisuje big data w modelu 3V. Wskazuje on na dużą ilość danych (Volume), dużą zmienność danych (Velocity) oraz dużą różnorodność danych (Variety). W 2012 roku Gartner uzupełnił podaną wcześniej definicję wskazując, iż ?big data to zbiory informacji o dużej objętości, dużej zmienności i/lub dużej różnorodności, które wymagają nowych form przetwarzania w celu wspomagania podejmowania decyzji, odkrywania nowych zjawisk oraz optymalizacji procesów?. (źr. BigData WIKI)
Tak wiec mamy definicję: big data to zbiory informacji o dużej objętości, dużej zmienności i/lub dużej różnorodności. Resztę pominąłem zdania pominąłem, gdyż to czego BigData wymaga nie jest przedmiotem definicji pojęcia.
Na czym polega problem biznesowy? Generalnie ludzie (o heurystykach już pisałem) stosują metody indukcyjne jako narzędzie wyciągania wniosków. Indukcja to w naukach empirycznych metoda polegająca na wprowadzeniu uogólnień na podstawie eksperymentów i obserwacji faktów, formułowaniu i weryfikacji hipotez. Zaczątki indukcji w sensie nowożytnym stworzył F. Bacon, który uznał, że indukcja i eksperyment to dwie skuteczne metody ustalania prawdy. Słowo klucz tu to ?fakty?. Z indukcją mają do czynienia wszyscy, którzy korzystają z analizy trendów (np. analiza techniczna w przypadku analizy kursów walut czy akcji).
Problem z indukcją, jako metodą, polega na tym, że w zasadzie sprowadza się do próby oceny tego, z jakim prawdopodobieństwem powtórzy się historia badanego zjawiska. Metoda ta nie prowadzi do nowych odkryć, prowadzi do modeli opisujących prawdopodobieństwo powtórzenia się faktów, o których mamy wiedzę, że wystąpiły.
Firmy, w miarę rozwoju technologii i rozbudowy swoich procesów biznesowych, gromadzą coraz większe ilości danych o znanych im faktach ze swojej historii. Rejestrowane są coraz dokładniej i ?gęściej? w czasie, wszelkie zdarzenia na firmowych stronach WWW, wszelka wiedza o zdarzeniach w prowadzonej działalności. Firmy popycha do tego wiara w to, że im więcej danych tym lepsze wnioski. Praktyka jednak pokazuje, że rosnąca dokładność ?próbkowania? np. zachowań klientów nie prowadzi do proporcjonalnego wzrostu zamówień. Owszem, poznając te zachowania można lepiej zaadresować ofertę, to prawda ale nie jest to zależność liniowa.
Do 2015 roku ponad 85 proc. firm sklasyfikowanych w rankingu Fortune 500 nie będzie potrafiło efektywnie wykorzystać posiadanych zbiorów danych, bowiem wystąpi efekt tzw. big data. Co więc z tymi danymi robić? Ignorować je troszkę. Jeżeli prawdą jest, że dziś, w ciągu zaledwie dwóch dni produkujemy tyle danych, ile ludzkość wytworzyła od zarania dziejów do roku 2003, to porównując to z postępem dokonanym w ciągu ostatniej dekady z postępem ostatnich dwóch tysięcy lat, wniosek nasuwa się jeden: raczej nie ilość danych decyduje o wiedzy i postępie. Więc co?
W opozycji do indukcji jako metody poznania (epistemologia) stoi dedukcja. Dedukcja to rozumowanie polegające na wyprowadzaniu z przesłanek (zdań) uznanych za prawdziwe na podstawie faktów, następstwa będącego logicznym i prawdziwym wnioskiem. Innymi słowy, dedukcja polega postawieniu hipotezy na podstawie pewnej ograniczonej liczby danych (faktów), udowodnieniu jej słuszności (poprzez brak faktów przeczących tej tezie – nieudana falsyfikacja) i wyciąganiu wniosków o przyszłości. Jak dowodzi się takiej hipotezy? Testuje się sprawdzając, czy poprawnie opisuje znany z historii fakty. Innymi słowy: jeżeli nie odkryto faktów obalających tezę (pokazujących, że jest nieprawdziwa) uznaje się ją za poprawną.
Typowym przykładem indukcji jest prognozowanie pogody na bazie znanych z historii faktów: prognoza była uznaniem, że powtórzy się określona sytuacja zaobserwowana w przeszłości (np. nisko latające jaskółki zapowiadają deszcze). Obecne prognozy to dedukcja: na bazie określonej partii danych opracowano tezę: model fizyczny atmosfery i zjawisk w niej zachodzących. Model ten, po podaniu danych o stanie obecnym atmosfery, pozwala na wnioskowanie (wyliczenie) jego stanu na dzień lub tydzień następny (tu krótko i średnioterminowa prognoza). Co ciekawe, ta metoda (dedukcja) pozwala na przewidywanie faktów, które nie zaszły w przeszłości (z prawdopodobieństwem wynikającym z jakości użytego modelu i kosztu obliczeń).
Dedukcję jako metodę poznania (metoda dowodzenia poprzez stawianie hipotez i ich falsyfikację) opisał Karl Popper. Nosi ona obecnie nazwę ?metody naukowej?.
Jak to się ma do naszego BigData? Moim zdaniem BigData to ślepa uliczka. Rosnące nakłady na sprzęt i oprogramowanie zmniejszają jedynie błąd statystyczny obliczeń nie wnosząc nic do ich jakości w rozumieniu ?jakości prognozowania?. Co do ?odkrywania? czegokolwiek nie ma mowy, udowodniono, że metodami indukcyjnymi nie da się niczego nowego odkryć, można co najwyżej udokumentować trend. Owszem, pozostaje kwestia analizy korelacyjnej, czyli wykrywania związków pomiędzy faktami (np. czy pora dnia wpływa na decyzje zakupowe). Tego typu analizy nie są niczym nowym, są znane wśród specjalistów z zakresu Business Inteligence od dawna.
Tak więc kluczową strategią wydaje się tu być tak zwany program retencyjny, czyli strategia wyboru danych do przechowywania (i usuwanie pozostałych), bo nie da się „zapamiętać? wszystkiego. Jednym z ?modnych? elementów strategii sprzedażowych są tak zwane programy partnerskie. Maciej Tesławski (ekspert z zakresu marketingu) na swoim blogu pisze:
Programy retencyjne mogą być B2B, B2C i multipartnerskie, lojalnościowe mogą być tylko B2C bo w biznesie decyzje zakupowe podejmuje się w znacznym stopniu racjonalnie a nie emocjonalnie. Jeśli chodzi o ocenę działających programów retencyjnych, to podstawowy błąd jaki widzę to niewykorzystywanie bazy informacji o uczestnikach programu przez firmy. To jest potężny zbiór informacji o zachowaniach poszczególnych konsumentów, w połączeniu z danymi demograficznymi pozwala na ?poznanie? profilu najbardziej wartościowych konsumentów. Nie zauważyłem aby ktokolwiek to wykorzystywał. Dzieje się tak zapewne dlatego, że bazy danych rosną w postępie geometrycznym i przerastają możliwości ich bieżącego wykorzystywania.
Skoro tak, to wiemy co ? pozostaje jak. Jak zauważono na początku, przyrastająca ilość danych, a raczej korzystanie z nich, wymaga całkiem nowych platform technologicznych i zestawów kompetencji. Platformy technologiczne są, postęp techniczny nam je zapewnia. Wydaje się, że kluczem jest ?nowy zestaw kompetencji?.
Moim zdaniem dużymi krokami nadchodzi czas, gdy z analizy statystycznej należy się przerzucić na analizę systemową ? dedukcję, oraz odpowiednie strategie retencji danych. W niedawnej przeszłości stwierdzono, że rosnąca ilość danych i dalsze uszczegółowianie danych o zmianach temperatury, ciśnienia, wielkości opadów nie poprawiają jakości prognoz pogody. Zmieniono podejście i jak widać udało się, prognozy pogody nigdy nie były tak dokładne jak w ostatniej dekadzie a nie jest to efekt BigData.
Od technologii teraz nie oczekiwał bym ogromnych pojemności a mocy obliczeniowej, tu widzę drogę do sukcesu: analiza ograniczonej ilości faktów, budowanie modeli zachowań np. konsumentów, prognozowanie tych zachować. Myślę też, że pewnego progu jakości prognoz nie przekroczymy. Filozofia dowodzi, że nie da się stworzyć w świecie realnym demiurga (w filozofii Platona określano tak budowniczego świata nadającego kształty wiecznej, bezkształtnej materii według wzorców, jakie stanowią doskonałe idee; w filozofii nowożytnej demon potrafiący obliczyć przyszły stan świata na podstawie wiedzy o wszystkich atomach i prawach nimi rządzących). Praktyka pokazuje, że nie istnieje i długo nie powstanie taka moc obliczeniowa by choć troszkę się do demiurga zbliżyć.
A czym jest ta analiza systemowa i modelowanie? Wyobraźmy sobie kogoś, kto chce przewidywać zachowania kul podczas gry w snookera. Problem ten może zostać opisany faktami opisującymi grę powierzchownie: ?Gracz uderza białą kulę, która przemieszcza się z pewną prędkością, ta po określonym czasie uderza czerwoną kulę pod określonym kątem, uderzona czerwona kula przemieszcza się na pewną odległość w pewnym kierunku.? Można sfilmować setki tysięcy takich uderzeń, zarejestrować z dowolna dokładnością parametry każdego uderzenia i jego skutki. Jednak tą metodą i tak nie stworzymy nawet dość dobrej symulacji. Aby stworzyć na prawdę dobrą symulację, należy zrozumieć prawa rządzące ruchem kul, ich zależność od siły i kierunku uderzenia, kierunku itp. Zrozumienie tych praw pozwoli znacznie łatwiej przewidzieć skutek każdego uderzenia.? (na podstawie Analysis Patterns. Reusable Object Models, Martin Fowler, Addison-Wesley, 1997).
P.S.
W ramach uzupełnienia dyskusji o indukcji zamieszczam cytat z Karla Poppera, jedna z wielu obecnych opinii o indukcji jako metodzie:
Polecam teą artykuły wcześnijesze:
Jaki jest wniosek z powyższego artykułu? Trudno porównywać analizowanie pogody, zbieranie danych o klientach i inne obszary analiz statystycznych. Często jest tak, że konieczne jest zebranie danych za określony okres czasu, aby móc zacząć obserwować zachowania. Niektóre zdarzenia gospodarcze uwidaczniają się dopiero po kilku miesiącach a niektóre po roku. Analiza danych wstecz jest pomocna do oceny, czy zmiany które chce się wprowadzić są korzystne, a także czy wprowadzone zmiany zmieniły rozkład charakterystyk. Dane to nie wszystko, na to trzeba nałożyć narzędzia, perspektywy. Analiza przed utworzeniem struktury jest kluczowa – wpływa na późniejsze możliwości wykorzystania danych. Potem kluczowa jest analiza biznesowa czy z danych, które są zbierane, można wyciągnąć kolejne wnioski.
Wniosek pierwszy: nie ma podstaw by „klonować” zdarzenia historyczne w przyszłość uznając je jako prognozę, owszem można uznać, że prawdopodobnie się powtórzą ale nie mamy żadnej wiedzy by to prawdopodobieństwo ocenić. Powszechnie „stosowana” analiza techniczna kursów akcji pokazuje, że te „wróżby” maja wartość rzutu monetą.
Wniosek drugi: stosowanie metody analizy faktów historycznych z zasady niemożliwe jest „przewidzenie” niczego nowego, czegoś co się nie wydarzyło jeszcze.
I moje pytanie: Co to znaczy „nałożyć narzędzia, perspektywy”?
Na ostatnie zdanie odpowiedź powyżej: „wnioski o historii”. Ale te akurat nie są specjalnym wyzwaniem.
Tak jak potraktował Pan temat przewidywania z masowych ilości danych tak samo można potraktować Pana artykuł. Czyli błędne jest wniosek, że „jeżeli ze średnio dużej ilości danych nie można wywnioskować reguły tak i z bardzo dużej ilości danych takiej reguły nie uda się wywnioskować”.
W wielu wypadkach nie wiemy, czy ilość ma znaczenie. Ale jak pokazuje praktyka w wielu wypadkach ilość jednak ma kolosalne znaczenie na znajdowanie nowych rozwiązań np. algorytmy genetyczne, czy też biologiczne.
Lecz należy pamiętać, że duża ilość danych potrzebuje nowych mechanizmów analitycznych i narzędzi. Zapewne bardziej heurystycznych niż indukcyjnych, bardziej samoadaptujących się i samoprogramujących.
Mój artykuł mówi, że do prognozowania lepsze są modele danego zjawiska o dowiedzionej poprawności a nie masowo zbierane dane faktach i ocena tego czy mogą się powtórzyć. Innymi słowy: jeżeli opiszemy kule bilardowe prawami fizyki łatwo przewidzimy skutek każdego nowego uderzenia, nawet jeżeli będzie to pierwsze uderzenie. Jednak mając jednie zapisy skutków dotychczasowych uderzeń możemy ocenić podobieństwo kolejnego uderzenia i na pewno nie przewidzimy skutków uderzenia, którego nikt jeszcze nie wykonał. Konkluzja druga: pewnych rzeczy praktycznie nie da się przewidzieć przy obecnym stanie wiedzy i liczba pomiarów niczego w tym nie zmienia.
Aha: heurystyka to właśnie indukcja: wywodzenie wniosków z dotychczasowego doświadczenia.
Big Data nie oznacza „sprawdzanie czy mogą się powtórzyć”. To jest jedna z najprostszych metod wnioskowania, stosowana zresztą od wieków: powtarzanie i naśladowanie – pierwowzór indukcji. Indukcja jest odmienna od heurystyki. Indukcja to „rozumowanie” krok po kroku, aby udowodnić twierdzenie, zaś heurystyka poszukiwanie nowych faktów lub związków między faktami, których nie trzeba udowadniać. W informatyce algorytmy heurystyczne nie dają 100%/najlepszego rozwiązania (dowodu, który zawsze jest prawdziwy), lecz znajdują maksimum wystarczająco dobre przy pewnych ograniczeniach – np. czasu i/lub mocy obliczeniowej.
Owszem, najprostsza i najgorsza (ale najłatwiejsza), indukcja jest bardzo złą metodą dla pojedynczego człowieka, indukcja (czyli heurystyka) ratuje statystycznie „stado”, dla jednostki wnosi pewne nieznane prawdopodobieństwo przeżycia. Indukcja to wywodzenie czegoś z już istniejących faktów, heurystyka to powtarzanie zachować uznanych za skuteczne (czyli wniosek indukcyjny: udało się kilka razy to znaczy, że to dobre zachowanie). Metody heurystyczne, dają tak tym lepsze efekty im bardziej trywialny jest problem, problemy nowe nie dają się rozwiązywać metodami heurystycznymi, a o tym głównie piszę. Innymi słowy BigData niczego nowego nigdzie nie odkryje…
kilka uzupełnien;
– heurystyka
– indukcja
Są to metody wnioskowania lub podejmowania decyzji na podstawie znanych faktów i ich wzajemnego kojarzenia.
Wątpliwości na temat indukcji
Dodałem także P.S. do artykułu.
To bardzo zależy od tego do czego te dane sa wykorzystywane i jakiej są jakości. Nie od dziś wiadomo, że stojąc z psem przed domem mamy statystycznie po trzy nogi – a jednak poprawnie stosowane wnioskowanie statystyczne jest ważnym czynnikiem wielu biznesów. Znam kilka przykładów budowy modeli predykcyjnych w oparciu o big data, które dają imponujące wyniki – ale bynajmniej nie jest to metodą podzielmy przychody firmy przez liczbę handlowców będzie dobry wskaźnik jakości ich pracy.
Nie twierdzę, że statyka jest zła ale trzeba mieć świadomość jej ograniczeń. Predykcja statystyczna (typowa indukcja) ma sens tam gdzie horyzont prognozy jest relatywnie mały w porównaniu ze okresem zmienności (np. planowanie wschodów słońca na najbliższe dziesiątki a zapewne tysiące lat), ale nie sprawdza się już to w przypadku prognoz pogody czy kursów akcji albo walut. Przykład z psem i człowiekiem to właśnie przykład skutków uproszczenia (ja wolę ten: trzymając jedną nogę we wrzątku a drugą w lodówce, statystycznie trzymamy nogi w temperaturze pokojowej ;)). Statystyka to wyłącznie historia, a w roli prognostyka – prawdopodobieństwo jej powtórzenia. W przypadku BigData mają sens analizy korelacyjne (od lat stosowane w wykrywaniu nadużyć, ocenie skuteczności akcji promocyjnych) ale z predykcją byłbym ostrożny z uwagi na „wróżbiarski” charakter indukcji jako metody wnioskowania. Każdy kto bawi się analizą techniczną na giełdzie czyta, że małpom wychodzi podobnie (a podobno bywa, że lepiej) bez tej całej analizy ;).
Tak więc BigData niewątpliwie jest dobre w określonych sytuacjach, ale teza, że „zmieni świat” jest w moich oczach mocno naciągana, pomijam fakt, że jest promowana tylko przez dostawców technologii wspierających ten trend.
mamy już przykłady „przydatności” wielkich ilości dancyh: https://panoptykon.org/wiadomosc/william-binney-o-tym-dlaczego-masowa-inwigilacja-nie-dziala-i-czemu-realnie-sluzy