med hjälp av Deep Reinforcement Learning

Storlek: px
Starta visningen från sidan:

Download "med hjälp av Deep Reinforcement Learning"

Transkript

1 Agent som kan spela Atarispel bättre än människor med hjälp av Deep Reinforcement Learning Sofie Adolfsson, Artificiell Intelligens Linköpings Universitet

2 SofieAdolfsson ArtificiellIntelligens1729G43 Sofad117 Litteraturstudie Sammanfattning Företaget DeepMind har som mål att tänja på gränserna för Artificiell Intelligens och utveckla agenter som kan lära sig att lösa vilka komplexa problem som helst utan att man behöver förklara för dem hur det ska gå till. De lyckades utveckla en agent som helt själv lärde sig att spela 49 olika spel Atarispel. Det gjorde dem med hjälp av ett enda djupt neuralt nätverk som kallas för DQN. DQN är en blandning av en reinforcement learning algoritm som kombineras med ett convolutional neuralt nätverk för att kunna ha råa pixlar som indata. Den överträffade resultatet för alla tidigare algoritmer och lyckades uppnå en nivå som är jämförbar med en professionell mänsklig spelare. Den här rapporten har som syfte att få en förståelse för hur den Atarispelande agenten är uppbyggd. Störst fokus läggs på Reinforcement learning där Q-learning är en vanlig metod. Fördjupningen sker mest i hur Q-learning fungerar och hur dess algoritm. Nyckelord: Deep Reinforcement Learning, DQN, Reinforcement Learning, convolutional neurala nätverk, Atari 2

3 SofieAdolfsson ArtificiellIntelligens1729G43 Sofad117 Litteraturstudie Innehållsförteckning 1. Inledning Bakgrund Atarispel Agenten ett djupt Q-nätverk Reinforcement Learning Underliggande element hos Reinforcement learning Markov Decision process (MDP) Artificiella Neurala Nätverk Convolutional Neurala Nätverk Q-learning Diskonteringsfaktorn γ Inlärningshastigheten α Q-learning exempel Q-learning steg för steg Deep Reinforcement Learning Avslutande ord Referenser

4 SofieAdolfsson ArtificiellIntelligens1729G43 Sofad117 Litteraturstudie 1.Inledning Under tusentals år har vi försökt att förstå hur vi tänker, hur vi kan uppfatta, förstå, förutsäga och manipulera en värld som är mycket större och mer komplicerat oss själva. Artificiell intelligens (AI) tar detta ett steg längre, eftersom det inte bara försöker förstå utan också bygga intelligenta enheter (Russell & Norvig, 2010). Artificiell intelligens är idag ett hett ämne och många har antagligen ställt sig frågan om en artificiell intelligens kan vara smartare än människa. DeepMind (u.å.) är ett företag vilka har utvecklat ett program, en så kallad agent, som fick möta den koreanska världsmästaren Lee Sedol i AlphaGo. AlphaGo är ett av de mest komplexa och intuitiva spel som någonsin utvecklas då det har fler positioner och möjliga drag än vad det finns atomer i universum. Det otroliga var att agenten lyckades vinna (DeepMind, u.å.). DeepMind köptes upp av Google 2014 och är numera ledare i världen för AI forskning. De har som mål att tänja på gränserna för AI och utveckla agenter som kan lära sig att lösa vilka komplexa problem som helst utan att man behöver förklara hur det ska gå till. DeepMind lyckades också utveckla en agent, som helt själv lärde sig att spela 49 helt olika Atarispel, med endast råa pixlar (eng. raw pixels) som indata (DeepMind, u.å.). DeepMind presenterade den första deep learningmodellen som lärde sig direkt från högdimensionella sinnesintryck och detta med hjälp av Reinforcement Learning. Modellen är en convolutional neuralt nätverk som tränas med en variant av Q-learning vars indata är råa pixlar och utdata är en värdefunktion som uppskattar framtida belöningar (Mnih et. al., 2013). I denna fördjupningsstudie har jag valt att inrikta mig på Reinforcement Learning där mest fokus läggs på Q-learning och syftet är att få en överblick över hur den Atarispelande agenten är uppbyggd. 2.Bakgrund DeepMinds mål var att skapa ett neuralt nätverk som framgångsrikt kan lära sig att spela så många olika Atari spel som möjligt. Det neurala nätverket tilldelades inte någon spelspecifik information eller visuella särdrag och lärde sig endast via videoindata, belöningen, signaler som agenten får när spelet är slut samt en uppsättning av möjliga handlingar, precis som en människa skulle lära sig. Nätverket ändrades inte utan hölls konstant under alla spel (Mnih et al., 2013). 4

5 SofieAdolfsson ArtificiellIntelligens1729G43 Sofad117 Litteraturstudie 2.1. Atarispel Målet i varje spel är väldigt olika och designade för att vara utmanande för människor. DeepMinds agent har inte tillgång till all information om spelet, men lär sig spela på samma sätt som människor gör. Den har ingen kunskap om spelet sedan tidigare utan lär sig helt själv och blir bättre och bättre. Atarispelen är som tidigare nämnt helt olika spel, de ser inte likadana ut och har olika input. Nedan visas skärmdumpar från några av spelen som användes vid träning (Mnih et al., 2013). Bild 1. Skärmdumpar från fem Atarispel. Pong, Breakout, Space Invaders, Seaquest, Beam Rider. 2.2.Agenten ett djupt Q-nätverk DeepMind agentens visuella indata (210 x 160 RGB video på 60 Hz) och dess varierade uppsättning av uppgifter var utformade för att vara svåra även för människor som spelade (Mnih et al., 2013). Agenten lär sig genom erfarenhet, utan någon som förklarar. Detta kallas för oövervakad inlärning (eng. unsupervised learning). Agenten utforskar från tillstånd till tillstånd fram till dess att målet uppnåtts, det så kallade måltillståndet (Mnemstudio, 2010). Uppgiften som agenten har betraktas som en sekvens av handlingar, observationer och belöningar i en interaktion med en omgivning, i detta fall en Atari emulator, det vill säga spelen och dess data (Mnih et al., 2013). Agenten är uppbyggd av en enda algoritm, ett djupt Q-nätverk (DQN), där en reinforcement learning algoritm kombineras med ett artificiellt neuralt nätverk. Den arbetar direkt med RGB bilder och tränas med en variant av Q-learning algoritm. Stochastic gradient descent används för att uppdatera vikterna (Mnih et al., 2013). Agenten har även en experience replay mekanism som gör att utforskade övergångar lagras under en längre tid och den gör så att reinforcement learning agenter kan minnas och återanvända erfarenheter från det förflutna. Detta leder till att algoritmens prestanda förbättras enormt (Schaul, Quan, Antonoglou & Silver, 2016). 5

6 SofieAdolfsson ArtificiellIntelligens1729G43 Sofad117 Litteraturstudie Bild 2. Experience replay datauppsättning Ett djupt neuralt nätverk där flera lager av noder gradvis byggs upp för att skapa mer abstrakta representationer av data, gör det möjligt för artificiella neurala nätverk att lära sig abstrakta begrepp så som objektkategorier (Mnih et al., 2015). Det djupa Q-nätverket resulterade i den första artificiella agenten som var kapabel till att lära sig och utmärka sig på en mängd olika utmanande uppgifter. Den överträffade resultatet för alla tidigare algoritmer och lyckades uppnå en nivå jämförbar med en professionell mänsklig spelare (Mnih et al., 2015). 2.3.Reinforcement Learning Reinforcement learning är en maskininlärningsteknik där agenten lär sig att handla efter varje tillstånd i omgivningen. För att avgöra om det är ett bra tillstånd eller inte ges med hjälp av en belöning i det tillståndet. De flesta tillstånd har väldigt liten belöning så att agenten slumpmässigt förflyttar sig i omgivningen. När agenten når ett tillstånd med en belöning så lär den sig att det tillståndet som ledde till det tillståndet också associeras med belöningen. En vanlig metod för detta är Q-learning (Schneider, Magnano & Roberts, u.å.) Reinforcement Learning handlar om att agenten lär sig det den ska göra för att maximera belöningssignalen. Agenten gör detta genom att själv upptäcka genom att prova sig fram. Handlingarna påverkar nödvändigtvis inte bara den omedelbara belöningen utan även nästa situation och alla efterföljande belöningar. Detta är de två viktigaste egenskaperna hos reinforcement learning och de kallas för trial-and-error sökning samt fördröjd belöning (Sutton & Barto, 1998). Reinforcement learning problemet för lärande handlar om interaktioner för att uppnå ett mål. Vi har en beslutsfattande agent som ska lära sig något, och den interagerar kontinuerligt med en omgivning, och väljer handlingar som omgivningen svarar på och medför nya situationer för agenten. Omgivningen tillför även belöningar, numeriska värden som agenten försöker att maximera över tid (Sutton & Barto, 1998). 6

7 SofieAdolfsson ArtificiellIntelligens1729G43 Sofad117 Litteraturstudie Bild 3. En typiskt interaktionsloop för Reinforcement Learning En utmaning med Reinforcement learning kallas för credit assignment problemet och det innebär att det kan vara svårt att definiera vilken av de föregående handlingarna som var ansvarig för belöningen samt i vilken utsträckning (Tambet, 2015). En annan utmaning med Reinforcement Learning är att en agent måste göra en avvägning mellan att utforska-utnyttja (eng. exploration-exploitation) det den vet för att maximera sin belöning. För att få mycket belöning måste en Reinforcement Learning agent föredra handlingar som den har utfört tidigare vilka har visat sig vara effektiva. Men för att kunna upptäcka dessa måste agenten testa sådana handlingar som den inte har testat förut. Agenten utnyttjar vad den redan vet för att få en belöning, men den måste även utforska nya handlingar för att göra bättre val av handlingar i framtiden (Sutton & Barto, 1998). Om en agent endast utnyttjar sin kunskap kan det leda till att agenten riskerar att fastna i gamla hjulspår, vilket därmed innebär en risk att inte upptäcka en bättre belöning (Russell & Norvig, 2010). Ett sätt att hitta en balans mellan att utforska och utnyttja omgivningen är en ε-greedy metod, som bland annat Atariagenten tränades med. Där ε är en liten sannolikhet för att slumpmässigt välja en annan handling än den som har den högst uppskattade belöningen. På så vis agerar agenten oftast genom att utnyttja sin kunskap och välja den handling som har den högst uppskattade belöningen, men ibland genom att utforska omgivningen (Mnih et al., 2015) Underliggande element hos Reinforcement learning Förutom agenten och omgivningen finns det fyra vanliga underliggande element som ingår i ett Reinforcement learning system. En policy, en belöningsfunktion, en värdefunktion och en modell av omgivningen. En policy definierar hur agenten beter sig i en given situation och är en regel för hur vi väljer en handling i varje tillstånd. Belöningsfunktionen tilldelar tillstånd ett nummer som indikerar hur eftersträvansvärt det är, vilket därav är en omedelbar belöning. En agents mål är att långsiktigt maximera belöningen den får. Det är det som en 7

8 SofieAdolfsson ArtificiellIntelligens1729G43 Sofad117 Litteraturstudie värdefunktion specificerar, det som agenten kan förvänta sig långsiktigt. Ett tillstånd kan ge en låg omedelbar belöning men fortfarande ha ett högt värde eftersom efterföljande tillstånd kan ha höga värden. Det sista elementet är en modell av omgivningen vilket innebär att den efterliknar ett beteende hos en omgivning. Det används för planering eftersom givet ett tillstånd och en handling kan modellen förutsäga det resulterande tillståndet och nästa belöning innan det utforskats (Sutton & Barto, 1998) Markov Decision process (MDP) Den grundläggande idén med Markov Decision process (MDP) är att fånga de viktigaste aspekterna av de verkliga problemen en agent stöter på i interaktionen med omgivningen för att uppnå ett mål. En agent måste kunna känna av och observera tillståndet i omgivningen i en viss utsträckning och kunna vidta handlingar som påverkar tillståndet. Agenten måste även ha ett eller flera mål som relaterar till tillståndet i omgivningen. MDP formuleringen omfattar just dessa tre aspekter agenten som ska känna av omgivningen, handlingarna och målen. En metod som lämpar sig att lösa problem som dessa anses vara en Reinforcement Learning metod, vilket MDP gör (Sutton & Barto, 1998). MDP innebär en uppsättning av tillstånd och handlingar, tillsammans med regler för övergången från ett tillstånd till ett annat. En episod av den här processen bildar en ändlig sekvens av tillstånd, handlingar och belöningar. Här representerar s i tillstånd, a i handlingar och r i+1 belöningen som agenten får efter att ha utfört handlingen. Episoden avslutas med ett sluttillstånd s n när spelet är över. MDP förlitar sig på ett Markov antagande vilket innebär att sannolikheten för nästa tillstånd s i+1 endast är beroende av det nuvarande tillståndet s i och handling a i, men inte de föregående (Tambet, 2015) 2.4.Artificiella Neurala Nätverk Artificiella neurala nätverk (ANN) har inspirerats av människornas och djurens biologiska centrala nervsystem. Ett försök att simulera processen för att bearbeta och fatta beslut i nätverket av nervceller som även kallas för neuroner (Graupe, 2013). ANN är en välkänd och kraftfull maskininlärmingsteknik, som innehåller ett indatalager där man får in sensorisk data, ett antal dolda lager och ett utdatalager. Givet en tillräcklig uppsättning av uppmärkta data 8

9 SofieAdolfsson ArtificiellIntelligens1729G43 Sofad117 Litteraturstudie kommer nätverket kunna generalisera nya indata och generera en korrekt utdata genom att lära sig olika vikter för att ge förbindelser till olika noder (Schneider, Magnano & Roberts, u.å.). Det neurala nätverket lär sig därmed att känna igen och hitta mönster i tillräckligt stora datamängder. Om man vill lära ett neuralt nätverk att spela ett spel och vi har indata i form av skärmbilder, och utdata kan ta form av tre olika handlingar; exempelvis att gå till vänster, höger eller att skjuta. Då kan man behandla det som ett klassificeringsproblem, eftersom man för varje skärmbild behöver bestämma sig för vilken handling man ska genomföra (Tambet, 2015). Det artificiella neurala nätverket används därför för att bygga upp allt mer abstrakta representationer av data, detta med hjälp av flera lager av noder (Mnih et al., 2015). De flesta neurala nätverk tränas under övervakad inlärning, där man försöker minimera antalet fel. Då är inlärningsparametern viktig eftersom ett för litet värde kan resultera i en långsam inlärning, medan ett för stort kan hindra konvergens och orsaka att systemet pendlar eller skiljer sig (Coors, 2016). Det behövs många träningsexempel, men det är inte riktigt så vi lär oss eftersom vi inte behöver någon som säger åt oss en miljon gånger vad vi ska välja vid exempelvis varje skärmbild. Vi behöver bara enstaka feedback som talar om att vi gjorde det rätta och vi kan sedan räkna ut allt annat själva (Tambet, 2015) Convolutional Neurala Nätverk När man använder ett vanligt flerlagernätverk med råa pixlar som indata finns det en utmaning då antalet vikter växer snabbt även för små bilder. Tillskillnad från de vanliga flerlagernätverken reducerar convolutional neurala nätverk antalet vikter (Coors, 2016). Convolutional neurala nätverk användes i utvecklingen av den Atarispelande agenten, och det är en typ av feed-forward nätverk (information skickas enbart framåt i nätverket) (Mnih et. al., 2015). De använder convolutional lager som filtrerar indata för att få ut användbar data. Dessa convolutional lager har parametrar som har lärt sig så att dessa filter justeras automatiskt för att extrahera den mest användbara informationen för uppgiften. Exempelvis kan det vara mest användbart för att filtrera information om formen på ett objekt, men i andra samband kanske färg eller liknande. Vanligtvis används hierarkiska lager som filtrerar bilderna för en mer och mer abstrakt information efter varje lager (Dettmers, 2015) 3.Q-learning Q-learning är en temporal-difference (TD) metod, som uppdaterar beräkningar vilka baseras på tidigare händelser och därmed kan göra kvalificerade gissningar på framtida händelser kan se ut. Det är även en off-policy metod vilket innebär att agenten lär sig en optimal policy 9

10 SofieAdolfsson ArtificiellIntelligens1729G43 Sofad117 Litteraturstudie oavsett vilket policy agenten följer (Russell & Norvig, 2010). Atariagenten i detta fall lär sig den giriga strategin a = max a Q(s,a; θ), när den följer ett beteende som garanterar en tillräcklig utforskning av tillståndsrymden (Mnih et. al., 2013). Russell och Norvig (2010) förklarar att Q-learning är en modell-fri metod då Q-funktionen inte kräver en modell för val av handling eller inlärning. Kort och gott handlar Q-learning om att en agent i ett tillstånd S och en uppsättning av handlingar A. Agenten kan då utföra en handling a A och röra sig mellan tillstånd. När agenten har utfört en handling i ett specifikt tillstånd kan agenten få en belöning R, i form av numerisk siffra. Algoritmens funktion är att räkna ut mängden av alla kombinationer mellan tillstånds och handlingar. Detta är en iterativ process eftersom Q-värdet uppdateras i samband med att agenten utforskar sin omgivning, det gamla värdet ersätts med det nya (Wikipedia, 2017). I sin enklaste form kan ett steg i Q-learning processen kan definieras som ekvationen nedan: Här definieras en funktion Q(s t, a t ) som när vi utför en handling a i ett tillstånd s vid tiden t, och fortsätter optimalt från den punkten. Funktionen maxq(s t+1, a) är det största Q-värdet för alla handlingar i nästa tillstånd. Detta subtraheras med det Q-värde som fanns i tillståndet som man precis var i. Vi vill alltid välja den handling som resulterar med den högsta poängen i slutet av spelet, och när man har en Q-funktion kan man välja den handling med det högsta Q- värdet (Tambet, 2015). Ett annat sätt att se på Q(s,a) är att det är den bästa möjliga poängen i slutet av spelet där man utfört handlingen a i tillståndet s. Det kallas för Q-funktionen eftersom den representerar kvaliteten av en speciell handling i ett givet tillstånd. Detta är dock en teoretisk konstruktion eftersom vi inte kan uppskatta poängen i slutet av spelet när vi endast vet nuvarande tillståndet och handling men inte handlingarna och belöningarna efter det. Man ska alltså välja den handling med det högsta Q-värdet maximala värdet (Tambet, 2015). 10

11 SofieAdolfsson ArtificiellIntelligens1729G43 Sofad117 Litteraturstudie Tambet (2015) förklarar vidare att om vi fokuserar på en övergång <s, a, r, s >. Kan vi uttrycka Q-värdet av tillståndet s och handling a i termer av Q-värdet hos nästa tillstånd s. Denna kallas för Bellmans ekvation och den tyder på att den maximala framtida belöningen for tillståndet och handlingen är den omedelbara belöningen adderat med den maximala belöningen för nästa tillstånd. Huvudsyftet med Q-learning är att vi iterativt kan uppskatta Q- funktionen genom att använda Bellmans ekvation. Uppskattningen blir mer och mer exakt och efter varje iteration och den uppdateras tillräckligt många gånger kommer Q-funktionen att konvergera och representera det bästa Q-värdet. Q-learning utnyttjar en värdefunktion för att hitta den optimala handlingen i ett tillstånd. Värdefunktionen tilldelar alla handlingar i alla tillstånd ett värde, beroende på den uppskattade framtida belöningen. När värdefunktionen är som störst har man hittat den optimala handlingen som även kallas för optimal policy (Russell & Norvig, 2010). 3.1.Diskonteringsfaktorn γ Diskonteringsfaktorn (eng. discount factor), även kallat Gamma, betecknas med symbolen γ. Diskonteringsfaktorn är ett tal inom räckvidden 0 γ < 1. Det är en parameter som viktar framtida belöningar. Diskonteringsfaktorn avgör hur kort- eller långsiktigt en agent agerar (Coors, 2016). För att kunna prestera bra långsiktigt måste vi även ta med de belöningar som inte är omedelbara i beräkningarna. Eftersom omgivningen är stokastisk kan vi inte vara säkra på om vi kommer få samma belöning nästa gång vi utför samma handling (Tambet, 2015). Om Gamma är närmare 0 tenderar agenten att överväga endast omedelbara belöningar. Om Gamma är närmare 1 kommer agenten överväga framtida belöningar av större vikt, därmed villig att skjuta upp belöningen (Mnemstudio, 2010) 3.2.Inlärningshastigheten α Inlärningshastigheten α (eng. learning rate) har också en räckvidd från 0 α < 1. Den avgör i vilken utsträckning ny information har på den tidigare. Ett värde på 0 hindrar agenten från att lära sig och ett värde på 1 gör att agenten enbart överväger den senaste informationen (Wikipedia, 2017) 11

12 SofieAdolfsson ArtificiellIntelligens1729G43 Sofad117 Litteraturstudie 3.3.Q-learning exempel Terminologin i Q-learning inkluderar tillstånd s och handlingar a. De möjliga handlingarna kopplar ihop noder och bågar, exempelvis ett tillstånd avbildat som en nod och handlingarna kan representeras som pilar. Dessa kan sammanställas i en matris, ett slags diagram med värden på möjliga handlingar och vad de leder till, exempelvis om man får en belöning eller inte (Mnemstudio, 2010). Nedan kommer ett exempel som tagits från Mnemstudio.org (2010) där agenten använder oövervakad inlärning för att lära sig om en okänd omgivning. Vi kan anta att vi har ett hus med fem rum vilka numreras med en siffra. Utsidan av huset kan man tänka sig är ett enda stort rum likt bilden nedan. Vi kan då representera de olika rummen som noder och dörrarna som bågar i en graf. Om vi vill att en agent ska ta sig till utsidan av huset, rum 5, sätter vi det som måltillstånd. Varje pil nedan innefattar ett värde på belöningen. 100 indikerar en belöning som ges då agenten når måltillståndet. Resterande rum leder till en belöning med värde 0. Vi kan kalla varje rum för ett tillstånd och agentens rörelser från ett rum till ett annat för en handling. Bågarna representeras därmed som en handling istället för en dörr. Agenten börjar i tillstånd 2, och därifrån kan agenten endast gå vidare mot tillstånd 3 eftersom de är sammankopplade. Därifrån kan agenten gå vidare till tillstånd 1 eller 4 men även tillbaka till tillstånd 3. Alla möjliga tillstånd och dess belöningsvärden kan sammanställas i en matris. 12

13 SofieAdolfsson ArtificiellIntelligens1729G43 Sofad117 Litteraturstudie Matrisen har döpts till R i detta fall. När det tillstånden inte är sammankopplade visas det med värdet -1. Vi kan nu lägga till en liknande matris Q, vilket representerar minnet och det som agenten har lärt sig genom erfarenheten. Raderna i matris Q representerar det nuvarande tillståndet av agenten, och kolumnerna representerar de möjliga handlingarna som leder till nästa tillstånd. I detta exempel börjar agenten utan att veta någonting och Q-matrisen startar därmed med 0. I vissa fall då det är okänt hur många tillstånd som är involverade börjar matrisen Q med endast ett element, och de nya utforskade tillstånden läggs sedan till vartefter. Agenten lär sig genom erfarenhet och utforskar stegvis flera tillstånd tills det att målet uppnåtts. Varje utforskning kallas för en episod. Varje episod består av agentens handlingar från starttillståndet till måltillståndet och varje gång agenten når målet så går programmet över till nästa episod (Mnemstudio, 2010). Övergångmodellen för Q-learning kan beskrivas med en enkel formel: Q(state, actions) = R(state, actions) + Gamma * Max[Q(next state, all possible actions)] Enligt denna formel delas det ut ett värde till ett visst element i matris Q som är lika med summan av det motsvarande värdet i matris R som adderas med inlärningsparametern Gamma vilket multipliceras med det maximala värdet av Q för alla möjliga handlingar i nästa tillstånd. 13

14 SofieAdolfsson ArtificiellIntelligens1729G43 Sofad117 Litteraturstudie Denna algoritm är tagen från Sutton & Barto (1989) och är ett exempel på hur en Q-learning algoritm kan se ut: Med mer Pseudokod för algoritmen kan det se ut som följande: Initiera Q-matrisen, R-matrisen, diskonteringsfaktorn och inlärningsparametern Upprepa för varje episod: Initiera tillståndet s Upprepa för varje steg i episoden o Välj en handling a utifrån tillståndet s (med exempelvis -greedy algoritmen) o Utför handlingen och observera belöningen och det nya tillståndet o Uppdatera Q-matrisen genom att beräkna Q(s, a) o Sätt nuvarande tillstånd S = nästa tillstånd S Upprepa tills tillståndet avslutas Algoritmen används för att agenten ska lära sig från erfarenhet. Varje episod motsvarar en träningssession. I varje träningssession utforskar agenten omgivningen som representeras med matris R, och får en eventuell belöning tills måltillståndet uppnåtts. Syftet med träningen är att förstärka matris Q, vilket kan liknas som agentens hjärna. Ju mer man tränar nätverket desto mer optimerad blir Q matrisen. För att använda Q matrisen behöver agenten spåra sekvenser av tillstånd, från starttillståndet till måltillståndet. Detta kan man göra med följande algoritm som returnerar en sekvens av tillstånd från starttillståndet till måltillståndet: 1. Sätt nuvarande tillstånd = starttillstånd 2. Från nuvarande tillstånd, hitta handlingen med det högst Q-värdet. 3. Sätt nuvarande tillstånd till nästa tillstånd. 14

15 SofieAdolfsson ArtificiellIntelligens1729G43 Sofad117 Litteraturstudie 4. Repetera steg 2 och 3 tills nuvarande tillstånd är detsamma som måltillståndet 3.4.Q-learning steg för steg På (Mnemstudio, 2010) tar de även upp exempel där de går igenom några episoder för att göra det lite tydligare. I det exemplet börjar de med att sätta Gamma till 0.8 och initialiserar Q matrisen till 0 samt starttillståndet i tillstånd 1 (som vi kallar för rum i detta exempel). Genom att då titta på matris R där alla möjliga tillstånd och handlingar finns samlade ser vi att från rum 1 är det möjligt att gå vidare till rum 3 eller 5. Nästa rum väljs slumpmässigt och låt oss säga att handlingen resulterar i rum 5. När vi då tittar på rum 5, ser vi att det har tre möjliga handlingar, att gå till rum 1, 4 och 5. Övergångsmodellen ser då ut som sådan: Q(1, 5) = R(1, 5) * Max[Q(5, 1), Q(5, 4), Q(5, 5)] = * 0 = 100 Eftersom matrisen Q fortfarande är initialiserad till 0, så är Q(5, 1), Q(5, 4) och Q(5, 5) lika med 0. Därav blir resultatet 100 eftersom den omedelbara belöningen från R(5, 1) var 100. Nästa steg i algoritmen är att sätta nästa tillstånd, i detta fall rum 5, till nuvarande tillstånd. Rum 5 är vårt måltillstånd och därmed avslutas spelet och bildar en episod. Q matrisen uppdateras och lägger till 100 vid Q(1, 5). Se bild lite längre ned. För att starta nästa loop för nästa episod börjar vi med ett slumpmässigt utvalt starttillstånd och denna gång blir det rum 3. Matris R visar att det finns tre möjliga handlingar, att gå till rum 1, 2 eller 4. Handlingen resulterar slumpmässigt i rum 1 och därifrån har vi två möjliga handlingar att gå till rum 3 eller 5. För att beräkna Q-värdet får vi: Q(1, 5) = R(1, 5) * Max[Q(1, 3), Q(1, 5)] = * Max(0, 100) = 80 Vi använde Q matrisen från första episoden och lägger till detta värde (Då Q(1, 3) = 0 och Q(1, 5) = 100). 15

16 SofieAdolfsson ArtificiellIntelligens1729G43 Sofad117 Litteraturstudie Om vår agent sedan fortsätter att lära sig på detta vis kan Q-matrisen se ut som följande: Q-matrisen kan då normaliseras genom att dividera alla tal som inte är 0 med det högsta numret i tabellen, vilket i detta fall är talet 500. Då kommer matrisen uppdateras och se ut som nedan: När Q-matrisen kommer tillräckligt nära konvergens i ett tillstånd så vet vi att agenten har lärt sig den mest optimala vägen till ett måltillstånd. Då är det bara att ha Q-matrisen som en guide och följa den sekvens av tillstånd som har de högsta värdena vid varje tillstånd (Mnemstudio, 2010). 4.Deep Reinforcement Learning Varför används både reinforcement learning och artificiella neurala nätverk? I Q-learning kan vi med mindre problem behålla de beräknade värdena på Q(s, a) i en tabell där varje par av tillståndshandlingar noteras. Detta blir dock problematiskt med tanke på den tid- och minneskomplexitet som uppstår med större och kontinuerliga tillstånd och handlingar (Coors, 2016). Problemet med Atarispel är att det finns så många olika fall och det skulle då krävas en för stor matris att spara alla tillstånds-handlings par i. Vi behöver på något vis generalisera tillstånd. 16

17 SofieAdolfsson ArtificiellIntelligens1729G43 Sofad117 Litteraturstudie Ett sätt att hantera detta på är att använda sig av funktionsapproximationen, vilket innebär att man använder någon form av representation för Q-funktionen istället för en matris (Russell & Norvig, 2010). Det är viktigt att generalisera från de erfarna tillståndshandlingsparen till de outforskade. För att kunna göra detta kan värdefunktionen beräknas med en regression och det är där artificiella neurala nätverk kommer in i bilden då de har en förmåga att kunna hantera icke-linjära funktioner. En enkel arkitektur för ett neuralt nätverk baserat på detta visas nedan. Där används det nuvarande tillståndet s t, och en handling a t som indata och utdata motsvarar Q-funktionen och dess värde. Som man kan se på bilden skiljer sig Q-funktionen från Q-learning eftersom det här har lagts till en vektor θ. Vektorn representerar vikterna från det neurala nätverket (Coors, 2016). Q- funktionen ser då istället ut som detta Q(s, a; θ) och istället för att iterativt uppdatera värdena i matrisen så uppdateras θ parametrarna iterativt av vårt neurala nätverk. En Q-learning agent kan jämföra den förväntade nyttan för sina tillgängliga val utan att behöva veta deras utfall, så den behöver inte en modell av omgivningen. Q-learning agenter kan dock inte se vart deras handlingar leder eller se framåt, vilket kan begränsa deras förmåga att lära, vilket är en annan nackdel (Russell & Norvig, 2010). Därför har DeepMind valt att lagra Q i ett neuralt nätverk eftersom det då är möjligt för nätverket att chansa på utfall som den ännu inte har stött på. De kan göra chansningar på utdata baserat på en indata som den ännu inte har observerat. 17

18 SofieAdolfsson ArtificiellIntelligens1729G43 Sofad117 Litteraturstudie 5.Avslutande ord Det har varit ett spännande att få se hur en Reinforcement learning agent kan vara uppbyggd eftersom det liknar hur vi människor lär oss i verkligheten. En rekommendation på framtida läsning är DeepMinds utveckling av en ny agent som ska lära sig att spela StarCraft 2, vilket är ett mycket mer komplext spel än de som togs upp i den här rapporten. Detta kommer bland annat kräva effektivare användning av minnet, en förmåga att planera över en lång tid och en kapacitet att anpassa planer på ny information. 18

19 SofieAdolfsson ArtificiellIntelligens1729G43 Sofad117 Litteraturstudie 6.Referenser Coors, B. (2016). Navigation of Mobile Robots in Human Environments with Deep Reinforcement Learning. Hämtad från från Dettmers, T. (2015). Deep Learning in a Nutshell": Core Concepts. Hämtad från DeepMind. (u.å.). Solve intelligence. Use it to make the world a better place. Hämtad Graupe, D. (2013) Principles of Artificial Neural Networks. World Scientific Publishing Company (2nd ed.) Mnemstudio. (2010). Q-Learning.*; Step-By-Step Tutorial, (5). Hämtad från Mnih, V., Kavukcuoglu, K., Silver, D., Graves, A., Antonoglou, I., Wierstra, D., & Riedmiller, M. (2013). Playing Atari with Deep Reinforcement Learning. DeepMind Technologies. Hämtad Mnih, V., Kavukcuoglu, K., Silver, D., Rusu, A. A., Veness, J., Bellemare, M. G., Hassabis, D. (2015). Human-level control through deep reinforcement learning. Nature, 518(7540). Hämtad från Russell, S., & Norvig, P. (2010). Artificial Intelligence: A Modern Approach (3rd ed.). Pearson Education, Inc. Schaul, T., Quan, J., Antonoglou, I., & Silver, D. (2016). Prioritized experience replay. Hämtad från från Schneider, W., Magnano, C., & Roberts, K. (u.å.). NERL%: Neural-Network Emulation of Reinforcement Learners. Hämtad från 19

20 SofieAdolfsson ArtificiellIntelligens1729G43 Sofad117 Litteraturstudie Sutton, R., & Barto, A. G. (1998). Reinforcement Learning": An Introduction (1st ed.). Cambridge, Mass. : MIT Press. Tambet, M. (2015). Guest Post ( Part I ): Demystifying Deep Reinforcement Learning. Hämtad från Wikipedia. (2017). Q-learning. Hämtad från 20

Förstärkande inlärning med fokus på Q-learning

Förstärkande inlärning med fokus på Q-learning LINKÖPINGS UNIVERSITET 12 januari 2017 Förstärkande inlärning med fokus på Q-learning Artificiell Intelligens, 729G43 Sammanfattning Förstärkande inlärning innebär att vi människor lär oss genom att interagera

Läs mer

GRIDWORLD OCH MDP PROJEKTRAPPORT 729G43 MICHAEL JONASSON

GRIDWORLD OCH MDP PROJEKTRAPPORT 729G43 MICHAEL JONASSON 2018 GRIDWORLD OCH MDP PROJEKTRAPPORT 729G43 MICHAEL JONASSON Innehåll Inledning & Bakgrund... 2 Förstärkt inlärning... 2 MDP... 2 Gridworld... 3 Nytta och policy... 4 Värdefunktion och Bellmanekvationer...

Läs mer

Lärande genom interaktion

Lärande genom interaktion Lärande genom interaktion Förstärk inlärning, specifikt Q-learning Ebba Algvere 729G43 Artificiell Intelligens Linköpings Universitet 2017 Abstract This report will provide the reader with an understanding

Läs mer

729G43 Artificiell intelligens / Maskininlärning 3. Marco Kuhlmann

729G43 Artificiell intelligens / Maskininlärning 3. Marco Kuhlmann 729G43 Artificiell intelligens / 2015 Maskininlärning 3 Marco Kuhlmann Förra gången: Perceptroninlärning Beslutsregel predicerat y-värde Exempel: AND Välj parametrar θ 0, θ 1, θ 2 sådana att perceptronen

Läs mer

Reinforcement Learning med Q-learning LUDWIG HALVORSEN PROJEKT 729G43

Reinforcement Learning med Q-learning LUDWIG HALVORSEN PROJEKT 729G43 Reinforcement Learning med Q-learning LUDWIG HALVORSEN PROJEKT 729G43 0 Innehåll 1. Introduktion... 2 2.Teori och begrepp... 3 2.1 Kort historia lektion om varför ANN helt plötsligt blev stort... 3 2.2

Läs mer

de var svåra att implementera och var väldigt ineffektiva.

de var svåra att implementera och var väldigt ineffektiva. OBS! För flervalsfrågorna gäller att flera alternativ eller inget alternativ kan vara korrekt. På flervalsfrågorna kan man bara ha rätt eller fel, dvs frågan måste vara helt korrekt besvarad. Totalt kan

Läs mer

Fråga 5 (1 poäng) För att definiera ett sökproblem krävs...

Fråga 5 (1 poäng) För att definiera ett sökproblem krävs... OBS! För flervalsfrågorna gäller att ett, flera eller inget alternativ kan vara korrekt. På flervarlsfrågorna ges 1 poäng för korrekt svar och 0,5 poäng om skillnaden mellan antalet korrekta svar och antalet

Läs mer

729G43 Artificiell intelligens (2016) Maskininlärning 3. Marco Kuhlmann Institutionen för datavetenskap

729G43 Artificiell intelligens (2016) Maskininlärning 3. Marco Kuhlmann Institutionen för datavetenskap 729G43 Artificiell intelligens (2016) Maskininlärning 3 Marco Kuhlmann Institutionen för datavetenskap Modell med vektornotation parametervektor särdragsvektor Perceptron kombinerar linjär regression med

Läs mer

Neurala nätverk och språkigenkänning. Henrik Linnarsson. Linköping University

Neurala nätverk och språkigenkänning. Henrik Linnarsson. Linköping University Neurala nätverk och språk Henli807!1 Neurala nätverk och språkigenkänning Henrik Linnarsson Linköping University Neurala nätverk och språk Henli807!2 RNN, LSTM och språkigenkänning Inledning Idag är språkigenkänning

Läs mer

Fråga 5 (1 poäng) För att definiera ett sökproblem krävs...

Fråga 5 (1 poäng) För att definiera ett sökproblem krävs... OBS! För flervalsfrågorna gäller att ett, flera eller inget alternativ kan vara korrekt. På flervarlsfrågorna ges 1 poäng för korrekt svar och 0,5 poäng om skillnaden mellan antalet korrekta svar och antalet

Läs mer

Antag att b är förgreningsfaktorn, d sökdjupet, T (d) tidskomplexiteten och M(d) minneskomplexiteten.

Antag att b är förgreningsfaktorn, d sökdjupet, T (d) tidskomplexiteten och M(d) minneskomplexiteten. OS! För flervalsfrågorna gäller att ett, flera eller inget alternativ kan vara korrekt. På flervalsfrågorna ges 1 poäng för korrekt svar och 0,5 poäng om skillnaden mellan antalet korrekta svar och antalet

Läs mer

Sub-symbolisk kognition & Konnektionism. Kognitionsvetenskaplig Introduktionskurs (729G01) Mats Andrén,

Sub-symbolisk kognition & Konnektionism. Kognitionsvetenskaplig Introduktionskurs (729G01) Mats Andrén, Sub-symbolisk kognition & Konnektionism Kognitionsvetenskaplig Introduktionskurs (729G01) Mats Andrén, mats.andren@liu.se 1 Konnektionism Neutrala nät baseras på en (förenklad) modell av hur hjärnan fungerar.

Läs mer

Hierarchical Temporal Memory Maskininlärning

Hierarchical Temporal Memory Maskininlärning Hierarchical Temporal Memory Maskininlärning Innehåll Sammanfattning... 3 Inledning... 4 Vad är HTM?... 4 Hur fungerar HTM?... 4 Hierarchical... 4 Temporal... 5 Memory... 5 Hitta orsaker i världen... 5

Läs mer

Självlärande Hare and Hounds spelare med Q-learning

Självlärande Hare and Hounds spelare med Q-learning Självlärande Hare and Hounds spelare med Q-learning Examensarbete inom datalogi - DD143X HARALD HARTWIG RINDÖGATAN 27, 11558 STOCKHOLM TEL.NR: 0737264340 MAX WESTERMARK

Läs mer

Antag att b är förgreningsfaktorn, d sökdjupet, T (d) tidskomplexiteten och M(d) minneskomplexiteten.

Antag att b är förgreningsfaktorn, d sökdjupet, T (d) tidskomplexiteten och M(d) minneskomplexiteten. OS! För flervalsfrågorna gäller att ett, flera eller inget alternativ kan vara korrekt. På flervalsfrågorna ges 1 poäng för korrekt svar och 0,5 poäng om skillnaden mellan antalet korrekta svar och antalet

Läs mer

Vad behövs för att skapa en tillståndsrymd?

Vad behövs för att skapa en tillståndsrymd? OBS! För flervalsfrågorna gäller att ett, flera eller inget alternativ kan vara korrekt. På flervarlsfrågorna ges 1 poäng för korrekt svar och 0,5 poäng om skillnaden mellan antalet korrekta svar och antalet

Läs mer

Pathfinding med reinforcement learning i delvis observerbara miljöer

Pathfinding med reinforcement learning i delvis observerbara miljöer Pathfinding med reinforcement learning i delvis observerbara miljöer Anne Engström Joel Lidin Gustav Molander Olle Månsson Noa Onoszko Hugo Ölund Institutionen för Matematiska vetenskaper CHALMERS TEKNISKA

Läs mer

ARTIFICIELLA NEURALA NÄT. MARCO KUHLMANN Institutionen för datavetenskap

ARTIFICIELLA NEURALA NÄT. MARCO KUHLMANN Institutionen för datavetenskap ARTIFICIELLA NEURALA NÄT MARCO KUHLMANN Institutionen för datavetenskap Example Alt Bar Fri Hun Pat Price Rain Res Type Est WillWait 1 Yes No No Yes Some $$$ No Yes French 0 10 Yes 2 Yes No No Yes Full

Läs mer

Antag att b är förgreningsfaktorn, d sökdjupet, T (d) tidskomplexiteten och M(d) minneskomplexiteten.

Antag att b är förgreningsfaktorn, d sökdjupet, T (d) tidskomplexiteten och M(d) minneskomplexiteten. OBS! För flervalsfrågorna gäller att ett, flera eller inget alternativ kan vara korrekt. På flervalsfrågorna ges 1 poäng för korrekt svar och 0,5 poäng om skillnaden mellan antalet korrekta svar och antalet

Läs mer

Artificiell Intelligens Lektion 7

Artificiell Intelligens Lektion 7 Laboration 6 Artificiell Intelligens Lektion 7 Neurala nätverk (Lab 6) Probabilistiska resonemang Vad? Mönsterigenkänning Lära ett neuralt nätverk att känna igen siffror Varför? Få ökad förståelse för

Läs mer

Regression med Genetiska Algoritmer

Regression med Genetiska Algoritmer Regression med Genetiska Algoritmer Projektarbete, Artificiell intelligens, 729G43 Jimmy Eriksson, jimer336 770529-5991 2014 Inledning Hur många kramar finns det i världen givet? Att kunna estimera givet

Läs mer

Självlärande Hare and Hounds-spelare med Q-learning. HARALD HARTWIG och MAX WESTERMARK

Självlärande Hare and Hounds-spelare med Q-learning. HARALD HARTWIG och MAX WESTERMARK Självlärande Hare and Hounds-spelare med Q-learning HARALD HARTWIG och MAX WESTERMARK Examensarbete Stockholm, Sverige 2011 Självlärande Hare and Hounds-spelare med Q-learning HARALD HARTWIG och MAX WESTERMARK

Läs mer

Tänk på följande saker när du skriver tentan:

Tänk på följande saker när du skriver tentan: Ämne: AI med inriktning mot kognition och design Kurskod: KOGB05 / TDBB21 Datum: 2005-04-01 Antal uppgifter: 12 Skrivtid: 09:00 15:00 Max poäng: 54 Betygsgränser: 27 x

Läs mer

729G43 Artificiell intelligens (2016) Maskininlärning 2. Marco Kuhlmann Institutionen för datavetenskap

729G43 Artificiell intelligens (2016) Maskininlärning 2. Marco Kuhlmann Institutionen för datavetenskap 729G43 Artificiell intelligens (2016) Maskininlärning 2 Marco Kuhlmann Institutionen för datavetenskap Förra gången: Gradientsökning tangentens lutning i punkt θ steglängdsfaktor Översikt Introduktion

Läs mer

Statistisk mönsterigenkänning

Statistisk mönsterigenkänning Statistisk mönsterigenkänning Jonas Sandström Artificiell intelligens II Linköpings universitet HT 2011 Innehållsförteckning 1. Innehållsförteckning sid 2 2. Inledning sid 3 3. Statistisk mönsterigenkänning

Läs mer

729G43 Artificiell intelligens / Maskininlärning 1. Marco Kuhlmann

729G43 Artificiell intelligens / Maskininlärning 1. Marco Kuhlmann 729G43 Artificiell intelligens / 2015 Maskininlärning 1 Marco Kuhlmann Introduktion Maskininlärning Tack vare maskininlärning kan AI-system idag bl.a. producera och förstå naturligt språk kontrollera maskiner,

Läs mer

Fuzzy Logic: Den oskarpa skarpheten

Fuzzy Logic: Den oskarpa skarpheten Fuzzy Logic: Den oskarpa skarpheten Av: 1 Innehåll Inledning... 3 Vad är Fuzzy Logic?... 4 Fuzzy sets... 4 Medlemsskapsfunktion... 5 Operatorer... 7 Union... 7 Snitt... 8 Komplement... 8 Exempel med de

Läs mer

Symboler och abstrakta system

Symboler och abstrakta system Symboler och abstrakta system Warwick Tucker Matematiska institutionen Uppsala universitet warwick@math.uu.se Warwick Tucker, Matematiska institutionen, Uppsala universitet 1 Vad är ett komplext system?

Läs mer

Spel som interaktiva berättelser

Spel som interaktiva berättelser Spel som interaktiva berättelser Finns många typer av interaktivt berättande; ska titta närmare på spel eftersom de exemplifierar en rad aspekter av interaktivt berättande väldigt tydligt. Kan förstå spel

Läs mer

729G43 Artificiell intelligens / Maskininlärning 2. Marco Kuhlmann

729G43 Artificiell intelligens / Maskininlärning 2. Marco Kuhlmann 729G43 Artificiell intelligens / 2015 Maskininlärning 2 Marco Kuhlmann Förra gången: Linjär regression Gradientsökning Vandra ner i felets dal. Steg 0: Börja med ett godtyckligt värde för θ. Steg 1: Räkna

Läs mer

Modeller och simulering av språkprocessning

Modeller och simulering av språkprocessning Modeller och simulering av språkprocessning Seriell processmodell + parallell processmodell Parallell modell med 2-vägsförbindelser Artificiellt neuralt nätverk (ANN) Interaktiv aktiverings-modell (IAM)

Läs mer

Algoritmer och maskininlärning

Algoritmer och maskininlärning Algoritmer och maskininlärning Olof Mogren Chalmers tekniska högskola 2016 De här företagen vill Tjäna pengar Hitta mönster i stora datamängder Göra förutsägelser Klassificera data Förstå människan Maskininlärning

Läs mer

Artificiell Intelligens den nya superkraften

Artificiell Intelligens den nya superkraften Artificiell Intelligens den nya superkraften Socialchefsdagarna, 4 oktober 2018 #CGINext Artificiell Intelligens Förmågan hos mjukvara att agera självständigt på ett intelligent sätt tidigare bara associerat

Läs mer

HKGBB0, Artificiell intelligens

HKGBB0, Artificiell intelligens HKGBB0, Artificiell intelligens Kortfattade lösningsförslag till tentan 3 november 2005 Arne Jönsson 1. Vad karaktäriserar dagens AI-forskning jämfört med den AI-forskning som bedrevs perioden 1960-1985.

Läs mer

Asymptotisk analys innebär att... man försöker uppskatta vad som händer för stora indatamängder.

Asymptotisk analys innebär att... man försöker uppskatta vad som händer för stora indatamängder. OBS! För flervalsfrågorna gäller att ett, flera eller inget alternativ kan vara korrekt. På flervarlsfrågorna ges 1 poäng för korrekt svar och 0,5 poäng om skillnaden mellan antalet korrekta svar och antalet

Läs mer

Vad är Artificiell Intelligens (AI) Olika typer av AI och deras användningsområden Innovation med hjälp av AI Framtiden och etiska frågeställningar

Vad är Artificiell Intelligens (AI) Olika typer av AI och deras användningsområden Innovation med hjälp av AI Framtiden och etiska frågeställningar 1 Agenda Vad är Artificiell Intelligens (AI) Olika typer av AI och deras användningsområden Innovation med hjälp av AI Framtiden och etiska frågeställningar 2 Nuvarande AI Funktioner en grov Analogi Rekommendation,

Läs mer

1(15) Bilaga 1. Av Projekt Neuronnätverk, ABB Industrigymnasium, Västerås Vt-05

1(15) Bilaga 1. Av Projekt Neuronnätverk, ABB Industrigymnasium, Västerås Vt-05 1(15) Bilaga 1 2(15) Neuronnätslaboration Räknare Denna laboration riktar sig till gymnasieelever som går en teknisk utbildning och som helst har läst digitalteknik samt någon form av styrteknik eller

Läs mer

Optimala koder. Övre gräns för optimala koder. Gränser. Övre gräns för optimala koder, forts.

Optimala koder. Övre gräns för optimala koder. Gränser. Övre gräns för optimala koder, forts. Datakompression fö 3 p.3 Datakompression fö 3 p.4 Optimala koder Övre gräns för optimala koder En prefixkod kallas optimal om det inte existerar någon annan kod (för samma alfabet och sannolikhetsfördelning)

Läs mer

Optimala koder. Det existerar förstås flera koder som har samma kodordsmedellängd. Enklaste fallet är att bara byta 0:or mot 1:or.

Optimala koder. Det existerar förstås flera koder som har samma kodordsmedellängd. Enklaste fallet är att bara byta 0:or mot 1:or. Datakompression fö 3 p.1 Optimala koder En prefixkod kallas optimal om det inte existerar någon annan kod (för samma alfabet och sannolikhetsfördelning) som har lägre kodordsmedellängd. Det existerar förstås

Läs mer

Självlärande Dots & Boxes-spelare

Självlärande Dots & Boxes-spelare Självlärande Dots & Boxes-spelare ANDREAS PETTERSSON Kandidatexamensarbete inom datalogi, grundnivå Kurs 143X Handledare: Johan Boye Examinator: Mads Dam andrepet@kth.se Vintrosagatan 5 124 73 Bandhagen

Läs mer

Ett Neuralt Nätverk Tittar På Kläder

Ett Neuralt Nätverk Tittar På Kläder [Skriv här] [Skriv här] [Skriv här] 2019 Ett Neuralt Nätverk Tittar På Kläder ETT KONVOLUTIONELLT NEURALT NÄTVERK KATEGORISERAR FASHION MNIST DATASETET WILHELM BRODIN, WILBR797 1.1 Inledning En människas

Läs mer

Vektorer, matriser, nätverk - några elementa

Vektorer, matriser, nätverk - några elementa Vektorer, matriser, nätverk - några elementa Innehåll: Vektorer Radvektorer och kolumnvektorer Operationer med vektorer Input- och outputvektorer i neurala nätverk Utvikning om kompetitiva nät Matriser

Läs mer

Cake-cutting. att fördela resurser på ett rättvist sätt. Ebba Lindström

Cake-cutting. att fördela resurser på ett rättvist sätt. Ebba Lindström Cake-cutting att fördela resurser på ett rättvist sätt Ebba Lindström Innehållsförteckning Inledning 3 Utility Theory 3 Orderability 4 Transitivity 4 Continuity 4 Monotonicity 5 Decomposability 5 Cake-cutting

Läs mer

Artificiell intelligens, eller Kommer din dator att bli klokare än dig? (eller kanske är den redan det?)

Artificiell intelligens, eller Kommer din dator att bli klokare än dig? (eller kanske är den redan det?) Artificiell intelligens, eller Kommer din dator att bli klokare än dig? (eller kanske är den redan det?) 1.a November 2011 Innan vi börjar R.I.P. John McCarthy (1924 2011) Grundare av ämnet artificiell

Läs mer

Tentamenskod: Inga hjälpmedel är tillåtna

Tentamenskod: Inga hjälpmedel är tillåtna Intelligenta och lärande system 15 högskolepoäng Provmoment: Ladokkod: Tentamen ges för: Tentamen (TEN1) Artificiell intelligens (AI) 5hp 21IS1C Systemarkitekturutbildningen Tentamenskod: Tentamensdatum:

Läs mer

Instruktioner - Datortentamen TDDD73 Funktionell och imperativ programmering i Python

Instruktioner - Datortentamen TDDD73 Funktionell och imperativ programmering i Python Instruktioner - Datortentamen TDDD73 Funktionell och imperativ programmering i Python Hjälpmedel Följande hjälpmedel är tillåtna: Exakt en valfri bok, t.ex. den rekommenderade kursboken. Boken får ha anteckningar,

Läs mer

AI-Tekniker. För domänspecifika problemområden i StarCraft 2. Mattias Tiger Fredrik Präntare

AI-Tekniker. För domänspecifika problemområden i StarCraft 2. Mattias Tiger Fredrik Präntare AI-Tekniker För domänspecifika problemområden i StarCraft 2 Mattias Tiger Fredrik Präntare Introduktion och motivering Ni ska inför er individuella uppgift definiera ett problem och välja ut en eller flera

Läs mer

Självlärande Othello-spelare

Självlärande Othello-spelare Självlärande Othello-spelare Kan en dator lära sig att spela Othello? KLAS BJÖRKQVIST och JOHAN WESTER Examensarbete Stockholm, Sverige 2010 Självlärande Othello-spelare Kan en dator lära sig att spela

Läs mer

Asymptotisk analys innebär att... man försöker uppskatta vad som händer för stora indatamängder.

Asymptotisk analys innebär att... man försöker uppskatta vad som händer för stora indatamängder. OBS! För flervalsfrågorna gäller att ett, flera eller inget alternativ kan vara korrekt. På flervalsfrågorna kan man bara ha rätt eller fel, dvs frågan måste vara helt korrekt besvarad för att man skall

Läs mer

Vinjetter TDDC91 Datastrukturer och algoritmer

Vinjetter TDDC91 Datastrukturer och algoritmer Vinjetter TDDC91 Datastrukturer och algoritmer 17 augusti 2015 2 Scenario 1 Man har inom Posten Logistik AB skrivit programvara för sortering av kundinformation och vill standardisera användningen av sorteringsalgoritmer.

Läs mer

1 LP-problem på standardform och Simplexmetoden

1 LP-problem på standardform och Simplexmetoden Krister Svanberg, mars 202 LP-problem på standardform och Simplexmetoden I detta avsnitt utgår vi från LP-formuleringen (2.2) från föreläsning. Denna form är den bäst lämpade för en strömlinjeformad implementering

Läs mer

Föreläsning 5: Grafer Del 1

Föreläsning 5: Grafer Del 1 2D1458, Problemlösning och programmering under press Föreläsning 5: Grafer Del 1 Datum: 2006-10-02 Skribent(er): Henrik Sjögren, Patrik Glas Föreläsare: Gunnar Kreitz Den här föreläsningen var den första

Läs mer

Kognitionsvetenskap C, HT-04 Mental Rotation

Kognitionsvetenskap C, HT-04 Mental Rotation Umeå Universitet 041025 Kognitionsvetenskap C, HT-04 Mental Rotation Grupp 3: Christina Grahn, dit01cgn@cs.umu.se Dan Kindeborg, di01dkg@cs.umu.se David Linder, c01dlr@cs.umu.se Frida Bergman, dit01fbn@cs.umu.se

Läs mer

Antag att följande träd genereras i ett spelförande program om vi applicerar evalueringsfunktionen

Antag att följande träd genereras i ett spelförande program om vi applicerar evalueringsfunktionen 1. Komplexiteten hos en agent beror mycket på vilken omgivning den skall verka i. Vad innebär det att en omgivning är stokastisk, episodisk och dynamisk? Ge exempel på en omgivning som är stokastisk, episodisk

Läs mer

Enlagersnät Flerlagersnät Generalisering. Artificiella Neuronnät

Enlagersnät Flerlagersnät Generalisering. Artificiella Neuronnät Artificiella Neuronnät 1 Karaktäristiska egenskaper Användningsområden Klassiska exempel Biologisk bakgrund 2 Begränsningar Träning av enlagersnät 3 Möjliga avbildningar Backprop algoritmen Praktiska problem

Läs mer

Laboration 2. Artificiell Intelligens, Ht 2004 2004-10-19 Lärare: Christina Olsén Handledare: Therese Edvall Daniel Ölvebrink

Laboration 2. Artificiell Intelligens, Ht 2004 2004-10-19 Lärare: Christina Olsén Handledare: Therese Edvall Daniel Ölvebrink Artificiell Intelligens, Ht 2004 2004-10-19 Lärare: Christina Olsén Handledare: Therese Edvall Daniel Ölvebrink Laboration 2 Laboranter: Johan Bystedt (dit02lbt) Alexander Pettersson (dit02apn) Stefan

Läs mer

Lektion 8: Konstruktion av semantiska tablåer för PTL-formler

Lektion 8: Konstruktion av semantiska tablåer för PTL-formler Lektion 8: Konstruktion av semantiska tablåer för PTL-formler Till denna lektion hör uppgift 2, 6 och 0 i lärobokens avsnitt.6 (sid. 255). Lös uppgift 2 genom att konstruera en semantisk tablå. Följande

Läs mer

1 Minkostnadsflödesproblem i nätverk

1 Minkostnadsflödesproblem i nätverk Krister Svanberg, april 2012 1 Minkostnadsflödesproblem i nätverk Ett nätverk består av en given mängd noder numrerade från 1 till m (där m är antalet noder) samt en given mängd riktade bågar mellan vissa

Läs mer

Konvergens för iterativa metoder

Konvergens för iterativa metoder Konvergens för iterativa metoder 1 Terminologi Iterativa metoder används för att lösa olinjära (och ibland linjära) ekvationssystem numeriskt. De utgår från en startgissning x 0 och ger sedan en följd

Läs mer

Fuzzy Logic. När oskarpa definitioner blir kristallklara. Åsa Svensson. Linköpings Universitet. Linköping

Fuzzy Logic. När oskarpa definitioner blir kristallklara. Åsa Svensson. Linköpings Universitet. Linköping Fuzzy Logic När oskarpa definitioner blir kristallklara Linköpings Universitet Linköping Sammanfattning I denna fördjupningsuppgift har jag fokuserat på Fuzzy Logic och försökt att beskriva det på ett

Läs mer

Linköpings universitet

Linköpings universitet Översikt Kognitionsvetenskaplig introduktionskurs Föreläsning 4 Informationsbearbetningsmodeller Vad är kognitionsvetenskap? Kort bakgrund/historik Representation och bearbetning av information Vetenskapliga

Läs mer

2D1240 Numeriska metoder gk II för T2, VT Störningsanalys

2D1240 Numeriska metoder gk II för T2, VT Störningsanalys Olof Runborg ND 10 februari 2004 2D1240 Numeriska metoder gk II för T2, VT 2004 Störningsanalys Indata till ett numeriskt problem innehåller i praktiken alltid (små) fel.felen kan bero på tex mätfel, avrundningsfel

Läs mer

Datastrukturer, algoritmer och programkonstruktion (DVA104, VT 2015) Föreläsning 6

Datastrukturer, algoritmer och programkonstruktion (DVA104, VT 2015) Föreläsning 6 Datastrukturer, algoritmer och programkonstruktion (DVA104, VT 2015) Föreläsning 6? DAGENS AGENDA Komplexitet Ordobegreppet Komplexitetsklasser Loopar Datastrukturer Några nyttiga regler OBS! Idag jobbar

Läs mer

I en deterministisk omgivning beror nästa tillstånd bara av agentens handling och nuvarande tillstånd.

I en deterministisk omgivning beror nästa tillstånd bara av agentens handling och nuvarande tillstånd. OBS! För flervalsfrågorna gäller att ett, flera eller inget alternativ kan vara korrekt. På flervalsfrågorna ges 1 poäng för korrekt svar och 0,5 poäng om skillnaden mellan antalet korrekta svar och antalet

Läs mer

SELF- ORGANIZING MAPS

SELF- ORGANIZING MAPS LINKÖPINGS UNIVERSITET Kognitionsvetenskapliga Programmet Examinator: Arne Jönsson SELF- ORGANIZING MAPS - Ett fördjupningsarbete inom Artificiell Intelligens Fack 52 katwa676@student.liu.se Sammanfattning

Läs mer

Optimera, inte eliminera, den mänskliga hjärnan genom AI. Anna-Karin Edstedt Bonamy, MD, PhD Chief Medical Officer, Doctrin AB

Optimera, inte eliminera, den mänskliga hjärnan genom AI. Anna-Karin Edstedt Bonamy, MD, PhD Chief Medical Officer, Doctrin AB Optimera, inte eliminera, den mänskliga hjärnan genom AI Anna-Karin Edstedt Bonamy, MD, PhD Chief Medical Officer, Doctrin AB En av sjukvårdens största utmaningar är ökande personalbrist 4 av 10 läkare

Läs mer

Introduktion till algoritmer - Lektion 4 Matematikgymnasiet, Läsåret 2014-2015. Lektion 4

Introduktion till algoritmer - Lektion 4 Matematikgymnasiet, Läsåret 2014-2015. Lektion 4 Introduktion till algoritmer - Lektion 4 Matematikgymnasiet, Läsåret 014-015 Denna lektion ska vi studera rekursion. Lektion 4 Principen om induktion Principen om induktion är ett vanligt sätt att bevisa

Läs mer

Belöningsbaserad inlärning. Reinforcement Learning. Inlärningssituationen Belöningens roll Förenklande antaganden Centrala begrepp

Belöningsbaserad inlärning. Reinforcement Learning. Inlärningssituationen Belöningens roll Förenklande antaganden Centrala begrepp Belöningsbserd Inlärning Reinforcement Lerning 1 2 3 4 1 2 3 4 Belöningsbserd inlärning Reinforcement Lerning Inlärning v ett beteende utn tillgång till fcit. En belöning ger informtion om hur br det går

Läs mer

Föreläsning 12. Söndra och härska

Föreläsning 12. Söndra och härska Föreläsning 12 Söndra och härska Föreläsning 12 Söndra och härska Maximal delsekvens Skyline Closest pair Växel Uppgifter Söndra och härska (Divide and conquer) Vi stötte på dessa algoritmer när vi tittade

Läs mer

Artificiella Neuronnät

Artificiella Neuronnät Artificiella Neuronnät 2 3 4 2 (ANN) Inspirerade av hur nervsystemet fungerar Parallell bearbetning Vi begränsar oss här till en typ av ANN: Framåtkopplade nät med lagerstruktur 3 4 Fungerar i princip

Läs mer

Markovkedjor. Patrik Zetterberg. 8 januari 2013

Markovkedjor. Patrik Zetterberg. 8 januari 2013 Markovkedjor Patrik Zetterberg 8 januari 2013 1 / 15 Markovkedjor En markovkedja är en stokastisk process där både processen och tiden antas diskreta. Variabeln som undersöks kan både vara numerisk (diskreta)

Läs mer

GeneTrader. Ett helautomatiserat tradingsystem

GeneTrader. Ett helautomatiserat tradingsystem GeneTrader Ett helautomatiserat tradingsystem Johan Näslund, GeneSoft AB G E N E S O F T AB W W W.GENESOFT.SE +46 8 411 48 48 K U N G S G A T A N 62, 4TR 111 22 STOCKHOL M 1 (8) Innehållsförteckning 1

Läs mer

Personifierad Netflix

Personifierad Netflix Linköpings universitet Personifierad Netflix Lisa Rönnqvist 2016-08-24 Sammanfattning INNEHÅLLSFÖRTECKNING 1. Inledning... 1 1.1 Bakgrund... 1 1.2 Syfte... 2 2. Netflix... Fel! Bokmärket är inte definierat.

Läs mer

2D Potentialen i en nervcell definieras normalt som skillnaden i spänning mellan dess axon och dendrit.

2D Potentialen i en nervcell definieras normalt som skillnaden i spänning mellan dess axon och dendrit. 2D1432 Artificiella Neuronnät och andra lärande system Lösningsförslag till Tentamen 2003-03-06 Inga hjälpmedel. Uppgift 1 Vilka av följande påståenden är sanna? Korrigera de som är fel. 1. Potentialen

Läs mer

Fyra-i-rad med förstärkt inlärning

Fyra-i-rad med förstärkt inlärning Fyra-i-rad med förstärkt inlärning En implementation av Q-learning CHRISTOFFER JANSON och CARL LANDEFJORD Examensarbete Stockholm, Sverige 2011 Fyra-i-rad med förstärkt inlärning En implementation av Q-learning

Läs mer

Översikt. Stegvis förfining. Stegvis förfining. Dekomposition. Algoritmer. Metod för att skapa ett program från ett analyserat problem

Översikt. Stegvis förfining. Stegvis förfining. Dekomposition. Algoritmer. Metod för att skapa ett program från ett analyserat problem Översikt Stegvis förfining Pseudokod Flödesdiagram Dekomposition KISS-regeln Procedurell dekomposition DRY-regeln Algoritmer Sortering och sökning Stegvis förfining Metod för att skapa ett program från

Läs mer

Föreläsning 5: Dynamisk programmering

Föreläsning 5: Dynamisk programmering Föreläsning 5: Dynamisk programmering Vi betraktar en typ av problem vi tidigare sett: Indata: En uppsättning intervall [s i,f i ] med vikt w i. Mål: Att hitta en uppsättning icke överlappande intervall

Läs mer

Inlärning utan övervakning

Inlärning utan övervakning Översikt Biologiska mekanismer bakom inlärning Inlärning utan övervakning Inlärning utan övervakning Hebbiansk modellinlärning Självorganisering Arbetsfördelning mellan noder i ett lager som utvecklas

Läs mer

Självinlärning av fyra-i-rad. JOHAN DALENIUS och BJÖRN LÖFROTH

Självinlärning av fyra-i-rad. JOHAN DALENIUS och BJÖRN LÖFROTH Självinlärning av fyra-i-rad JOHAN DALENIUS och BJÖRN LÖFROTH Examensarbete Stockholm, Sverige 2011 Självinlärning av fyra-i-rad JOHAN DALENIUS och BJÖRN LÖFROTH Examensarbete i datalogi om 15 högskolepoäng

Läs mer

Experimentella metoder, FK3001. Datorövning: Finn ett samband

Experimentella metoder, FK3001. Datorövning: Finn ett samband Experimentella metoder, FK3001 Datorövning: Finn ett samband 1 Inledning Den här övningen går ut på att belysa hur man kan utnyttja dimensionsanalys tillsammans med mätningar för att bestämma fysikaliska

Läs mer

Word2Vec. Högkvalitativa vektorrepresentationer av ord tränat på stora mängder data. Innehåll LINKÖPINGS UNIVERSITET. 1. Inledning...

Word2Vec. Högkvalitativa vektorrepresentationer av ord tränat på stora mängder data. Innehåll LINKÖPINGS UNIVERSITET. 1. Inledning... LINKÖPINGS UNIVERSITET Innehåll 1. Inledning... 2 2. Terminologi... 3 3. Allmänt om Word2Vec... 3 4. Continous Skip-gram model... 4 Word2Vec Högkvalitativa vektorrepresentationer av ord tränat på stora

Läs mer

Artificiell intelligens

Artificiell intelligens 2013-08-13 Introduktion Artificiell intelligens Vad är AI? Olika mål Intelligenta agenter Områden inom AI Arne Jönsson HCS/IA Vad är AI? Intelligens: Förmågan till tänkande och analys (Svenska ORboken)

Läs mer

Självlärande brädspelare. EMRE BERGE ERGENEKON och ANTON JONSSON

Självlärande brädspelare. EMRE BERGE ERGENEKON och ANTON JONSSON Självlärande brädspelare EMRE BERGE ERGENEKON och ANTON JONSSON Examensarbete Stockholm, Sverige 2010 Självlärande brädspelare EMRE BERGE ERGENEKON och ANTON JONSSON Examensarbete i datalogi om 15 högskolepoäng

Läs mer

Block 5: Ickelineära. ekvationer? Läroboken. Löpsedel: Icke-lineära. ekvationer. Vad visade laborationen? Vad visade laborationen?

Block 5: Ickelineära. ekvationer? Läroboken. Löpsedel: Icke-lineära. ekvationer. Vad visade laborationen? Vad visade laborationen? Block 5: Ickelineära ekvationer Löpsedel: Icke-lineära ekvationer Varför är det svårt att lösa ickelineära ekvationer? Iterativa metoder Bisektion/intervallhalvering Newton-Raphsons metod Noggrannhet/stoppvillkor

Läs mer

Ickelinjära ekvationer

Ickelinjära ekvationer Löpsedel: Icke-linjära ekvationer Ickelinjära ekvationer Beräkningsvetenskap I Varför är det svårt att lösa icke-linjära ekvationer? Iterativa metoder Bisektion/intervallhalvering Newton-Raphsons metod

Läs mer

UPPGIFT 1 V75 FIGUR 1.

UPPGIFT 1 V75 FIGUR 1. UPPGIFT 1 V75 FIGUR 1. Varje lördag året om spelar tusentals svenskar på travspelet V75. Spelet går ut på att finna sju vinnande hästar i lika många lopp. Lopp 1: 5 7 Lopp 2: 1 3 5 7 8 11 Lopp 3: 2 9 Lopp

Läs mer

Grafer och grannmatriser

Grafer och grannmatriser Föreläsning 2, Linjär algebra IT VT2008 Som avslutning på kursen ska vi knyta samman linjär algebra med grafteori och sannolikhetsteori från första kursen. Resultatet blir så kallade slumpvandringar på

Läs mer

Manual för ett litet FEM-program i Matlab

Manual för ett litet FEM-program i Matlab KTH HÅLLFASTHETSLÄRA Manual för ett litet FEM-program i Matlab Programmet består av en m-fil med namn SMALL_FE_PROG.m och en hjälp-fil för att plotta resultat som heter PLOT_DEF.m. Input För att köra programmet

Läs mer

Artificiell intelligens, eller Kommer din dator att bli klokare än dig? (eller kanske är den redan det?)

Artificiell intelligens, eller Kommer din dator att bli klokare än dig? (eller kanske är den redan det?) Artificiell intelligens, eller Kommer din dator att bli klokare än dig? (eller kanske är den redan det?) 4e november 2014 Intelligens Vad är det? ett mänskligt egenskap Kan det jämföras? Kan det mätas?

Läs mer

UPPGIFT 1 TVÅPOTENSER. UPPGIFT 2 HISSEN I LUSTIGA HUSET.

UPPGIFT 1 TVÅPOTENSER. UPPGIFT 2 HISSEN I LUSTIGA HUSET. UPPGIFT 1 TVÅPOTENSER. 2 ½ ¾ = 5575186299632655785383929568162090376495104 n = 142 är det minsta värde på n för vilket 2 Ò inleds med siffrorna 55. Uppgiften består i att skriva ett program som tar emot

Läs mer

Icke-linjära ekvationer

Icke-linjära ekvationer stefan@it.uu.se Exempel x f ( x = e + x = 1 5 3 f ( x = x + x x+ 5= 0 f ( x, y = cos( x sin ( x + y = 1 Kan endast i undantagsfall lösas exakt Kan sakna lösning, ha en lösning, ett visst antal lösningar

Läs mer

Själv-inlärning av fyra-i-rad

Själv-inlärning av fyra-i-rad Kungl. Tekniska Högskolan CSC Själv-inlärning av fyra-i-rad (Self-learning of the Connect 4 game) Författare: Björn Löfroth (bjorn.lofroth@gmail.com) 073-813 42 85 Forskarbacken 21 lgh 1201, 114 15 Stockholm

Läs mer

Datorlaboration :: 1 Problembeskrivning ::

Datorlaboration :: 1 Problembeskrivning :: Datorlaboration :: Ett hyrbilsföretags problem Laborationen går ut på att lösa Labbuppgift 1 till 5. Laborationen redovisas individuellt genom att skicka laborationens Mathematicafil till Mikael Forsberg

Läs mer

Tentamen i Beräkningsvetenskap I/KF, 5.0 hp,

Tentamen i Beräkningsvetenskap I/KF, 5.0 hp, Uppsala universitet Institutionen för informationsteknologi Teknisk databehandling Tentamen i Beräkningsvetenskap I/KF, 5. hp, 215-3-17 Skrivtid: 14 17 (OBS! Tre timmars skrivtid!) Hjälpmedel: Bifogat

Läs mer

Fel- och störningsanalys

Fel- och störningsanalys Fel- och störningsanalys Terminologi Antag att x är ett exakt värde och x är en approximation av x. Vi kallar då absoluta felet i x = x x, relativa felet i x = x x x. Ofta känner vi inte felet precis utan

Läs mer

P(X nk 1 = j k 1,..., X n0 = j 0 ) = j 1, X n0 = j 0 ) P(X n0 = j 0 ) = etc... P(X n0 = j 0 ) ... P(X n 1

P(X nk 1 = j k 1,..., X n0 = j 0 ) = j 1, X n0 = j 0 ) P(X n0 = j 0 ) = etc... P(X n0 = j 0 ) ... P(X n 1 Kaitel 1 Mer Markovkedjor Med att secificera en Markovkedja menar vi att man bestämmer övergångsmatrisen P. Detta säger ju allt om dynamiken för rocessen. Om vi dessutom vet hur kedjan startar, dvs startfördelningen

Läs mer

Spel som interaktiva berättelser. Mer teoretiserande!

Spel som interaktiva berättelser. Mer teoretiserande! Spel som interaktiva berättelser Mer teoretiserande! Design Ett sätt att betrakta författandet av icke-linjära, interaktiva berättelser är som design. Def: Design är den process där en designer skapar

Läs mer

TDDD92 Artificiell intelligens -- projekt

TDDD92 Artificiell intelligens -- projekt jonas.kvarnstrom@liu.se 2018 TDDD92 Artificiell intelligens -- projekt Kursinformation Outline Om oss Om kursen i allmänhet Om den individuella uppgiften Om det gemensamma projektet Diskussion och frågor

Läs mer

Genetiska algoritmer. Henrik Hansson (hhn00001@student.mdh.se) Rapport, CDT212 Mälardalens Högskola

Genetiska algoritmer. Henrik Hansson (hhn00001@student.mdh.se) Rapport, CDT212 Mälardalens Högskola Genetiska algoritmer Henrik Hansson (hhn00001@student.mdh.se) Rapport, CDT212 Mälardalens Högskola 1 Sammanfattning Genetiska algoritmer har rötter i 60-talet och efterliknar evolutionsteorin på så sätt

Läs mer

Registerforskning Oktober 2018, Stockholm City Conference Centre. Möjligheter med Artificiell Intelligens inom registerforskningen

Registerforskning Oktober 2018, Stockholm City Conference Centre. Möjligheter med Artificiell Intelligens inom registerforskningen Registerforskning 2018 17 Oktober 2018, Stockholm City Conference Centre Möjligheter med Artificiell Intelligens inom registerforskningen Peter Funk Mälardalens Högskola Vem är Peter Funk? Artificiell

Läs mer