두 정규분포 N(μ, σ²)와 N(0, 1) 사이의 KL 발산 유도

두 정규분포 N(μ, σ²)와 N(0, 1) 사이의 KL 발산 유도 ... # 대충 인코더 구현부 ... self.mu = tf.layers.dense(h, self.z_size, name="enc_fc_mu") self.logvar = tf.layers.dense(h, self.z_size, name="enc_fc_log_var") self.sigma = tf.exp(self.logvar / 2.0) self.epsilon = tf.random_normal([self.batch_size, self.z_size]) self.z = self.mu + self.sigma * self.epsilon # 대충 디코더...

더보기

PPO 알고리즘

PPO 알고리즘 PPO(Proximal Policy Optimization) 알고리즘은 2017년 OpenAI에서 발표한 정책 최적화 알고리즘이다. PPO는 TRPO의 복잡한 계산을 단순화하면서도 성능을 유지하여, 현재 가장 널리 사용된다. 중요도 샘플링(Importance Sampling)의 활용 중요도 샘플링의 개념과 필요성 중요도 샘플링은 한 확률 분포(q)에서 얻은 샘플을 사용하여 다른 확률 분포(p)에 대한 기대값을 추정하는 통계적 기법이다. 기본 아이디어는 다음과 같다: \[\mathbb{E}_{p}[f(x)] = \int f(x) p(x) \, dx = \int f(x) \frac{p(x)}{...

더보기

엔트로피 정규화

엔트로피 정규화 강화학습의 핵심 과제 중 하나는 탐색(exploration)과 활용(exploitation) 사이의 적절한 균형을 찾는 것이다. 에이전트는 이미 알고 있는 좋은 전략을 활용하는 동시에, 더 나은 전략을 발견하기 위해 새로운 행동을 탐색해야 한다. 이 글에서는 엔트로피를 활용하여 탐색을 장려하는 방법에 대해 알아본다. 정책 엔트로피의 개념 정보이론에서 엔트로피는 불확실성 또는 랜덤성의 척도다. 강화학습 맥락에서 정책 엔트로피는 에이전트의 정책이 얼마나 확률적인지, 즉 행동 선택이 얼마나 무작위적인지를 측정한다. 정책 엔트로피의 수학적 정의는 다음과 같다: \[H(\pi(·\mid s)) = ...

더보기

유나이트 서울 2025 - Mobile native debugging and ANR

유나이트 서울 2025 - Mobile native debugging and ANR 유니티 코리아 유나이트 2025 서울 행사에 참석했다. 이 포스트는 “Mobile Native Debugging and ANR” 강연 내용을 정리한 것이다. ANR(Application Not Responding)은 모바일 게임 개발에서 가장 골치 아픈 문제 중 하나다. 이 글이 ANR 문제로 고민하는 모든 개발자들에게 실질적인 도움이 되길 바란다. 들어가며 ANR의 정의와 특징 ANR은 애플리케이션이 특정 작업을 지정된 시간 안에 완료하지 못할 때 OS에서 보고하는 현상이다. iOS에서는 App Freezing이라는 용어...

더보기

GAE

GAE: 일반화된 어드밴티지 추정 GAE(Generalized Advantage Estimation)는 강화학습에서 어드밴티지 함수를 효과적으로 추정하는 방법론이다. 이 방법은 특히 A2C(Advantage Actor-Critic)와 같은 Actor-Critic 알고리즘에서 핵심적인 역할을 하며, 정책 그래디언트의 분산을 줄이면서도 편향을 적절히 제어하는 균형점을 제공한다. 어드밴티지 함수 강화학습에서 어드밴티지 함수(Advantage Function)는 특정 상태에서 특정 행동의 상대적 가치를 측정한다. 어드밴티지 함수는 기본적으로 다음과 같이 정의된다: \[A(s, a) = Q(s, a) - V(s)\]...

더보기

A2C 알고리즘

A2C 알고리즘 A2C(Advantage Actor-Critic) 알고리즘은 정책 그래디언트 기법과 가치 함수 근사를 결합한 강화학습 알고리즘이다. 이 알고리즘은 Policy Gradient Theorem을 기반으로 하며, REINFORCE 알고리즘의 높은 분산 문제를 개선하고, 심층신경망의 파라미터($\theta$)를 조정하여 정책을 최적화한다. REINFORCE의 한계와 A2C REINFORCE와 같은 기존 정책 그래디언트 알고리즘에는 두 가지 주요 단점이 있다: 그래디언트 추정의 분산이 높아 학습이 불안정하다. 에피소드가 완전히 끝나야만 정책을 업데이트할 수 있다. A2C는 이러한 한계를 ...

더보기

REINFORCE 알고리즘

REINFORCE 알고리즘 REINFORCE 알고리즘은 Policy Gradient Theorem을 실제로 구현한 몬테카를로 기반의 정책 최적화 방법이다. 이 알고리즘은 실제 경험에서 얻은 데이터를 활용하여 정책 파라미터를 직접 최적화한다. REINFORCE의 핵심 원리 REINFORCE 알고리즘은 Policy Gradient Theorem의 다음 식을 근간으로 한다: \[\nabla_\theta J(\theta) = \mathbb{E}_{\tau \sim \pi_\theta} \left[ \sum_{t=0}^{T-1} Q^{\pi_\theta}(s_t, a_t) \nabla_\theta \log \pi_\...

더보기

Policy Gradient Theorem

Policy Gradient Theorem Policy Gradient Theorem은 강화학습에서 정책 파라미터에 대한 목적 함수의 그래디언트를 계산 가능한 형태로 표현한다. 이를 통해 에이전트가 환경과 상호작용하며 얻는 보상을 최대화하는 정책을 최적화할 수 있다. 이 정리는 REINFORCE, Actor-Critic, PPO 같은 알고리즘의 수학적 기반이 된다. 정책 최적화의 목표 강화학습에서 우리는 에이전트가 환경과 상호작용하면서 받는 보상을 최대화하는 정책을 찾고자 한다. 정책은 파라미터 $\theta$로 표현되는 함수 $\pi_\theta(a\mid s)$로 정의된다. 이는 상태 $s$에서 행동 $a...

더보기