Oblast expertních a neuronových systémů doznala největšího komerčního úspěchu ze všech ostatních disciplín vědního oboru, který se nazývá umělá inteligence. Podle Minského z Massachusetts Institute of Technology je umělá inteligence "věda, jejímž úkolem je naučit stroje, aby dělaly věci, které vyžadují inteligenci, jsou-li prováděny člověkem". Norma ISO 2382-28:1988 definuje umělou inteligenci jako "schopnost stroje simulovat myšlenkové pochody člověka tím, že vykonává činnosti obvykle spojované s lidskou inteligencí, např. uvažování, učení a sebezdokonalování". Za zrod umělé inteligence je považován rok 1950, kdy britský matematik Alan Turing ve svém článku Computing Machinery and Intelligence uveřejněném v časopise Mind položil provokující otázku "Mohou stroje myslet?". Odpovědět na tuto otázku jednoznačně (ano - ne) patrně není možné, spíše lze říci, že "s určitou platností", "v závislosti na okolnostech" apod. Odráží to také tu skutečnost, že myšlení není založeno pouze na binární logice. Kromě výsledného efektu by se měla posuzovat i inteligence způsobu řešení dané úlohy. V tomto smyslu je i Minského definice umělé inteligence zaměřena příliš jednostranně. Umělá inteligence se rozvíjela paralelně se dvěma příbuznými disciplínami - kybernetikou a teorií informace. V podstatě se dá říci, že se pojmem "umělá inteligence" rozumí schopnost stroje přijímat data (v praktických aplikacích jsou stroje schopny pracovat s obrovským množstvím takovýchto dat, která mohou být nějakým způsobem složitá - strukturovaná, případně neúplná), vyhodnocovat je a činit (doporučovat) rozhodnutí. Umělá inteligence tak nekopíruje inteligenci lidskou - požaduje se od ní, aby dokázala s uživatelem komunikovat a pomáhala mu řešit problémy, které jí předloží.
Expertní systémy jsou programové prostředky určené k řešení takových úloh, které jsou považovány za obtížné a jejichž uspokojivé řešení může provést pouze specialista v daném oboru - expert (Vondrák 1994). Podle Streita (2000) "expertní systém je systém podporující uživatele při řešení problémů, které vyžadují znalosti experta o jisté oblasti". Už zmíněná norma ISO jej definuje jako "heuristický systém, který umožňuje řešení problémů v dané aplikační oblasti vyvozováním závěrů z báze znalostí získané lidskou zkušeností."
Takové inteligentní systémy pomáhají již od 70. let minulého století v geologickém průzkumu při hledání nalezišť nerostů (slavný expertní systém Prospector ), v některých oblastech medicíny, a to jak při určování diagnózy ( Mycin ), tak i při predikci vývoje choroby ( Glaukoma ), při zpracování především obrazových dat v geografických informačních systémech (např. při zjišťování stavu porostů nebo znečištění vod) a v poslední době také při hledání na Internetu (nalezení www stránek s danou tematikou, v elektronickém obchodě apod.). Nejdéle využívaným expertním systémem je systém Dendral (Buchanan - Feigenbaum, 1965), který od roku 1969 využívají stovky odborníků pro analýzu molekulárních struktur na základě záznamů hmotového spektrografu.
Základy vývoje expertních systémů lze vidět v pravidlových systémech, které ve 30. letech minulého století zavedl Post a které ve sféře umělé inteligence znovu připomněli v 50. letech Newell a Simon. Velký rozvoj tvorby expertních systémů nastal v 70. a 80. letech. V polovině 70. let také převládal optimistický názor podpořený úspěchem už zmíněných diagnostických expertních systémů Mycin a Prospector, že je možné vytvořit "instantního experta", který by byl schopen vyřešit i ty nejsložitější úlohy v dané oblasti.
Tato představa narazila na meze samotných systémů (expertní systémy řešily úspěšně spíše rutinní problémy), tak i na skepsi uživatelů ("přece nebudu poslouchat nějaký počítač"). Objevily se také etické a právní otázky používání expertních systémů - především otázka odpovědnosti za případné chybné doporučení expertního systému. Proto se postupně slevuje z pohledu na roli expertního systému v procesu rozhodování. Z původně zamýšlené role experta se přechází k chápání expertního systému jako kolegy uživatele nebo spíše jeho asistenta. Dnes se proto často hovoří o "znalostních systémech", důraz se tedy klade na využívání vhodně zakódovaných speciálních znalostí převzatých od experta. Na význam problematiky získávání znalostí od expertů a jejich formalizace ukazuje vznik nové discipliny - znalostního inženýrství.
Tab. 7.1: Některé expertní systémy a aplikační oblasti
oblast | příklady systémů |
geologie | DIPMETER ADVISOR, FEE Tool, FINDER, GEOPLAY, muPETROL, PROSPECTOR, X-net, XUMA |
chemie | CRYSALIS, DENDRAL, META-DENDRAL, SECS, SYNCHEM |
medicína | CADIAG, CASNET/GLAUCOMA, DM, EEG, HEADMED, INTERNIST/CADUCEUS, MEDICO, MYCIN, ONCOCIN, PIP, PROTIS, PUFF, RHEUM, VM |
genetika, biologie | MOLGEN, SPEX, XCON |
průmysl | MECHANO, REACTOR, SACON |
zemědělství | PRO PLANT |
matematika | AM, EURISKO, MACSYMA, QUIST |
právo | LEGOL, LRS, MATRIM, TAXMAN |
výuka | BLAH, GUIDON, SOPHIE, WHY |
Umělé neuronové sítě jsou programové prostředky napodobující chování lidského mozku při řešení problémů, které jsou pomocí klasických algoritmických postupů obtížně řešitelné. Uplatňují se všude tam, kde si řešený problém můžeme představit jako "černou skříňku", která má několik nezávislých vstupů a jeden nebo více výstupů. Jsou schopny se "učit" z příkladů a naučené informace vyvolávat.
Základní principy umělých neuronových sítí byly zformulovány už ve 40. letech minulého století (McCulloch a Pitts, 1943) v souvislosti s pokrokem neurologických bádání. V roce 1958 vytvořil Rosenblatt matematický model neuronu a nazval ho perceptron. Ten se stal základem vícevrstevných neuronových sítí.
Umělé neuronové sítě překonaly omezení expertních systémů znalostního typu. V posledních letech jsou využívány samostatně či v hybridních systémech, nebo jsou začleňovány do jiných systémů analýzy geodat, např. do geografických informačních systémů.
Tyto systémy charakterizují podle Berky (1998) následující rysy:
Obr. 7.1: Hlavní komponenty expertního systému
Jednotlivé části expertního systému tvoří následující subsystémy:
Interakci všech těchto modulů lze charakterizovat jako postup konkretizace obecných znalostí na základě vstupních dat uživatele do formy modelu popisujícího řešený problém.
Programové produkty označované jako "prázdné expertní systémy" obsahují pouze jádro systému a uživatelské rozhraní. Uživatel si vytvoří bázi znalostí sám pro svůj problém. Prázdných expertních systémů existuje velký počet, např. ADS, ART, EXSYS, Nexpert Object, KAS, VP Expert, Expert Choice, G2 Diagnostic Assistent, Mentor, EMYCIN, FEL-EXPERT, AL/X atd.
Podle charakteru řešených úloh se aplikace dají rozdělit na:
Při hrubším dělení se expertní úlohy dělí na expertní systémy diagnostické - úlohy ad a) až ad c) - a expertní systémy generativní - úlohy ad d) až ad f). Diagnostické expertní systémy pracují s pevným počtem cílů (diagnóz, hypotéz), z nichž vybírají svá doporučení. Generativní expertní systémy si hypotézy generují dynamicky až v průběhu konzultace.
Základní typy modelů bází znalostí jsou:
Báze znalostí je tvořena množinou pravidel, například:
Báze znalostí může být reprezentována ve formě grafu - stromu (obr. 7.2), kde fakta A, B, C, D, E, F tvoří jeho listové hypotézy, O, P a Q jsou mezilehlé hypotézy a fakta X a Y tvoří cíle dokazované během konzultace a expertním systémem.
Obr. 7.2: Inferenční síť ve tvaru stromu
Velmi často jsou součástí takovýchto bází znalostí i neurčitosti, které se šíří v procesu odvozování na základě jistot platnosti jednotlivých pravidel a faktů zadávaných z báze dat uživatele. Dva základní přístupy implementace šíření neurčitosti jsou:
,
,
Inferenční mechanizmus určuje, jak a v jakém pořadí aplikovat pravidla na bázi dat. Principiálně lze podle způsobu odvozování cílových hypotéz řídící (inferenční) mechanismy rozdělit na:
Umělé neuronové sítě jsou inspirovány biologickými neuronovými sítěmi (obr.7.3). Jejich vzorem je uspořádání neuronů v lidském mozku (mozková kůra obsahuje 13-15 miliard neuronů, z nichž každý může být propojen až s 5000 dalšími). Singer (2002) je charakterizuje jako "skupinu metod, které se pokoušejí napodobovat procesy lidské mysli". Využívají distribuované, paralelní zpracování informace při provádění výpočtů. Znalosti jsou ukládány především prostřednictvím síly vazeb mezi jednotlivými neurony. Vazby vedoucí ke správné odpovědi jsou posilovány, vazby vedoucí ke špatné odpovědi jsou oslabovány. Základní vlastností neuronových sítí je učení. Jakým způsobem se budou vstupní data transformovat na data výstupní určuje právě fáze učení. Ta je založena na opakované expozici vzorů (příkladů) - tzv. trénovací (výukové) množině, které popisují řešenou problematiku.
Obr. 7.3: Síť neuronů v mozku
Na obr. 7.4 je zjednodušeně znázorněno propojení biologických neuronů. Dendrity reprezentují vstup signálů do těla neuronu. Tělo buňky na základě vstupních signálů vytváří vnitřní potenciál, jenž je příčinou excitace - vybuzení neuronu. Prostřednictvím axonového vlákna je signál vzniklý vybuzením přenesen k synapsím, což jsou v podstatě výstupní zařízení neuronu. Synapse přijatý signál zesilují nebo zeslabují a takto upravený jej předávají dalším neuronům.
Obr. 7.4: Biologický vzor (Vondrák 1995)
Základní popis architektury neuronových sítí tvoří:
Obr. 7.5: Schématický model neuronu
Jako aktivační (přenosová) funkce neuronu ( f ) se často používá například sigmoid (obr. 7.6), skoková funkce, lineární funkce, hyperbolická tangenta apod.
Obr. 7.6: Příklad aktivační funkce neuronu
Umělá neuronová síť je v podstatě struktura určená pro distribuované paralelní zpracování dat. Skládá se z obvykle velmi vysokého počtu vzájemně propojených výkonných prvků (neuronů). Každý z nich může současně přijímat libovolný konečný počet různých vstupních signálů. Na další výkonné prvky může předávat libovolný konečný počet shodných informací o stavu svého výstupu (obr.7.7).
Obr. 7.7: Vícevrstvá neuronová síť (Vondrák 1995)
Každý výkonný prvek pak transformuje vstupní data na výstupní podle přenosové funkce. Umělé neuronové sítě pracují ve dvou fázích:
V adaptivní fázi se síť učí řešit daný problém. Paměť neuronové sítě je nejčastěji reprezentována hodnotami synaptických váhových koeficientů jednotlivých vstupů neuronů. Při učení dochází v neuronové síti ke změnám, které jsou realizovány pomocí změn synaptických váhových vektorů odpovídajícím jednotlivým spojením mezi uzly sítě (neurony). Adaptivní fáze je obvykle iterační proces. Existují však i jednorázové učící algoritmy (například Hopfieldova síť). Neuronové sítě se mohou učit kromě změny synaptických vah také přizpůsobováním přenosové funkce, nebo změnou topologie sítě. V adaptivní fázi se rozlišují dva typy učení:
V aktivní fázi neuronová síť pracuje podle naučeného algoritmu (část I) pro nová předložená vstupní data. Po jejich předložení ve vstupní vrstvě sítě vznikne nerovnovážný stav. Vlivem ostatních neuronů se začnou v neuronech zapamatované hodnoty měnit až do dosažení rovnovážného - stabilního stavu. Na výstupech sítě pak bude odezva na předložený vstup.
Tabulka 7.2.: Klasifikace některých typů neuronových sítí
Učení | Rekurentní | Dopředné |
Bez učitele |
Hopfieldova síť
- zpětnovazební symetrická neuronová síť s binárními neurony.
ART - adaptivní rezonanční teorie. Obousměrná asociativní paměť - dvouvrstvá síť s binárními neurony a symetrickým propojením (zobecnění Hopfieldovy sítě). |
Lineární asociativní paměť
- lineárně pracující síť.
Kohonenova síť - samoorganizující se síť. |
S učitelem | Brain-state-in-a-box - zpětnovazební nelineární síť odvozená z Hopfieldovy sítě. |
Boltzmannův stroj
- symetrická binární zpětnovazební síť se skrytou vrstvou.
Neocognitron - speciální síť určená pro rozpoznávání znaků. Backpropagation - vícevrstvá síť z algoritmem zpětného šíření přepočtu chyby výstupní vrstvy do vrstev předchozích. Perceptron - jednoduchá síť bez skrytých vrstev. Adaline/Madaline - síť perceptronovského typu s binárními neurony / rozšířená síť Adaline o jednu skrytou vrstvu. LVQ (Learning Vector Quantization) - modifikace Kohonenovy sítě s učitelem. |
Neuronové sítě lze také dělit na dopředné-nerekurentní (transformace vstupního vektoru na výstupní je nezávislá na kontextu, kdy stejný vstupní stimul dává vždy stejnou odezvu sítě) a rekurentní (odezva sítě není dána pouze aktuálním vstupním stimulem, ale odráží i vliv stimulů, které aktuálnímu předcházely - do sítě se tak implementuje i časový kontext prostřednictvím rekurentních neuronů). V dopředné síti je jednoznačně definován informační tok - neexistují spoje mezi neurony z vyšších vrstev zpět do vrstev nižších ani spoje mezi neurony v téže vrstvě. Klasifikace některých typů neuronových sítí z hlediska informačního toku a metod učení jsou uvedeny v tabulce 7.2.
Umělé neuronové sítě jsou univerzální, neboť jsou schopny provádět nad vstupními daty libovolnou transformaci. Jsou také robustní, neboť obsahují velké množství uzlů (neuronů) a spojení (synapsí) mezi nimi a také informace jsou rozprostřeny v celé síti. Mají rovněž schopnost generalizace a abstrakce, tj. schopnost stejně reagovat na jistou množinu vstupních dat, nejen jen na prvky z trénovací množiny.
Podobně jako u expertních systémů existuje řada komerčních neuronových systémů, např. NEURON-LINE, NEURAL NETWORK TOOLBOX (MATLAB), NEUCOP, NEUREX, NEURAL WORKS PROFESSIONAL aj.
Obr. 7.8: Hopfieldova neuronová síť (Cejnar 2003)
V současné době se neustále rozšiřuje uplatnění umělých neuronových sítí k řešení problémů, které byly obtížně řešitelné klasickými algoritmy. Mezi veliké výhody neuronových sítí patří jejich schopnost učit se a tím se co nejlépe adaptovat k řešení určitého problému. Rozvoj je i patrný v oblasti tvorby softwaru, kdy do známých velkých komerčních programů (např. GIS, v expertních systémech) jsou implementovány moduly neuronových sítí, které lze využít v mnoha praktických úlohách. Základní aplikační oblasti neuronových sítí podle Šnorka a Jiřiny (1998) jsou:
Pro geovědní obory byla vyvinuta celá řada expertních a neuronových systémů různého typu. Jako příklad lze uvést následující:
byl vyvinut SRI International pro podporu rozhodování a zaměření ložiskového průzkumu (Duda et al. 1978, Duda 1980) a následně modifikován a rozšířen U.S.G.S. (McCammon 1989). PROSPECTOR je expertní systém určený pro podporu vyhledávání skrytých rudních ložisek. Systém se skládá ze souboru pravidel, které vedou řešitele pomocí série dotazů k závěru o perspektivnosti výskytu skryté ložiskové akumulace určitého typu v hodnocené oblasti. Systém porovnává všechna pozorování s ložiskovými modely uloženými v bázi znalostí a zaznamenává podobnosti, rozdíly a chybějící informace. Báze znalostí obsahuje prospekční modely vybraných ložiskových typů (sulfidická ložiska typu Kuroko, Cu porfyrová ložiska, Pb-Zn ložiska typu Mississippi Valley, uranová ložiska pískovcového typu atd.). Modely byly postupně doplňovány na více než dvě desítky typů. Znalosti jsou reprezentovány souborem pravidel v inferenční síti (obr. 7.9).
Obr. 7.9: Ćást inferenční sítě modelu uranových ložisek pískovcového typu v západních státech USA (McCammon 1989, upraveno)
Každé dedukční pravidlo má tvarPři vyhledávání skrytých ložisek je často vzít do úvahy morfologii, velikost a orientaci hledaných objektů. Singer a Drew (1976) proto vyvinuli metodu založenou na zóně vlivu a Bayesově statistice, která podporuje výběr cílových objektů popsaných jednou nebo více proměnnými a souborem pozorování (Singer, Kouda 1988). Systém využívá geometrickou pravděpodobnost a funkci normálního rozdělení hustoty pravděpodobnosti k integraci informací a zpracování mapy pravděpodobnosti existence cílových objektů. Tento systém byl testován na ložisku typu Kuroko. Pro prospekci epitermálních Au-Ag žilných ložisek na jihozápadě ostrova Kyushu v Japonsku byl použit systém FINDER (Singer, Kouda 1991).
Geologická služba USA rozpracovala znalostní expertní systém GEOPLAY, který umožňuje analyzovat na základě základních charakteristik (strukturní stavba, sedimentární výplň, stratigrafie atd.) vývoj sedimentárních pánví a ocenit geologické podmínky příznivé pro výskyt akumulací ropy a plynu. Systém pomáhá geologovi vymezit nadějné úseky a vytvořit průzkumné modely.
V posledních letech se soustředila pozornost na využití umělých neuronových sítí. Tyto sítě jsou podle Singera (2002) schopny řešit tři typy úloh a to stanovení nebo predikci funkcí, redukci šumu nebo rozpoznávání obrazů a klasifikační problémy.
Při studiu vzniku ložisek Au, Ag, Cu a dalších kovů v Andách použili Bougrain et al. (2002) jako základ vyhledávání nových ložisek mnohovrstevnou neuronovou síť s 25 vstupy (bylo hodnoceno 25 atributů, jako prostorová poloha, typ a stáří ložiskonosných hornin, vzdálenost od zlomových zón atd.). Brown et al. (2002) aplikovali při predikci ložisek zlata v bloku Yilgarn v oblasti Kalgoorlie (Západní Austrálie) neuronové sítě několika typů (perceptronovou, pravděpodobnostní, samoorganizující) s vestavěnou vrstvou s fuzzy hodnotami vazeb mezi akumulacemi zlata a horninami. Singer a Kouda (2002) testovali schopnost pravděpodobnostní neuronové sítě klasifikovat ložiska do typů na základě hmotnosti zásob a průměrných obsahů obsažených kovů. Pro interpretaci oblasti výskytu ložisek zlata typu Carlin v severní Nevadě byl použit expertní systém neuronového typu X-net (Henderson 1997). Rajkumar a Thompson (2002) použili hybridní neuronovou síť optimalizovanou genetickým algoritmem ke studiu hydrodynamických a srážkových poměrů a hodnocení kvality vody v oblasti zátoky San Francisca.
Jak už bylo uvedeno, dochází v současné době k integraci expertních systémů s geografickými informačními systémy. Např. U.S.G.S. v rámci programu ocenění možností výskytu energetických surovin v sedimentárních pánvích U.S.A. využívá GIS a ES integrované do znalostního GIS. Jako pilotní území pro tuto analýzu byla vybrána dobře prozkoumaná pánev San Juan v Novém Mexiku a Coloradu s 26 tisíci průzkumnými a těžebními vrty, která obsahuje významná ložiska ropy, zemního plynu, uhlí a uranu. Podobný systém uvádějí Smith et al. (1987). Integrované technologie GIS a ES U.S.G.S. také využívá pro výstavbu informačního systému o území (LIS). Sturdevant a Kleckner (1984) popisují projekt vývoje federálního surovinového informačního územního systému (FMLIS), další aplikace byly vyvinuty pro ložiska tekutých a plynných kaustobiolitů. S ohledem na značný stupeň neurčitosti byl pro potřeby vyhledávání ropy vyvinut expertní systém FEE Tool (Fuzzy Expert Exploration Tool - Broadhead et al. 2001), který vedle ocenění surovinového potenciálu hodnotí riziko vyhledávacích prací (obr.7.10).
Obr. 7.10: Schéma hybridního expertního systému FEE Tool (Broadhead et al. 2001)
Plymouthská mořská laboratoř ve Velké Británii vyvinula hybridní systém COAMES (Coastal Management Expert System) pro posuzování znečištění příbřežních oblastí např. ropnými skvrnami (Moore et al. 1996). V hybridní geografické databázi jsou uložena jednak rastrová data z dálkového průzkumu a modelování, jednak vektorová data pozorování ze stanic a plaveb. Objektově orientovaná znalostní databáze obsahuje expertní pravidla, která mohou být hierarchicky uspořádána, pomocná data a experty zpracované modely (obr.7.11).
Obr. 7.11: Schéma systému COAMES (Moore et al. 1996)