본문 바로가기

전체 글

TRPO Mixture Policy Bound에서 General Stochastic Policy Bound로 확장 Mixture Policy Bound에서 General Stochastic Policy Bound로 확장핵심은 3번식(Mixture Policy Bound)\[ \eta(\pi_{\alpha}) \ge L_{\pi_{\text{old}}}(\pi_{\alpha}) - \frac{2\epsilon\gamma}{(1-\gamma)^2}\alpha^2 \]\(\alpha\)와 4번식(General Stochastic Policy Bound) \[ \eta(\pi) \ge L_{\pi_{\text{old}}}(\pi) - \frac{4\epsilon\gamma}{(1-\gamma)^2} \alpha^2 \]의 \(\alpha\)가 의미가 다르다는 점입니다.3번식의 \(\alpha\)는 mixture 비율입니다... 더보기
Total Variation Distance와 KL Divergence의 관계 증명 Total Variation Distance와 KL Divergence의 관계보통 total variation distance와 KL divergence를 다음과 같이 정의합니다.\[D_{\mathrm{TV}}(p,q)=\frac{1}{2}\sum_x |p(x)-q(x)|\]\[D_{\mathrm{KL}}(p\|q)=\sum_x p(x)\log\frac{p(x)}{q(x)}\]여기서 로그는 자연로그라고 하겠습니다.이때 다음 부등식이 성립합니다.\[D_{\mathrm{TV}}(p,q)^2\le\frac{1}{2}D_{\mathrm{KL}}(p\|q)\]따라서 더 약한 형태인 다음 식도 당연히 성립합니다.\[D_{\mathrm{TV}}(p,q)^2\leD_{\mathrm{KL}}(p\|q)\]이 부등식을 P.. 더보기
TRPO Conservative Policy Iteration, CPI에서 나오는 성능 하한식 Conservative Policy Iteration의 성능 하한식 유도Conservative Policy Iteration, CPI에서 나오는 성능 하한식의 핵심은 다음과 같습니다.\[ \pi_{\alpha}(a|s) = (1-\alpha)\pi_{\text{old}}(a|s) + \alpha \pi'(a|s) \]그리고 이때 다음과 같은 하한식이 성립합니다.\[ \eta(\pi_{\alpha}) \ge L_{\pi_{\text{old}}}(\pi_{\alpha}) - \frac{2\epsilon\gamma}{(1-\gamma)^2}\alpha^2 \]여기서 중요한 점은 이 식이 새 정책의 실제 성능 \(\eta(\pi_\alpha)\)이 old policy 기준으로 계산한 surrogate objec.. 더보기
TD 법에서 Bellman 식과 조건부기댓값 정리 TD 법에서 Bellman 식과 조건부기댓값 정리 먼저 사용자가 보는 기준식은 다음과 같습니다. \[ v_\pi(s) = \sum_a \pi(a \mid s) \sum_{s'} p(s' \mid s,a) \left[ \bar r(s,a,s') + \gamma v_\pi(s') \right] \] 여기서 평균 보상은 다음과 같이 정의합니다. \[ \bar r(s,a,s') = \mathbb{E} \left[ R_t \mid S_t=s,\, A_t=a,\, S_{t+1}=s' \right] \] 1. 정책까지 포함한 다음 상태 확률 정책까지 포함한 다음 .. 더보기
변이형 오토인코더에서ELBO 최적화를 할때ELBO(x;\theta ;\pi)의 값을 구할때 왜 q_\pi (z | x)가 쓰이나? VAE에서 ELBO 최적화 시 \(q_{\pi}(z|x)\)가 사용되는 이유『밑바닥부터 시작하는 딥러닝 5』 7장에서는 변이형 오토인코더(VAE)를 다룹니다. 공부하시다 보면 이전 EM 알고리즘 설명에서는 (q(z))를 사용했는데, 왜 VAE의 ELBO 수식에서는 \(q_{\pi}(z|x)\)가 쓰이는지 의문이 생길 수 있습니다. 이는 모델이 잠재 변수를 처리하는 '방식의 차이' 때문입니다.1. EM 알고리즘의 방식: 개별 최적화 (Local Inference)전통적인 EM 알고리즘이나 변분 추론에서는 각 데이터 \(x_i\)마다 그에 대응하는 최적의 잠재 변수 분포 \(q(z_i)\)를 개별적으로 찾아야 합니다.데이터가 1,000개라면 1,000개의 서로 다른 \(q(z)\)를 최적화해야 합니다.새로운.. 더보기
ArcFace ArcFace: Additive Angular Margin LossClassification 모델을 학습할 때 주로 사용하는 Softmax loss는 아래와 같습니다.$$L = -\frac{1}{N} \sum_{i=1}^{N} \log \frac{e^{W_{y_i}^T x_i + b_{y_i}}}{\sum_{j=1}^{n} e^{W_j^T x_i + b_j}}$$\(x_i\): \(i\)-th sample에 대한 feature vector (\(y_i\)-th class)\(W_{y_i}\): \(y_i\)에 해당하는 weight vector (각 class의 center vector 의미)\(W_{y_i}^T x_i\): Logit기존 Softmax는 intra-class(동일 클래스) 샘플 간 높은 .. 더보기
자코비안 행렬의 평행사변형 넓이 |ad-bc| 증명 증명은 “평행사변형 넓이 = 밑변 \(\times\) 높이”로 깔끔하게 됩니다. 두 변을 열벡터로 두자:$$ \mathbf{u}=(a,c),\quad \mathbf{v}=(b,d) $$이 두 벡터가 만드는 평행사변형의 넓이를 \(S\)라 하자.1) 밑변 길이$$ |\mathbf{u}|=\sqrt{a^2+c^2} $$2) 높이 = \(\mathbf{v}\)의 \(\mathbf{u}\)에 수직인 성분 크기\(\mathbf{v}\)를 \(\mathbf{u}\) 방향 성분 + 수직 성분으로 분해하면,\(\mathbf{u}\) 방향 성분 크기(스칼라 투영): $$ \mathrm{proj}_{\mathbf{u}}\mathbf{v}=\frac{\mathbf{u}\cdot \mathbf{v}}{|\mathbf{u}|}.. 더보기
KVO 예제 cocoa 프로그래밍을 하면서 KVO 예제를 swift로 작성해 보기로 하였다. 원래 책은 Objective-C로 되어 있는데, 요즘은 대세가 swift니 한번 작성해 보자.일단 작성하고 실행 해보니 실행이 안된다.아마도 Bind 시에 옵션 설정이 잘 못 된 것 같다.Bind to 를 첵크하고, Model Key Path를 fido로 설정 하였다.그 다음 문제는 예전 설정 값을 프로그램 실행 때 마다 다시 가지고 실행이 되는 것이 문제이다.아래와 같이 코드로 바인딩하는 것으로 바꾸었다. //// ViewController.swift// KvcFun//// Created by headway on 2025/11/10.// import Cocoa class ViewController: NSViewCont.. 더보기