Transformer 관련 논문을 읽어보다 표에서 Inductive Bias라는 항목을 보아 무엇인지 좀 더 상세히 알아보려 한다.
머신러닝 모델이 새로운 데이터를 학습할 때, 단순히 모든 가능성을 고려하는 것이 아니라 특정한 방향성을 가지고 일반화하는 경향이 있다. 이러한 경향성을 Inductive Bias(귀납적 편향)이라고 한다. 즉, 모델이 학습되지 않은 데이터에 대해 합리적인 예측을 수행하기 위해 가지는 선험적 가정(Prior Assumption)이다. 쉽게 말해 학습 알고리즘에서 학습자가 아직 접하지 않은 주어진 입력의 출력을 예측하기 위해 사용하는 일련의 가정이다.
우선 Bias(편향)이란 어떤 것인지 먼저 살펴보자.
Bias(편향)이란?
Bias는 일반적으로 데이터 또는 모델이 특정 방향으로 치우치는 경향을 의미한다. 머신러닝에서의 편향은 주어진 데이터에 대한 해석 방식이 특정한 방식으로 정해지는 것을 뜻한다. 편향은 아래와 같이 크게 두 가지 유형으로 나뉠 수 있다.
- 편향(bias): 모델이 데이터의 특정 패턴을 따르는 방식 또는 가정을 의미한다.
- 편향-분산 트레이드오프(Bias-Variance Tradeoff): 모델이 단순할수록 편향이 커지고, 복잡할수록 분산이 커지는 경향을 나타낸다.
Inductive Bias는 이러한 편향의 한 종류로, 모델이 데이터를 학습할 때 특정한 일반화 방식이나 규칙을 따르는 것을 의미한다.
Inductive Bias(귀납적 편향)의 중요성
머신러닝 모델은 학습 데이터에 대한 일반화를 목표로 한다. 그러나 데이터만으로는 완벽한 일반화를 보장할 수 없기 때문에, 모델이 특정한 방식으로 데이터를 해석하도록 유도하는 inductive bias가 필요하다. 올바른 귀납적 편향이 적용되지 않으면 모델이 과적합(Overfitting)되거나 일반화 성능이 저하될 수 있다.
예를 들어, 선형 회귀 모델은 "데이터는 선형 관계를 따른다"라는 가정을 가지며, Convolutional Neural Network(CNN)는 "이미지는 공간적으로 연관된 패턴을 가진다"라는 귀납적 편향을 내재하고 있다. 이러한 편향이 없으면 모델이 학습할 수 있는 패턴이 너무 광범위해지고, 효과적인 학습이 어려워질 수 있다.
대표적인 Inductive Bias의 예시
1. 매끄러움(Smoothness)
- 가까운 데이터 포인트들은 비슷한 출력을 가질 것이라는 가정이다.
- K-최근접 이웃(K-NN) 알고리즘이나 커널 방법에서 활용된다.
2. 단순성(Simplicity, Occam’s Razor)
- 가능한 한 단순한 가설을 선택해야 한다는 원칙이다.
- 선형 회귀 모델에서 과적합을 방지하기 위해 간단한 모델을 선택하는 것이 대표적인 예시이다.
3. 선형성(Linearity)
- 데이터가 선형 관계를 가질 것이라는 가정이다.
- 선형 회귀, 로지스틱 회귀 등의 모델이 이에 해당한다.
4. 지역성(Locality)
- 특정 데이터 포인트의 예측은 그 주변의 데이터에 의해 크게 영향을 받을 것이라는 가정이다.
- CNN이 지역적인 특징을 추출하여 학습하는 것이 이에 해당한다.
5. 불변성(Invariance)
- 데이터가 특정 변환(예: 회전, 이동, 크기 변화 등)에 대해 불변성을 가질 것이라는 가정이다.
- CNN의 합성곱 연산이 이를 반영하고 있다.
6. 모듈성(Modularity)
- 복잡한 시스템은 여러 개의 작은 모듈로 나눌 수 있으며, 이러한 모듈이 독립적으로 학습될 수 있다는 가정이다.
- 트랜스포머 모델과 같은 신경망 아키텍처가 이러한 모듈성을 활용한다.
7. 계층적 표현(Hierarchical Representation)
- 데이터는 계층적으로 구성될 수 있으며, 낮은 수준의 특징이 결합되어 고차원적인 의미를 형성한다는 가정이다.
- CNN이나 RNN이 이러한 계층적 표현을 학습하는 대표적인 예시이다.
Inductive Bias의 조절
Inductive Bias는 모델의 성능을 결정하는 중요한 요소이며, 적절한 수준에서 조절해야 한다. 너무 강한 편향이 적용되면 모델이 복잡한 패턴을 학습하지 못할 수 있고, 반대로 너무 약하면 과적합이 발생할 가능성이 높아진다. 따라서, 데이터와 문제의 특성을 고려하여 적절한 inductive bias를 선택하는 것이 중요하다.
이를 위해 정규화(Regularization), 데이터 증강(Data Augmentation), 전이 학습(Transfer Learning) 등의 기법을 활용할 수 있다. 예를 들어, L1/L2 정규화는 모델이 너무 복잡해지는 것을 방지하는 역할을 하며, 데이터 증강은 불변성을 강화하여 모델의 일반화 성능을 향상시킨다.
Inductive Bias는 머신러닝 모델이 데이터를 학습하고 일반화하는 데 중요한 역할을 한다. 적절한 귀납적 편향을 적용하면 모델의 성능을 극대화할 수 있지만, 잘못된 편향이 적용되면 오히려 학습 성능이 저하될 수 있다. 따라서, 데이터의 특성을 파악하고 적절한 inductive bias를 선택하는 것이 머신러닝 모델 개발에서 필수적인 과정이다.
데이터 양과 Inductive Bias의 관계
데이터가 적으면, 강한 inductive bias가 있을 때 모델이 빠르게 학습하고 좋은 성능을 낼 가능성이 높다. 예를 들어, CNN처럼 이미지 데이터를 처리하는 데 특화된 구조는 이미지의 특정 특성을 잘 파악하는 inductive bias를 가지고 있어서, 적은 데이터로도 좋은 성능을 낼 수 있다.
반면 데이터가 많으면 Inductive bias가 약한 모델이 더 유리할 수 있다. 예를 들어, Transformer는 inductive bias가 적고, 다양한 데이터를 학습하는 데 강력하지만, 그만큼 많은 데이터가 필요하다. 이는 강한 inductive bias가 오히려 일반화 능력(generalization)을 떨어뜨릴 수 있기 때문이다.
Bias-Variance Trade-off
Bias-Variance Trade-off는 모델이 데이터에서 어떻게 학습할지를 결정하는 두 가지 요소인 Bias(편향)와 Variance(분산)의 균형을 맞추는 문제이다. Bias는 모델이 데이터에 대해 너무 단순하게 예측하는 경향으로, 학습 데이터에 잘 맞지 않거나 과소적합(Underfitting)을 초래할 수 있다.
Variance는 모델이 데이터에 대해 복잡하게 학습하는 경향으로, 학습 데이터에 너무 잘 맞춰져서 과적합(Overfitting)되는 문제를 일으킬 수 있다.
반면 Inductive bias가 너무 강하면 bias가 커지고, variance는 작아지지만, 과소적합(Underfitting)이 발생할 수 있다. 반대로 Inductive bias가 너무 약하면 variance가 커지고, 과적합이 발생할 수 있다.
참고 자료
https://velog.io/@euisuk-chung/Inductive-Bias%EB%9E%80