본문 바로가기

공부 정리28

[딥러닝2]신경망의 순전파 저번 포스팅에서는 단층 퍼셉트론의 기본 개념과 한계에 대해 살펴보았고, 비선형 문제를 해결하기위해 다층 퍼셉트론이 필요함을 이해했습니다. 이번 페이지에서는 신경망의 순전파, 즉 주어진 입력에 대해 신경망의 최종적인 예측까지의 과정을 살펴보겠습니다.신경망의 구현 신경망은 입력층, 은닉층, 출력층의 세 부분으로 구성됩니다. 각 층(Layer)은 뉴런(노드)으로 이루어져있으며, 뉴런은 다수의 신호를 입력으로 받아 정보를 처리하고 다음층의 뉴런으로 신호를 전달합니다.입력층신경망의 첫번째 층으로 일반적으로 0층으로 칭해집니다. 입력층의 뉴런수는 신경망으로 들어오는 입력 데이터의 특성(feature)수와 같은데 예를들어 28x28픽셀 크기의 이미지를 입력으로받는 신경망의 경우, 입력층에 784(28x28)개의 노드.. 2024. 1. 8.
[딥러닝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.
[강화학습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.
큰수의 법칙(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.
[강화학습5]최적 정책(Optimal Policy) 최적정책에 대한 정의는 다음과 같이 내릴 수 있다. $$\pi^* \geq \pi \iff v_{\pi^*}(s) \geq v_{\pi}(s) , \forall s \in S$$ 이번 포스팅에서는 최적정책의 존재에 대해서 증명해보려고 한다. 벨만최적방정식(Bellman optimality equation) $$v^*(s) = v_{\pi^*}(s)$$ $v^*(s)$를 최적가치(Optimal value)라고 한다 $v^*(s)$는 $v_{\pi}(s)$중 최대 가치를 가져야 한다. 그러므로 가장 큰 $q^*(s, a)$를 가지는 행동을 선택해야 한다. $$v^*(s) = \underset {a}{\max} q^*(s, a)$$ $$q^*(s, a) = R(s, a) + \gamma \sum_{s'} P(.. 2023. 10. 9.