The Forward-Forward Algorithm - Some Preliminary Investigations
The Forward-Forward Algorithm: Some Preliminary Investigations (2022)
역전파는 신경망의 핵심이지만, 한 가지 치명적 약점이 있습니다. 뇌는 역전파를 하지 않습니다. 생물학적으로 설명 불가능하다는 뜻입니다. Hinton은 이 "역전파의 저주"를 벗어나기 위해 역전파를 완전히 제거하는 알고리즘을 제안합니다. Forward-Forward(FF)는 양수 데이터와 음수 데이터에 대해 각 층이 독립적으로 자신의 목적함수를 최적화합니다. 두 번의 순전파(forward pass)만으로 학습이 가능합니다. 재계산 오버헤드가 크지만, 이론적으로는 매우 깔끔합니다.
[1] G. E. Hinton, "The Forward-Forward algorithm: Some preliminary investigations," arXiv preprint arXiv:2212.13345, 2022.
배경
2022년, 역전파가 40년 가까이 유일한 훈련 방법이었습니다. 뇌는 역전파를 사용하지 않는다는 신경과학적 사실에서 출발하여, Hinton은 NeurIPS 2022에서 순전파만으로 학습하는 알고리즘을 발표했습니다. 1986년 역전파 논문의 공동 저자가 36년 후 그 한계를 극복하려 시도한다는 점에서 한 과학자의 지적 여정을 상징합니다.
저자 소개
Geoffrey Hinton 단독 저자입니다. Google에서의 연구를 정리하던 시기(2023년 Google을 떠남)에 발표되었습니다.
요약
기술 스펙: 각 은닉층에서 양수 데이터(real data)에 대해서는 출력 벡터의 L2 노름을 최대화하고, 음수 데이터(corrupted data)에 대해서는 최소화합니다. 각 층의 목적함수는 다음과 같습니다:
L = log(1 + sum(h_i^2)) - log(1 + sum(h_i^2))
(positive samples) (negative samples)
여기서 h_i는 i번째 은닉층의 활성화값입니다. 학습률은 층마다 독립적으로 설정 가능합니다.
핵심 혁신: 역전파가 없습니다. 각 층은 자신 위의 손실함수를 전혀 보지 않고, 자신의 활성화값의 크기만으로 판단합니다. "좋은 데이터는 크게, 나쁜 데이터는 작게"라는 직관만으로 충분합니다. 이는 신경과학에서 관찰되는 "국소 학습 규칙(local learning rule)"과 일치합니다.
논문 상세
배경
뇌는 역전파를 하지 않습니다. 그런데 우리는 왜 역전파에 의존할까요?
역전파의 생물학적 문제들: 1. 신경 가시돌기(dendritic spine)에서 역방향 신호를 받을 메커니즘이 없습니다. 2. 백질(white matter)의 축삭(axon)은 대부분 한 방향입니다. 3. 가중치의 미분을 계산하려면 가중치 행렬의 전치를 알아야 하는데(weight transport problem), 생물학적으로 불가능합니다.
그럼에도 신경망은 잘 학습합니다. 역전파가 유일한 방법이 아닐 수도 있습니다.
선행 연구: - Hinton은 2005년 "wake-sleep algorithm"에서 생물학적으로 타당한 학습을 시도했습니다. - 2015년 "feedback alignment"에서 임의의 피드백 가중치도 학습을 유도할 수 있음을 보여주었습니다. - Forward-Forward는 이 라인의 극단화입니다: 피드백 신호를 완전히 제거합니다.
방법론
알고리즘의 핵심:
- 데이터 준비: 양수 샘플(원본 데이터)과 음수 샘플(입력에 노이즈를 섞거나 라벨을 섞은 데이터)을 준비합니다.
-
순전파(양수): 양수 샘플을 통과시키고, 각 은닉층 h_i에 대해:
- goodness score G+ = log(1 + sum(h_i^2))를 계산합니다
-
순전파(음수): 음수 샘플을 통과시키고, 각 은닉층에 대해:
- goodness score G- = log(1 + sum(h_i^2))를 계산합니다
- 손실 계산: L = log(1 + G+) + log(1 - G-)로 목적함수를 정의합니다
- 층별 업데이트: 각 층은 자신의 goodness score를 높이는 방향으로만 가중치를 업데이트합니다. 역전파는 하지 않습니다.
생물학적 타당성: - 각 층의 학습은 "국소(local)"입니다. 전체 네트워크의 오차를 계산할 필요가 없습니다. - 신호는 한 방향(순전파)만 흐릅니다. - 가중치 행렬의 전치를 계산할 필요가 없습니다.
결과
MNIST, CIFAR-10, ImageNet에서의 성능: - MNIST: 역전파와 비슷한 성능 (기존: 0.5% 오류 vs FF: ~0.8% 오류) - CIFAR-10: 더 격차가 벌어집니다 (역전파: 10% vs FF: ~30%) - ImageNet: 테스트하지 않았습니다 (계산 비용 이유)
계산 비용: - 각 은닉층마다 양수/음수 두 번의 순전파가 필요합니다. - N층 네트워크면 역전파(1회 순전파 + 1회 역전파)보다 2N배 순전파가 필요합니다. - 메모리: 역전파보다 많지 않습니다 (활성화 저장만 하면 됩니다).
층의 깊이에 따른 영향: - 역전파: 깊을수록 더 어렵습니다 (그래디언트 소멸). - Forward-Forward: 각 층이 독립적이므로, 깊이의 영향이 덜할 줄 예상했으나, 실제로는 정보 병목이 생깁니다.
생각
잘한 점
이론적 우아함이 뛰어납니다. 역전파라는 복잡한 메커니즘을 "좋은 데이터는 크게, 나쁜 데이터는 작게"라는 직관으로 대체했습니다. 수식도 간단하고, 구현도 명확합니다.
생물학적 타당성의 진지한 시도입니다. Hinton은 단순히 "역전파 대안"을 제시한 게 아니라, 신경과학의 제약을 진지하게 고려했습니다. 이는 신경망 연구에서 생물학을 다시 상기시키는 의미 있는 질문입니다.
국소 학습 규칙의 일반화입니다. 각 층이 자신의 출력 크기만으로 학습한다는 아이디어는, Hebbian learning("함께 활성화되면 강해진다")과 현대 신경망의 다리를 놓습니다.
한계
성능이 역전파에 미치지 못합니다. CIFAR-10에서 3배 오류율 차이는 무시할 수 없습니다. "생물학적으로 타당하지만 성능이 떨어진다"는 트레이드오프가 명확합니다.
음수 샘플 구성이 애매합니다. 논문에서 "corrupted data"를 어떻게 정의할지 명시하지 않습니다. MNIST에서는 입력에 노이즈를 섞었지만, 이것이 모든 작업에 일반화되는지는 불명확합니다. 라벨을 섞으면? 픽셀을 섞으면? 성능 편차가 클 수 있습니다.
정보 병목: 깊은 네트워크에서는 각 층의 활성화 정보가 감소합니다. Forward-Forward는 이 병목을 역전파처럼 극복하지 못합니다. 저자도 이를 인정했습니다.
통계적 검증 부족: 한 번의 오류율만 보고합니다. 신뢰도 구간, 여러 초기화에 대한 분산이 제시되지 않았습니다.
대규모 실험 부재: ImageNet 실험을 하지 않았습니다. "계산 비용이 많다"는 이유지만, 이는 실용성의 한계를 드러냅니다.
의의
Forward-Forward는 "역전파 없이도 신경망이 학습 가능한가?"라는 근본 질문에 처음 이론적으로 "가능하다"고 답했습니다. 비록 성능은 떨어지지만, 이론적 가능성만으로도 중요합니다.
더 큰 의미는, 신경망 연구가 "생물학적 타당성"을 다시 진지하게 고려하기 시작했다는 점입니다. 역전파의 성공으로 신경과학과의 거리가 벌어졌지만, Hinton 같은 선구자들은 그 거리를 좁히려 하고 있습니다.
실용적으로는 아직 역전파를 이길 수 없습니다. 하지만 만약 대규모 병렬 스파이킹 신경망(spiking neural networks, SNN)을 구현하려면? 또는 뇌 시뮬레이션이 목표라면? Forward-Forward의 국소성은 게임 체인저가 될 수 있습니다.
결론적으로, 이론적으로는 아름답지만 실무적으로는 역전파를 대체하기 어렵습니다. 하지만 신경망의 다양한 학습 메커니즘 탐색이라는 장기적 관점에서는 매우 중요한 논문입니다.
후속 연구 링크
Forward-Forward는 Hinton의 가장 최근 주요 논문으로, 이 논문의 한계(성능 부족)는 아직 후속 연구에서 해결되지 않았습니다. 이 논문은 Learning representations by back-propagating errors에서 시작된 역전파 연구의 36년 후 자기 비판이자, 신경망 학습의 근본 원리를 재탐구하는 시도입니다.