๋ถ๋ฅ ์ ์ฒด๋ณด๊ธฐ72 ๊ฐํํ์ต ๋ณต์ต ์๋ฃ 3: Exploit & Exploration ๊ทธ๋ ๋ค๋ฉด, ์ด ์๊ณ ๋ฆฌ์ฆ์์ "Select an action a"์์ ์ด๋ค action์ ์ ํํด์ผํ ๊น? ๋ต์ ์ด๋ค. Exploit์ ์ด๋ฏธ ์๋ ๊ฐ์ ํ์ฉํ๋ ๊ฒ์ด๊ณ Exploration์ randomํ๊ฒ ๋ชจํํ๋ ๊ฒ์ด๋ผ ํ ์ ์๋ค. ์๋ ๊ฐ์ ํ์ฉํ๋ ๊ฒ์ ์ข์ง๋ง, ๋ณด๋ค ํจ์จ์ ์ธ ํด๋ต์ ์ฐพ๊ธฐ ์ํด์๋ ๋ชจ๋ฅด๋ ๊ธธ๋ก ๊ฐ ๋ณผ ํ์์ฑ์ด ์๊ธฐ ๋๋ฌธ์ด๋ค. ์ฒซ ๋ฒ์งธ ๋ฐฉ๋ฒ์ E-greedy ๋ฐฉ๋ฒ์ด๋ค. ์์ ๊ฐ e๋ฅผ ์ค์ ํ๊ณ , e์ ํ๋ฅ ๋ก Exploration ํ๋ฉฐ ๋๋จธ์ง๋ Exploit ํ๋ค. # 1-1) E-greedy e = 0.1 if rand < e: a = random else: a = argmax(Q(s, a)) ๋ค๋ง ๊ฐ ์๋ก e๊ฐ์ ์๊ฒํ์ฌ Exploratio.. 2022. 3. 12. ๊ฐํํ์ต ๋ณต์ต ์๋ฃ 2: Dummy Q-learning algorithm Q-learning์ ๊ธฐ๋ณธ ์์ ์ด๋์ด ๋ด๊ธฐ ์ํด ํ '๋ฏฟ์'์ ์ดํด๋ณด์. 1. ๋จผ์ ๋๋ s์ ์๊ณ 2. action a๋ฅผ ์ทจํ๋ฉด s'์ผ๋ก ์ด๋ํ๋ฉฐ reward r์ ๋ฐ๋๋ค. ์ฌ๊ธฐ์, s'์ Q๊ฐ ์๋ค๊ณ ๋ฏฟ์. s'์ Q๊ฐ ์๋ค๊ณ ๋ฏฟ์๋ ๊ฒ์ ์๋ฏธ๋ ์๋ง๋ (s์์ a๋ฅผ ์ทจํด ๋ณํ state) s'์์ ์ด๋ค action์ ์ทจํด์ ๋ฐ์ reward๋ฅผ ์๊ณ ์๋ค๊ณ ๊ฐ์ ํ์๋ ๊ฒ์ธ ๊ฒ ๊ฐ๋ค. (ํน์ action์ด๋ผ๊ธฐ ๋ณด๋ค ๊ทธ ์ด๋ค action์ ๋ํ reward๋ผ๋) ์ด์ Q(s, a)๋ฅผ Q(s', a')์ ์ด์ฉํด ๋ํ๋ด๋ณด๋ฉด, Q(s, a) = r + max(a') Q(s', a') r์ s์์ a๋ฅผ ์ทจํด ์ฆ๊ฐ์ ์ผ๋ก ์ป์ reward์ด๋ฉฐ max(a') Q(s', a')์ ๊ทธ ์ดํ ๋จ๊ณ์์ ์ป์ ์ต๋ rewa.. 2022. 3. 12. ๊ฐํํ์ต ๋ณต์ต ์๋ฃ 1: Concept of RL ๊ฐํํ์ต์ ๊ธฐ๋ณธ์ ์ผ๋ก, ์ฅ(Actor ํน์ Agent)๊ฐ action์ ์ทจํ๋ฉด ๊ทธ์ ๋ฐ๋ฅธ reward๋ฅผ ๋ฐ๊ณ , ๋ณํ๋ state๋ฅผ ๊ด์ฐฐํ์ฌ ๋ค์ action์ ์ทจํ๋ ๋ฐฉ์์ด๋ค. Q ํจ์์ state์ action์ ์ฃผ๋ฉด, ๊ทธ์ ๋ฐ๋ฅธ reward๋ฅผ ๋ฆฌํดํ๋ค๊ณ ์๊ฐํ์. (๊ทธ๋ฌํ Q ํ๋์ด ์๋ค๊ณ ๊ฐ์ ํ์.) Agent๊ฐ ์๊ณ ์ถ์ ๊ฒ์ ์ต๋ reward๋ฅผ ๋ง๋๋ action์ด๋ค. ์ด ๋ด์ฉ์ ๋ค์ ๋ ์ํ์ ํ๊ธฐ๋ก ๋ํ๋ผ ์ ์๋ค. max(a') Q(s, a') : s ๋ผ๋ state์ a'์ ๋ฐ๊พธ์ด ์ค์ผ๋ก์จ ์ป์ ์ ์๋ ์ต๋ reward๊ฐ (Q๊ฐ) argmax(a') Q(s, a'): (์์ ์ด์ด์ง๋ ์ํฉ์์) ์ต๋ Q๊ฐ์ ๊ฐ๊ฒํ๋ argument a' Reference: Sung Kim ๋ชจ๋๋ฅผ ์ํ R.. 2022. 3. 12. django ์์ํ๊ธฐ 1. pipenv shell (๋ฒ๋ธ ์์ผ๋ก ๋ค์ด๊ฐ๊ธฐ) 2. python3 manage.py runserver 3. Ctrl+C๋ก ์๋ฒํฌํ๊ณ python3 manage.py migrate 4. python3 manage.py createsuperuser 5. python3 manage.py runserver๋ก ์๋ฒ ๊ตฌ๋ํ๋ฉด 127.0.0.1:8000/localhost ์์ ๋ก๊ทธ์ธ ๊ฐ๋ฅ => ๊ด๋ฆฌ์ ํจ๋ ์ฌ์ฉ ๊ฐ๋ฅ 2022. 1. 4. ์ด์ 1 2 3 4 5 6 ยทยทยท 18 ๋ค์