autoreferat rozprawa doktorska-14
Transkrypt
autoreferat rozprawa doktorska-14
Instytut Badań Systemowych Polska Akademia Nauk Mgr Victor B. Taylor Rozprawa doktorska HeBIS: Inspirowany Biologicznie System Klasyfikacji Danych Autoreferat Promotor: Prof. dr. hab. inż. Janusz Kacprzyk Instytut Badań Systemowych Polska Akademia Nauk Warszawa, październik 2011 Spis treści Spis treści 1. Wstęp 2. Przegląd literatury 3. Heterogeniczny biologicznie inspirowany system HeBIS 4. Wybrane symulacje i analiza wyników 5. Podsumowanie i wnioski 6. Przyszłe prace badawcze Bibliografia 2 2 3 5 10 12 14 16 Taylor 2 of 16 1. Wstęp Odczuwa się obecnie powszechnie potrzebę szybkiego wydobywania wiedzy w celu zarządzania zasobami naturalnymi. Wydobywanie tej wiedzy dla celów lokalnych, regionalnych i globalnych jest związane z chęcią precyzyjniejszego zbadania problemów, dotyczących czynników naturalnych i antropogenicznych zmian środowiskowych. Dane zbierane są przez wielką liczbę satelitarnych platform, należących do różnych agencji, narodowych i międzynarodowych. Oznacza to ogromną masę danych, takich jak, np., przekazywane przez czujniki MODIS agencji NASA, obejmujące terabajty danych w postaci obrazów Ziemi. Zagadnienia klasyfikacji, związane z analizą obrazów satelitarnych, są trudne z wielu powodów. Należą do nich: zakłócenia widmowe i przestrzenne obrazów z obserwowanych terenów, utrata danych z powodu pokrywy chmur, zakłócenia w dziedzinie czasu, a także błędne przypisywanie etykiet klas, czy to spowodowane przez ludzi, czy przez automaty. Wielość specyficznych cech regionalnych, takich jak odmienność charakteru obszarów nadbrzeżnych, cech powierzchni terenu, rozmaitości powierzchni oceanicznych i związane z tym trudności analityczne także zwiększają trudność pozyskiwania wiedzy na podstawie satelitarnych obrazów optycznych. Prezentowane badania dotyczą metody, dostarczającej wiedzy klasyfikacyjnej do analizy obrazów. Badania oparto na współczesnych technikach uczenia maszynowego, powiązanych tak, by uzyskać nowy system oparty na bieżących osiągnięciach ewolucyjnej biologii rozwoju. W szczególności, opiera się on na spostrzeżeniu, że ewolucja wyposażyła organizmy żywe w efektywne instrumenty poruszania się na podstawie obfitych danych wśród zasadzek i nagród, związanych z przeżyciem w niesprzyjającym środowisku. Autor pragnie wyrazić nadzieję, że nowa metoda, wykraczająca poza typowe sieci neuronowe, pozwoli efektywniej analizować skomplikowane struktury danych. Rozprawa poświęcona jest opracowaniu i analizie algorytmu, tworzącego samoorganizujące sieci klasyfikujące. HeBIS (Heterogeniczny biologicznie inspirowany system) jest taką siecią klasyfikującą i może być oparty na powiązaniu różnorakich narzędzi uczenia maszynowego, takich jak samoorganizujące się sieci Kohonena (SOFM), sztuczne sieci neuronowe (ANN), czy maszyny wektorów podpierających (SVM) [1]. Biologiczny kontekst samoorganizacji i komunikacji między prostymi elementami przetwarzania danych, lub komórkami, w ramach sieci, to kontekst genetycznych sieci regulujących i rozwoju ewolucyjnego [2, 3, 4]. Każda komórka składa się ze sztucznego genomu, wyposażonego w przełączniki stymulujące i destymulujące, sterowane za pomocą komunikacji sztucznych białek w symulowanej kracie środowiskowej, w której umieszczona jest komórka. W każdej komórce, białkowe przełączniki sterują ekspresją poszczególnych białek z poszczególnych komórek. Białka te dyfundują poprzez kratę i zarazem są wykorzystywane do komunikacji pomiędzy elementami przetwarzającymi. Komunikacja ta jest oparta na chemii sztucznych białek i ich stężeniach. Samoorganizacja i ewolucja sieci zachodzą na kilku poziomach. Topologia sieci na wyższym poziomie – liczba i typy prostych komórek (SOFM, ANN czy SVM) – może się zmieniać, podobnie, jak wewnętrzna organizacja każdej z komórek. Na tym niższym poziomie możemy mówić o zmiennych parametrach, jak, np. wybór jądra w elemencie typu SVM. Sztuczne białka, wykorzystywane do komunikacji między elementami przetwarzającymi oraz między „otoczeniem” (dane wejściowe) a topologią klasyfikatora, także adaptują się do dziedziny zastosowań. Te białka komunikacyjne i „środowiskowe” są uwalniane do kraty klasyfikującej, jeśli odpowiadające im geny są aktywne. 1.1. Sformułowanie zagadnienia Zasadnicza teza rozprawy to uznanie inspiracji biologicznej za niezwykle istotną zasadę, pozwalającą osiągnąć wartościowe i użyteczne cechy w zakresie klasyfikacji i hybrydyzacji. To może prowadzić do bardzo efektywnych narzędzi rozwiązywania zagadnienia klasyfikacji dla obrazów satelitarnych. Badania dotyczą stwierdzenia, czy kombinacja sztucznej sieci sterującej genów (GRN) i podstawowych elementów uczenia maszynowego w postaci samoorganizującej się sieci jest efektywna w za- 10/10/11 Taylor 3 of 16 stosowaniu do wielowymiarowej klasyfikacji binarnej, zwłaszcza – wektorów cech z optycznych obrazów satelitarnych. To szczegółowe studium przypadku pozwoli ocenić działanie nowej koncepcji hybrydyzacji oraz sposoby jej dostosowywania do określonej klasy zadań praktycznych. 1.2. Zakres badań -- Skonstruowane zostaną proste GRN: --- uproszczone reprezentacje sztucznych białek --- interakcja białek za pomocą prostej „chemii” tych białek --- rozmiary i stopień skomplikowania są ograniczone poprzez dostępne zasoby obliczeniowe -- Samoorganizacja: --- uproszczona przez obliczenia ewolucyjne, w tym przypadku algorytmy rojowe (PSO), a także niewielki zbiór reguł samoorganizacji, inspirowanych ewolucyjną biologią rozwoju oraz analizą statystyczną --- prosty algorytm uczenia klasyfikacji oparty jest na wielokrotnym wprowadzaniu obserwacji do sieci klasyfikującej w ramach algorytmu PSO -- Analiza dokładności rzeczywistych zagadnień klasyfikacji binarnej -- Ocena odporności dla znanych zadań testowych będzie prowadzona dla przypadków z danymi zakłóconymi oraz z brakującymi danymi -- Analiza pojedyńczej klasyfikacji binarnej dla obrazów optycznych -- Porównania zostały ograniczone do prostych implementacji jąder dla SOFM, podczas, gdy ewentualne porównania dla jąder w zakresie SVM i ANN będą przedmiotem dalszych prac -- Nie jest przedmiotem prezentowanych badań głębsza analiza zalet i wad różnych algorytmów uczenia SOFM. 1.3. Główne osiągnięcia i wyniki • • • • • • Nowatorskie zastosowanie hybrydowego narzędzia opartego na analogii biologicznej z uczeniem maszynowym do praktycznego zadania klasyfikacji Określenie efektywności prostej GRN w zastosowaniu do klasyfikacji wielowymiarowej Sztuczne białka przekazują informację klasyfikacyjną i wyniki do i z komórkowych jąder uczenia maszynowego Uczenie sieci GRN przy pomocy algorytmów rojowych (PSO) Zastosowanie systemu klasyfikacji opartego na GRN do zadania analizy optycznych obrazów satelitarnych – wykrywania „chmur” na obrazach Porównanie działania systemu HeBIS i algorytmu klasyfikacji opartego wyłącznie na SOFM na danych oryginalnych, danych zakłóconych oraz danych z brakującymi wartościami. 2. Przegląd literatury 2.1. Samoorganizujące się sieci Kohonena (SOFM) Sieć systemu HeBIS może być traktowana jako rodzaj SOFM, ale z elementami przetwarzającymi bardziej skomplikowanymi niż proste neurony SOFM. Niektóre z ogólnych koncepcji tutaj przedstawionych zostały włączone do architektury HeBIS. SOFM, opisane przez Kohonena [5], składają się z prostych neuronów, ułożonych w kracie, o wymiarowości zazwyczaj znacznie niższej niż dane wejściowe. Zależności pomiędzy neuronami są traktowane jak wektory wag. Wagi są modyfikowane w miarę, jak dane wejściowe są kolejno podawane na wejścia SOFM. Podawanie wektora wejściowego jest związane z ustaleniem neuronu o wagach „najlepiej” odwzorowujących daną wejściową według określonej definicji odległości (najczęściej Euklidesowej). Ten proces „dopasowywania” można porównać do kwantyzacji wektorowej, której jednak towarzyszy aktualizacja wag w sąsiadujących neuronach (funkcja aktualizacji sąsiedzkiej może przybierać wiele postaci, [5]). Po zakończeniu procedury podawania danych i stwierdzeniu zbieżności SOFM ([6]), sieć zawiera strukturalną reprezentację zbioru danych wejściowych o pewnym stopniu topologicznej odpowiedniości do danych wejściowych. Wektory wag SOFM tworzą rodzaj odwzorowania cech. Wynikowa SOFM jest zazwyczaj określona w dwóch lub trzech wymiarach i jest używana w wielu zastosowaniach, takich jak wizualizacja „istotnych” podobieństw w zbiorze wielowymiarowych danych, klasy10/10/11 Taylor 4 of 16 fikacja, czy aproksymacja funkcji [7, 8]. Rys. 1 pokazuje schemat zależności wejścia/wyjścia i przykład odwzorowania z neuronami służącymi do klasyfikacji. Wektor wejścia oznaczono X, a wagi wij odpowiadają powiązaniom między tym wektorem a komórkami wyjściowymi sieci SOFM, N. Rys. 1. Sieć samoorganizująca się 2.2. Obliczenia ewolucyjne W opisywanej pracy, algorytmy rojowe (PSO) służą głównie ułatwieniu szerokiego przeszukiwania przestrzeni genomów HeBIS, [9]. Genomy odnoszą się do białek, używanych do komunikacji w HeBIS w ramach GRN. Genomy także opisują własności poszczególnych komórek. Szukanie przy pomocy PSO jest konieczne, aby móc szybko sprawdzać duży zbiór potencjalnych rozwiązań. W algorytmach tych populacja potencjalnych rozwiązań porusza się, przekazując wewnętrznie informację o przestrzeni rozwiązań, [10]. HeBIS używa PSO przy uczeniu, stąd dokładniejszy opis w dalszej części. Algorytmy rojowe są rodzajem algorytmów ewolucyjnych, użytecznych przy wielowymiarowej optymalizacji nieliniowej (por. Kennedy i Eberhard, [10]). 2.3. Biologiczny i sztuczny rozwój ewolucyjny Biologiczny rozwój ewolucyjny („evo-devo”) oznacza proces, w którym fenotyp osobnika rozwija się na bazie genotypu [11]. To zjawisko biologiczne zostało zastosowane w opracowaniu systemu klasyfikacji HeBIS. Jest ono podstawą samoorganizującego sterowania i komunikacji w klasyfikatorze HeBIS. W ogólności, analiza rozwoju ewolucyjnego („evo-devo”) stara się poznać i wyzyskać zasady, zgodnie z którymi ogromna ilość informacji, opartej na zaledwie czterech cząsteczkach, tworzących geny, a następnie genomy, jest w określonym – zmieniającym się – środowisku przetwarzana na fenotyp. Kompletny dorosły organizm osobnika jest wynikiem procesów sterowania i komunikacji w tym rozwijającym się systemie chemicznym, w którym zasadniczą rolę spełniają białka. Intensywne interakcje chemiczne są charakterystyczne dla ewoluujących w czasie i przestrzeni białkowych sieci komunikacyjnych, zachowujących odpowiedni poziom samoorganizacji. Siła tych procesów wydaje się wynikać z ciągłego wykorzystywania białek w rozwijających się sieciach [12]. Sieci takie nazywamy właśnie GRN. Idea GRN, jako sieci sterującej, jest jedną z podstaw prezentowanej pracy i budowy klasyfikatora. Może ona służyć także jako podstawa do projektowania systemów sterowania i komunikacji do budowy skomplikowanych struktur, takich jak roboty. Samoorganizacja w HeBIS jest oparta na pięciu zasadach „evo-devo” (Kumar i Bentley, [13]): • • • • • Podział – proces tworzenia, poprzez podział, nowych komórek z komórki wyjściowej; Tworzenie kształtu – czasoprzestrzenny proces, organizujący układ i czynności komórkowe organizmu; koncepcja informacji pozycyjnej pozwala poszczególnym komórkom zajmować miejsce w organizmie według określonych gradientów dyfuzji, Morfogeneza – proces wzrostu organizmu i rozwoju jego trójwymiarowego kształtu, Zróżnicowanie komórkowe – pozwala komórkom organizmu nabywać różne własności, jak np. komórkom skóry, nerek, czy neuronom; własności te są ostatecznie efektem odpowiednich zmian w ekspresji genów i ich sygnalizacji w poszczególnych komórkach; spowodowane to jest – między innymi – przez komunikację międzykomórkową i niesymetryczny podział komórek; Wzrost – powiększanie masy organizmu za pośrednictwem podziału i namnażania komórek. Te podstawowe pięć aspektów rozwoju ewolucyjnego odwołuje się do mechanizmów sygnalizacji komórkowej, zarówno w komunikacji międzykomórkowej, jak i wewnątrzkomórkowej. Te mechanizmy, krótkiego i dalekiego zasięgu, nazywamy razem siecią sterująca genów (GRN). 10/10/11 Taylor 5 of 16 HeBIS zawiera sztuczną GRN, opartą na cechach biologicznej GRN. Omówimy więc pewne podstawowe pojęcia z tym związane. I tak, Kumar i Bentley, [13], zaproponowali termin „rozwój obliczeniowy” dla zastosowania zasad rozwoju biologicznego w informatyce. Terminu tego można użyć do opisania badań wiążących genotyp, otrzymany w wyniku obliczeń ewolucyjnych, z jego cechami fizycznymi i neurologicznymi. Efekty „rozwoju obliczeniowego”, wymienione w [13], to, m.in.: Zalety: • • • • • • • • Redukcja rozmiarów genotypu Samoistne pojawienie się złożoności Złożone genotypy są oparte na prostych genotypach Rozwój hierarchiczny z wielokrotnym użyciem funkcjonalności modularnej Adaptacyjność Odporność na zakłócenia Możliwość regenerowania uszkodzonej funkcjonalności Możliwości regulacyjne. Wady: • • • Trudności z komputerową realizacją ewolucji Analiza pętli sprzężeń zwrotnych i wyprzedzających w sieciach sygnalizacyjnych otrzymanych w wyniku ewolucji GRN jest trudna Koszt obliczeniowy wyższy niż w przypadku tradycyjnych metod obliczeń ewolucyjnych. Bentley wykorzystywał także rozwój obliczeniowy jako podstawę do ewolucyjnego uzyskiwania sterowania robotami, dla przykładowego robota zwanego „wonderborg” [2]. Ruchy robota są związane bezpośrednio z genami, o ekspresji otrzymanej z sieci sterującej, wynikającej z ewolucji. Informacja o świecie zewnętrznym jest reprezentowana w postaci odpowiednich białek. W tej pracy po raz pierwszy użyto złożonej sztucznej chemii opartej na fraktalach Mandelbrota. W wyniku obliczeń ewolucyjnych (algorytmu genetycznego), sterowniki oparte na GRN wyewoluowały, by następnie efektywnie kierować robotem w labiryncie. Sterowniki te były wyjątkowe, jako, że automatycznie tworzyły moduły funkcjonalne, używane na rozmaite sposoby do nawigacji w labiryncie. Koncepcja tych modułów nie była a priori zaprojektowana, ale rozwinęła się w wyniku użycia GRN do sygnalizacji i regulacji. Nie dzieje się tak w programowaniu genetycznym, ani w parametrycznych systemach L, [14]. 3. Heterogeniczny biologicznie inspirowany system HeBIS 3.1. Przegląd ogólny HeBIS jest samoorganizującym się systemem klasyfikującym, inspirowanym przez właściwości organizmów żywych pozwalające im wzrastać od fazy zapłodnionego jaja do kompletnego fenotypu przez przetwarzanie otrzymanego genomu. Proces ten jest zakodowany przy pomocy genów w genotypie oraz ich interakcje w czasie i z ich otoczeniem chemicznym poprzez GRN. Użycie GRN pozwala na zwięzłe zakodowanie informacji o rozwoju, samoorganizującym i odpornym. Ta sama sieć reakcji metabolicznych między białkami stanowi podstawę stabilnego sterowania metabolicznego rozwoju organizmu. Została ona wykorzystana do stworzenia klasyfikatora obrazów satelitarnych. Struktura przetwarzania w HeBIS złożona jest z następujących obszarów funkcjonalnych: • • • • • • • Środowisko symulacji interakcji białkowych Sieć sterująca genów (GRN) Podstawowe typy komórek, ich przetwarzanie i zachowanie Reprezentacja wektorów danych wejściowych i klas Reprezentacja klas wyjściowych Uczenie klasyfikacji Optymalizacja ewolucyjna. 10/10/11 Taylor 6 of 16 Rys. 2 pokazuje schemat kraty środowiska HeBIS w odniesieniu do komórek, genomów i białek. Environmental Protein Environmental Protein Cell Receptor Protein ut tp Ou Control o me Gen Cell Membrane P Ho rot log ein ra m Ph as ed In pu tD et ec to r Processing Kernel (ANN,SOM, or SVM) Regulatory Protein Rys. 2. Schemat kraty środowiskowej i przetwarzania komórkowego Wprowadzimy obecnie zasadnicze elementy systemu i jego działania. 3.2. Podstawy 3.2.1. Przetwarzanie komórkowe Komórka, jako element przetwarzający, jest sztucznym tworem o określonej lokalizacji w środowisku przetwarzania białkowego. Rozróżniamy wnętrze („cytoplazmę”) i otoczenie komórki. Główne elementy, zawarte w cytoplazmie, to białka receptorowe, genom sterujący, blok wyjściowy oraz jądro przetwarzania. Elementy te są sztucznymi odpowiednikami elementów biologicznych. Białka receptorowe i bloki wyjściowe odwzorowują wartości numeryczne na koncentracje sztucznych protein z odpowiednim skalowaniem. Przetwarzające jądro komórkowe zapewnia funkcjonalność uczenia maszynowego. W obecnej chwili jest ona ograniczona do SOFM. Taka architektura stwarza genom w poszczególnych komórkach. Genom ten ma możliwość kreowania sieci komórek z jądrami przetwarzającymi, rozwiązującej konkretne zadanie klasyfikacji. Struktura wyższego poziomu dostarcza mechanizm uczenia i analizy, pozwalający na uczenie genomu przy pomocy obliczeń ewolucyjnych, tj. algorytmów rojowych. Genom komórki składa się z genów, kodujących sztuczne białka, wynikających z działania algorytmu uczącego HeBIS. Steruje on zachowaniami komórki, uruchamiając, dezaktywując i zmieniając jej zachowania zgodnie ze stężeniami regulujących i rozpoznawanych białek. Poprzez takie interakcje pojedyncza komórka samoorganizuje się do bardziej skomplikowanej sieci klasyfikującej. Genom i jego GRN są optymalizowane dla konkretnego zadania przy pomocy optymalizatora rojowego, zastosowanego do zbioru danych uczących z dziedziny rozwiązywanego zadania. 3.2.2. Sieć sterująca genów GRN Rozwój biologiczny używa genów do określania białek, które, z kolei, są wykorzystywane do wielu nakładających się celów, [2]. Cele te obejmują aktywację i dezaktywację innych genów, a także komunikację wewnątrz- i między-komórkową. GRN jest systemem modularnym, używającym wielokrotnie tych samych genów do różnych celów i do tworzenia wielu rodzajów białek o wielorakim przeznaczeniu. Białka i interakcje metaboliczne są zorganizowane w uczący się system, [16]. Sztuczne tworzenie białek jest aktywowane lub dezaktywowane przez inne białka, sterowane przełącznikami genetycznymi zawartymi w genomie przetwarzającej komórki. Białka te dyfundują poprzez symulowane środowisko, zawierające sieć rozmaitych komórek przetwarzających. Dyfuzja następuje w dyskretnych momentach, a stężenie białek spada w określonym odcinku czasu, [17]. Podobnie jak w rzeczywistości, stężenie jest definiowane jako iloraz masy jednostki i jej objętości. Ko10/10/11 Taylor 7 of 16 munikacja między przetwarzającymi elementami stanowi nieodłączny składnik systemu białek i przełączników genetycznych, który ewoluuje w trakcie uczenia, [2]. 3.2.3. Kodowanie genów Genom wewnątrz każdej komórki HeBIS składa się z co najmniej jednego genu. Liczba genów, w zasadzie nieograniczona, jest ustalana dla każdej symulacji. Relacje hierarchiczne między genomem, genami i białkami, pokazane na Rys. 3, są znacznym uproszczeniem rzeczywistości biologicznej. Rys. 3. Hierarchia białek Każdy z genów z rysunku zawiera szereg obszarów funkcjonalnych. Obszary te obejmują białko przełącznikowe, typ genu, działanie, które może być powiązane z genem, oraz jeden lub więcej opisów białek. Obszar białka przełącznikowego jest opisem dokładnie spasowanego białka, aktywującego konkretną akcję lub akcje, związane z genem. Biologicznie, białko przełącznikowe (Rys. 4) określa dopasowanie białkowe, będące warunkiem uruchomienia konkretnych akcji. Dopasowanie (podobieństwo) białka do podanego wzorca musi być odpowiednio duże. Rys. 4. Opisy białka sterującego lub środowiskowego oraz białka przełącznikowego Obszar typu genu określa gen za pomocą jednego lub więcej następujących atrybutów, powiązanych funkcją OR: Gen działania || Białko sterujące || Białko środowiskowe || Białko receptora komórki. Po aktywacji genu, obszar typu genu określa, czy komórka zaczyna, czy przestaje produkować białka sterujące lub środowiskowe, a także – czy wykonywana jest jedna z wyuczonych czynności komórki. Obszar działania określa możliwe czynności komórki, takie jak na przykład: • • • • Dodaj-komórkę (AddCell) Odchudź-się (PruneSelf) Przejdź-do-SOFM-i-ucz-się (ChangeToSOFMAndTrain) Klasyfikuj (Classify). Obszary opisów białek (sterujących, środowiskowych i receptorów komórkowych) w genach opisują białka produkowane i wysyłane do cytoplazmy lub środowiska. Białka sterujące i receptorowe przeznaczone są do użytku wewnątrzkomórkowego, zaś środowiskowe są wysyłane wprost do kraty, w której umieszczona jest komórka. 3.2.4. Komunikacja białkowa Komunikacja białek pomiędzy komórkami przetwarzającymi opiera się na: dyfuzji białek w środowisku i cytoplazmie, sztucznej chemii, pozwalającej białkom na reagowanie między sobą i tworzenie nowych białek, a także dopasowywanie białek. 10/10/11 Taylor 8 of 16 Dyfuzja zachodzi w trójwymiarowej kracie. Równanie dyfuzji jest zdyskretyzowanym skalarnym laplasjanem, zgodnie z równaniem (1) gdzie h = 2, zaś ψ(x,y,z) to stężenie białek w punkcie (x,y,z) dyskretnego środowiska. Chemia w HeBIS jest prosta i mało przypomina odpowiednik biologiczny. Reakcje zachodzą z prawdopodobieństwem określonym rozkładem normalnym, tam, gdzie stykają się dwa lub więcej białek. Zachodząca reakcja zużywa reagujące białka, których stężenia się zmniejszają, jednakże ogólny poziom stężeń jest zachowany. Dopasowanie białek, podstawę komunikacji w HeBIS, opisano już poprzednio. Jego rola to naśladowanie funkcji aktywujących i dezaktywujących na poziomie genetycznym oraz rozpoznawanie kształtu, właściwe białkom rzeczywistym. 3.2.5. Genom komórkowy a sterowanie Genom komórkowy steruje komórką tak, by jej zachowanie uzupełniało strukturę i możliwości całościowej sieci klasyfikującej komórek. Zachowanie sieci zbudowane jest na „słowniku” prostych działań, wykonywanych i regulowanych w obrębie komórek. Proste działania komórek mogą prowadzić do złożoności w miarę, jak komórki współdziałają ze sobą w ramach GRN. Genom komórki funkcjonuje na dwa współistniejące sposoby – uczenie i przetwarzanie (lub: wytwarzanie). W ramach uczenia początkowy genom komórki ze zmienną liczbą genów ewoluuje w celu klasyfikacji przykładów uczących w ramach obliczeń ewolucyjnych. Ten genom, po ewolucji, pozwala sieci rosnąć, jeśli to jest potrzebne, od początkowej pojedynczej komórki, do sieci, której rozmiary i cechy odpowiadają własnościom (statystycznym) zadania. W trybie przetwarzania, genom używa wyewoluowanego „programu” sterującego i GRN do klasyfikowania nowych danych z tej samej dziedziny. Zachowania wewnętrzne komórki. Są to działania wykonywane na początku każdego kroku w czasie, po tym, jak białka zareagowały i dyfundowały w środowisku. Te działania dostarczają genomowi informację statystyczną o białkach obecnych w komórce i jej otoczeniu. Wyuczone zachowania komórki. Są to działania, wynikające z interakcji komórki w ramach GRN. Działania te zachodzą, ponieważ aktywowana jest określona sekwencja genów na skutek obecności i właściwego stężenia odpowiednich białek w cytoplazmie. Te działania mogą wykorzystywać informację zakodowaną w białkach w ramach zachowań wewnętrznych komórki. Proste zachowania wyuczone składają się na bardziej złożone działania poprzez nieliniowe odwzorowanie w ramach GRN. Te zachowania są realizacją komunikacji i sterowania w sieci klasyfikującej, wykorzystującej informację z zachowań wewnętrznych oraz środowiskowych GRN. Omawiane działania zachodzą po reakcjach chemicznych, dyfuzji i zachowaniach wewnętrznych. 3.2.6. Reprezentacja danych wejściowych Obecnie jest używana w HeBIS jedna metoda odwzorowywania danych testowych i uczących na sztuczne białka. Odpowiednia procedura została zilustrowana na Rys. 5. Konkretne odwzorowanie cech (klas) na białka jest w sposób arbitralny ustalane w trakcie przetwarzania wstępnego. Jedynym ograniczeniem jest, by zachować jednoznaczność odwzorowania dla każdej cechy. Stąd, konkretne białko jest zawsze jednoznacznie powiązane z określoną cechą (klasą) w trakcie symulacji. 10/10/11 Taylor 9 of 16 Rys. 5. Bezpośrednie odwzorowanie cech na białka 3.2.7. Zasady samoorganizacji Pierwszą ważną częścią algorytmu niższego poziomu w HeBIS jest omawiana już ewolucja sieci sterującej genów. Drugą częścią jest niewielka liczba zasad samoorganizacji, badanych w ramach pracy. Zasady te mają wyłącznie służyć sprawdzeniu, czy można uzyskać użyteczną klasyfikację na bazie: -- niewielkiego zestawu reguł; -- biologicznie inspirowanej komunikacji; -- prostych elementów uczenia maszynowego. Chodzi o sprzężenie zwrotne do komórek w celu lokalnej optymalizacji działań klasyfikujących komórek oraz interakcje między komórkami w sieci. Mamy tutaj do czynienia z: -- analogią białkową odnoszącą się do statystycznych cech; oraz -- podziałem i śmiercią komórek. 3.2.8. Optymalizacja algorytmem rojowym Algorytm ten jest używany do optymalizacji całego genomu komórkowego w celu umożliwienia wzrostu samoorganizującej się sieci klasyfikującej. Optymalizacja dotyczy poziomu białek. Zmienne roju, opisujące białka, odnoszą się do odpowiednich statystyk i cech numerycznych, w tym stężeń, białek w genomie, białek określających cechy danych uczących i testowych. 3.2.9. Algorytm uczący Dla uproszczenia wypróbowano w ramach pracy tylko jeden algorytm uczący. Uczenie sieci jest w tym przypadku sterowane przez algorytm rojowy. Schemat algorytmu uczącego pokazano na Rys. 6, natomiast jego opis podany jest poniżej: Algorytm uczący 1. Wybierz Q, wielkość roju, oraz N, liczbę iteracji uczenia. Ustaw średnią jakość cząstki na 0. 2. Stwórz populację z Q cząstek. Nadaj im losowe parametry początkowe. 3. Zainicjuj środowisko HeBIS dla każdej cząstki. Jest to jedna komórka przetwarzająca z pojedynczym genomem. Położenie komórki i parametry genomu odpowiadają parametrom cząstki. 4. Wybierz przykład ze zbioru uczącego i podaj go do każdego ze środowisk cząsteczkowych. 5. Rozpocznij dyfuzję białek i proces samoorganizacji dla każdego ze środowisk. Niech symulacje trwają określoną liczbę iteracji lub do momentu wyzerowania wszystkich stężeń białek. 6. Ustal jakość genomu związanego z i-tą cząsteczką i zapisz ją. Jakość ta jest ustalana przez porównanie pożądanej etykiety przykładu z etykietą wygenerowaną przez sieć. 7. Powtórz kroki 3, 4, 5 i 6, aż do wyczerpania przykładów uczących. 8. Uśrednij jakości dla wszystkich danych uczących dla każdego genomu w danej iteracji algorytmu uczącego. 9. Uaktualnij parametry cząsteczek na podstawie odpowiedniej średniej jakości. 10. Powtórz kroki 2 do 9 dla N iteracji. 11. Zachowaj najlepszy otrzymany genom. 10/10/11 Taylor 10 of 16 Rys. 6. Schemat algorytmu uczącego 4. Wybrane symulacje i analiza wyników 4.1. Zadanie wykrywania chmur na obrazach satelitarnych W pracy użyto zadania związanego z analizą obrazów satelitarnych jako testowego zadania dla systemu HeBIS. W zadaniu tym chodzi o nauczenie klasyfikatora, czy dany piksel reprezentuje obszar bez chmur (klasa C1), czy „zachmurzony” (klasa C0). Dane zostały odpowiednio przygotowane na podstawie rzeczywistych obrazów satelitarnych. Dane oryginalne pochodziły ze spektrometru MODIS, umieszczonego na platformie satelitarnej Aqua agencji NASA. Do celów przeprowadzonego badania wykorzystano dane pochodzące z wybranych 15 pasm częstotliwościowych. Rys. 7 przedstawia widok w barwach sztucznych wybranego do badań obszaru (Chesapeake Bay w USA), Rys. 8 – podział między piksele „zachmurzone” i „bezchmurne”, zaś Rys. 9 – maskowanie obszaru lądu, ponieważ do badań użyto wyłącznie obszaru oceanicznego. Podział na dwie klasy pikseli jest oparty na wartości reflektancji powierzchniowej (jeśli dla pikseli na obszarze oceanicznym przekracza ona 0,027, to piksel jest klasyfikowany jako „zachmurzony”). Rys 7. Obraz w sztucznych barwach. Szare i białe są chmury, woda jest ciemna lub czarna. Rys. 8. Podział na piksele z chmurami i bez, z wyłączeniem lądu (obszar czerwony). 10/10/11 Rys. 9. Ląd i ocean – maskowanie w celu wyeliminowania obszaru lądu. Taylor 11 of 16 Rys. 10 przedstawia podziały na dwie rozpatrywane klasy w poszczególnych 15 analizowanych zakresach częstotliwości (wartość -1 odpowiada klasie C1, zaś wartość +1 odpowiada klasie C0). Wartości na osi pionowej są normalizowanymi wartościami logarytmów. Rys. 10. Podziały na piksele “zachmurzone” i “bezchmurne” dla rozpatrywanych 15 pasm częstotliwości 4.2. Funkcja jakości Funkcja jakości (fitness, czyli ‘dopasowania’) jest używana do otrzymywania dokładnej klasyfikacji w trakcie fazy uczenia i testowania. HeBIS używa jednej funkcji jakości do oceny genomów. Opiera się ona na porównaniu (korelacji) stężeń białek wyjściowych i obecnych w środowisku. Jakość genomu jest skalarem, otrzymanym na podstawie reakcji genomu na sekwencję par pikseli uczących, z klasy C0 i z klasy C1. Wartość jakości, Fitness value jest określona jako: Jeśli ( Label desired class = C0) to Fitness value =2( CorrC0 max - 0,5) w przeciwnym przypadku, jeśli ( Label desired class = C1) to Fitness value =2(0,5 - CorrC0 max ) (2) gdzie CorrC0 max i Fitness value zawarte są między 0 a +1. Wynik wyznaczony ze wzoru (2) implikuje granicę decyzyjną na poziomie wartości 0,5. Zależy to od wartości CorrC0 max zgodnie z Rys. 11. Rys. 11. Schemat zależności decyzji od wartości CorrC0 max 10/10/11 Taylor 12 of 16 4.3. Wyniki eksperymentalne Przeprowadzono 16 eksperymentów w celu porównania efektywności działania klasyfikatorów HeBIS i SOFM oraz dokładnej analizy wyników samego HeBIS. Przedstawimy tutaj tylko wyniki dwóch eksperymentów. Eksperymenty te polegały na analizie przykładów z klasyfikacją całych obrazów testowych i zmiennymi 12 parametrami symulacji. Pokazano dla każdego eksperymentu cztery obrazy. Obraz zatytułowany „klasyfikacja” („Classification”) pokazuje jako białe piksele zaklasyfikowane do klasy C0, czarne – do klasy C1 (czerwone odpowiadają obszarowi lądowemu, nie uwzględnianemu w badaniu). Drugi obraz („Difference”) pokazuje błędy klasyfikacji: piksele niebieskie odpowiadają pikselom C0, zaklasyfikowanym jako C1, zaś zielone piksele – odwrotnie, tj. piksele C1, zaklasyfikowane jako C0. Trzeci obraz przedstawia stan faktyczny, zaś czwarty – maskowanie lądu. I tak, na Rys. 12, piksele C0 zostały prawidłowo sklasyfikowane w 53,89% przypadków, a piksele C1 – w 72,95% (ogólnie: 62,11% prawidłowej klasyfikacji). Błędy głównie dotyczą pikseli C0, uznanych za piksele C1, co pokazuje niebiesko kropkowany obszar. Poniżej pokazano zależność między wskaźnikami P i R klasyfikacji na krzywej prawidłowych i błędnych klasyfikacji. Dla P=0,5% mamy R=30%, dla P=20% wartość R wzrasta do 50%, dla P=28% mamy R=54%, zaś dla P=31% - R=78%. Rys. 13 pokazuje wyniki dla drugiego przykładu. Jest to najlepszy z otrzymanych wyników, z prawidłową klasyfikacją dla 99,15% przypadków (dla pikseli C0 – 98,51%, dla pikseli C1 – 99,99%). Stąd tez i specyficzny wygląd krzywej prawidłowych i błędnych klasyfikacji. Classification 2010_06_09_16_37_07_17 Cloud/No-Cloud Ground Truth Difference Land/Water Mask Classification Rys. 12. Wyniki HeBIS dla testu 2010_06_09_16_37_07_17 2010_06_10_07_35_57_34 Cloud/No-Cloud Ground Truth Difference Land/Water Mask Rys. 13. Wyniki HeBIS dla testu 2010_06_10_07_35_57_34 5. Podsumowanie i wnioski Rozprawa skupiła się na nowatorskiej hybrydyzacji uczenia maszynowego i metod opartych na inspiracjach biologicznych, nakierowanej na zadanie klasyfikacji obrazów satelitarnych. Zaproponowano system klasyfikacji obrazów, HeBIS, oparty na sztucznej dyfuzji białek, pewnych zasadach rozwoju ewolucyjnego, strukturze sterowania wyewoluowanej ze sztucznej sieci sterującej genów, oraz wykorzystaniu SOFM jako podstawowego elementu uczenia maszynowego. Zgodnie z wiedzą autora jest to pierwszy przypadek zastosowania sieci sterującej genów do sterowania komórkowych jąder klasyfikujących w dziedzinie analizy optycznych obrazów satelitarnych. 5.1. Elementy nowatorskie W wyniku przeprowadzonych badań i testów zaproponowanego systemu można stwierdzić nowatorski charakter w następujących aspektach: -- nowatorskie zastosowanie biologicznych zasad do praktycznego zadania klasyfikacji, 10/10/11 Taylor 13 of 16 -- wyznaczenie efektywności uproszczonej GRN w zastosowaniu do wielowymiarowej klasyfikacji, -- komunikacja sztucznych białek w zakresie klasyfikacji i jej wyników do i od komórkowych jąder uczenia maszynowego, -- uczenie GRN przy pomocy algorytmu rojowego, -- zastosowanie systemu klasyfikacji, opartego na GRN, do rzeczywistego zadania rozpoznawania obrazów satelitarnych, tj. rozpoznawania chmur, -- porównanie efektywności klasyfikatorów HeBIS i SOFM dla danych satelitarnych w wersjach oryginalnych, zakłóconych i z brakującymi danymi. 5.2. Podsumowanie wyników metodycznych i eksperymentalnych Baza teoretyczna do stworzenia systemu HeBIS została przedstawiona w ramach przeglądu literatury. Obejmuje ona te różne koncepcje, które złożyły się na HeBIS: jądra uczenia maszynowego, ideę „evo-devo”, sieci sterujące genów, sztuczne białka, samoorganizację oraz obliczenia ewolucyjne w postaci algorytmu optymalizacji rojowej. Zaprojektowano i przeprowadzono 16 eksperymentów, mających ocenić zachowanie HeBIS w konkretnym przypadku zastosowania. Kolejne eksperymenty miały na celu sprawdzanie systemu co do coraz bardziej skomplikowanych jego aspektów. I tak, w eksperymentach 1-4 sprawdzano tworzenie białek, ich dyfuzje oraz efekty prostej chemii białek. Analizowano sytuację, w której tylko proste białka były obecne w kracie, ponieważ aktywacja i dezaktywacja białek nie działały. Eksperymenty 1 i 2 pokazały, że białka środowiskowe w HeBIS dyfundowały poprzez sztuczna kratę, podczas, gdy eksperymenty 3 i 4 – że wprowadzona chemia białek zmienia stany ustalone w wyniku interakcji i dyfuzji, analizowane w pierwszych dwóch eksperymentach. Tak więc, białka mogą wchodzić w interakcje w obrębie kraty i tworzyć nowe białka. Eksperyment 5 polegał na badaniu aktywacji genów i tworzeniu prostej sieci sterującej genów. Chodziło o ustalenie, czy zachodzą te procesy. Eksperyment wykazał, że geny (i ich odpowiednie białka), które otrzymano w wyniku optymalizacji rojowej, mogły być aktywowane. Wykazano także rozmaitość zachowań otrzymanych sieci GRN. Ta rozmaitość polegała na zróżnicowaniu czasowym aktywacji dla tego samego genu, klonowaniu komórek, a także różnych reakcji pikselowych na poziomie GRN. Ustalono także, że funkcja jakości w HeBIS nie jest zorientowana w sposób szczególny na jednoczesną ekspresję wielu genów. Optymalizacja genomów i GRN przy pomocy algorytmu rojowego była przedmiotem eksperymentu 6. Badano efektywność tego algorytmu optymalizacji w środowisku sztucznych białek. Algorytm okazał się wystarczająco efektywny. Stwierdzono, w szczególności, że jakość, reprezentowana przez rój wzrastała w poszczególnych iteracjach oraz rosła wraz z liczbą osobników w roju. Eksperymenty 7-10 dotyczyły samoorganizacji i jej wpływu na GRN. Badano poszczególne czynności samoorganizacji i komórek, osobno i w odpowiednich kombinacjach. Jakość GRN była analizowana dla następujących aspektów: położenia komórki (Eksperyment 7), zachowań komórki (E. 8) wprowadzenia danych o białkach do środowiska (E. 9), oraz aktywacji białek wyjściowych (E. 10). W Eksperymencie 7 zmieniano położenie komórki startowej i ustalono, że nie miało to znaczącego wpływu na jakość ewoluującej GRN, jeśli ocena była dokonywana w abstrakcji od innych aspektów. Eksperyment 8 polegał na analizie efektów poszczególnych działań komórkowych. Stwierdzono, że każda z nich, osobno rozpatrywana, zmieniała jakość ewoluującej GRN. Tak więc aktywacja i dezaktywacja tych działań komórkowych ma istotne znaczenie dla przebiegu ewolucji i otrzymywanych bardziej skomplikowanych działań klasyfikujących. W Eksperymencie 9 rozpatrywano wprowadzenie danych („statystyk”), zakodowanych w białkach, do środowiska, stanowionego przez kratę. Były to białkowe analogi statystyk drugiego rzędu, wprowadzane do środowiska w trakcie symulacji. Porównywano efekty statystyk otrzymanych przy pomocy algorytmu rojowego z efektami stałych, ustalonych statystyk (białek). Wyniki wskazują na większą efektywność statystyk, otrzymanych przy pomocy algorytmu rojowego w oddziaływaniu na jakość GRN. 10/10/11 Taylor 14 of 16 Podobnie, w Eksperymencie 10 porównywano użycie statycznych i ewolucyjnych parametrów białek wyjściowych. W tym przypadku użycie statycznych parametrów białek wyjściowych dawało wyższą jakość GRN niż wykorzystanie parametrów otrzymanych drogą ewolucyjną. Aż do tego momentu w badaniach rozpatrywano wyłącznie poszczególne zachowania i działania. W Eksperymentach 11-16 rozpatrywano łączny wpływ tych aspektów na wyniki klasyfikacji. I tak, w Eksperymencie 11 badano wpływ uwzględniania różnych zakresów informacji z pikseli sąsiadujących z danym pikselem. W badanych przypadkach okazało się, że jakość klasyfikacji zmniejszała się w miarę rozszerzania odpowiedniego sąsiedztwa. Eksperyment 12 dotyczył wpływu rozmiarów komórkowego jądra SOFM na dokładność klasyfikacji. Okazało się, że wpływ rozmiarów tego jądra na klasyfikację całościową jest istotny. Eksperyment 13 poświęcony był badaniu wpływu chemii białek (a nie tylko genetycznie uwarunkowanych interakcji białek z GRN) na dokładność klasyfikacji. Okazało się, że mutacje (nowe białka), otrzymywane w środowisku HeBIS w wyniku działania reakcji chemicznych, były użyteczne w sensie poprawy jakości klasyfikacji całościowej obrazów. Tym niemniej, jeśli prawdopodobieństwo reakcji białek wzrastało powyżej pewnego progu, dokładność klasyfikacji malała. Pełna wersja HeBIS była porównywana z samym SOFM w Eksperymencie 14. Analizowano macierze błędów, krzywe precyzji, a także wizualnie oceniano klasyfikację obrazów. W tym eksperymencie okazało się, że HeBIS klasyfikuje obrazy testowe tak samo lub lepiej, niż sam SOFM. W szczególności, prosta funkcja jakości HeBIS właściwie oceniała otrzymane GRN z punktu widzenia klasyfikacji. Dwa końcowe eksperymenty, E. 15 i E. 16, dotyczyły odporności HeBIS w warunkach zróżnicowanych poziomów zakłóceń i brakującej informacji. W tym przypadku także HeBIS klasyfikował pełne obrazy testowe tak dobrze jak SOFM lub lepiej. Przy opracowywaniu i badaniu HeBIS otrzymano zachęcające wyniki. Okazało się, że hybrydyzacja biologicznie inspirowanych zasad z uczeniem maszynowym daje duże możliwości. Zastosowanie do rzeczywistego zadania klasyfikacji pokazało, że opracowane techniki mogą być użyte do klasyfikacji obrazów satelitarnych. Otwiera to również nowe perspektywy dalszych badań. 6. Przyszłe prace badawcze Niniejsza rozprawa otwiera szereg możliwych perspektyw badawczych. Poza możliwością zastosowania klasyfikatora do innych dziedzin, możliwości te obejmują analizę innych funkcji jakości, uwzględnienie różnych jąder uczenia maszynowego na poziomie komórkowym, badanie uczenia modularności funkcjonalnej, dodatkowe czynności komórkowe, wykorzystanie szybszych procesorów w celu przyśpieszenia symulacji, a także wykorzystanie potencjału komunikacji białkowej w systemach o inspiracji biologicznej. 6.1. Funkcja jakości Obecna funkcja jakości HeBIS implikuje prostą GRN, klasyfikującą binarnie piksele obrazów. Jednakże dokładniejsza analiza krzywych dokładności pokazuje, że być może inne funkcje jakości poprawiłyby efektywność klasyfikacji. Obecna funkcja nie prowadzi do jednoczesnej reakcji wielu genów i mogłoby być interesującym zbadanie funkcji, prowadzących do bardziej złożonych GRN. Zastosowanie metod „szukania nowości” („Novelty Search”, [19]) mogłoby prowadzić do takich efektów. Pozwalają one na eksplorację złożoności bez użycia jawnej definicji jakości. Ten rodzaj eksploracji przestrzeni operacyjnej mógłby zostać zastosowany w HeBIS zamiast funkcji jakości. Nie zrezygnowano by przy tym jednak z wykorzystania algorytmu rojowego. 6.2. Dodatkowe jądra uczenia maszynowego Różnorakie takie jądra, powiązane z GRN i komunikacją białkową w HeBIS, mogą być stosowane jako podstawa klasyfikatorów opartych na białkach. Jądra w postaci maszyn wektorów podpierających czy sztucznych sieci neuronowych są oczywistymi kandydatami, jako wykorzystywane szeroko w zastosowaniach związanych z rozpoznawaniem obrazów, [20, 21, 22]. 10/10/11 Taylor 15 of 16 6.3. Modularność i wyuczona funkcjonalność Analiza modularności mogłaby zostać zastosowana do wykrywania powiązań między grupami interakcji białek w ramach faktycznych procesów interakcji. Analiza taka czerpałaby z badań biologii obliczeniowej [23, 24]. Poza tym, interesującą perspektywę poszukiwań stanowi metodyka neuroewolucyjna NEAT, [25, 26]. W metodyce tej, złożone zadania sterowania i klasyfikacji mogą być rozbite na oddzielne pod-zadania, z których pierwsze jest poddane uczeniu. Kolejne są uczone iteracyjnie na podstawie struktury, otrzymanej dla pierwszego pod-zadania. HeBIS już obecnie zawiera ideę modularności ze swoimi niezależnymi komórkami o zróżnicowanym zachowaniu, zależnym od lokalnych stężeń białek i ich gradientów. Uczenie modularne w systemie mogłoby przybierać postać analogiczną do schematycznie przedstawionej na Rys. 14. Rys. 14. Możliwy sposób wprowadzania danych uczących i testowych do HeBIS. Każde zachowanie jest uczone osobno, tworzone są próbne genomy, które są ewolucyjnie optymalizowane w pętli CV/GA. 6.4. Dodatkowe czynności komórek Dodatkowe czynności komórkowe mogłyby uwzględniać zastosowanie teorii sieci skalowalnych do komunikacji białkowej, uwzględnienie wzajemnej informacji w interakcjach białkowych, nowe algorytmy tworzenia i aktywacji komórek, a także adaptacyjne tworzenie jąder SOFM. 6.5. Procesor graficzny Ze względu na potrzeby obliczeniowe HeBIS przyszłe prace obejmą budowę systemu opartego na wysokowydajnej GPU [27], por. Rys. 15. Rys. 15. Model badawczej infrastruktury obliczeniowej 6.6. Komunikacja oparta na białkach w sztucznych urządzeniach organizmów Istnieje możliwość zastosowania technik komunikacji i klasyfikacji z HeBIS do sterowania sztucznymi urządzeniami w organizmach żywych, np. ludzkim ciele. Urządzenia te mogłyby reagować na lokalne stężenia i gradienty odpowiednich białek i wykonywać obliczenia zgodnie z prostymi zasadami, opartymi na ustalonym zestawie (słowniku) białek. 10/10/11 Taylor 16 of 16 Bibliografia [1] A. Ranganathan and Z. Kira, “Self-Organization in Artificial Intelligence and the Brain”, College of Computing, Georgia Institute of Technology, 2003. [2] P. Bentley, “Evolving Fractal Gene Regulatory Networks for Robot Control”, Department of Computer Science, University College London, 2003. [3] J. Bongard, “Evolving Modular Genetic Regulatory Networks”, Artificial Intelligence Laboratory, University of Zurich. [4] S. B. Carroll, “Endless Forms Most Beautiful”, W.M. Norton & Company, New York, 2005. nd [5] T. Kohonen, “Self-Organizing Maps”, Springer-Verlag, Berlin, 2 . Edition, 1997. [6] E. Erwin, K. Obermayer, and K. Schulten, “Self-organizing maps: ordering, convergence properties and energy functions”, Biological Cybernetics, vol. 67, pp. 47-55, 1992. [7] T. Kohonen, “Speech recognition based on topology preserving neural maps”, Neural Computing Architectures, ed. I. Aleksander, pp. 26-40, MIT Press, Cambridge, 1989. [8] F. Favata and R. Walker, “A Study of the Application of Kohonen-type Neural Networks to the Traveling Salesman Problem”, Biological. Cybernetics, vol. 64, pp. 463-468, 1991. [9] A.P. Engelbrecht, “Computational Intelligence: An Introduction”, Wiley, New York, 2002. [10] J. Kennedy and R. Eberhart, “Particle Swarm Optimization”, Proc. IEEE INt. Conference on Neural Networks, vol. IV, Perth, Australia, 1995, pp. 1942-1948. [11] K. P. White, “Functional Genomics and the Study of Development, Variation, and Evolution”, Nature Reviews Genetics, July 2001, vol. 2, pp. 528-537. [12] S.B. Carroll, “Endless forms: the evolution of gene regulation and morphological diversity”, Cell, vol. 101, pp. 577-580, 2000. [13] S. Kumar and P.J. Bentley, “On Growth, Form and Computers”, Elsevier Academic Press, Amsterdam, 2003. [14] A. Lindenmayer, “Mathematical models for cellular interaction in development, parts I and II”, Journal of Theoretical Biology, vol. 18, pp. 280-315. [15] P. J. Bentley, “Evolving beyond perfection: an investigation of the effects of long-term evolution on fractal gene regulatory networks”, BioSystems, vol. 76, 2004, pp. 291-301. [16] L.A.N. Amaral et al, “Emergence of complex dynamics in a simple model of signaling networks”, Proceedings of the National Academy of Sciences, vol. 101, no. 44, 2004. [17] J.C. Astor and C. Adami, “Development and Evolution of Neural Networks in an Artificial Chemistry”, arXiv:adap-org/9807003, Jul. 17, 1998. [18] H.R. Gordon and M. Wang, “Retrieval of water-leaving radiance and aerosol optical thickness over the oceans with SeaWiFS: a preliminary algorithm”, Applied Optics, vol. 33, no. 3, January 1994. [19] J. Lehman and K.O. Stanley, “Revising the Evolutionary Computation Abstraction: Minimal Criteria Novelty Search”, Proceedings of GECCO 2010, July 7-11, Portland, Oregon USA. [20] B. Scholkpf, C.J.C. Burges and A.J. Smola, “Advances in Kernel Methods: Support Vector Learning,” MIT Press, Cambridge MA, 1998. [21] A.N. Srivastava, N.C. Oza, and J. Stroeve, “Virtual Sensors: Using Data Mining Techniques to Efficiently Estimate Remote Sensing Spectra,” IEEE Trans. On Geoscience and Remote Sensing, vol. 43, no. 3, pp. 590-600, March 2005. [22] E.J. Kwiatkowska and J.S. Fargion, “Application of Machine-Learning Techniques Toward the Creation of a Consistent and Calibrated Global Chlorophyll Concentration Baseline Dataset”, IEEE Trans. On Geoscience and Remote Sensing, vol. 41, no. 12, pp. 2844-2860. [23] K.Y. Yip et al, “Improved Reconstruction of In Silico Gene Regulatory Networks by Integrating Knockout and Perturbation Data”, PLoS ONE , vol. 5, no. 1, January 2010. [24] S. Pinkert et al, “Protein Interaction Networks- More than Mere Modules”, PloS Computation Biology, vol. 6, no. 1, January 2010. [25] K.O. Stanley and R. Miikkulainen, “Competitive Coevolution Through Evolutionary Complexification”, Journal of Artificial Intelligence Research, vol. 21, pp. 63-100, 2004. [26] K.O. Stanley et al., “Real-time Neuroevolution in the NERO Video Game”, IEEE Transactions on Evolutionary Computation, vol. 9, no. 6, pp. 653-668, December 2005. [27] J. D. Owens, et al., “A Survey of General-Purpose Computation on Graphics Hardware”, EUROGRAPHICS 2005. 10/10/11