양자화 오차: 격자 사상, 오차 분산, 이상치 채널
실수를 2^b개 격자에 사상할 때 오차의 분산이 왜 Δ²/12인지 유도하고, 그것이 비트당 6.02dB라는 SNR로 번역되는 과정을 실측과 대조했습니다. 이상치 하나가 나머지 값의 유효 비트를 어떻게 먹는지, 그리고 int4에서 성능이 무너지는 지점을 오차 예산으로 미리 계산하는 법까지.
PALDYN LEARN
AI가 어떻게 작동하는지 배웁니다. 모델의 원리부터 그 아래를 떠받치는 수학, 실제로 굴리는 방법까지.
실수를 2^b개 격자에 사상할 때 오차의 분산이 왜 Δ²/12인지 유도하고, 그것이 비트당 6.02dB라는 SNR로 번역되는 과정을 실측과 대조했습니다. 이상치 하나가 나머지 값의 유효 비트를 어떻게 먹는지, 그리고 int4에서 성능이 무너지는 지점을 오차 예산으로 미리 계산하는 법까지.
최댓값 빼기, 로그 공간, log1p·expm1, 분산의 두 공식, 정규화의 ε, fp32 누산, 역행렬 대신 solve — 프레임워크가 몰래 해 주는 일곱 가지를 하나씩 꺼내 각각 어떤 고장을 막는지 직접 재 봤습니다. 수식을 그대로 옮긴 코드가 왜 라이브러리보다 나쁜지에 대한 목록입니다.
0.1 + 0.2가 0.3이 아닌 이유부터 시작해 머신 엡실론을 유도하고, 같은 16비트인데 fp16과 bf16이 서로 다른 지점에서 터지는 이유, 비슷한 수를 뺄 때 유효자리가 사라지는 파괴적 상쇄, 그리고 1,000만 개를 순서만 바꿔 더했을 때 오차가 백만 배 갈리는 실험까지 직접 재 봤습니다.
그람 행렬의 정의와 양반정치성부터 시작해, 커널이 왜 「만들지 않은 특징공간의 내적」인지를 다항 커널로 손계산해 확인하고, RBF의 γ가 유효 랭크를 어떻게 정하는지 300×300 그람 행렬로 재 봅니다. 어텐션 점수 행렬이 같은 자리에 있으면서 어디가 다른지까지.
검색 결과의 코사인 유사도가 전부 0.8 근처에 몰려 순위가 흐려지는 현상을 공분산 행렬의 고윳값 분포로 측정하고, 평균 제거와 whitening이 그 분포를 어떻게 바꾸는지 4,000개 벡터로 직접 재 봤습니다. 후처리가 무엇을 대가로 치르는지까지 숫자로 확인합니다.
무작위 초평면 하나로 두 벡터가 같은 쪽에 놓일 확률이 1 − θ/π라는 것을 유도하고, 비트 k개와 테이블 L개를 쓸 때의 1 − (1−p^k)^L 곡선에서 recall과 후보 수의 트레이드오프를 읽는 법을 정리합니다. 유도한 값을 128차원 시뮬레이션과 소수 셋째 자리까지 대조했습니다.
무작위 행렬 하나를 곱해 차원을 줄여도 모든 쌍의 거리가 (1±ε) 안에서 보존됩니다. 필요한 차원이 k = O(log n / ε²)이라는 결과와 유도 개요를 적고, 점 개수에는 로그로만 의존하고 원래 차원에는 아예 의존하지 않는다는 것을 4096차원 실험으로 확인합니다.
1024차원 임베딩 공간은 3차원과 다르게 행동합니다. 초구의 부피가 껍질로 빠져나가는 계산, 무작위 두 벡터가 거의 항상 직교하는 이유, 최근접과 최원거리의 거리 비가 1로 수렴하는 거리 집중을 시뮬레이션으로 확인하고, 그럼에도 벡터 검색이 되는 이유를 내재 차원으로 설명합니다.
두 분포를 잇는 확률 경로와 그것을 만드는 속도장을 정의하고, 조건부 흐름 매칭 목적식이 왜 주변 속도장을 학습하는지 유도합니다. 바서슈타인 거리를 KL이 못 하는 자리에서 정의하고, 짝짓기를 최적수송으로 바꾸면 오일러 한 스텝이 곧 바닥이 되는 것을 1차원에서 확인합니다.
guidance_scale=7.5의 7.5가 무엇을 곱하는 숫자인지 유도합니다. 두 노이즈 예측의 차를 w배 미는 한 줄이 조건부 분포를 p(y|x)^w로 기울이는 것과 같음을 스코어 공간에서 보이고, w를 올리면 왜 선명해지다가 채도와 다양성이 무너지는지를 정확히 풀리는 가우시안 예제로 계산합니다.
num_inference_steps를 20에서 50으로 올리면 왜 그림이 나아질까요. 확산을 연속시간 SDE로 적고 대응하는 확률 흐름 ODE를 세운 뒤, 오일러 이산화의 국소·전역 오차 차수를 유도하고 DDIM이 왜 결정적인지, 고차 solver가 무엇을 벌고 무엇을 치르는지를 계산으로 답합니다.
확산 모델의 손실은 잡음의 MSE 한 줄인데 왜 그것이 분포를 배우는 일이 될까요. 스코어 함수의 정의와 정규화 상수가 미분에서 사라지는 성질, 가우시안 스코어가 −(x−μ)/σ²라는 계산, 그리고 ε 예측과 스코어가 상수배로 이어진다는 denoising score matching의 유도를 수치로 확인합니다.
VAE 손실이 재구성 항과 KL 항의 합인 이유를 끝까지 유도합니다. log p(x) = ELBO + KL(q‖사후분포)라는 분해를 젠센 부등식과 KL 정의 두 경로로 세우고, 하한이 얼마나 헐거운지를 무엇이 정하는지, VAE와 확산과 EM이 왜 같은 뼈대 위에 있는지를 장난감 모형의 숫자로 확인합니다.
x = μ + σz라는 한 줄이 표집을 미분 가능하게 만듭니다. 이 추정량이 로그 미분 트릭보다 왜 분산이 작은지를 차원별로 재 보고, 가우시안을 t번 더한 결과가 다시 가우시안이라는 성질로 q(x_t|x_0)의 폐형을 유도해 임의의 t에서 학습이 가능해지는 이유까지 따라갑니다.
PPO 로그의 clip_frac과 approx_kl은 왜 나란히 찍힐까요. 중요도 표집이 왜 불편추정량인지, 두 분포가 멀어질 때 유효 표본 수가 왜 지수적으로 무너지는지를 e^(Δ²) 계산으로 확인하고, clip이 목적함수를 조각별 선형으로 바꿔 한 걸음을 막는 방식까지 따라갑니다.
KL 벌점이 붙은 보상 최대화는 반복 없이 답이 나옵니다. 최적 정책이 참조 모델을 exp(r/β)로 기울인 볼츠만 분포임을 유도하고, 그 식을 보상에 대해 뒤집어 Bradley-Terry 손실에 넣으면 분배함수가 소거되며 DPO 손실이 남는 과정을 끝까지 따라갑니다.
RLHF 설정 파일에는 KL 예산이 아니라 kl_coef 라는 계수가 적혀 있습니다. 「예산 안에서 최대화한다」가 어떻게 「벌점을 붙여 최대화한다」로 바뀌는지를 라그랑주 승수의 기하로 설명하고, 부등식 제약의 KKT 조건과 상보 여유, 그리고 승수가 예산 한 단위의 가격이라는 해석까지 손계산으로 확인합니다.
보상 모델 학습 코드의 손실은 −logsigmoid(r_w − r_l) 한 줄입니다. 「A가 B보다 낫다」는 라벨만으로 실수 점수를 배우는 그 식이 Bradley-Terry 모델에 최대가능도를 적용한 결과임을 유도하고, 보상의 절대값에 왜 의미가 없는지, 비교 n개로 재는 점수차의 오차가 얼마인지를 계산합니다.
GRPO 코드는 점수에서 그룹 평균을 빼고 시작합니다. 점수를 바꿔 놓고도 배우는 방향이 그대로인 근거는 E[∇log π] = 0이라는 한 줄짜리 보조정리입니다. 그 증명과 분산을 최소로 만드는 베이스라인의 유도, 그리고 그룹 평균을 쓸 때 그래디언트가 정확히 (1−1/G)배가 되는 계산까지 따라갑니다.
RLHF 학습 루프의 손실은 로그 확률에 점수를 곱한 한 줄입니다. 그 한 줄이 어디서 나왔는지를 ∇E[f] = E[f·∇log p]라는 항등식의 유도로 따라가고, 이것이 언제 깨지는지, 왜 불편 추정량인데도 분산이 큰지, 이산 토큰에서는 왜 이 길밖에 없는지를 계산으로 확인합니다.
지도 미세조정은 정답 라벨과 손실 한 줄이면 끝나지만 「좋은 답을 내게 한다」에는 라벨이 없습니다. J(θ) = E[r(y)]라는 목적식을 세우고, 기댓값을 취하는 분포 자체가 θ에 의존한다는 한 가지 차이가 왜 그래디언트를 기댓값 안으로 넣지 못하게 만드는지, 유한차분으로 때우려면 표본이 얼마나 드는지를 계산합니다.
뉴턴 갱신 −H⁻¹∇f를 2차 테일러 근사에서 유도하고, 이차수렴이 실제로 무엇을 뜻하는지 계산으로 봅니다. 그런 다음 7B 모델에서 헤세가 196엑사바이트라는 비용을 계산하고, 헤세를 만들지 않고 헤세-벡터 곱만으로 2차 정보를 쓰는 길, 그리고 Adam·K-FAC·Shampoo·Muon이 각각 그 행렬의 어느 부분을 남긴 것인지 정리합니다.
가중치를 무엇으로 채우느냐가 50층 뒤에서 40자릿수 차이를 만듭니다. 한 층을 지날 때 활성값의 분산이 어떻게 변하는지 유도하고, 순전파와 역전파 양쪽 조건에서 Xavier와 He를 끌어냅니다. 잔차 연결과 정규화가 지수 폭발을 어떻게 없애는지, 폭이 커질 때 학습률까지 함께 옮겨야 하는 이유도 계산으로 확인합니다.
미니배치 그래디언트의 분산이 σ²/B라는 한 줄에서 학습 설정 대부분이 따라 나옵니다. SGD의 선형 스케일링과 Adam의 제곱근 스케일링, 임계 배치 크기를 두 배치로 재는 법, 워밍업과 감쇠가 각각 무엇을 고치는지를 계산과 시뮬레이션으로 따라갑니다.