September discount week
Pouze tento týden sleva až 80 % na e-learning týkající se MS Office
50 % bodů zdarma na online výuku díky naší Slevové akci!

Projekt Honza (AI)

Chcel by som predstaviť môj projekt, ktorý spočíva v simulovanie umelej inteligencie pomocou konverzácie. Inak povedané, cieľom je vytvorenie "kecacího" programu, ktorý bude schopný písomne komunikovať s bežným užívateľom na takej úrovni, aby bolo čo najmenej rozpoznateľné, že sa jedná len o program. Čím sa ale líši od svojich predchodcov, ako bol Kecal, Pokyd, a ostatní? To je práve to "gro" celého projektu:

Momentálne je projekt vo fáze, kedy možno program učiť odpovede (ale aj separátny znalosti) niekoľkými možnými spôsobmi, podľa špeciálne vytvoreného "programovacieho jazyka". Výhodou je, že všetko prebieha pomocou základných textových súborov, takže žiadny špeciálny program k tomu nie je potrebné. Ako Honzu "programovať" alebo, ak chcete ľudskejšie: "učiť", uvediem neskôr. Keď skrátka program naučíte, že treba 24.11. má Narodeniny Pepa Vomáčka, a keď ho naučíte, čo to Narodeniny sú a keď ho správne naučíte na otázku "kto má narodeniny 24.11.?" reagovať, dokážete si Honzu sami naprogramovať.

Program ale nie je len o konverzáciu, ale aj o vizualizáciu. Teraz je schopný pohybovať končatinami, hlavou a trupom. Všetko ale iba v 2D prostredí. Možno teda program naučiť aj určité pohyby na niektoré povely.

V plienkach je vývoj zvukovej komunikácie, pričom program teraz "vie" vysloviť asi 70 slov alebo slovných spojení.

Tento výukový obsah pomáhajú rozvíjať nasledujúce firmy, ktoré možno hľadajú práve teba!

Program využíva i aktuálne "pamäťové línie", ktorá zaisťuje, že sa pri konverzácii drží aktuálnej témy.

Ako prebieha hľadanie reakcie a programovanie: Nebudem tu podrobne rozpisovať fungovania, však reakciu hľadá podľa zadaných slov. A s tým súvisí už to samotné programovanie:

Reakciu môže vypísať nasledujúcimi spôsobmi:

  • priamo zadaným slovom (kedy mu napíšete, že na "ahoj" odpovie "čau"
  • vyhľadaným slovom zo zoznamu (kedy na "ahoj" odpovie výberom zo zoznamu slov a slovných spojení)
  • vyhľadať podľa premennej, ktorú má niekde v dátach uloženú a podľa nej reagovať (napr. "ako sa vedie?" odpovie podľa nálady výberom zo zoznamu)
  • Odpoveď môže tiež zahŕňať zápis do histórie, vďaka čomu potom môže na základe prečítanie histórie správne reagovať (držanie sa témy)
  • vie podľa zadaného parametra vyhľadať príslušnú reakciu - ukážkou môže byť vybranie vtipu.

a ďalšie ...

Kto so všetkými súbormi a zložkami preklikne, môže ľahko zistiť, ako program pracuje. Všetko je ale zatiaľ len v počiatočnej fáze.

Na tomto projekte s názvom "Honza" (ako sa program volá) pracujem sám a pomaly začínam zisťovať, že vývoj sa s postupným nadobúdaním informácií začína spomaľovať. Preto hľadám nadšencov, ktorí majú o túto problematiku tiež záujem a chceli by sa podieľať na vývoji. Kto by mal záujem, môže ma kontaktovať a prípadne rovno napísať dôvod, prečo by sa chcel na tomto vývoji podieľať. Koho teda vlastne hľadám? Aktívnych ľudí, ani nemusí vedieť programovať, ale nové nápady sa vždy hodí. Ak by teda niekto mal záujem, mám k dispozícii stručný manuál, ktorý fungovanie programu vysvetlí.

Kto chce, môže sledovať môj youtube kanál, kam nahrávam nové ukážky programu: Youtube kanál - zoznam videí s projektom Honza

Ešte sem vložím priamo ukážku jedného takéhoto videa:


Keby chcel niekto vývoj tohto programu sledovať, mám vytvorenú stránku na facebooku, kam píšem aktuálne novinky: https://www.facebook.com/kentaurteam

Galéria


 

Stiahnuť

Stiahnuté 380x (6.91 MB)

 

Všetky články v sekcii
Delphi
Program pre vás napísal gamesis
Avatar
Ako sa ti páči článok?
Ešte nikto nehodnotil, buď prvý!
Autor se věnuje tvorbou počítačových her a programů
Aktivity (1)

 

 

Komentáre

Avatar
gamesis
Redaktor
Avatar
gamesis:29.7.2013 19:57

zapomněl jsem zmínit, že vše je citlivé na velikost písmen - v původním záměru bylo, že textový řádek bude automaticky převáděn na malá písmena, ale pak mi došlo, že se pak nebudou dát psát smajlíci (dvojtečka D atd..) takže všechno psát malými písmeny ;) v dalších verzích to pořešim ;)

 
Odpovedať
29.7.2013 19:57
Avatar
Filip Pýrek
Redaktor
Avatar
Odpovedá na gamesis
Filip Pýrek:29.7.2013 20:59

Ale šlo by to: převedeš si Ahoj jak se máš? (dvojtečka)D na ahoj jak se mášd a :d replaceneš na (dvojtečka)D. ;)

Odpovedať
29.7.2013 20:59
„The best way to predict the future is to invent it.“ — Alan Kay
Avatar
David Čápka
Tým ITnetwork
Avatar
Odpovedá na gamesis
David Čápka:29.7.2013 21:02

A v čem by vadilo kdybys smajlíky rozeznával jako :d ?

Odpovedať
29.7.2013 21:02
Jsem moc rád, že jsi na síti, a přeji ti top IT kariéru, ať jako zaměstnanec nebo podnikatel. Máš na to! :)
Avatar
gamesis
Redaktor
Avatar
Odpovedá na Filip Pýrek
gamesis:29.7.2013 21:25

Ja jako vim, jakým způsobem to pořešit, ale snažím se na projektu praovat postupně :) tohle už je jen formalita ktere předchazeji duležitější prvky :)

 
Odpovedať
29.7.2013 21:25
Avatar
gamesis
Redaktor
Avatar
Odpovedá na David Čápka
gamesis:29.7.2013 21:26

Protože uživatel by nemohl napsat dvojtečka D ale :d a to už nevypadá jako smajlík :)

 
Odpovedať
29.7.2013 21:26
Tento výukový obsah pomáhajú rozvíjať nasledujúce firmy, ktoré možno hľadajú práve teba!
Avatar
gamesis
Redaktor
Avatar
gamesis:29.7.2013 21:36

Kdybyste někdo chtěl sledovat novinky z vývoje, mám vytvořenou stránku na facebooku: https://www.facebook.com/kentaurteam

 
Odpovedať
29.7.2013 21:36
Avatar
Kit
Redaktor
Avatar
Odpovedá na gamesis
Kit:29.7.2013 23:42

To je divné, že k takovému programu nedovedeš napsat lexikální analyzátor. Představ si, že u programovacích jazyků je běžné, že v textu jsou některá slova case sensitive, jiná case insensitive a překladač si s tím poradí. Vstupní řetězec prostě musíš rozebrat na tokeny, označkovat si je a teprve pak s nimi pracovat.

Značka se dělá jako enum, jejím atributem je příslušná část původního řetězce. U čísla je atributem hodnota parsovaného čísla. Zkus se podívat, jak to dělají třeba programy Flex a Bison.

Odpovedať
29.7.2013 23:42
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
gamesis
Redaktor
Avatar
Odpovedá na Kit
gamesis:30.7.2013 8:50

Ale pochop, ze v tuto chvili psat nejaky lexikonalni analyzator je naprosto zbytecne ;) Program zatím není ve fázi, kdy je prave tohle potřeba řešit ;)

 
Odpovedať
30.7.2013 8:50
Avatar
archlin
Člen
Avatar
archlin:30.7.2013 20:56

Zrejme to neprejde cez Turingov test :D

Odpovedať
30.7.2013 20:56
sublime text 2
Avatar
gamesis
Redaktor
Avatar
Odpovedá na archlin
gamesis:31.7.2013 12:27

To je nápad :) konecne mam stanoveny nejaky cil :) Jenom by me jeste zajimalo, kde se ten test da oficialne provest... Ale to hodne predbiham :)

 
Odpovedať
31.7.2013 12:27
Robíme čo je v našich silách, aby bola tunajšia diskusia čo najkvalitnejšia. Preto do nej tiež môžu prispievať len registrovaní členovia. Pre zapojenie sa do diskusie sa zaloguj. Ak ešte nemáš účet, zaregistruj sa, je to zadarmo.

Zatiaľ nikto nevložil komentár - buď prvý!