V příkladu 3 jsme mapu znali a cestu jsme hledali. Tady agent mapu nezná vůbec — neví, kde je cíl ani kde je láva. Může jen zkoušet kroky a sledovat, jakou dostane odměnu nebo trest. Z tisíců pokusů a omylů se cestu naučí. In example 3 we knew the map and searched for the path. Here the agent does not know the map at all — it doesn't know where the goal or the lava is. It can only try moves and watch what reward or penalty it gets. From thousands of trials and errors it learns the path.
Co to jeWhat it is Učení odměnou (reinforcement learning): agent (oranžové kolečko) chodí po mřížce. Za dojití do cíle dostane +10, za pád do lávy −10 a každý krok ho stojí −0,1 (náraz do zdi nebo okraje −1). Algoritmus Q-learning si pro každé políčko a každý směr pamatuje jedno číslo — Q-hodnotu: „kolik mi tenhle krok nakonec přinese“.Reinforcement learning: an agent (the orange dot) walks around a grid. Reaching the goal earns +10, falling into lava −10, and every step costs −0.1 (bumping into a wall or the edge −1). The Q-learning algorithm remembers one number for every cell and every direction — the Q-value: “how much will this move pay off in the end”.
Co zkusitWhat to try Klikni párkrát na 1 epizoda — agent zpočátku bloudí naslepo. Pak pusť 100 epizod a sleduj, jak se mapa zbarví (zelená = odtud to vede k odměně) a šipky ukážou cestu. Ukaž naučenou cestu projde mapu bez náhodných pokusů. Na mapě Útes porovnej Q-learning a opatrnější SARSA, na mapě Mince uvidíš, jak agent „ošálí“ odměnu. Klikáním do mapy kreslíš zdi a lávu.Click 1 episode a few times — at first the agent wanders blindly. Then run 100 episodes and watch the map change color (green = from here it leads to a reward) while the arrows reveal the path. Show learned path walks the map without random tries. On the Cliff map compare Q-learning with the more cautious SARSA; on the Coin map you'll see the agent “game” its reward. Click into the map to draw walls and lava.
Proč je to důležitéWhy it matters Nikdo agentovi neřekne, jaký krok je správný — dostane jen zpožděnou odměnu na konci. Přesně takhle se AlphaGo naučil hrát go a takhle se dolaďují jazykové modely podle lidského hodnocení (příklad 16). Zároveň je vidět, proč je zadat správnou odměnu těžké.Nobody tells the agent which move is correct — it only gets a delayed reward at the end. This is exactly how AlphaGo learned to play Go, and how language models are fine-tuned from human feedback (example 16). It also shows why specifying the right reward is hard.
V příkladech 6 a 8 měl model u každého příkladu správnou odpověď (učení s učitelem). Tady žádná správná odpověď není — agent jen jedná a občas dostane odměnu nebo trest, často až mnoho kroků po rozhodnutí, které k nim vedlo. Musí sám přijít na to, který z dřívějších kroků za výsledek „může“. In examples 6 and 8 the model had the correct answer for every example (supervised learning). Here there is no correct answer — the agent just acts and now and then gets a reward or a penalty, often many steps after the decision that caused it. It has to work out on its own which of its earlier moves “deserves” the result.
Agent je ten, kdo rozhoduje. Prostředí je svět kolem (tady mřížka). Stav = kde agent je, akce = co může udělat (↑ → ↓ ←), odměna = číslo, kterým prostředí po každé akci řekne „dobře“ nebo „špatně“. Jeden pokus od startu do konce je epizoda. The agent is the one who decides. The environment is the world around it (here the grid). The state = where the agent is, an action = what it can do (↑ → ↓ ←), the reward = a number the environment gives after each action to say “good” or “bad”. One attempt from start to finish is an episode.
Když agent chodí jen po nejlepší známé cestě, nikdy nenajde lepší. Když jen zkouší náhodně, nevyužije, co se naučil. Proto s pravděpodobností ε zkusí náhodný směr (průzkum) a jinak jde tím nejlepším, co zná (využití). Průzkum má ale cenu: na mapě Útes náhodný krok u okraje znamená pád. Pravidlo SARSA, které s vlastními náhodnými kroky počítá, se proto naučí bezpečnou cestu (okliku dál od lávy); Q-learning tu krátkou a riskantní. If the agent only follows the best known path, it never finds a better one. If it only tries at random, it never uses what it has learned. So with probability ε it tries a random direction (explore) and otherwise takes the best one it knows (exploit). But exploring has a price: on the Cliff map a random step at the edge means a fall. The SARSA rule, which takes its own random steps into account, therefore learns the safe path (a detour away from the lava); Q-learning learns the short, risky one.
Q(stav, akce) je odhad celkové odměny, kterou krok přinese včetně všeho, co přijde potom. Bellmanova myšlenka v jedné větě: hodnota kroku = odměna hned + trochu snížená (γ) hodnota nejlepšího kroku z místa, kam jsem došel. Po každém kroku agent posune Q o kousek (α) k tomuhle cíli — a odměna z cíle tak krok po kroku „prosakuje“ zpátky až ke startu. Proto se zelená šíří od cíle. Q(state, action) estimates the total reward a move brings including everything that comes after. Bellman's idea in one sentence: the value of a move = the reward now + the slightly discounted (γ) value of the best move from where I ended up. After every step the agent nudges Q a little (α) toward that target — so the reward from the goal “seeps” back step by step all the way to the start. That's why the green spreads out from the goal.
A* z příkladu 3 potřebuje mapu předem — pak cestu spočítá hned. Agent tady mapu nemá a cestu si vyšlape zkušeností; zato ho nemusí nikdo naprogramovat pro každý svět zvlášť. Oproti příkladům 6 a 8 nedostává ke každému kroku správnou odpověď, jen zpožděnou odměnu. Proto potřebuje stovky epizod i na malou mřížku. A* from example 3 needs the map up front — then it computes the path at once. The agent here has no map and treads out the path by experience; in return, nobody has to program it for each world separately. Unlike 6 and 8 it doesn't get the correct answer for each step, only a delayed reward. That's why it needs hundreds of episodes even for a small grid.
Hry: AlphaGo v roce 2016 porazil Lee Sedola, jednoho z nejlepších hráčů go na světě, 4 : 1 — hodně se naučil hraním sám proti sobě. Dále robotika (chůze, úchop) a řízení (např. chlazení, doprava). A hlavně jazykové modely: po předtrénování se dolaďují učením odměnou z lidského hodnocení (RLHF) a „uvažující“ modely se učí na úlohách s ověřitelnou odpovědí, jako je matematika nebo kód — viz příklad 16. Games: in 2016 AlphaGo beat Lee Sedol, one of the best Go players in the world, 4–1 — it learned a lot by playing against itself. Also robotics (walking, grasping) and control (e.g. cooling, traffic). And above all language models: after pre-training they are fine-tuned by learning from human feedback (RLHF), and “reasoning” models learn on tasks with a verifiable answer, such as maths or code — see example 16.
Agent maximalizuje číslo, ne to, co autor myslel. Na mapě Mince měl být bonus +1 jen drobností po cestě — agent ale zjistí, že víc „vydělá“ chozením tam a zpět přes minci, a do cíle už nejde. Graf odměn přitom vypadá skvěle. Ve skutečných hrách se stalo totéž (závodní loďka kroužila kolem bonusů, místo aby dojela do cíle). Proto je správně zadat odměnu těžké — a u jazykových modelů a agentů (příklady 16 a 18) je to jedna z otázek bezpečnosti. The agent maximises the number, not what the author meant. On the Coin map the +1 bonus was meant as a small extra along the way — but the agent finds it “earns” more by walking back and forth over the coin, and never goes to the goal. Meanwhile the reward chart looks great. The same happened in real games (a racing boat circled around bonuses instead of finishing the race). That's why specifying the reward correctly is hard — and for language models and agents (examples 16 and 18) it is one of the safety questions.
Pointa: hledání (příklad 3) cestu spočítá, když zná svět. Učení odměnou si ji vyzkouší, když svět nezná — stačí mu jediné číslo „dobře / špatně“, i když přijde až na konci. Cena: potřebuje hodně pokusů a odměnu musí někdo zadat tak, aby šla získat jen poctivě. The point: search (example 3) computes the path when it knows the world. Learning from reward tries it out when it doesn't — a single “good / bad” number is enough, even if it only comes at the end. The price: it needs many attempts, and someone has to specify the reward so that it can only be earned honestly.