공짜 점심은 없다 정리 (no free lunch theorem)
쉽게 풀면
어떤 알고리즘이 어떤 문제에서 다른 알고리즘보다 잘한다면, 반드시 그만큼 못하는 다른 문제가 존재한다는 이야기입니다. 가능한 모든 문제를 똑같은 확률로 놓고 평균을 내면 모든 알고리즘의 성능이 같아진다는 뜻이지요. 그래서 알고리즘의 우열은 항상 “어떤 문제 집단에서”라는 단서와 함께 말해야 합니다.
왜 중요한가
머신러닝에서 특정 모델이 무조건 우월하다는 주장을 경계하게 만드는 이론적 근거입니다. 성능 차이는 알고리즘 자체보다 그 알고리즘이 문제에 대해 품고 있는 가정, 즉 귀납 편향이 실제 데이터와 얼마나 잘 맞느냐에서 나온다는 관점을 정당화합니다. 논문에서 여러 모델을 비교할 때 데이터 특성을 함께 논의해야 하는 이유이기도 합니다.
논문에서는 이렇게 쓰입니다
만능 모델을 주장하는 대신 문제 유형별로 결과를 나누어 제시했다는 뜻입니다.
조금 더 깊게 보면
1997년 울퍼트와 맥레디가 최적화 문제에 대해 정식화한 정리로, 탐색 알고리즘의 평균 성능이 목적함수 전체 집합에 대해 동일함을 보였습니다. 이후 지도학습 상황으로도 확장되어, 학습 데이터 밖의 입력에 대한 일반화 성능은 사전 가정 없이는 보장될 수 없다는 형태로 논의됩니다. 다만 현실의 문제들은 ‘모든 가능한 함수’가 아니라 구조와 규칙성을 가진 좁은 부분집합이므로, 실무에서 특정 모델이 꾸준히 잘 통하는 현상과 모순되지는 않습니다.
주의할 점
“어떤 모델을 써도 똑같다”는 뜻으로 오해하기 쉽지만, 이는 현실에서 마주치지 않는 문제까지 모두 균등하게 가정했을 때의 결론입니다. 편향-분산 트레이드오프가 하나의 모델 안에서 오차의 구성을 다루는 것과 달리, 이 정리는 알고리즘들 사이의 비교 가능성 자체에 대한 명제입니다.