nn.Linear(bias = False)를 사용하는 이유를 알아보려고 한다.
1. 모델 단순화
- bias = False를 사용하면 parameter의 수가 감소하여 모델을 더 단순화할 수 있다.
2. 정규화
-
많은 매개 변수로 신경망을 훈련할 때 데이터가 과적합이 될 수 있다.
-
보통 Weight decay 혹은 Dropout을 사용해 과적할을 방지할 수 있다.
-
하지만 bias = False를 사용하면 정규화 해야 하는 parameter의 수를 줄일 수 있어 정규화를 한 형태로 볼 수 있다.
3. 속도 증가
- Train 과정속에서 업데이트할 parameter의 수가 적기 때문에 더 빨리 학습이 될 수 있다.
4. 디버깅
- 편향이 없을 때, 오류의 원인을 하나 제거하는 것이 되기 때문에 모델을 디버깅 하는 것이 더 쉬울 수 있다.