Vyhodnocení agentů hlubokého Q-učení pomocí testu algoritmického IQ

Název práce: Vyhodnocení agentů hlubokého Q-učení pomocí testu algoritmického IQ
Autor(ka) práce: Dvořák, Michal
Typ práce: Diplomová práce
Vedoucí práce: Vadinský, Ondřej
Oponenti práce: Berka, Petr
Jazyk práce: Česky
Abstrakt:
Hluboké Q-učení propojuje dva směry oboru umělé inteligence, a to neuronové dopředné sítě a posilované učení. Posilované učení představuje metodu, kdy se agent, v podobě například umělé inteligence, učí postupným řešením daného problému. Problém představuje prostředí, které s agentem komunikuje a předává mu informaci v jakém se nachází stavu. Agent na tuto informaci reaguje provedením akce, za kterou mu prostředí může dá odměnu. Agentovým cílem je naučit se takové chování, aby nasbíral co největší počet odměn. Hluboké Q-učení je nadstavbou klasické metody řešení problémů posilovaného učení zvané Q-učení. Tato metoda používá k učení svého chování Q-funkci. Hluboké Q-učení aproximuje tuto Q-funkci neuronovou sítí, díky čemuž dokáže pracovat s prostředími s velkými stavovými prostory. V rámci této práce byl implementován agent hlubokého Q-učení do testu algoritmického IQ (AIQ), který vychází právě z posilovaného učení, a využívá koncept univerzální inteligence. Velmi zjednodušenou myšlenkou AIQ testu je otestovat agenta na co nejvíce prostředích, změřit jeho nasbíranou odměnu a přes složitost prostředí sečíst výsledky do finálního AIQ skóre. V důsledku výzkumu hlubokého Q-učení byly finálně implementovaní dva agenti. První agent využívá původní znění z práce o hlubokém Q-učení a obsahuje mechanismus sbírající agentovi interakce v testu zvaný replay memory, a dále obsahuje jednu neuronovou síť, která se učí agentovu politiku a tedy chování. Druhý agent vychází z rozšiřující práce o hlubokém Q-učení a do této architektury přidává druhou neuronovou síť, která pomáhá tvořit učící data, čímž stabilizuje proces učení hlavní neuronové sítě pro agentovu politiku. Test algoritmické inteligence a samotná implementace agenta využívá programovací jazyk Python a populární knihovny jako NumPy či PyTorch. Z důvodu velkého parametrového prostoru byl do testu přidán algoritmus založený na evolučních algoritmech, díky kterému byly nalezeny vhodné konfigurace pro použití hlubokého Q-učení v rámci AIQ testu. Pomocí evolučních algoritmů byly nalezeny konfigurace, která pro prvního agenta nezískala lepší výsledek než konfigurace z původních článků, ale u konfigurace pro agenta s dvěma neuronovými sítěmi byla nalezena konfigurace, která je se statistickou významností lepší než konfigurace z původního článku. Pro toto ověření byl použit Studentův t-test. Výsledky agentů hlubokého Q-učení byly porovnány s výsledky agenta prostého Q-učení, protože bylo zajímavé zjistit, jak velký vliv aproximace Q-funkce přes neuronovou síť bude mít. Podle Studentova t-testu ale nebyly výsledky na testovaném nastavení AIQ testu signifikantně rozdílné. Otestování agentů ani nepotvrdilo statistický rozdíl mezi výsledky obou architektur. Při porovnání všech nejlepších konfigurací agentů testu, oba agenti hlubokého Q-učení získali přední příčky ve výsledném skóre. Tyto výsledky byly získány pomocí testu algoritmického IQ, který byl nastaven pro všechny agenty stejně. Rozdíly mezi agenty byly testovány pomocí Studentova t-testu.
Klíčová slova: hluboké Q-učení; měření inteligence; neuronové sítě; posilované učení; algoritmické IQ; evoluční algoritmy
Název práce: Evaluating deep Q-learning agents using an algorithmic IQ test
Autor(ka) práce: Dvořák, Michal
Typ práce: Diploma thesis
Vedoucí práce: Vadinský, Ondřej
Oponenti práce: Berka, Petr
Jazyk práce: Česky
Abstrakt:
Deep Q-learning connects two branches of artificial intelligence: feed-forward neural networks and reinforcement learning. Reinforcement learning is a method in which an agent that can be artificial intelligence learns by solving a given problem. The problem is an environment that communicates with the agent and gives him information about the state of the environment. The agent reacts to this information by taking action, for which the environment can reward him. Agent’s goal is to learn a behavior that allows him to collect the biggest sum of cumulated rewards. Deep Q-learning is a superstructure of a classical method for solving reinforcement learning problems called Q-learning. This method uses the Q-function to learn its behavior. Deep Q-learning approximates the Q-function by a neural network. Thanks to that, the agent can work with environments that have large state spaces. In this thesis, the agent was implemented into an algorithmic IQ (AIQ) test, which builds upon the concept of reinforcement learning and uses the concept of Universal intelligence. The very simplified thought of the AIQ test is to test an agent in the most environments possible, measure its accumulated reward, and, by taking into account the difficulty of that environment, count the final AIQ score. Two agents were implemented as a result of later research on Deep Q-learning. The first agent comes out of the first research paper about Deep Q-learning and consists of a mechanism for gathering the agent’s experiences from interactions with the environment within the test, called Replay memory. He also uses a single neural network that learns the agent’s behavior. The second agent comes from a follow-up research paper about DQL, in which the second neural network is added to the agent’s architecture. This second neural network helps to create learning data for the main neural network, which helps to stabilize the learning of the main neural network that still handles its behavior. AIQ test and implemented agents use Python as a programming language with popular libraries such as NumPy and PyTorch. The test was extended by a search algorithm based on evolutionary algorithms because of the large hyperparameter spaces of both agents, and evolutionary algorithms help to search this space heuristically and more efficiently. With these evolutionary algorithms, agent configurations were found, and the configuration of the first agent didn’t get better results than the configuration from the research paper, but for the second agent, a configuration was found that was statistically significantly better than the configuration from the research paper. The results of the DQL agents were compared with the results of the basic Q-learning agent because it was interesting to test the significance of the approximation of Q-function by the neural network. The results of this experiment don’t prove that DQL is any better than Q-learning for the current AIQ setting. There weren’t any significant differences between the two DQL architectures themselves either. Agents got the best ranks by final scores when tested against the best configurations of all other agents in the AIQ test. All results were gathered using the algorithmic IQ test, which was set up for each agent in the same way. The results of the agents were tested using the Student’s t-test.
Klíčová slova: algorithmic IQ; Deep Q-learning; evolutionary algorithms; measuring intelligence; neural networks; reinforcement learning

Informace o studiu

Studijní program / obor: Znalostní a webové technologie
Typ studijního programu: Magisterský studijní program
Přidělovaná hodnost: Ing.
Instituce přidělující hodnost: Vysoká škola ekonomická v Praze
Fakulta: Fakulta informatiky a statistiky
Katedra: Katedra informačního a znalostního inženýrství

Informace o odevzdání a obhajobě

Datum zadání práce: 20. 10. 2022
Datum podání práce: 28. 4. 2024
Datum obhajoby: 2024

Soubory ke stažení

Soubory budou k dispozici až po obhajobě práce.

    Poslední aktualizace: