Data mining w systemach dynamicznych
|
|
- Radosław Baranowski
- 8 lat temu
- Przeglądów:
Transkrypt
1 Zakład Zaawansowanych Technik Informacyjnych (Z-6) Data mining w systemach dynamicznych Praca statutowa nr Warszawa, grudzień
2 Data mining w systemach dynamicznych Praca statutowa nr Słowa kluczowe: data-mining, system dynamiczny Kierownik pracy: dr inż. Szymon Jaroszewicz Wykonawcy pracy: dr inż. Szymon Jaroszewicz dr inż. Janusz Granat c Copyright by Instytut Łączności, Warszawa 2007
3 Spis treści 1 Publikacje powstałe w ramach pracy 4 2 Wstęp Notacja Analiza systemów z czasem dyskretnym Ukryte Modele Markowa (HMM) Prawdopodobieństwo zaobserwowania danej sekwencji wyjściowej w ukrytym modelu Markowa Interesujące sekwencje czasowe Znajdowanie często występujących sekwencji w danych Znajdowanie często występujących sekwencji w ukrytym modelu Markowa Szacowanie parametrów ukrytego modelu Markowa Przykładowa aplikacja: analiza logów serwera WWW Instytutu Łączności Preprocessing danych Model początkowy Etapy budowy modelu Inne interesujące sekwencje Ostateczny model Reguły asocjacyjne dla atrybutów numerycznych Omówienie artykułów Przykładowe zastosowanie do układu równań opisującego prosty system biologiczny 14 7 Klasyfikator oparty o maksymalizację AUC Dodatkowe artykuły powstałe w ramach pracy 16 3
4 1 Publikacje powstałe w ramach pracy 1. T. Calders and S. Jaroszewicz. Efficient AUC optimization for classification. In 11th European Conference on Principles and Practice of Knowledge Discovery in Databases (PKDD 07), pages 42 53, Warsaw, Poland, nagroda za najlepszy artykuł. 2. S. Jaroszewicz. Minimum variance associations discovering relationships in numerical data. Praca wysłana, S. Jaroszewicz, L. Ivantysynova, and T. Scheffer. Schema matching on streams with accuracy guarantees. Praca przyjęta do Intelligent Data Analysis Journal. 4. S. Jaroszewicz and M. Korzeń. Approximating representations for large numerical databases. W 7th SIAM International Conference on Data Mining (SDM 07), pages , Minneapolis, MN, D.A. Simovici S. Jaroszewicz, T. Scheffer. Scalable pattern mining with bayesian networks as background knowledge. Praca wysłana. 6. S. Jaroszewicz. Cross-selling models for telecommunication services. Praca wysłana do JTIT. 7. J. Granat. Models and Algorithms for Event Mining. Proceedings of the 8th International Symposium on Knowledge and Systems Sciences, Japan Advanced Institute of Science and Technology, pp.53-58, Plenary talk. 2 Wstęp Systemy dynamiczne występują powszechnie we współczesnej technice i nauce. Przykładem mogą tu być sieci telekomunikacyjne, natężenie ruchu drogowego, a także procesy zachodzące w organizmach żywych (przedmiot analizy tzw. biologii systemowej). Analiza zachowania takich systemów ma więc bardzo duże znaczenie. Ilość danych opisujących zachowanie współczesnych systemów jest ogromna. Często nie jest możliwe nawet ich przechowywanie. Konieczne jest więc zastosowanie metodologii data mining. Istnieje wiele metod data mining pozwalających na analizę danych czasowych pochodzących z systemów dynamicznych. Metody te nie uwzględniają jednak dotychczasowej wiedzy o systemie, ani istniejących modeli matematycznych opisujących system. W niniejszej pracy opracowane zostały algorytmy omijające ten problem. Oparto się o metodologię opracowaną wcześniej przez jednego z autorów [14, 13]. Polaga ona na budowie modelu probabilistycznego, opisującego system. Opracowane algorytmy znajdują następnie zbiory atrybutów, których rozkład prawdopodobieństwa w danych odbiega od tego co przewiduje model. W niniejszej pracy metody te zostały dostosowane do systemów dynamicznych. W ramach pracy powstało kilka publikacji, a także szereg nowych wyników, które zostaną opublikowane w roku przyszłym. 4
5 W pracach [9, 16] (6, 5 powyżej) przedstawiono dalsze zastosowania i rozszerzenia metod z [14, 13] m.in. w problemie cross-sellingu usług telekomunikacyjnych. Opracowane ulepszenia poporawiły stabilność metod i ułatwiły ich zastosowania. W systemach dynamicznych często występują zmienne numeryczne. Algorytmy data mining działają jednak przede wszystkim na zmiennych dyskretnych. Aby możliwe było zastosowanie tych algorytmów do danych numerycznych (a co za tym idzie do szerokiej klasy systemów dynamicznych), konieczne było ich uogólnienie na dane numeryczne. Uogólnienia takie zostały przedstawione w pracach [10, 12] (4, 2 powyżej). Podejście przedstawione w [10] pozwala ponadto na uwzględnienie istniejącego opisu matematycznego modelu i znajdowania zbiorów atrybutów od niego odbiegających. Zostało to wykorzystane poniżej w analizie systemów biologicznych. Dodatkowo, wyniki z pracy [12] zostały wykorzystane w artykule [4] (1 powyżej) gdzie przedstawiono bardzo wydajną metodę budowy kalsyfiaktora maksymalizującego bezpośrednio pole pod krzywą ROC. Praca ta zdobyła nagrodę za najlepszy artykuł na europejskiej konferencji data miningowej. Dodatkowo w pracy [11] (3 powyżej) rozwinięto algorytm pozwalający na znajdowanie odpowiadających sobie atrybutów w różnych bazach danych. Z uwagi na możliwość zastosowania tego podejścia także do strumieni danych, praca ma znaczenie także dla analizy systemów dynamicznych. W artykule [7] przedstawiono usystematyzowanie podejść do modelowania z uwzględnieniem zdarzeń. Poniżej opisano pokrótce wyniki uzyskane w szeregu publikacji powstałych w ramach pracy, a także nieopublikowane nowe wyniki. 2.1 Notacja Wektory oznaczane będą małymi, wytłuszczonymi literami, a macierze wytłuszczonymi literami wielkimi. Wektory są wektorami wierszowymi, wektory kolumnowe oznaczane będą poprzez jawne użycie operacji transpozycji T. Indeksy górne będą oznaczały czas, a indeksy dolne współrzędne wektorów, np. π t i oznacza i-tą współrzędną wektora π w chwili t. Ponieważ w naszym przypadku, macierze nie zmieniają się w czasie, indeksy górne nad macierzami będą oznaczały potęgowanie, np. P t oznacza macierz P podniesioną do potęgi t. 3 Analiza systemów z czasem dyskretnym Ogólne podejście będzie polegało na dostosowaniu metodologii z [14, 13]. Polega ona na interaktywnej budowie modelu opisującego badany system. Użytkownik dysponuje danymi opisującymi zachowanie systemu, a także wstępnym (być może pustym) modelem jego działania. Metodami data mining znajdowane są następnie zdarzenia, których prawdopodobieństwo wystąpienia w danych różni się w największym stopniu od tego co przewiduje model. Zastosowanie metodologii data mining pozwala na wyjście poza proste korelacje i analizowanie bardziej złożonych zależności. 5
6 3.1 Ukryte Modele Markowa (HMM) W niniejszym rozdziale opisana zostanie metoda znajdowania interesujących sekwencji czasowych. Zgodnie z zastosowaną metodologią potrzebny będzie model opisujący zachowanie systemu w czasie. Ponieważ rozważamy modele z czasem dyskretnym najlepszym narzędziem będą tu ukryte modele Markowa (HMM - Hidden Markov Models) [15]. Ukrytym modelem Markowa nazywamy piątkę < S,O,π 0,P,E >, gdzie S = {s 1,...,s n } jest zbiorem stanów, O = {o 1,...,o m } zbiorem symboli wyjściowych, π 0 = (π 0 1,...,π 0 n) wektorem początkowych prawdopodobieństw stanów modelu, a P macierzą przejść, gdzie P ij oznacza prawdopodobieństwo przejścia ze stanu s i do stanu s j. Ostatni element piątki, E jest macierzą prawdopodobieństw emisji, tak że E ij jest prawdopodobieństwem zaobserwowania na wyjściu symbolu o j, jeżeli model znajduje się w stanie s i. Zauważmy, że wektor π t prawdopodobieństw stanu systemu w czasie t wyraża się wzorem π t = π 0 P t. Podobnie πe jest wektorem prawdopodobieństw zaobserwowania poszczególnych symboli wyjściowych, jeżeli prawdopodobieństwa stanów modelu zadane są wektorem π. 3.2 Prawdopodobieństwo zaobserwowania danej sekwencji wyjściowej w ukrytym modelu Markowa Zdefiniujemy obecnie dwie wielkości pozwalające na obliczenie prawdopodobieństwa zaobserwowania danej sekwencji czasowej. Szczegóły znaleźć można w [15]. Niech O t = o 0,o 1,...,o t będzie ciągiem symboli wyjściowych, i niech q t oznacza stan ukrytego modelu Markowa w czasie t. Prawdopodobieństwo wprzód jest zdefiniowane jako α(o t,i) = Pr{o 0,...,o t,q t = s i }, to znaczy jako prawdopodobieństwo, że model wyemituje sekwencję o 0,...,o t i znajdzie się w stanie s i w czasie t. Oznaczmy α(o t ) = (α(o t, 1),α(O t, 2),...,α(O t,n)). Prawdopodobieństwo wystąpienia sekwencji O t można wyznaczyć sumując elementy wektora α(o t ). Niech O t+1:t = o t+1,o t+2,...,o T będzie ciągiem symboli wyjściowych. Prawdopodobieństwo wstecz jest zdefiniowane jako β(o t:t,i) = Pr{o t+1,o t+2,...,o T,q t = s i }, to znaczy jako prawdopodobieństwo, że model znając się w czasie t w stanie s i wyemituje sekwencję o t+1,...,o T. Zauważmy, że w tym przypadku prawdopodobieństwo liczymy wstecz, od ostatniego wyemitowanego symbolu. Oznaczmy β(o t:t ) = (β(o t+1:t, 1),β(O t+1:t, 2),...,β(O t+1:t,n)) Prawdopodobieństwo wystąpienia sekwencji O t można obliczyć jako π t β(o t ) T. 6
7 Ważną własnością wartości α i β jest możliwość ich łatwego uaktualniania na dłuższe sekwencje: α(o 0,...,o t,o t+1,i) = α(o 0,...,o t )PE i,o t+1 n β(o t,o t+1,...,o T,i) = P ij E j,o tβ(o t+1,...,o T,j). j=1 3.3 Interesujące sekwencje czasowe Zbiór danych D zawiera N sekwencji czasowych D = {O 1,...,O N }, gdzie O j = o 0 j,o 1 j,...,o t j j. Niech O = o 0,o 1,...,o t będzie sekwencją symboli rozpoczynającą się w czasie t = 0. Oznaczmy przez Pr HMM {O} prawdopodobieństwo wystąpienia sekwencji O obliczone na podstawie ukrytego modelu Markowa. Podobnie prawdopodobieństwo wystąpienia tej sekwencji w danych oznaczymy przez Pr D {O} = {O D : O zaczyna się od O}. D Stopień w jakim O jest interesująca określamy, analogicznie do [14], następującym wzorem I(O) = Pr D {O} Pr HMM {O}. (1) Schemat algorytmu znajdowania wszystkich sekwencji czasowych symboli spełniających warunek I(O) ε dla zadanego przez użytkownika progu ε przedstawiony jest na rys Znajdowanie często występujących sekwencji w danych Dzięki temu, że wszystkie sekwencje zaczynają się w czasie t = 0 znajdowanie wszystkich często powtarzających się sekwencji w danych jest proste. Na początku sekwencje są sortowane w porządku leksykograficznym. Następnie każdy rekord jest porównywany z poprzednim. Prefiksom należącym do części wspólnej zwiększamy częstość występowania o 1. Pozostałe prefiksy z poprzedniego rekordu nie mogą się już nigdy więcej pojawić, więc wystarczy sprawdzić czy ich częstość przekracza próg ε. 3.5 Znajdowanie często występujących sekwencji w ukrytym modelu Markowa Znajdowanie w ukrytym modelu Markowa wszystkich sekwencji o zadanym minimalnym prawdopodobieństwie zrealizowane zostało przez prostą modyfikację algorytmów znajdowania częstych kompleksów [2]. Algorytmy te opierają się na fakcie, że jeżeli prawdopodobieństwo danej sekwencji jest małe to prawdopodobieństwo jej przedłużeń jest jeszcze niższe więc można te przedłużenia pominąć. W istocie algorytm tu przedstawiany 7
8 Input: Ukryty model Markowa HMM, zbiór sekwencji czasowych D, ε - minimalna wartość określająca jak interesująca jest sekwencja Output: Zbiór sekwencji symboli {O i : I(O i ) ε} 1. Oszacuj parametry π 0, P, E modelu HMM na podstawie danych D przy pomocy algorytmu Bauma-Welcha 2. Znajdź zbiór C D sekwencji występujących z dużym prawdopodobieństwem w danych C D = {O : Pr D {O} ε} 3. Znajdź zbiór C HMM sekwencji dla których model HMM przewiduje występowanie z dużym prawdopodobieństwem C HMM = {O : Pr HMM {O} ε} 4. Oblicz Pr D {O} dla każdego O C HMM \ C D 5. Oblicz Pr HMM {O} dla każdego O C D \ C HMM 6. Oblicz I(O) dla każdej sekwencji O C D C HMM Rysunek 1: Algorytm znajdowania interesujących sekwencji czasowych względem ukrytego modelu Markowa. jest wydajniejszy niż [2] gdyż obliczanie prawdopodobieństw w modelach Markowa jest szybsze niż w dużych bazach danych. Algorytm jest przedstawiony na rys. 2. W algorytmie korzystamy z prawdopodobieństw α. Analogiczny algorytm można zbudować na prawdopodobieństwach β, lecz okazał się on nieco mniej wydajny. 3.6 Szacowanie parametrów ukrytego modelu Markowa Szacowanie parametrów ukrytego modelu Markowa na podstawie danych, odbywa się przy pomocy algorytmu Bauma-Welcha [15, 18]. Algorytm ten jest jednym z przykładów klasy algorytmów zwanej expectation-maximization pozwalających na szacowanie ukrytych parametrów. Metoda przebiega następująco. Zaczynamy od ukrytego modelu Markowa z losowo wybranymi prawdopodobieństwami przejść i emisji i zakładamy, że prawdopodobieństwa te są poprawne. Na podstawie tych prawdopodobieństw i danych obliczamy oczekiwane nowe prawdopodobieństwa przejścia i emisji. Na przykład aby obliczyć prawdopodobieństwa przejścia korzystamy z wartości X t (s i,s j ) = Pr{q t = s i q t+1 = s j } = α t (o 1,...,o t,i)p ij E i,o t+1β(o t+2,...,o T,j) j α t(o 1,...,o t,i)p ij E i,o t+1β(o t+2,...,o T,j). i 8
9 Input: Ukryty model Markowa HMM, ε - minimalna wartość prawdopodobieństwa Output: Zbiór sekwencji symboli {O i : Pr HMM {O i } ε} 1. funkcja FreqHMM(O, α(o)): 2. Jeżeli i α(o,i) ε: 3. Dodaj O do zbioru wynikowego 4. Dla każdego symbolu o: 5. Oblicz α((o,o)) 6. Wywołaj FreqHMM((O,o), α((o,o))) 7. Wywołaj FreqHMM(, (1, 1,...,1)) 8. Zwróć zbiór wynikowy Rysunek 2: Algorytm znajdowania sekwencji o dużym prawdopodobieństwie w ukrytych łańcuchach Markowa. Nowe prawdopodobieństwa przejścia oblicza się ze wzoru P t ij = Xt (s i,s j ) j Xt (s i,s j ). t W podobny sposób można obliczyć nowe prawdopodobieństwa początkowe i prawdopodobieństwa emisji [15, 18]. Algorytm Bauma-Welcha zbiega do minimum lokalnego. Z doświadczeń praktycznych autora wynika jednak, że jeżeli początkowa macierz prawdopodobieństw emisji pozwala na wystarczająco dobre powiązanie emitowanych symboli ze stanami wewnętrznymi, algorytm szybko zbiega do minimum globalnego. W prezentowanym poniżej przykładzie, taka sytuacja miała miejsce. 4 Przykładowa aplikacja: analiza logów serwera WWW Instytutu Łączności W niniejszej części zostanie przedstawiona przykładowa aplikacja powyższego algorytmu do modelowania zachowań klientów odwiedzających stronę internetową Instytutu Łączności. 4.1 Preprocessing danych Uzyskaliśmy dostęp do logów systemowych za okres około jednego roku. Każda pozycja w logu zawiera szereg informacji takich jak data i czas zdarzenia, plik, którego ono dotyczyło, kod błędu itp. 9
10 _all_ quit _all_sink Rysunek 3: Początkowy model HMM opisujący zachowanie odwiedzających stronę internetową Instytutu Łączności Ponieważ na serwerach instytutowych jest bardzo wiele dostępnych plików, model zawierałby bardzo dużą liczbę symboli. Aby tego uniknąć, jako symboli użyto tylko najwyższego katalogu z którego pobrano plik. Jest to celowe również dlatego, że bardziej przydatny wydaje się model, który podaje ogólną, zrozumiałą charakterykę zachowań. Dzięki logicznemu podziałowi zawartości stron Instytutu na podkatalogi takie jak czasopisma, struktura, itp. najwyższy poziom katalogów okazał się wystarczający. Wydaje się, że, jeżeli zaszłaby potrzeba bardziej szczegółowego modelowania, należałoby zbudować oddzielny model dla pewnego fragmentu stron Instytutu. Niestety log nie zawiera informacji o tym do której sesji dane zdarzenie należy. Konieczny był więc uprzedni podział na sesje. Istnieje kilka metod podziału [6, 17]. W pracy zdecydowano się na metodę uznawania zdarzeń oddalonych od siebie o mniej niż 30min za należące do jednej sesji. Mimo swojej prostoty metoda okazała się bardzo skuteczna. Inne metody, takie jak np. ograniczanie całkowitego czasu trwania sesji okazały się wadliwe, gdyż np. sesje niektórych robotów mogą trwać bardzo długo. Na końcu każdej sesji dodano również sztuczny symbol QUIT, tak aby możliwe było modelowanie zakończenia sesji. 4.2 Model początkowy Ponieważ na początku analizy nie było wiadomo jak powinien wyglądać model, badania rozpoczęto od modelu przedstawionego na rys. 3. Stan _all_ jest stanem, który może wyemitować każdy symbol występujący w logu. Stan quit może emitować wyłącznie symbol QUIT oznaczający koniec sesji. Model odpowiada losowemu poruszaniu się po stronach Instytutu. Każdy symbol ma zawsze stałe prawdopodobieństwo pojawienia się. W miarę dodawania nowych stanów, symbole są usuwane z listy symboli emitowanych 10
11 sophos2a sophos2b sophos4a 1 sophos4b quit sophos_more _all_sink Rysunek 4: Fragment modelu opisujący łącznie z firewallem Sophos. przez stan _all_. Dzięki temu możliwe będzie lepsze określenie wewnętrznego stanu łańcucha Markowa na podstawie symbolu. Stanom wewnętrznym będzie można przypisać określone znaczenie, znacznie zwiększy się też szybkość szacowania parametrów modelu. Stan _all_sink, który w początkowym modelu jest niedostępny, będzie używany do modelowania niektórych sesji, w których po określonej początkowej sekwencji odwiedzona może być dowolna inna strona. Stan _all_ nie może spełniać tej roli, gdyż, jak już wspomniano, będą z niego usuwane symbole. 4.3 Etapy budowy modelu W niniejszej części krótko opiszemy interesujące sekwencje które zostały odkryte w czasie budowy modelu, a także zmiany w nim dokonywane poprawiające jego dopasowanie. Antywirus sophos. Pierwsze interesujące sekwencje dotyczyły programu antywirusowego sophos, którego aktualizacje są dostępne przez WWW. Pierwszą taką sekwencją była sophos,sophos której prawdopodobieństwo w danych wynosiło 11.48% podczas gdy model przewidywał tylko 1.17%. Podobna sytuacja dotyczyła sekwencji w której z katalogu sophos czytano cztery razy. Interesujące jest to, że każdy dostęp do katalogu sophos powodował pobranie albo dwóch albo czterech, albo większej liczby plików. Innymi słowy, ani razu (pomimo bardzo dużej ilości połączeń) nie zdarzyło się pobranie tylko jednego lub tylko trzech plików. Aby model poprawnie przewidywał prawdopodobieństwa korzystania z tego katalogu, został on uaktualniony przez dodanie fragmentu pokazanego na rys. 4. Każdy z dodanych stanów emituje jedynie symbol sophos. Dodatkowo, z listy symboli emitowanych przez stan _all_ symbol ten został usunięty. Należy zauważyć, że w celu dobrego modelowania rozkładu prawdopodobieństwa dla krótkich sekwencji, modelowany jest on przy pomocy ciągu kilku połączonych stanów. Metoda ta będzie często używana poniżej. Po dokonaniu opisanych zmian model dobrze przewidywał przebieg sesji korzystających z programu antywirusowego. Stopień w jakim są one interesujące zmalał i konieczne stało się modelowanie innych sesji. Czasopisma instytutowe. Kolejne interesujące zdarzenie dotyczyło katalogu czasopisma zawierającego artykuły opublikowane w czasopismach TiTI oraz JTIT w formacie PDF. Prawie 2% sesji zawierało sekwencję czasopisma,czasopisma,favicon.ico, której model w ogóle nie przewidywał. 11
12 czasopisma_ czasopisma_ favico czasopisma_ czasopisma_ quit Rysunek 5: Fragment modelu opisujący łącznie z firewallem Sophos. Interpretacja tego zdarzenia nie była z początku oczywista. Okazało się, że/favicon.ico jest domyślną lokalizacją ikonki pojawiającej się po lewej stronie adresu strony w przeglądarce, a także w zakładkach. W przypadku strony Instytutu Łączności plik ten znajduje się w img/favicon.ico co jest zaznaczone w nagłówku strony głównej. Plik w formacie PDF nie zawiera jednak tej informacji, więc niektóre przeglądarki starają się pobrać ikonkę z domyślnej lokalizacji. Ponieważ jednak szukany plik się tam nie znajduje, prowadzi to do błędu HTTP. W celu uaktualnienia modelu tak, aby sesje korzystające z czasopism instytutowych były modelowane poprawnie, dodano fragmenty pokazane na rys. 5. Interesujące jest też dlaczego często pobierany był więcej niż jeden plik. Po inspekcji loga serwera okazało się, że często następował restart transmisji tego samego pliku. Nie udało się stwierdzić, czy był to skutek błędów, czy też np. celowego działania przeglądarki w celu przyspieszenia transmisji. 4.4 Inne interesujące sekwencje. W opisany wyżej sposób dokonywano kolejnych uaktualnień modelu. Do najbardziej interesujących należy część modelu odpowiedzialna za sesje zaczynające się od strony głównej Instytutu. Konieczne było tu modelowanie pobierania elementów strony takich jak arkusze stylów (CSS), procedury JavaScript, czy pliki graficzne (z katalogu img). Fragment ten jest częścią całego modelu pokazanego na rys. 6. Znaczącą liczbę sesji stanowią serwisy automatyczne, jak np. roboty przeglądarek internetowych. Można je rozpoznać po tym, że na początku sesji czytają plik robots.txt określający strony do których mają dostęp. Na podstawie prawdopodobieństwa startu w stanie robot_enter (patrz rys. 6) można stwierdzić, że prawie 10% sesji stanowią roboty. Ciekawe jest też, że około 5% sesji jest inicjowanych przez czytniki wiadomości, przede wszystkim Google reader. 4.5 Ostateczny model Ostatecznie uzyskany model pokazany jest na rys 6. Pomimo sporej ilości stanów, model ma prostą strukturę i jest w pełni zrozumiały. Mimo swojej prostoty model przewiduje prawdopodobieństwo wszystkich możliwych sekwencji stron z dokładnością lepszą niż Możemy więc powiedzieć, że albo sekwencja jest dobrze modelowana, albo pojawia się tak rzadko, że nie ma ona większego znaczenia dla opisu zachowania odwiedzających. 12
13 sophos2a 1 sophos2b sophos4a 1 sophos4b sophos_more czasopisma_ czasopisma_ favico czasopisma_ czasopisma_ confer_ confer_ proxy_wpad_ proxy_wpad_ quit main_css _all_sink main_img main_js main robot_enter coop robot_all_ mail structure ogloszenia RSS_ RSS_ _all_ _all_image Rysunek 6: Model HMM opisujący zachowanie odwiedzających stronę internetową Instytutu Łączności 13
14 5 Reguły asocjacyjne dla atrybutów numerycznych W systemach dynamicznych bardzo często występują atrybuty numeryczne. Tradycyjne podejścia data mining nie radzą sobie dobrze z tego typu danymi, konieczna jest ich dyskretyzacja. Dyskretyzacja popwoduje jednak problemy, takie jak rozbicie pojedynczych zależności na wiele reguł, utratę informacji itp. Konieczne stało się więc uogólnienie stosowanych metod data mining na atrybuty numeryczne. Opracowane metody zostały dodatkowo wykorzystane w rozdziale Omówienie artykułów W ramach pracy powstały dwa artykułu dotyczące atrybutów numerycznych [12] i [10]. Praca [12] uogólnia pojęcie tzw. częstych kompleksów, t.j. często występujących wartości atrybutów na dane numeryczne. Główna idea polega na zastąpieniu koniunkcji binarnych atrybutów wielomianami. Podano odpowiednie uogólnienie pojęcia częstości występowania. Podejście to ma bardzo interesującą własność, że po znalezieniu wszystkich często występujących wielomianów, możliwe jest przybliżenie sumy (po wszystkich rekordach bazy danych) wartości dowolnej funkcji, bez konieczności odwoływania się do oryginalnych danych. Jeżeli przybliżenie to jest wystarczająco dobre, daje to bardzo znaczne przyspieszenie dla algorytmów wymagających wielokrotnych iteracji na danych. W pracy przykładem takim było szacowanie parametrów modeli nieliniowych. W kolejnej pracy [10] przedstawiono metodę znajdowania zbiorów powiązanych atrybutów numerycznych. Związki między atrybutami nie muszą być liniowe. Metoda polega na znalezieniu funkcji danego zbioru atrybutów mającej małą wariancję na zbiorze uczącym. Bardziej formalnie, jeśli X 1,...,X r jest zbiorem atrybutów numerycznych, aby znaleźć występujące między nimi zależności, szukamy funkcji f(x 1,...,X r ), takiej aby D f2 była minimalna, gdzie sumowanie odbywa się po wszystkich rekordach zbioru uczącego. Aby wyeliminować patologiczne przypadki takie jak f 0, wymagane jest dodatkowo aby D f 2 = 1 na pewnym zbiorze referencyjnym D. W pracy [10], zbiór referencyjny powstaje z oryginalnego zbioru poprzez założenie niezależności zmiennych, ale w praktyce dowolny inny zbiór może być użyty. Wykorzystano to w następnym rozdziale. 6 Przykładowe zastosowanie do układu równań opisującego prosty system biologiczny W niniejszym rozdziale przedstawione zostanie przykładowe zastosowanie metody opracowanej w [10] do analizy systemów biologicznych. Tzw. biologia systemowa jest nowym trendem w naukach biologicznych, polegającym na tworzeniu modeli symulujących fragmenty organizmów żywych. Stworzono język SBML do opisu takich systemów [1], a także oprogramowanie do ich symulacji. W pracy wykorzystano uproszczony model kinaz reagujących na sygnały zewnętrzne docierające do komórki (rys. 7a). Ponieważ nie były dostępne dane reprezentujące zachowanie rzeczywistej komórki, zdecydowano się na wykorzystanie danych generowanych sztucznie. Na początku wygenerowano dane na podstawie symulacji oryginalnego modelu. 14
15 a) b) Rysunek 7: Uproszczony system biologiczny opisujący zachowanie kinaz reagujących na sygnały dochodzące do komórki. Model poprawny a) służył do generowania zbioru uczącego, model zaburzony b) grał rolę niedoskonałej wiedzy z dziedziny. Dane te, D o, pełniły rolę danych zebranych z systemu rzeczywistego. Następnie usunięto jedno z oddziaływań występujących w modelu (rys. 7b). Zmieniony model odgrywał rolę niedoskonałej wiedzy o działaniu sustemu. Aby zastosować algorytm z pracy [10], zbiór D o wygenerowany z pełnego modelu został użyty jako zbiór referencyjny, a zbiór wygenerowany na podstawie modelu zmodyfikowanego jako zbiór uczący. Po uruchomieniu algorytmu, najbardziej interesująca okazała się para zmiennych MAPK i MAPKP, czyli właśnie te dwie zmienne, których interakcja została usunięta! Należy zaznaczyć, że korelacja tych zmiennych wyniosła tylko 0.25, więc najprawdopodobniej zostałaby ona przeoczona jeśli użyto by standardowej analizy regresyjnej. 7 Klasyfikator oparty o maksymalizację AUC. W przypadku wykrywania anomalii w sieciach telekomunikacyjnych problemem jest to, że mamy bardzo dużo przykładów negatywnych (brak anomalii) i tylko kilka uczących przykładów pozytywnych. Tradycyjne klasyfikatory nie radzą sobie z tego typu problemami. Rozwiązaniem jest zastosowanie klasyfikatora maksymalizującego nie dokładność, ale pole pod krzywą ROC. Poniżej krótko omówimy to pojęcie, bardziej szczegółowy opis można znaleźć w [8, 3]. Krzywe ROC. Standardową miarą oceny klasyfikatorów jest dokładność. Niestety dokładność nie daje pełnego obrazu sytuacji. Problemy pojawiają się gdy jedna z klas występuje bardzo rzadko np. w 1% przypadków. Klasyfikator, który zawsze przewiduje klasę większościową osiąga bardzo wysoką, 99% dokładność, będąc jednocześnie całkowicie bezużytecznym. Rozwiązaniem tego problemu jest pole pod krzywą ROC. Większość klasyfikatorów nie podaje jedynie do której klasy należy dany przykład, ale także wartość numeryczną określającą stopień przynależności do tej klasy. Aby uzyskać konkretny klasyfikator, należy ustalić próg powyżej którego uznamy, że dany przykład należy do konkretnej 15
16 klasy. Każdy punkt krzywej ROC odpowiada jednemu z takich progów. Współrzędną Y takiego punktu jest proporcja przykładów należących do danej klasy, które zostały też w ten sposób zaklasyfikowane, współrzędną X natomiast jest proporcja przykładów zaklasyfikowanych do danej klasy, które w rzeczywistości do niej nie należą [8, 3]. Najlepszą możliwą krzywą ROC jest krzywa przechodząca przez górny lewy róg układu współrzędnych. Jeżeli klasyfikator dokonuje wyboru klasy losowo, krzywa ROC jest przekątną łączącą punkty (0, 0) i (1, 1). Im wyżej krzywa przechodzi nad przekątną, tym lepszy klasyfikator. Aby uchwycić jakość klasyfikatora jedną wartością, stosuje się pole pod krzywą ROC (AUC - Area Under the Curve). Zauważmy, że w podanym wyżej przykładzie z rzadko występującą klasą, dla klasyfikatora większościowego, mającego bardzo dobrą dokładność, pole pod krzywą ROC wynosi zero. Naturalne wydaje się więc budowa klasyfikatorów maksymalizujących bezpośrednio pole pod krzywą ROC. Niestety zadanie to nie jest łatwe. Po pierwsze, obliczenie pola pod krzywą ROC wymaga sortowania jest więc niewydajne, a złożoność obliczenia gradientu jest wręcz kwadratowa względem liczby rekordów. W ramach niniejszej pracy powstał referat [4] (załącznony), w którym przedstawiono metodę bardzo wydajnej konstrukcji klasyfikatorów liniowych maksymalizujących pole pod krzywą ROC. Artykuł ten otrzymał na europejskiej konferencji data miningowej PKDD 07 nagrodę za najlepszy referat. Niestety brak jest rzeczywistych danych o anomaliach sieciowych. Dane dostępne w Instytucie Łączności wymagałyby ręcznego oznaczania anomalii przez administratorów, co jest niemożliwe. Dane dostępne publicznie zawierają sztucznie zawyżoną liczbę przykładów pozytywnych. Przedstawimy więc przykład skuteczności działania metody na publicznie dostępnych danych dotyczących eksperymentów fizycznych, w których sztucznie wprowadzono nierównowagę klas. Dla porównania, nauczono na tych samych danych dyskryminator liniowy. Wyniki pokazane są na rys. 8. Widać wyraźnie, że w przypadku dużej nierównowagi klas, bezpośrednia maksymalizacja pola pod krzywą ROC daje znacznie lepsze wyniki. Zostało to potwierdzone także przez innych autorów [5]. Więcej szczegółów i eksperymentów można znaleźć w pracy [4] w załączniku. 8 Dodatkowe artykuły powstałe w ramach pracy W niniejszym rozdziale opisanych zostaną pokrótce dwa dodatkowe artykuły powstałe w ramach pracy. Artykuł [11] opisuje wydajny algorytm służący do tzw. schema matching tj. automatycznego znajdowania odpowiadających sobie atrybutów w dwóch różnych tabelach bazodanowych. Problem ten występuje często w praktyce na przykład w trakcie łączenia się dużych firm. Przedstawiona metoda opiera się na próbkowaniu obu baz przy zapewnieniu gwarancji na jakość uzyskanych wyników. Druga praca to [16], rozszerzona wersja prac [14, 13] przeznaczona do druku w czasopiśmie. Zawiera ona między innymi nowe wyniki eksperymentalne. 16
17 Rysunek 8: Bezpośrednia maksymalizacja pola pod krzywą ROC (AUC) a standardowy klasyfikator liniowy. Literatura [1] Systems biology markup language. [2] R. Agrawal, T. Imielinski, and A. Swami. Mining association rules between sets of items in large databases. In ACM SIGMOD Conf. on Management of Data, pages , [3] A.P. Bradley. Use of the area under the ROC curve in the evaluation of machine learn ing algorithms. Pattern Recognition, 30(7): , [4] T. Calders and S. Jaroszewicz. Efficient auc optimization for classification. In 11th European Conference on Principles and Practice of Knowledge Discovery in Databases (PKDD 07), pages 42 53, Warsaw, Poland, nagroda za najlepszy artykuł. [5] C. Cortes and M. Mohri. Auc optimization vs. error rate minimization. In Advances in Neural Information Processing Systems 16. MIT Press,
18 [6] M. H. Dunham. Data mining, introductory and advanced topics, part iii. mhd/dmbook/part3.ppt. [7] J. Granat. Models and algorithms for event mining. In Proceedings of the 8th International Symposium on Knowledge and Systems Sciences, pages 53 58, JAIST, November [8] J.A. Hanley and B.J. McNeil. The meaning and use of the area under a receiver operating characteris tic (ROC) curve. Radiology, 143(1):29 36, [9] S. Jaroszewicz. Cross-selling models for telecommunication services. Praca wysłana do JTIT. [10] S. Jaroszewicz. Minimum variance associations discovering relationships in numerical data. In praca wysłana, [11] S. Jaroszewicz, L. Ivantysynova, and T. Scheffer. Schema matching on streams with accuracy guarantees. to appear in the Intelligent Data Analysis Journal. [12] S. Jaroszewicz and M. Korzeń. Approximating representations for large numerical databases. In 7th SIAM International Conference on Data Mining (SDM 07), pages , Minneapolis, MN, [13] S. Jaroszewicz and T. Scheffer. Fast discovery of unexpected patterns in data, relative to a bayesian network. In 11th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining (KDD 2005), pages , Chicago, IL, August [14] S. Jaroszewicz and D. Simovici. Interestingness of frequent itemsets using bayesian networks as background knowledge. In 10th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining (KDD 2004), pages , Seattle, WA, August [15] L. R. Rabiner. A tutorial on hidden markov models and selected applications in speech recognition. Proceedings of the IEEE, 77(2): , February [16] D.A. Simovici S. Jaroszewicz, T. Scheffer. Scalable pattern mining with bayesian networks as background knowledge. praca wysłana. [17] D.J. Smith and J.E. Pricer. Sessionizing clickstream data. Teradata Magazine Online, [18] L.R. Welch. Hidden markov models and the baum-welch algorithm. IEEE Information Theory Society Newsletter, 53(4):1,10 13, December
Spacery losowe generowanie realizacji procesu losowego
Spacery losowe generowanie realizacji procesu losowego Michał Krzemiński Streszczenie Omówimy metodę generowania trajektorii spacerów losowych (błądzenia losowego), tj. szczególnych procesów Markowa z
0 + 0 = 0, = 1, = 1, = 0.
5 Kody liniowe Jak już wiemy, w celu przesłania zakodowanego tekstu dzielimy go na bloki i do każdego z bloków dodajemy tak zwane bity sprawdzające. Bity te są w ścisłej zależności z bitami informacyjnymi,
INDUKOWANE REGUŁY DECYZYJNE ALORYTM APRIORI JAROSŁAW FIBICH
INDUKOWANE REGUŁY DECYZYJNE ALORYTM APRIORI JAROSŁAW FIBICH 1. Czym jest eksploracja danych Eksploracja danych definiowana jest jako zbiór technik odkrywania nietrywialnych zależności i schematów w dużych
KATEDRA SYSTEMÓW MULTIMEDIALNYCH. Inteligentne systemy decyzyjne. Ćwiczenie nr 12:
KATEDRA SYSTEMÓW MULTIMEDIALNYCH Inteligentne systemy decyzyjne Ćwiczenie nr 12: Rozpoznawanie mowy z wykorzystaniem ukrytych modeli Markowa i pakietu HTK Opracowanie: mgr inż. Kuba Łopatka 1. Wprowadzenie
Analiza danych. http://zajecia.jakubw.pl/ TEMATYKA PRZEDMIOTU
Analiza danych Wstęp Jakub Wróblewski jakubw@pjwstk.edu.pl http://zajecia.jakubw.pl/ TEMATYKA PRZEDMIOTU Różne aspekty analizy danych Reprezentacja graficzna danych Metody statystyczne: estymacja parametrów
Instytut Politechniczny Państwowa Wyższa Szkoła Zawodowa. Diagnostyka i niezawodność robotów
Instytut Politechniczny Państwowa Wyższa Szkoła Zawodowa Diagnostyka i niezawodność robotów Laboratorium nr 6 Model matematyczny elementu naprawialnego Prowadzący: mgr inż. Marcel Luzar Cele ćwiczenia:
Układy VLSI Bramki 1.0
Spis treści: 1. Wstęp... 2 2. Opis edytora schematów... 2 2.1 Dodawanie bramek do schematu:... 3 2.2 Łączenie bramek... 3 2.3 Usuwanie bramek... 3 2.4 Usuwanie pojedynczych połączeń... 4 2.5 Dodawanie
ROZWIĄZYWANIE UKŁADÓW RÓWNAŃ NIELINIOWYCH PRZY POMOCY DODATKU SOLVER PROGRAMU MICROSOFT EXCEL. sin x2 (1)
ROZWIĄZYWANIE UKŁADÓW RÓWNAŃ NIELINIOWYCH PRZY POMOCY DODATKU SOLVER PROGRAMU MICROSOFT EXCEL 1. Problem Rozważmy układ dwóch równań z dwiema niewiadomymi (x 1, x 2 ): 1 x1 sin x2 x2 cos x1 (1) Nie jest
Systemy pomiarowo-diagnostyczne. Metody uczenia maszynowego wykład III 2016/2017
Systemy pomiarowo-diagnostyczne Metody uczenia maszynowego wykład III bogumil.konopka@pwr.edu.pl 2016/2017 Wykład III - plan Regresja logistyczna Ocena skuteczności klasyfikacji Macierze pomyłek Krzywe
Aproksymacja funkcji a regresja symboliczna
Aproksymacja funkcji a regresja symboliczna Problem aproksymacji funkcji polega na tym, że funkcję F(x), znaną lub określoną tablicą wartości, należy zastąpić inną funkcją, f(x), zwaną funkcją aproksymującą
Optymalizacja ciągła
Optymalizacja ciągła 5. Metoda stochastycznego spadku wzdłuż gradientu Wojciech Kotłowski Instytut Informatyki PP http://www.cs.put.poznan.pl/wkotlowski/ 04.04.2019 1 / 20 Wprowadzenie Minimalizacja różniczkowalnej
Testowanie hipotez statystycznych
9 października 2008 ...czyli definicje na rozgrzewkę n-elementowa próba losowa - wektor n zmiennych losowych (X 1,..., X n ); intuicyjnie: wynik n eksperymentów realizacja próby (X 1,..., X n ) w ω Ω :
Bioinformatyka. Ocena wiarygodności dopasowania sekwencji.
Bioinformatyka Ocena wiarygodności dopasowania sekwencji www.michalbereta.pl Załóżmy, że mamy dwie sekwencje, które chcemy dopasować i dodatkowo ocenić wiarygodność tego dopasowania. Interesujące nas pytanie
Zad. 3: Układ równań liniowych
1 Cel ćwiczenia Zad. 3: Układ równań liniowych Wykształcenie umiejętności modelowania kluczowych dla danego problemu pojęć. Definiowanie właściwego interfejsu klasy. Zwrócenie uwagi na dobór odpowiednich
w analizie wyników badań eksperymentalnych, w problemach modelowania zjawisk fizycznych, w analizie obserwacji statystycznych.
Aproksymacja funkcji a regresja symboliczna Problem aproksymacji funkcji polega na tym, że funkcję F(), znaną lub określoną tablicą wartości, należy zastąpić inną funkcją, f(), zwaną funkcją aproksymującą
Wstęp do sieci neuronowych, wykład 12 Łańcuchy Markowa
Wstęp do sieci neuronowych, wykład 12 Łańcuchy Markowa M. Czoków, J. Piersa 2012-01-10 1 Łańcucha Markowa 2 Istnienie Szukanie stanu stacjonarnego 3 1 Łańcucha Markowa 2 Istnienie Szukanie stanu stacjonarnego
WYZNACZANIE NIEPEWNOŚCI POMIARU METODAMI SYMULACYJNYMI
WYZNACZANIE NIEPEWNOŚCI POMIARU METODAMI SYMULACYJNYMI Stefan WÓJTOWICZ, Katarzyna BIERNAT ZAKŁAD METROLOGII I BADAŃ NIENISZCZĄCYCH INSTYTUT ELEKTROTECHNIKI ul. Pożaryskiego 8, 04-703 Warszawa tel. (0)
Systemy uczące się Lab 4
Systemy uczące się Lab 4 dr Przemysław Juszczuk Katedra Inżynierii Wiedzy, Uniwersytet Ekonomiczny 26 X 2018 Projekt zaliczeniowy Podstawą zaliczenia ćwiczeń jest indywidualne wykonanie projektu uwzględniającego
LEMRG algorytm generowania pokoleń reguł decyzji dla baz danych z dużą liczbą atrybutów
LEMRG algorytm generowania pokoleń reguł decyzji dla baz danych z dużą liczbą atrybutów Łukasz Piątek, Jerzy W. Grzymała-Busse Katedra Systemów Ekspertowych i Sztucznej Inteligencji, Wydział Informatyki
Obliczenia iteracyjne
Lekcja Strona z Obliczenia iteracyjne Zmienne iteracyjne (wyliczeniowe) Obliczenia iteracyjne wymagają zdefiniowania specjalnej zmiennej nazywanej iteracyjną lub wyliczeniową. Zmienną iteracyjną od zwykłej
IMPLEMENTACJA SIECI NEURONOWYCH MLP Z WALIDACJĄ KRZYŻOWĄ
IMPLEMENTACJA SIECI NEURONOWYCH MLP Z WALIDACJĄ KRZYŻOWĄ Celem ćwiczenia jest zapoznanie się ze sposobem działania sieci neuronowych typu MLP (multi-layer perceptron) uczonych nadzorowaną (z nauczycielem,
Modelowanie motywów łańcuchami Markowa wyższego rzędu
Modelowanie motywów łańcuchami Markowa wyższego rzędu Uniwersytet Warszawski Wydział Matematyki, Informatyki i Mechaniki 23 października 2008 roku Plan prezentacji 1 Źródła 2 Motywy i ich znaczenie Łańcuchy
5.4. Tworzymy formularze
5.4. Tworzymy formularze Zastosowanie formularzy Formularz to obiekt bazy danych, który daje możliwość tworzenia i modyfikacji danych w tabeli lub kwerendzie. Jego wielką zaletą jest umiejętność zautomatyzowania
Ekonometria. Modele regresji wielorakiej - dobór zmiennych, szacowanie. Paweł Cibis pawel@cibis.pl. 1 kwietnia 2007
Modele regresji wielorakiej - dobór zmiennych, szacowanie Paweł Cibis pawel@cibis.pl 1 kwietnia 2007 1 Współczynnik zmienności Współczynnik zmienności wzory Współczynnik zmienności funkcje 2 Korelacja
Anna Osiewalska Biblioteka Główna Uniwersytetu Ekonomicznego w Krakowie
Anna Osiewalska Biblioteka Główna Uniwersytetu Ekonomicznego w Krakowie Bibliografie czasopism naukowych Biblioteki Głównej UEK jako źródło danych dla analiz bibliometrycznych Streszczenie Przedstawiono
Elementy modelowania matematycznego
Elementy modelowania matematycznego Modelowanie algorytmów klasyfikujących. Podejście probabilistyczne. Naiwny klasyfikator bayesowski. Modelowanie danych metodą najbliższych sąsiadów. Jakub Wróblewski
Szukanie rozwiązań funkcji uwikłanych (równań nieliniowych)
Szukanie rozwiązań funkcji uwikłanych (równań nieliniowych) Funkcja uwikłana (równanie nieliniowe) jest to funkcja, która nie jest przedstawiona jawnym przepisem, wzorem wyrażającym zależność wartości
INFORMATYKA POZIOM ROZSZERZONY
EGZAMIN MATURALNY W ROKU SZKOLNYM 2015/2016 FORMUŁA DO 2014 ( STARA MATURA ) INFORMATYKA POZIOM ROZSZERZONY ZASADY OCENIANIA ROZWIĄZAŃ ZADAŃ ARKUSZ MIN-R1, R2 MAJ 2016 Uwaga: Akceptowane są wszystkie odpowiedzi
INFORMATYKA POZIOM ROZSZERZONY
EGZAMIN MATURALNY W ROKU SZKOLNYM 2015/2016 FORMUŁA DO 2014 ( STARA MATURA ) INFORMATYKA POZIOM ROZSZERZONY ZASADY OCENIANIA ROZWIĄZAŃ ZADAŃ ARKUSZ MIN-R1, R2 MAJ 2016 Uwaga: Akceptowane są wszystkie odpowiedzi
Złożoność obliczeniowa zadania, zestaw 2
Złożoność obliczeniowa zadania, zestaw 2 Określanie złożoności obliczeniowej algorytmów, obliczanie pesymistycznej i oczekiwanej złożoności obliczeniowej 1. Dana jest tablica jednowymiarowa A o rozmiarze
3. Macierze i Układy Równań Liniowych
3. Macierze i Układy Równań Liniowych Rozważamy równanie macierzowe z końcówki ostatniego wykładu ( ) 3 1 X = 4 1 ( ) 2 5 Podstawiając X = ( ) x y i wymnażając, otrzymujemy układ 2 równań liniowych 3x
etrader Pekao Podręcznik użytkownika Strumieniowanie Excel
etrader Pekao Podręcznik użytkownika Strumieniowanie Excel Spis treści 1. Opis okna... 3 2. Otwieranie okna... 3 3. Zawartość okna... 4 3.1. Definiowanie listy instrumentów... 4 3.2. Modyfikacja lub usunięcie
Podstawy programowania. Wykład Funkcje. Krzysztof Banaś Podstawy programowania 1
Podstawy programowania. Wykład Funkcje Krzysztof Banaś Podstawy programowania 1 Programowanie proceduralne Pojęcie procedury (funkcji) programowanie proceduralne realizacja określonego zadania specyfikacja
Elementy modelowania matematycznego
Elementy modelowania matematycznego Łańcuchy Markowa: zagadnienia graniczne. Ukryte modele Markowa. Jakub Wróblewski jakubw@pjwstk.edu.pl http://zajecia.jakubw.pl/ KLASYFIKACJA STANÓW Stan i jest osiągalny
Procesy Markowa zawdzięczają swoją nazwę ich twórcy Andriejowi Markowowi, który po raz pierwszy opisał problem w 1906 roku.
Procesy Markowa zawdzięczają swoją nazwę ich twórcy Andriejowi Markowowi, który po raz pierwszy opisał problem w 1906 roku. Uogólnienie na przeliczalnie nieskończone przestrzenie stanów zostało opracowane
Optymalizacja systemów
Optymalizacja systemów Laboratorium - problem detekcji twarzy autorzy: A. Gonczarek, J.M. Tomczak, S. Zaręba, P. Klukowski Cel zadania Celem zadania jest zapoznanie się z gradientowymi algorytmami optymalizacji
Informacje i materiały dotyczące wykładu będą publikowane na stronie internetowej wykładowcy, m.in. prezentacje z wykładów
Eksploracja danych Piotr Lipiński Informacje ogólne Informacje i materiały dotyczące wykładu będą publikowane na stronie internetowej wykładowcy, m.in. prezentacje z wykładów UWAGA: prezentacja to nie
Metody Sztucznej Inteligencji II
17 marca 2013 Neuron biologiczny Neuron Jest podstawowym budulcem układu nerwowego. Jest komórką, która jest w stanie odbierać i przekazywać sygnały elektryczne. Neuron działanie Jeżeli wartość sygnału
ROZWIĄZYWANIE RÓWNAŃ NIELINIOWYCH
Transport, studia I stopnia Instytut L-5, Wydział Inżynierii Lądowej, Politechnika Krakowska Ewa Pabisek Adam Wosatko Postać ogólna równania nieliniowego Często występującym, ważnym problemem obliczeniowym
Opis efektów kształcenia dla programu kształcenia (kierunkowe efekty kształcenia) WIEDZA. rozumie cywilizacyjne znaczenie matematyki i jej zastosowań
TABELA ODNIESIEŃ EFEKTÓW KSZTAŁCENIA OKREŚLONYCH DLA PROGRAMU KSZTAŁCENIA DO EFEKTÓW KSZTAŁCENIA OKREŚLONYCH DLA OBSZARU KSZTAŁCENIA I PROFILU STUDIÓW PROGRAM KSZTAŁCENIA: POZIOM KSZTAŁCENIA: PROFIL KSZTAŁCENIA:
Bazy danych Karta pracy 1
Bazy danych Karta pracy 1 Bazy danych Karta pracy 1 1. Utwórz katalog Bazy danych służący do przechowywania wszelkich danych dotyczących kursu. 2. W katalogu Bazy danych stwórz podkatalog BD1 służący jako
Ćwiczenie 5. Metody eksploracji danych
Ćwiczenie 5. Metody eksploracji danych Reguły asocjacyjne (association rules) Badaniem atrybutów lub cech, które są powiązane ze sobą, zajmuje się analiza podobieństw (ang. affinity analysis). Metody analizy
ECDL/ICDL Użytkowanie baz danych Moduł S1 Sylabus - wersja 6.0
ECDL/ICDL Użytkowanie baz danych Moduł S1 Sylabus - wersja 6.0 Przeznaczenie Sylabusa Dokument ten zawiera szczegółowy Sylabus dla modułu ECDL/ICDL Użytkowanie baz danych. Sylabus opisuje zakres wiedzy
Text mining w programie RapidMiner Michał Bereta www.michalbereta.pl
Text mining w programie RapidMiner Michał Bereta www.michalbereta.pl 1. Wstęp Aby skorzystać z możliwości RapidMinera w zakresie analizy tekstu, należy zainstalować Text Mining Extension. Wybierz: 1 Po
W dalszej części dokumentu przedstawiamy skrócony opis kluczowych funkcji systemu. Niniejszy dokument nie zawiera opisu technicznego systemu.
1. Informacje Podstawowe Mediamanager 2.1 jest systemem wspierającym zarządzanie dokumentami elektronicznymi. Podstawowymi funkcjami realizowanymi przez oprogramowanie jest przetrzymywanie, zarządzanie
Przepustowość kanału, odczytywanie wiadomości z kanału, poprawa wydajności kanału.
Przepustowość kanału, odczytywanie wiadomości z kanału, poprawa wydajności kanału Wiktor Miszuris 2 czerwca 2004 Przepustowość kanału Zacznijmy od wprowadzenia równości IA, B HB HB A HA HA B Można ją intuicyjnie
Analiza zawartości dokumentów za pomocą probabilistycznych modeli graficznych
Analiza zawartości dokumentów za pomocą probabilistycznych modeli graficznych Probabilistic Topic Models Jakub M. TOMCZAK Politechnika Wrocławska, Instytut Informatyki 30.03.2011, Wrocław Plan 1. Wstęp
Metody numeryczne Wykład 4
Metody numeryczne Wykład 4 Dr inż. Michał Łanczont Instytut Elektrotechniki i Elektrotechnologii E419, tel. 4293, m.lanczont@pollub.pl, http://m.lanczont.pollub.pl Zakres wykładu Metody skończone rozwiązywania
SYSTEMY UCZĄCE SIĘ WYKŁAD 4. DRZEWA REGRESYJNE, INDUKCJA REGUŁ. Dr hab. inż. Grzegorz Dudek Wydział Elektryczny Politechnika Częstochowska
SYSTEMY UCZĄCE SIĘ WYKŁAD 4. DRZEWA REGRESYJNE, INDUKCJA REGUŁ Częstochowa 2014 Dr hab. inż. Grzegorz Dudek Wydział Elektryczny Politechnika Częstochowska DRZEWO REGRESYJNE Sposób konstrukcji i przycinania
Matematyka dyskretna dla informatyków
Matematyka dyskretna dla informatyków Część I: Elementy kombinatoryki Jerzy Jaworski Zbigniew Palka Jerzy Szymański Uniwersytet im. Adama Mickiewicza Poznań 2007 4 Zależności rekurencyjne Wiele zależności
Metody systemowe i decyzyjne w informatyce
Metody systemowe i decyzyjne w informatyce Laboratorium MATLAB Zadanie nr 1 Regresja liniowa autorzy: A. Gonczarek, J.M. Tomczak Cel zadania Celem zadania jest zapoznanie się z liniowym zadaniem najmniejszych
Wstęp do sieci neuronowych, wykład 11 Łańcuchy Markova
Wstęp do sieci neuronowych, wykład 11 Łańcuchy Markova M. Czoków, J. Piersa 2010-12-21 1 Definicja Własności Losowanie z rozkładu dyskretnego 2 3 Łańcuch Markova Definicja Własności Losowanie z rozkładu
Automatyczne tworzenie trójwymiarowego planu pomieszczenia z zastosowaniem metod stereowizyjnych
Automatyczne tworzenie trójwymiarowego planu pomieszczenia z zastosowaniem metod stereowizyjnych autor: Robert Drab opiekun naukowy: dr inż. Paweł Rotter 1. Wstęp Zagadnienie generowania trójwymiarowego
World Wide Web? rkijanka
World Wide Web? rkijanka World Wide Web? globalny, interaktywny, dynamiczny, wieloplatformowy, rozproszony, graficzny, hipertekstowy - system informacyjny, działający na bazie Internetu. 1.Sieć WWW jest
Algorytmy sztucznej inteligencji
www.math.uni.lodz.pl/ radmat Przeszukiwanie z ograniczeniami Zagadnienie przeszukiwania z ograniczeniami stanowi grupę problemów przeszukiwania w przestrzeni stanów, które składa się ze: 1 skończonego
Funkcje wyszukiwania i adresu PODAJ.POZYCJĘ
Funkcje wyszukiwania i adresu PODAJ.POZYCJĘ Mariusz Jankowski autor strony internetowej poświęconej Excelowi i programowaniu w VBA; Bogdan Gilarski właściciel firmy szkoleniowej Perfect And Practical;
Prognozowanie i Symulacje. Wykład I. Matematyczne metody prognozowania
Prognozowanie i Symulacje. Wykład I. e-mail:e.kozlovski@pollub.pl Spis treści Szeregi czasowe 1 Szeregi czasowe 2 3 Szeregi czasowe Definicja 1 Szereg czasowy jest to proces stochastyczny z czasem dyskretnym
Metody numeryczne I Równania nieliniowe
Metody numeryczne I Równania nieliniowe Janusz Szwabiński szwabin@ift.uni.wroc.pl Metody numeryczne I (C) 2004 Janusz Szwabiński p.1/66 Równania nieliniowe 1. Równania nieliniowe z pojedynczym pierwiastkiem
Instytut Politechniczny Państwowa Wyższa Szkoła Zawodowa. Diagnostyka i niezawodność robotów
Instytut Politechniczny Państwowa Wyższa Szkoła Zawodowa Diagnostyka i niezawodność robotów Laboratorium nr 3 Generacja realizacji zmiennych losowych Prowadzący: mgr inż. Marcel Luzar Cele ćwiczenia: Generowanie
Liczby zmiennoprzecinkowe i błędy
i błędy Elementy metod numerycznych i błędy Kontakt pokój B3-10 tel.: 829 53 62 http://golinski.faculty.wmi.amu.edu.pl/ golinski@amu.edu.pl i błędy Plan wykładu 1 i błędy Plan wykładu 1 2 i błędy Plan
Wykład z Technologii Informacyjnych. Piotr Mika
Wykład z Technologii Informacyjnych Piotr Mika Uniwersalna forma graficznego zapisu algorytmów Schemat blokowy zbiór bloków, powiązanych ze sobą liniami zorientowanymi. Jest to rodzaj grafu, którego węzły
Bazy danych TERMINOLOGIA
Bazy danych TERMINOLOGIA Dane Dane są wartościami przechowywanymi w bazie danych. Dane są statyczne w tym sensie, że zachowują swój stan aż do zmodyfikowania ich ręcznie lub przez jakiś automatyczny proces.
EGZAMIN MATURALNY Z INFORMATYKI
Miejsce na naklejkę z kodem szkoły dysleksja MIN-R1A1P-052 EGZAMIN MATURALNY Z INFORMATYKI POZIOM ROZSZERZONY Czas pracy 90 minut ARKUSZ I MAJ ROK 2005 Instrukcja dla zdającego 1. Sprawdź, czy arkusz egzaminacyjny
Ćwiczenia nr 7. TEMATYKA: Krzywe Bézier a
TEMATYKA: Krzywe Bézier a Ćwiczenia nr 7 DEFINICJE: Interpolacja: przybliżanie funkcji za pomocą innej funkcji, zwykle wielomianu, tak aby były sobie równe w zadanych punktach. Poniżej przykład interpolacji
Kodowanie i kompresja Tomasz Jurdziński Studia Wieczorowe Wykład Kody liniowe - kodowanie w oparciu o macierz parzystości
Kodowanie i kompresja Tomasz Jurdziński Studia Wieczorowe Wykład 13 1 Kody liniowe - kodowanie w oparciu o macierz parzystości Przykład Różne macierze parzystości dla kodu powtórzeniowego. Co wiemy z algebry
Podstawy Sztucznej Inteligencji (PSZT)
Podstawy Sztucznej Inteligencji (PSZT) Paweł Wawrzyński Uczenie maszynowe Sztuczne sieci neuronowe Plan na dziś Uczenie maszynowe Problem aproksymacji funkcji Sieci neuronowe PSZT, zima 2013, wykład 12
Problem eliminacji nieprzystających elementów w zadaniu rozpoznania wzorca Marcin Luckner
Problem eliminacji nieprzystających elementów w zadaniu rozpoznania wzorca Marcin Luckner Wydział Matematyki i Nauk Informacyjnych Politechnika Warszawska Elementy nieprzystające Definicja odrzucania Klasyfikacja
Maciej Piotr Jankowski
Reduced Adder Graph Implementacja algorytmu RAG Maciej Piotr Jankowski 2005.12.22 Maciej Piotr Jankowski 1 Plan prezentacji 1. Wstęp 2. Implementacja 3. Usprawnienia optymalizacyjne 3.1. Tablica ekspansji
znalezienia elementu w zbiorze, gdy w nim jest; dołączenia nowego elementu w odpowiednie miejsce, aby zbiór pozostał nadal uporządkowany.
Przedstawiamy algorytmy porządkowania dowolnej liczby elementów, którymi mogą być liczby, jak również elementy o bardziej złożonej postaci (takie jak słowa i daty). Porządkowanie, nazywane również często
REPREZENTACJA LICZBY, BŁĘDY, ALGORYTMY W OBLICZENIACH
REPREZENTACJA LICZBY, BŁĘDY, ALGORYTMY W OBLICZENIACH Transport, studia niestacjonarne I stopnia, semestr I Instytut L-5, Wydział Inżynierii Lądowej, Politechnika Krakowska Adam Wosatko Ewa Pabisek Reprezentacja
Eksploracja Danych. wykład 4. Sebastian Zając. 10 maja 2017 WMP.SNŚ UKSW. Sebastian Zając (WMP.SNŚ UKSW) Eksploracja Danych 10 maja / 18
Eksploracja Danych wykład 4 Sebastian Zając WMP.SNŚ UKSW 10 maja 2017 Sebastian Zając (WMP.SNŚ UKSW) Eksploracja Danych 10 maja 2017 1 / 18 Klasyfikacja danych Klasyfikacja Najczęściej stosowana (najstarsza)
Rozpoznawanie obrazów
Rozpoznawanie obrazów Laboratorium Python Zadanie nr 1 Regresja liniowa autorzy: A. Gonczarek, J.M. Tomczak, S. Zaręba, M. Zięba, J. Kaczmar Cel zadania Celem zadania jest implementacja liniowego zadania
Testowanie modeli predykcyjnych
Testowanie modeli predykcyjnych Wstęp Podczas budowy modelu, którego celem jest przewidywanie pewnych wartości na podstawie zbioru danych uczących poważnym problemem jest ocena jakości uczenia i zdolności
Wnioskowanie bayesowskie
Wnioskowanie bayesowskie W podejściu klasycznym wnioskowanie statystyczne oparte jest wyłącznie na podstawie pobranej próby losowej. Możemy np. estymować punktowo lub przedziałowo nieznane parametry rozkładów,
mgr inż. Magdalena Deckert Poznań, r. Metody przyrostowego uczenia się ze strumieni danych.
mgr inż. Magdalena Deckert Poznań, 30.11.2010r. Metody przyrostowego uczenia się ze strumieni danych. Plan prezentacji Wstęp Concept drift i typy zmian Algorytmy przyrostowego uczenia się ze strumieni
Sztuczna Inteligencja Tematy projektów Sieci Neuronowe
PB, 2009 2010 Sztuczna Inteligencja Tematy projektów Sieci Neuronowe Projekt 1 Stwórz projekt implementujący jednokierunkową sztuczną neuronową złożoną z neuronów typu sigmoidalnego z algorytmem uczenia
Kompresja danych Streszczenie Studia Dzienne Wykład 10,
1 Kwantyzacja wektorowa Kompresja danych Streszczenie Studia Dzienne Wykład 10, 28.04.2006 Kwantyzacja wektorowa: dane dzielone na bloki (wektory), każdy blok kwantyzowany jako jeden element danych. Ogólny
Data mininig i wielowymiarowa analiza danych zgromadzonych w systemach medycznych na potrzeby badań naukowych
Temat: Data mininig i wielowymiarowa analiza danych zgromadzonych w systemach medycznych na potrzeby badań naukowych Autorzy: Tomasz Małyszko, Edyta Łukasik 1. Definicja eksploracji danych Eksploracja
EXSO-CORE - specyfikacja
EXSO-CORE - specyfikacja System bazowy dla aplikacji EXSO. Elementy tego systemu występują we wszystkich programach EXSO. Może on ponadto stanowić podstawę do opracowania nowych, dedykowanych systemów.
Wykład 2. Poprawność algorytmów
Wykład 2 Poprawność algorytmów 1 Przegląd Ø Poprawność algorytmów Ø Podstawy matematyczne: Przyrost funkcji i notacje asymptotyczne Sumowanie szeregów Indukcja matematyczna 2 Poprawność algorytmów Ø Algorytm
Word. Korespondencja seryjna
1 (Pobrane z slow7.pl) Korespondencja seryjnajestto taki sposób utworzenia jednolitego dokumentu, który będzie różnił się jedynie zawartością wybranych pól. Pola te będą automatycznie wypełniane przez
Dokumentacja WebMaster ver 1.0
1 Wstęp Dokumentacja WebMaster ver 1.0 Dokumentacja ta przeznaczona jest dla webmasterów, grafików, programistów. Przedstawia ona strukturę aplikacji SOTEeSKLEP, opisuje działanie oraz wyjaśnia m.in. jak
Instrukcja do panelu administracyjnego. do zarządzania kontem FTP WebAs. www.poczta.greenlemon.pl
Instrukcja do panelu administracyjnego do zarządzania kontem FTP WebAs www.poczta.greenlemon.pl Opracowanie: Agencja Mediów Interaktywnych GREEN LEMON Spis treści 1.Wstęp 2.Konfiguracja 3.Konto FTP 4.Domeny
Wprowadzenie do programu Mathcad 15 cz. 1
Wpisywanie tekstu Wprowadzenie do programu Mathcad 15 cz. 1 Domyślnie, Mathcad traktuje wpisywany tekst jako wyrażenia matematyczne. Do trybu tekstowego można przejść na dwa sposoby: Zaczynając wpisywanie
Normalizacja baz danych
Normalizacja baz danych Definicja 1 1 Normalizacja to proces organizowania danych w bazie danych. Obejmuje to tworzenie tabel i ustanawianie relacji między tymi tabelami zgodnie z regułami zaprojektowanymi
Rozwiązywanie układów równań liniowych
Rozwiązywanie układów równań liniowych Marcin Orchel 1 Wstęp Jeśli znamy macierz odwrotną A 1, to możęmy znaleźć rozwiązanie układu Ax = b w wyniku mnożenia x = A 1 b (1) 1.1 Metoda eliminacji Gaussa Pierwszy
Klasyfikator liniowy Wstęp Klasyfikator liniowy jest najprostszym możliwym klasyfikatorem. Zakłada on liniową separację liniowy podział dwóch klas między sobą. Przedstawia to poniższy rysunek: 5 4 3 2
QUERY język zapytań do tworzenia raportów w AS/400
QUERY język zapytań do tworzenia raportów w AS/400 Dariusz Bober Katedra Informatyki Politechniki Lubelskiej Streszczenie: W artykule przedstawiony został język QUERY, standardowe narzędzie pracy administratora
Wyszukiwanie binarne
Wyszukiwanie binarne Wyszukiwanie binarne to technika pozwalająca na przeszukanie jakiegoś posortowanego zbioru danych w czasie logarytmicznie zależnym od jego wielkości (co to dokładnie znaczy dowiecie
Algorytmy sztucznej inteligencji
Algorytmy sztucznej inteligencji Dynamiczne sieci neuronowe 1 Zapis macierzowy sieci neuronowych Poniżej omówione zostaną części składowe sieci neuronowych i metoda ich zapisu za pomocą macierzy. Obliczenia
Metody systemowe i decyzyjne w informatyce
Metody systemowe i decyzyjne w informatyce Laboratorium MATLAB Zadanie nr 2 Detekcja twarzy autorzy: A. Gonczarek, J.M. Tomczak Cel zadania Celem zadania jest zapoznanie się algorytmem gradientu prostego
I. Informacje ogólne. Jednym z takich systemów jest Mambo.
MAMBO (CMS) I. Informacje ogólne CMS, Content Management System ("system zarządzania treścią") jest to jedna lub zestaw aplikacji internetowych pozwalających na łatwe utworzenie oraz późniejszą aktualizację
Sztuczna Inteligencja w medycynie projekt (instrukcja) Bożena Kostek
Sztuczna Inteligencja w medycynie projekt (instrukcja) Bożena Kostek Cel projektu Celem projektu jest przygotowanie systemu wnioskowania, wykorzystującego wybrane algorytmy sztucznej inteligencji; Nabycie
Mathcad c.d. - Macierze, wykresy 3D, rozwiązywanie równań, pochodne i całki, animacje
Mathcad c.d. - Macierze, wykresy 3D, rozwiązywanie równań, pochodne i całki, animacje Opracował: Zbigniew Rudnicki Powtórka z poprzedniego wykładu 2 1 Dokument, regiony, klawisze: Dokument Mathcada realizuje
Metody systemowe i decyzyjne w informatyce
Metody systemowe i decyzyjne w informatyce Laboratorium JAVA Zadanie nr 2 Rozpoznawanie liter autorzy: A. Gonczarek, J.M. Tomczak Cel zadania Celem zadania jest zapoznanie się z problemem klasyfikacji
Klasyfikatory: k-nn oraz naiwny Bayesa. Agnieszka Nowak Brzezińska Wykład IV
Klasyfikatory: k-nn oraz naiwny Bayesa Agnieszka Nowak Brzezińska Wykład IV Naiwny klasyfikator Bayesa Naiwny klasyfikator bayesowski jest prostym probabilistycznym klasyfikatorem. Zakłada się wzajemną
I. Interfejs użytkownika.
Ćwiczenia z użytkowania systemu MFG/PRO 1 I. Interfejs użytkownika. MFG/PRO w wersji eb2 umożliwia wybór użytkownikowi jednego z trzech dostępnych interfejsów graficznych: a) tekstowego (wybór z menu:
Uczenie się pojedynczego neuronu. Jeśli zastosowana zostanie funkcja bipolarna s y: y=-1 gdy z<0 y=1 gdy z>=0. Wówczas: W 1 x 1 + w 2 x 2 + = 0
Uczenie się pojedynczego neuronu W0 X0=1 W1 x1 W2 s f y x2 Wp xp p x i w i=x w+wo i=0 Jeśli zastosowana zostanie funkcja bipolarna s y: y=-1 gdy z=0 Wówczas: W 1 x 1 + w 2 x 2 + = 0 Algorytm