지역 최적

Local Maximum

개념

지금 방식 안에서 올릴 만큼 다 올려, 판을 바꾸면 훨씬 높은 값이 있는데도 작은 개선만 반복하게 된 상태입니다.

등장 배경

실험을 부지런히 돌리는 팀에서 같은 일이 반복됐습니다. 분기마다 스무 번씩 A/B 테스트를 돌립니다. 두 안을 무작위로 나눠 보여 주고 어느 쪽 숫자가 높은지 비교하는 방식입니다. 버튼 문구와 색과 입력 칸 순서를 바꿔 가며 전환율을 22퍼센트에서 26퍼센트까지 올려 놓았습니다. 그런데 어느 시점부터 무엇을 바꿔도 숫자가 0.2퍼센트 안쪽에서만 흔들립니다. 실험은 계속 이기는데 한 해가 지나도 26퍼센트 언저리입니다.

옆을 보고 나서야 무슨 일인지 드러났습니다. 같은 시장의 다른 제품이 41퍼센트를 내고 있었습니다. 그쪽은 가입 흐름을 다듬은 게 아니라 순서를 뒤집었습니다. 계정을 만든 뒤에 문서를 쓰게 하던 것을 문서부터 쓰게 하고 저장하려는 순간에 로그인을 묻는 쪽으로 바꾼 겁니다. 이쪽 팀의 한 해치 실험 목록에는 그런 후보가 한 건도 없었습니다.

이 상황을 설명할 말이 없는 게 문제였습니다. "실험은 다 이겼는데 왜 안 오르죠" 라는 질문에 돌아오는 답은 대개 "더 좋은 아이디어가 필요합니다" 였고, 그러면 다음 분기에도 같은 크기의 아이디어를 더 많이 모으게 됩니다. 지역 최적은 원인을 아이디어의 양이 아니라 후보의 크기 쪽으로 돌려놓으려고 붙인 이름입니다.

작동 방식

개선의 방향을 눈앞의 숫자 하나로만 정하면 지역 최적이 생깁니다. 실험 한 건은 지금 서 있는 자리에서 한 걸음 옮겨 보고 숫자가 오르면 남기고 내리면 되돌리는 절차입니다. 이 절차는 올라가는 방향을 잘 찾아냅니다. 다만 올라가는 방향만 찾습니다. 잠깐 내려갔다가 닿는 자리는 애초에 후보로 올라오지 않습니다.

안개 낀 산에서 발밑 경사만 보고 오르막을 따라 걷는 것과 같습니다. 그렇게 걸으면 눈앞의 언덕 꼭대기에는 반드시 닿지만, 골짜기 너머에 더 높은 산이 있어도 그리로는 못 갑니다. 거기 가려면 일단 내려와야 하는데 한 걸음마다 높이를 재는 방식은 그 첫걸음을 실패로 읽고 되돌리기 때문입니다.

팀이 이 자리에 눌러앉게 만드는 장치는 대개 셋입니다.

  1. 후보의 순서를 매기는 기준이 작은 것을 편듭니다. 실험 백로그는 돌릴 후보를 순서대로 모아 둔 목록인데, 순서는 보통 효과와 확신을 곱하고 드는 공수로 나눠 매깁니다. 판을 바꾸는 후보는 해 본 적이 없어 확신이 낮고 만드는 데 4주가 걸립니다. 이틀짜리 문구 실험에 매번 밀립니다.
  2. 주기가 짧습니다. 그로스 스프린트를 2주로 돌리면 2주 안에 붙였다 뗄 수 있는 것만 후보가 됩니다. 가입 순서를 뒤집는 일은 주기 하나 안에 들어가지 않으므로 목록에 적히지도 않습니다.
  3. 성적표가 작은 승리를 보상합니다. 실험 성공률이 높게 유지되기를 바라는 팀은 이길 것 같은 후보를 고르게 됩니다. 판을 바꾸는 시도는 열에 아홉이 지므로 이 숫자를 끌어내립니다.

쓰이는 곳

분기 실적을 모아 놓고 다음 계획을 세우는 자리에서 이 말이 가장 자주 나옵니다. 실험 목록과 지표 그래프를 나란히 놓았는데 열여덟 건이 이겼고 그래프는 평평할 때, 누군가 "지역 최적에 걸린 것 같다" 고 말하면서 논의가 옮겨 갑니다. 아이디어를 더 모으자는 쪽에서, 고정해 둔 것 중 무엇을 건드릴 수 있는지 따지는 쪽으로.

첫 작업은 무엇을 고정해 두고 있었는지 적어 보는 것입니다. 가입은 계정 생성부터 시작한다, 가격은 사용자 수로 매긴다 같은 전제입니다. 실험 대상이 아니라 실험의 배경으로 취급돼 왔기 때문에 적어 놓기 전까지는 보이지 않습니다.

빠져나오는 방법은 후보의 크기를 순서 매기기 밖에서 지키는 것입니다. 자리를 따로 떼어 두는 방식이 흔합니다. 분기에 한 건은 판을 바꾸는 후보에 배정하고, 그 한 건만은 확신이 낮다는 이유로 밀리지 않게 합니다. 판정 기준과 기간도 다르게 둡니다. 큰 후보는 한 주기 만에 숫자가 오르지 않는 게 정상이라 전환율 대신 무엇을 알게 됐는지로 판정하고, 순서를 바꾼 가입 흐름처럼 익숙해지는 데 시간이 걸리는 것은 첫 2주 숫자가 떨어져도 더 지켜봅니다.

실무 용례

"실험은 다 이기는데 그래프가 안 움직여요. 지역 최적 아닐까요?"

작은 후보만 돌리고 있으니 후보의 크기를 키우자는 제안입니다.

"이번 분기 한 건은 지역 최적 탈출용으로 빼 둡시다."

확신이 낮아 순서에서 밀릴 후보에 자리를 미리 확보해 두자는 말입니다.

"이건 지역 최적이 아니라 그냥 아직 덜 돌려 본 겁니다."

정체의 원인을 잘못 짚고 있다는 반박입니다. 손댈 곳이 아직 남아 있으면 이 말을 쓸 상황이 아닙니다.

페이지덱에서는 무료 플랜 사용자를 유료로 넘기는 화면을 두고 이 말이 나왔습니다. 현우가 반년 동안 안내 문구와 띄우는 시점을 바꿔 가며 전환율을 3.1퍼센트에서 3.8퍼센트까지 올렸는데, 그 뒤 석 달은 3.7에서 3.9 사이를 오갔습니다. 분기 회고에서 실험 열네 건을 한 장에 띄우자 지현이 "화면을 언제 보여 줄지만 계속 바꿨네요" 라고 짚었습니다.

고정돼 있던 전제는 결정하는 사람이었습니다. 유료 전환을 개인이 정한다고 보고 개인에게만 이 화면을 띄웠는데 실제 결제는 팀장이 합니다. 다음 분기에는 팀 단위로 요청을 보내는 흐름을 새로 만들기로 했습니다.

흔한 오해

이 말을 작은 실험이 쓸모없다는 뜻으로 읽는 경우가 많습니다. 큰 도약과 대비해 쓰다 보니 생기는 오해입니다. 실제로는 작은 개선이 쌓아 올린 26퍼센트가 다음 도약의 출발선입니다. 판을 바꿔 41퍼센트를 낸 쪽도 그 자리에서 다시 문구와 순서를 다듬어 올립니다. 이 말이 가리키는 문제는 작은 실험을 돌린다는 사실이 아니라 큰 후보가 목록에 한 건도 없다는 사실입니다. 오해한 채로 두면 반대쪽으로 넘어가 근거 없는 전면 개편을 반복하게 되고, 그렇게 바꾼 화면은 대개 이전보다 나쁩니다.

정체돼 보이면 일단 지역 최적이라고 부르는 것도 흔합니다. 숫자가 멈췄다는 점에서는 모양이 같기 때문입니다. 그런데 멈추는 이유는 여럿입니다. 계절을 타는 제품이거나, 유입 경로가 바뀌어 들어오는 사람 자체가 달라졌거나, 실험을 돌린 표본이 작아 차이를 읽지 못하고 있을 수도 있습니다. 구분하려면 남은 후보를 세어 봅니다. 손대지 않은 곳이 열 군데 남아 있으면 아직 덜 돌린 상태입니다.

같이 보면 좋은 페이지

  • 그로스 실험

    이 상태가 만들어지는 절차 자체를 먼저 봅니다

  • 실험 가설

    판을 바꾸는 후보도 결국 한 문장으로 적어야 돌릴 수 있습니다

마지막 업데이트 2026-09-16