전체 글48 [딥러닝1]퍼셉트론 이 포스팅 시리즈는 딥러닝에 대해 깊이 있게 이해하고자 하는 여정의 일환으로 작성되었습니다. "밑바닥부터 시작하는 딥러닝 1"이라는 책을 베이스로 공부했으며, 학습 중에 생기는 추가적인 궁금증은 chatgpt, 구글링, 유튜브 등 등 모든 방면으로 해소하고자 노력했습니다. 만약 내용 중 잘못된 부분을 발견하시면, 댓글로 알려주시면 매우 감사하겠습니다.퍼셉트론의 정의퍼셉트론(Perceptron)은 1957년에 Frank Rosenblatt에 의해 처음 발명되었으며, 다수의 신호를 입력으로 받아 하나의 신호를 출력하는 신경망의 매우 단순한 형태이다.[그림 1] 여기 2개의 입력신호를 받는 퍼셉트론의 예시가 있다. $x_1$과 $x_2$는 입력 신호이며, 각각의 신호는 가중치 $w_1$과 $w_2$에 의해 .. 2023. 12. 26. [강화학습10]DQN(Deep Q-Network) 새로운 방법론의 필요성 지금까지 배운 강화학습 지식을 이용해 어떤 문제에 대해 강화학습 알고리즘을 적용하고 싶다면 다음과 같은 결정트리(Decision Tree)를 이용할 수 있다. 우리는 지금까지 MDP의 크기가 작을 때 적용할 수 있는 테이블 기반 방법론에 대해 배웠다. MDP의 크기가 클 때 테이블 기반 방법론을 사용하지 못하는 이유는 간단하다. 테이블을 만들 수 없기 때문이다. 예를 들어 바둑의 고유한 상태의 개수는 $10^{170}$개이고 $10^{170}$B를 저장할 수 있는 컴퓨터는 아직 이 세상에 없다. 만약 $10^{170}$개의 상태를 저장할 수 있다고 해도 제대로 된 학습이 이루어지기 위해서는 각상태를 여러 번 방문해봐야 한다. 따라서 MDP의 크기가 큰 경우에는 새로운 방법론이 필요.. 2023. 12. 20. Q-learning 기반 틱택토 강화학습 모델 개발 들어가기 전에...여태까지 강화학습 전반에대해 학습한 내용을 기반으로 틱택토 게임을 플레이하는 강화학습 모델을 개발해보았습니다. 틱택토 게임을 선택한 이유는 다음과 같습니다.1. 틱택도 게임특성상 가능한 경우의수가 많지않아 모든 Q value를 Q table에 표시할수있습니다.2. 나중에 구현하고자 하는 오목 강화학습 모델이나 바둑 강화학습 모델과 마찬가지로 1대1 보드게임이라는 환경적인 유사성이 있어 향후 프로젝트에 도움이 될것이라 판단했습니다. 전체코드는 포스팅말미의 깃허브주소를 참고해주세요.구현 목표1. 실제 틱택토 게임을 만든후, 강화학습모델과 연동시켜 사람과 틱택토 모델간의 대국이 가능하게 구현하는것(play기능).2. 에피소드가 진행되며 발전하는 에이전트를 확인할수있도록 구현하는것(repla.. 2023. 12. 15. [강화학습9]Q-learning 저번 포스팅에서는 MC와 TD를 이용한 강화학습 방법들에 대해서 다뤘다. 이번포스팅에서는 On-Policy와 Off-Policy라는 새로운 개념을 소개하고 이를 활용한 새로운 강화학습 방법에 대해서 다뤄본다. SARSA의 문제점 SARSA는 한 가지 단점을 가지고 있는데, 바로 탐험이 가치함수 업데이트에 직접적인 영향을 미친 다는 점이다. 이는 정확한 정책평가를 하는 데 있어서 방해가 된다. 비유를 들어보면 다음과 같다. 철수는 강화학습 에이전트로. SARSA알고리즘을 통해 학습을 진행하고 있다. 학교상태$S$에서 열심히 공부하는 행동$A$를 선택하여 즉시보상$R$을 얻고 선생님께 칭찬을 받는 상태$S'$로 전이되었다. 다만 원래계획은 선생님께 감사의 표시를 하는 행동$A'$를 취하는 것이었지만 $\ep.. 2023. 12. 5. [강화학습8]SARSA 저번 포스팅에서는 model-free환경에서 정책$\pi$에 대해 가치추정을 할 수 있는 방법인 MC와 TD에 대해서 알아보았다. 이제 우리의 목표는 저 두 방법을 활용해 최적정책$\pi^*$를 찾는 것이다. MC를 활용한 정책반복 예전포스팅에서 다룬 정책 반복은, 정책 평가와 정책 개선을 반복적으로 수행하며 최적정책을 찾는 방법이다. MC는 정책평가단계의 기존 방법을 대체할 수 있다. 다만 정책개선 단계 쪽에 작은 문제가 있다. 새로운 정책$\pi'$는 각 상태 $s$에서 $q_{\pi}(s, a)$를 최대화하는 행동 $a$를 선택하는데. 수식으로 표현하면 다음과 같다. $$\pi'(s) = \underset {a}{\text {argmax}} \, \, q_{\pi}(s, a), \forall s \.. 2023. 12. 3. [강화학습7] MC(Monte Carlo Methods)와 TD(Temporal Difference Learning) 이번 포스팅에서는 MC와 TD에 대해서 알아보도록 하자. 두 방법 모두 model-free일 때 가치 추정을 할 수 있게 해 준다. model-based와 model-free 이번 포스팅에서는 에이전트가 MDP의 구조를 알지 못할 때 어떻게 가치를 추정하는지에 대해 이야기해보려고 한다. '에이전트가 MDP를 모른다'는 것은 에이전트가 자신의 행동에 대해 환경이 어떻게 반응할지 알지 못한다는 의미이다. 이런 상황을 model-free라고 부르며, 반대로 에이전트가 MDP를 알고 있는 상황은 model-based라고 부른다. 몬테카를로 방법(Monte Carlo Methods, MC) 100원짜리 동전을 던졌을 때 앞면이 나온다면 동전을 갖고 뒷면이 나오면 가질 수 없다고 가정해 보자. 우리는 정확한 확률은.. 2023. 12. 1. 유니티 에디터 설치 오류 Install failed: Validation Failed 해결방법 아쉽게도 이 문제가 발생하는 원인은 여전히 알지못하지만 아래의 소개하는 방법을 통해 해결할수있었다해결방법 요약Unity Hub에서 에디터 설치하지 말고 https://unity.com/releases/editor/archive에서 수동 설치하면 된다상세 해결방법1. Unity Hub가 설치되어 있는 상태에서 https://unity.com/releases/editor/archive클릭2. 원하는 에디터 버전의 "Unity Editor 64-bit" 클릭(클릭하면 바로 자동 다운로드 진행됨)3. 다운로드 완료된 셋업파일 실행4. 에디터 파일 설치위치 기억해 놓자5. Locate 클릭 후 아까 기억한 에디터 파일의 설치위치의 unity.exe 파일을 선택해 주면 된다 2023. 11. 24. 큰수의 법칙(Law of Large Numbers) 큰수의 법칙은 기본적으로 "반복 횟수가 많아질수록 결과가 실제 값에 접근한다"는 아이디어를 나타냅니다. 예를 들어 동전 던지기를 생각해 볼 때, 동전을 단 한 번 던지면 앞면이 나올지 뒷면이 나올지 예측하기 어렵습니다. 그러나 동전을 100번, 1000번, 또는 그보다 더 많이 던지면, 앞면과 뒷면이 나오는 횟수가 점점 비슷해지는 경향을 보일 것입니다. 이처럼, 시도를 많이 할수록 표본 평균이 실제 평균(모평균)에 접근하는 현상을 큰수의 법칙이라고 합니다.큰수의 법칙에는 더 세부적으로 약한 큰수의 법칙과 강한 큰수의 법칙이라는 두 가지 형태가 있습니다. 이 두 개념은 서로 유사하지만, 몇 가지 중요한 차이점도 가지고 있습니다. 이제 이 두 법칙의 수학적 표현을 살펴보고, 그 증명에 대해서도 탐구해 보겠습.. 2023. 11. 16. [강화학습6]정책 반복(Policy Iteration) 정책반복은 가치반복과 마찬가지로 강화학습 알고리즘 중 하나이다. 정책반복은 다음과 같은 절차로 진행된다. 초기정책 설정 모든 상태에 대해 임의의 행동을 선택하는 정책을 설정한다. 정책 평가 모든 상태가치를 0으로 초기화한다. 가치함수의 업데이트는 벨만 기대방정식을 사용하여 수행된다. 업데이트는 다음수식을 사용하여 계산된다. $$ v_{k+1}(s) = \sum_{a}\pi(a \mid s) \sum_{s', r} P(s', r \mid s, a) [ r + \gamma v_k(s') ]$$ $k$번의 반복을 거치면서 $v_k$는 실제 가치함수에 점점더 가까워지게 된다. 이과정에 대한 증명은 전포스팅의 가치반복 증명과정과 유사해 생략했다. 가치함수의 변화가 특정 임계값보다 작아지면, 정책평가 과정을 종료한.. 2023. 10. 25. 이전 1 2 3 4 5 6 다음