Informacja zapisana w danych

Data: 2009-07-29
Autor: Sebastian Konkol

W ramach przedwakacyjnego remanentu, porządkowałem materiały, jakie nagromadziły się w czasie ostatniego roku mojego „życia naukowego” (studium doktoranckie przy IBS PAN). Poza „nabyciem porządku w papierach” udało mi się uzyskać inne korzyści z tego wysiłku – zgrupowałem kilka zagadnień, które dotyczą rozwoju nauki o przetwarzaniu danych, czyli informatyki. Częścią z tych tematów dzielę się poniżej – reszta nadal pozostanie tajemnicą naukowców. :-)

Ogólna refleksja, jaka rodzi się z porównania naukowych i komercyjnych trendów rozwoju informatyki jest taka: IT jakby się zagubiło w otaczającej nas rzeczywistości, a wręcz jakby zaczęło kreować rzeczywistość dla własnych potrzeb. W zastosowaniach komercyjnych technologia informatyczna coraz częściej ucieka od korzeni, czyli zadań przetwarzania informacji, a coraz częściej zajmuje się po prostu wyścigiem technologicznym. Jest to jednak wyścig, którego nie udaje się znaleźć uzasadnienia (lub uzasadnienia te są mocno naciągane) w powszechnych wymaganiach i oczekiwaniach odbiorców. Pisząc „powszechnych” mam na myśli większość odbiorców IT – wszystkich bez wyjątków odbiorców indywidualnych oraz przytłaczającą większość odbiorców instytucjonalnych, czego nie można mylić z zastosowaniami niszowymi, jak wojskowe zastosowania symulacji pola walki, prognozowanie zachowań atmosfery Ziemi, czy kryptoanaliza (czyli łamanie zabezpieczeń kryptograficznych, o której jednak mało się mówi). Nie warto się doszukiwać wyjaśnień z pogranicza spiskowej teorii dziejów, ale wypada wyrazić nadzieję, że ten ślepy pęd technologiczny nie doprowadzi do jakiegoś Armagedonu.

Wbrew perspektywie komercyjnej, ta prawdziwa informatyka, czyli nauka o przetwarzaniu informacji, rozwija się bardzo dynamicznie. Poza postępami w tworzeniu prawdziwej sztucznej inteligencji, także na innych polach można pokazać ciekawe rozwiązania, dla których znajduje się (chciałbym napisać „bez trudu”, ale w kapitalistycznym świecie nie ma takiego pojęcia) zastosowania komercyjne. A ilustracją takiej tezy będą właśnie przykłady ze świeżo posegregowanej sterty materiałów naukowych, a konkretnie dwa przykłady odnoszące się do zagadnienia narastającej trudności ogarnięcia rozumem człowieka ogromnych wolumenów danych, jakich analiza jest niezbędna w codzienności biznesowej – gdzie trzeba wiedzieć coś szybko, a decyzje podejmować jeszcze szybciej.

Przykład pierwszy odnosi się do zagadnień „wiedzieć szybko” czyli sytuacji, w której jest dużo danych do przejrzenia, ale czasu na ich przeglądanie nie ma wcale. Zwykle w takich sytuacjach wcale nie jest ważne, aby odpowiedź była wyliczona precyzyjnie (np. przedstawienie średniej temperatury Słońca chyba nie jest zwykle potrzebne z dokładnością do trzech miejsc po przecinku). No dobrze, ale jak powiedzieć coś o terabajtach danych, jeśli nie przejrzymy ich i nie policzymy? Odpowiedzią nauki o przetwarzaniu informacji jest teoria zbiorów przybliżonych. Skupia się ona na wydobywaniu wiedzy z dużych wolumenów danych, a przewaga leży w odpowiedniej reprezentacji wiedzy. W dużym uproszczeniu, jeśli posiadane dane zostaną wstępnie przeliczone do postaci zagregowanej według odpowiednio „sprytnych” algorytmów, to analizując jedynie agregaty danych można z dużym poziomem ufności wnioskować o naturze rzeczy opisywanych zagregowanymi wyliczeniami. Zaletą takiego podejścia jest właśnie możliwość zdobywania w bardzo krótkim czasie odpowiedzi na pytania, na które nie udałoby się odpowiedzieć analizując szczegółowo dostępne dane. Trudnością tego podejścia jest wyliczanie takich agregatów, które pozwalają na odpowiedzi na stosunkowo szerokie spektrum pytań oraz takie partycjonowanie wyliczanych agregatów, aby odpowiedzi precyzyjne dawało się wyliczać z przeglądu jedynie małej części danych szczegółowych, nie zaś wszystkich. Teoria zbiorów przybliżonych podpowiada różne agregaty, które w takich wypadkach warto stosować na przykład – poza oczywistymi, jak średnia, mediana, wariancja, minimum czy maksimum – mogą to być rozkłady decylowe, rozkłady prawdopodobieństwa (to podstawowa cecha odróżniająca tę teorię od znanych kostek wielowymiarowych powszechnie stosowanych w biznesie). Doświadczenia zbiorów przybliżonych podpowiadają także rozwiązania z obszaru partycjonowania danych – kojarzenie podziału danych na bloki związane ze statystykami wyliczanymi dla każdego z bloków pozwalające na przykład wykluczać dane bloki z przeszukiwania ich dla konkretnych klas zapytań (np. wyliczenie wartości minimalnej dla zmiennej w danym bliku pozwala na wykluczenie bloku, jeśli pytanie dotyczy zbioru, w którym wartość poszukiwana jest mniejsza niż minimalna w bloku). Najlepszą referencją dla komercyjności tej teorii jest firma InfoBright. Jeśli zachęciłem do poszukiwań naukowych, proponuję zacząć od lektury: Z. Pawlak, „Zbiory przybliżone”, 1982.

Przykład drugi odnosi się do zagadnień „podejmować decyzje jeszcze szybciej” czyli sytuacji, w której na podstawie jakichś danych (nawet niezbyt dużych wolumenów) trzeba podjąć konkretną decyzję. Co ciekawe, w takich sytuacjach nie jest wcale ważne, czy wartości bezwzględne analizowanych zmiennych są takie, czy inne – ważne jest zwykle, czy wartości te są np. typowe na tle wszystkich pojawiających się lub możliwych wartości tych zmiennych. Co więcej, wystarczające dla podjęcia decyzji są określenia stosunkowo słabo kwantyfikowalne, jak na przykład „większość”, „duże”, czy „zróżnicowane”. Nauka o przetwarzaniu informacji pomaga tu teorią obliczeń na słowach. Brzmi dziwnie? Zaraz będzie jasne. Człowiek naturalnie i intuicyjnie posługuje się określeniami jakościowymi (np. bez zamyślenia się nad naturą rzeczy wie, co to znaczy człowiek wysoki i odróżnia go od człowieka niskiego). Dostępne systemy obliczeniowe jednak, w zakresie prowadzenia obliczeń, posługują się niemal wyłącznie liczbami. Stąd trudność w dogadaniu ludzi z maszynami, bo te ostatnie radzą sobie równie dobrze z pojedynczym kilobajtem jak z petabajtami danych – rozumieją je tak samo dobrze. Człowiek gubi się już w tabelce o sześciu kolumnach i dziesięciu wierszach. Na szczęście jednak to ciągle my rządzimy maszynami (ukłon dla braci Wachowski za przestrogę), więc myślenie naukowe poszło w kierunku nauczenia maszyn „gadania po naszemu” – w tym przypadku rozumienia pewnej klasy zapytań i serwowania odpowiedzi w języku znacznie bardziej zbliżonym do naturalnego. Jak to wygląda? Pytanie: „jaki jest rozkład sprzedaży naszych produktów?” Odpowiedź: „większość przychodu generowana jest przez jeden produkt, czy chcesz wiedzieć więcej o reszcie przychodu?” Oczywiście, nie dzieje się to automatycznie i trochę trzeba się natrudzić, a dużo problemów sprawia modalność języka naturalnego. Tym niemniej, oglądałem w działaniu prototyp (MS Access) narzędzia oferującego spójny język zapytań i prezentujący wyniki konstruowane w myśl zasad obliczeń na słowach. Ciąg dalszy (dla naprawdę zainteresowanych): L. Zadeh, J. Kacprzyk, “Computing with Words”, 1999.

W czasie porządkowania papierów natrafiłem także na ciekawostki, które warto przytoczyć:

  • Collaborative Computational Intelligence. Zagadnienia inteligencji obliczeniowej mają zastosowania biznesowe w różnych branżach, w których występują obszary niedozwolonej wymiany danych ale pozwalające na wymianę wiedzy. Dla przykładu prawo telekomunikacyjne i ochrona danych osobowych w Polsce nie pozwalają na powszechną wymianę danych o dłużnikach firm telekomunikacyjnych. Gdyby jednak każdy z operatorów zbudował na podstawie posiadanych danych szczegółowych pewien model oceny wyliczający np. prawdopodobieństwo bycia potencjalnym dłużnikiem, to takie modele mogłyby być wymieniane miedzy operatorami. Oczywiście, wiadomo, co operatorzy by z tym zrobili…
  • Wspomaganie decyzji wielokryterialnych w sytuacjach kooperacyjnych. Dotyczy to sytuacji, w których należy dobrać rozwiązanie kompromisowe dla kilku stron negocjacji w sytuacji, w której każda ze stron ocenia całość rozwiązania z perspektywy innych kryteriów. W ogólności jest to problem bez rozwiązań analitycznych, ale istnieją metody wspomagające dochodzenie do porozumienia (R. Fisher, “Single Negotiation Text Procedure”), które doczekały się skutecznego wsparcia metod przetwarzania informacji. Przy okazji ten Fisher to ten sam który był współautorem znanej książki “Getting to Yes” (R. Fisher, W. Ury, Houston Mifflin, Boston, 1981). W notatkach z tego wykładu zapisałem sobie „tragedia, czyli jak urzędnik poprosi o pomoc naukowca…”, ale to w odniesieniu do zupełnie czegoś innego.
  • Informacyjne aspekty analizy danych. Każdemu osobnikowi, którego działalność przetwarzania danych wykracza poza dodawanie słupków, polecałbym zapoznanie się z dorobkiem ludzkości na temat wnioskowania statystycznego. Niewątpliwie, udałoby się dzięki temu uniknąć wielu sytuacji, w których klienci IT odchodzą rozczarowani, gdyż IT okazało się nie być wróżką z magiczną różdżką. Polecam na początek: L. T. Kubik, „Zastosowanie elementarnego rachunku prawdopodobieństwa do wnioskowania statystycznego”, Wydawnictwo Naukowe PWN, Warszawa.

Jeśli więc jesteś, Drogi Czytelniku, zainteresowany takimi zastosowaniami technologii informatycznych, proszę o sygnał! W najgorszym wypadku wytężysz nieco umysł, a może wyniknie z tego coś bardzo pożytecznego dla Twojej firmy!

Pozostaw komentarz