pondělí 11. června 2012

Teoreticky dokonalý vyhledávač


Už nějakou tu dobu tvořím různé programy, aplikace, hromady funkcí a sbírám opravdu hodně dat. Pokud mě sledujete delší dobu, tak jistě už víte, že jsem za dobu svého působení vytvořil opravdu mnoho různých webů, které se zaobíraly získáváním různých dat.

A co z toho? Rozhodl jsem se to nějak efektivně využít a představit něco, co dokáže všechny tyto data efektivně využít a umožnil jejich snadné prohledávání v reálném čase.

Napadlo mě tedy udělat znalostní vyhledávač. Jelikož mám v databázi přes 5 milionů záznamů, tak už mám poměrně dost dat na to, abych z toho mohl něco udělat. Položil jsem si tedy otázku, jestli by moje technologie byla natolik zajímavá, že by nabídla něco nového. Něco, co zatím žádný vyhledávač neumí a tím pádem bych oslovil obrovský počet lidí.

Vytyčil jsem si proto body, které se budu snažit splňovat:
- Vše musí být zdarma a minimum reklam
- Doba hledání nesmí překročit 2 vteřiny (v denní špičce)
- Zpracování výsledků musí být kvalitní, přehledné a musí nabídnout případně další vysvětlení hledaného dotazu (jiné významy)
- Systém se musí umět sám učit na základě anonymních dat získaných z předchozích hledání
- Vše musí být automatické
- Robot musí dotaz chápat jako "významovou bublinu", nikoliv jako směs znaků
- Nové data se musejí dynamicky přidávat samy na základě práce robota
- Hledač musí mít funkci na hledání svobodných databází (licence CC) a možnost snadného importování

Jak to vlastně bude fungovat?

Uživatel položí dotaz na př. formou klasického napsání textu do inputu, jako je do teď zvyklý. Následně provede vyhledávač tisíce, možná stovky tisíc porovnávání a zjistí, co danný dotaz vlastně znamená (význam). Takže to pak už nebude prosté dosazování písmenek, jako to dělá na př. Google, ale vyhledávač bude znát logiku a návaznost textu na sebe.

Poté, co bude znát význam, tak začne postupně prohledávat databáze a sestavovat výsledky. Podle zkušeností z předchozích hledání se budou výsledky neustále zdokonalovat (strojové učení). Za to strojové učení budou moct pouze data, které uživatelé anonymně vyhledají.

Takto se může vyhledávač snadno naučit souvislosti mezi dotazy, když bude uživatel hledat v jeden čas více podobných klíčových slov. Ono s pomocí jednoduchého zadávání dotazů totiž vzniká poměrně kvalitní databáze souvislostí.

Vzhledem k tomu, že na systému této inteligence nějaký ten čas pracuji, tak mám už spoustu zajímavých poznatků a musel jsem řešit spoustu zajímavých problémů. Proto doporučuji, aby jste četli pravidelně tento blog a nebo mě sledovali na Google+, kde se dozvíte spoustu zajímavých informací.

Kdy bude pokračování?

Podle ohlasů... Když bude velký ohlas, tak klidně denně. Mám ještě stovky nápadů na články o tomto tématu, které vám můžou pomoci pochopit principy tvorby umělé inteligence.