Hlavní navigace

LAIPR - inteligentní systém

Jan Švec 1. 4. 2005

Chcete-li vědět, jak daleko jsou systémy umělé inteligence v současné době, nahlédněte pod pokličku a zkuste systém LAIPR (Linux Artificial Intelligence PRoject).

Úvod

Již na samém počátku výpočetní techniky lze dohledat snahy a vytvoření inteligentního stroje. Tyto snahy byly příčinou vzniku vědní specializace ležící na hranici mezi kybernetikou, informatikou, matematikou a dalšími vědami. Ano, hádáte správně, jde o umělou inteligenci. Pokud si myslíte, že UI od dob svého vzniku na přelomu 50. a 60. let 20. století příliš nepokročila, mýlíte se.

Prohledávání stavového prostoru

V 50. letech minulého století se začaly objevovat první úvahy extrapolující rychlost rozvoje výpočetní techniky v horizontu příštích desetiletí. Tyto úvahy předpovídaly velkou budoucnost tzv. umělé inteligenci (artificial intelligence). V té době existovaly již první vlaštovky v podobě algoritmů na prohledávání stavového prostoru úloh. Tyto algoritmy se v dnešní době běžně řadí mezi algoritmy umělé inteligence.

Podstatou těchto algoritmů je formalizace úlohy pomocí prostoru stavů a operací pro přechod mezi těmito stavy. Při řešení se vychází z počátečního stavu, jež reprezentuje počáteční stav úlohy daný zadáním. Pomocí aplikací jednotlivých operací se jednotlivé stavy expandují a vznikají stavy nové. Expanze uzlů probíhají, dokud není nalezen koncový stav. Poté se cesta od počátečního stavu do koncového stavu vyjádřená posloupností operací prohlásí za řešeníúlohy.

Jednotlivé typy těchto algoritmů se odlišují způsobem ohodnocení jednotlivých stavů a tím i pořadím expanze těchto stavů. Jde například o prohledávání do šířky či prohledávání do hloubky.

Řešení úloh pomocí prohledávání stavového prostoru ovšem naráží na mnohé problémy. V první řadě jde o samotný problém formalizace úlohy pomocí stavů a operací nad nimi. Dále jde o problém velké výpočetní náročnosti prohledávání. Předpovědi z konce 50. let počítaly s enormním nárůstem výkonu a kapacity počítačů v příštích letech. I přes značné zlepšení situace stále postrádáme počítače schopné kompletně prohledat stavový prostor obrovského množství úloh.

Jednou z cest, jak se vyhnout kompletnímu prohledávání stavového prostoru, je použití různých heuristik a prořezávání prohledávacího grafu. Další cesta napodobuje lidské myšlení. Člověk při řešení úloh používá prohledávání stavového prostoru velice zřídka. Má-li vyřešit rovnici, nelze slepě zkoušet různé hodnoty proměnné, nýbrž je vhodné použít dalších znalostí o úloze.

Proto začaly vznikat další systémy napodobující chování člověka. V první řadě jde o expertní systémy umožňující reprezentovat znalosti o dané úloze pomocí pravidel. Další kategorii systémů reprezentují systémy napodobující schopnost lidského mozku „učit se“. Jmenujme například (umělé) neuronové sítě původně vzniklé jako model biologických neuronových sítí.

Modelování vs. napodobení

První úvahy věnující se umělé inteligenci počítaly s modelováním funkce lidského mozku, čímž by se získal systém schopný učit se, chápat, porozumět, komunikovat. Tento přístup ale naráží na řadu problémů, ať už jde o nalezení vhodného modelu a jeho parametrů, nebo o výpočetní náročnost experimentů prováděných na takovém modelu. Proto se začaly používat různé postupy umožňující zjednodušení systémů umělé inteligence. Prioritou se stala schopnost funkčně napodobit a zastoupit člověka.

LAIPR

Na mě jakožto člověka se zájmem o umělou inteligenci velice zapůsobily cíle projektu LAIPR (Linux Artificial Intelligence PRoject), jež má být demonstrací možností současné umělé inteligence. Jeho autoři John Clange a Arthur Edvin působili dlouhá léta na MIT a v současné době s ním velmi úzce spolupracují.

Zajímavá je celá filosofie projektu. Mnoho programů vyvíjených mimo univerzitní pracoviště (a mnohdy i na nich) není uvolněno pod otevřenou licencí, případně otevřený je běhový systém, ale data a systém pro jejich získání jsou neveřejná. V případě systému LAIPR jsou otevřená i data jednotlivých subsystémů získaná tréningem z dat, čímž uživatel získává netušené možnosti při využití tohoto systému. Pouze systém pro natrénování jednotlivých částí je soukromým majetkem autorů.

Na webových stránkách naleznete dotazník, po jehož vyplnění se vám zpřístupní rozhraní konfiguračního skriptu. Pomocí tohoto rozhraní si vyberete jednotlivé části, které má obsahovat vaše distribuce, a kliknete na tlačítko download, čímž získáte různě velký skript jazyka Python reprezentující celý systém a jeho data. Pro používání v zemích koruny české doporučuji použít balíček, který jsem vytvořil upravením originální distribuce pro české prostředí. Tento balíček je zkonfigurován pro obrazový vstup a textový výstup.

Možnosti

Tím se pomalu dostáváme k poslání tohoto projektu. Jednoduše ho vystihuje následující tvrzení: „Program zpracovává svůj vstup a snaží se z něj inteligentně získat adekvátní výstup.“ Jde o poněkud vágní formulaci, ovšem program naprosto vystihuje. V závislosti na konfiguraci distribuce systému je možné volit mezi obrazovým, textovým a zvukovým vstupem a textovým a zvukovým výstupem.

Jak to funguje

Program se snaží ve svém vstupu lokalizovat zadání nějaké úlohy. To dělá pomocí vyhledávání slov, tvarů či příkazů, které nějakým způsobem reprezentují požadavek cosi vyřešit. V češtině jde například o slova „Najdi“, „Vyřeš“, „Vypočítej“ apod. Rovněž každá otázka může mít svou odpověď a v pojetí systému LAIPR představuje úlohu.

Pokud uživatel má systém zkonfigurovaný pro obrazový vstup, zapojí se metody zpracování digitalizovaného obrazu a OCR postupy. Pro rozpoznávání úloh ve zvukovém vstupu se použije ASR (Automatic Speech Recognition). Poté se výsledný text obohacený o metadata zpracuje pomocí metod NLP. Výsledek jde do modulu Solver, jenž se pokusí úlohy vyřešit. Výstup je jednoduše zobrazen, případně pomocí syntetizátoru přednesen uživateli ve formě textu.

Použití

Pro ilustraci si nyní předvedeme několik možností použití. Budeme předpokládat lokalizovanou verzi z výše uvedeného balíčku, která je nakonfigurována pro obrazový vstup a textový výstup. Program je díky použití jazyka Python připraven okamžite k použití, stačí mít nainstalován balíček PIL pro práci s obrázky.

První příklad demonstruje OCR schopnosti systému. Ten totiž v případě, že nenajde žádnou interpretovatelnou otázku, pouze zpracuje vstup na text a ten následně zobrazí. Spustíme příkaz

[honza@ix:~] ./laipr.py examples/ocr/ocr.png
- Organizace paměti
- Čítače a časovače
- Přerušovací systém
- Sériový kanál
- Vstupně/výstupní porty
- Přístup do vnější paměti
LAIPR

Vstupem systému je obrázek ocr.png, ne nějž zareaguje výstupem, který představuje rozpoznaný text nacházející se uvnitř tohoto obrázku.

Další a mnohem zajímavější použití představuje řešení problémů z oblasti matematiky, v níž je systém nanejvýš spolehlivý. Jednoduchá a vše vysvětlující ukázka představuje rozpoznání matematického zápisu a jeho vyřešení pomocí symbolických operacích podpořených modulem Math:

[honza@ix:~] ./laipr.py examples/integral/integral.png
F(x) = -x cos x + sin x + c
integral = F(1) - F(0) = approx. = 0.301
LAIPR

Jak vidíme, jde o spočítání určitého integrálu. Systém si tedy nejprve symbolicky vyjádří primitivní funkci k funkci integrované a následně spočítá hodnotu určitého integrálu jako rozdíl hodnot primitivní funkce v bodě 1 a v bodě 0, čímž získá přibližný výsledek 0.301.

Poslední ukázkou je rozpoznávání předmětů. Systém má naučeno mnoho typických předmětů, které může potkat většina amerických dětí ve věku do deseti let. Jedním z příkladů převzatých z originálního distribučního balíčku je rozpoznání obrazu planety Saturn. Program v tomto obrázku nalezne těleso s prstenci, jehož popis si ztotožní s uloženým vzorem Saturn:

[honza@ix:~] ./laipr.py examples/saturn/saturn.png
Planeta Saturn
LAIPR

Další cíle

Kromě výše uvedených příkladů můžete program vyzkoušet i na mnoha ukázkových obrázcích dodaných rovnou s programem, případně na vlastních zadáních.

Program někdy nepracuje přesně podle vašich představ, neboť dokonale „nepochopí“ zadání, případně způsob řešení, který se po něm chce. V budoucích verzích programu se však plánuje vylepšení systému porozumění přirozené řeči. Stejně tak se uvažuje o zpracování pohyblivého obrazu (tj. rozpoznávání gest, situací apod.) spolu se schopností práce v reálném čase, a tím pádem i vytvoření jakéhosi asistenta schopného vyřešit nejednu úlohu z mnoha oblastí běžné lidské činnosti.

Závěrem

Oblast umělé inteligence je nepochybně nesmírně zajímavou a důležitou částí vědy a jakýkoli další pokrok v této oblasti reprezentovaný například programem LAIPR je velmi významný. Každému, kdo chce zabít nejedno odpoledne „zkoušením“ svého počítače, mohu s klidným svědomím doporučit vyzkoušení výše uvedeného programu. Mnohdy nebudete věřit vlastním očím a důvtip programu vás mile překvapí.

Našli jste v článku chybu?

18. 9. 2014 21:54

Vertigo (neregistrovaný)

acionále otroka

jméno : Juraj
přezdívka : Vertigo
adresa* :
tel. kontakt*
: stav : free
povolání*vodic
: datum narození :20.10.1986
e-mail :vertigo85@azet.sk
výška/váha :178/93
velikost penisu v klidu:7
velkokost penisu při vzrušení:12,5
barva vlasů/očí/chlupů : hnědá/ modrá/ tmavé kuřak/alkohol? :hnede/modre/ne­fajciar/alkohol prilezitostne
* - nepovinné

II. ČÁST 1. Obecné ustanovení o těle (doplnění)

máš tetování (kde, jaké?):nie
máš jiné znamení :nie
máš piercing (kde, jaké?) :nie













4. 8. 2009 12:05

sub.rony@seznam.cz (neregistrovaný)

tohle vse bych si pral byt vasim otrokem ponevadz uz jsem tri roky slouzil a ted hledam svoji novou pani.....je mne 35 let sportovni postavy velice submisivni a hledam trvalejsi D/s vztah

Podnikatel.cz: EET zvládneme, budou horší zákony

EET zvládneme, budou horší zákony

Podnikatel.cz: Přehledná titulka, průvodci, responzivita

Přehledná titulka, průvodci, responzivita

Lupa.cz: Propustili je z Avastu, už po nich sahá ESET

Propustili je z Avastu, už po nich sahá ESET

DigiZone.cz: ČRo rozšiřuje DAB do Berouna

ČRo rozšiřuje DAB do Berouna

120na80.cz: Pánové, pečujte o svoje přirození a prostatu

Pánové, pečujte o svoje přirození a prostatu

Měšec.cz: Kdy vám stát dá na stěhování 50 000 Kč?

Kdy vám stát dá na stěhování 50 000 Kč?

Vitalia.cz: Chtějí si léčit kvasinky. Lék je jen v Německu

Chtějí si léčit kvasinky. Lék je jen v Německu

Podnikatel.cz: Babiše přesvědčila 89letá podnikatelka?!

Babiše přesvědčila 89letá podnikatelka?!

Podnikatel.cz: Víme první výsledky doby odezvy #EET

Víme první výsledky doby odezvy #EET

Vitalia.cz: Říká amoleta - a myslí palačinka

Říká amoleta - a myslí palačinka

Vitalia.cz: To není kašel! Správná diagnóza zachrání život

To není kašel! Správná diagnóza zachrání život

Vitalia.cz: 9 největších mýtů o mase

9 největších mýtů o mase

Lupa.cz: Avast po spojení s AVG propustí 700 lidí

Avast po spojení s AVG propustí 700 lidí

Vitalia.cz: „Připluly“ z Německa a možná obsahují jed

„Připluly“ z Německa a možná obsahují jed

DigiZone.cz: NG natáčí v Praze seriál o Einsteinovi

NG natáčí v Praze seriál o Einsteinovi

Měšec.cz: U levneELEKTRO.cz už reklamaci nevyřídíte

U levneELEKTRO.cz už reklamaci nevyřídíte

Vitalia.cz: Láska na vozíku: Přitažliví jsme pro tzv. pečovatelky

Láska na vozíku: Přitažliví jsme pro tzv. pečovatelky

Měšec.cz: Finančním poradcům hrozí vracení provizí

Finančním poradcům hrozí vracení provizí

Lupa.cz: UX přestává pro firmy být magie

UX přestává pro firmy být magie

Lupa.cz: Co se dá měřit přes Internet věcí

Co se dá měřit přes Internet věcí