Bias-Variance Tradeoff
$$ \begin{align*} \mathbb{E}\mathcal{D} \left[ (g^{(\mathcal{D})}(\mathbf{x}) - f(\mathbf{x}))^2 \right] &= \mathbb{E}\mathcal{D} \left[ (g^{(\mathcal{D})}(\mathbf{x}) - \bar g(\mathbf x) + \bar g(\mathbf x) - f(\mathbf{x}))^2 \right] \\ &= \mathbb{E}\mathcal{D}\left[ (g^{(\mathcal{D})}(\mathbf{x}) - \bar g(\mathbf x))^2 + (\bar g(\mathbf x) - f(\mathbf{x}))^2 \right. \\ & \left. \space \space \space \space \space \space \space \space \space \space \space + 2(g^{(\mathcal{D})}(\mathbf{x}) - \bar g(\mathbf x))(\bar g(\mathbf x) - f(\mathbf{x})) \right] \\ &= \mathbb{E}\mathcal{D} \left[ (g^{(\mathcal{D})}(\mathbf{x}) - \bar g(\mathbf x))^2 \right] + (\bar g(\mathbf x) - f(\mathbf{x}))^2 \end{align*} $$
수식적으로는 특정 데이터 분포 $\mathcal{D}$가 주어졌을 때, $g^{(\mathcal{D})}$는 해당 데이터를 모델링한 것이고 $\bar{g}$는 이들의 평균입니다. $f$는 실제 분포를 의미합니다.
Data Augmentation
torchvision.transforms
내에 존재하는 여러 클래스들을 이용해서 이를 쉽게 구현할 수 있습니다.nn.Linear
레이어를 제거하고, 원하는 클래스 수에 맞는 새로운 nn.Linear
레이어를 붙인 채로 다시 훈련을 시키는 것입니다.
과제 수행 과정에서 진행했던 결과물을 공유합니다.