인공지능 실습

Multi-Armed Bandit 시뮬레이터

어떤 슬롯머신이 가장 당첨 확률이 높을까요? 직접 부딪혀 보며 학습하는 「강화학습」의 기본, 탐험(Exploration)과 활용(Exploitation)의 원리를 체험해 봅니다.

Core Mechanism

경험을 통해 최고의 선택을 학습하다

Multi-Armed

여러 개의 레버(arm)가 있는 슬롯머신 상황.

Bandit

슬롯머신이 돈을 가져간다는 의미에서 붙은 별명 (도둑).

Multi-Armed Bandit은 여러 슬롯머신 중 어떤 것을 선택해야 가장 많은 보상을 얻을 수 있을지 결정하는 문제입니다. 처음에는 보상 확률을 알 수 없기 때문에 다양한 선택을 시도하는 Exploration과 현재 가장 좋아 보이는 선택을 사용하는 Exploitation 사이에서 균형을 찾게 됩니다.

1단계 · 행동

슬롯머신 선택 (Action)

여러 개의 슬롯머신 중에서 레버를 당길 머신 하나를 선택합니다.

2단계 · 보상

결과 확인 (Reward)

선택한 머신의 숨겨진 확률에 따라 1점(당첨) 또는 0점(꽝)의 보상을 받습니다.

3단계 · 학습

평균 보상 업데이트

지금까지 받은 보상의 평균을 계산하여, 해당 머신의 예상 보상(Q-value)을 업데이트합니다.

4단계 · 딜레마

탐험과 활용

현재 1등인 머신만 계속 누를지(활용), 새로운 가능성을 찾아 다른 머신을 눌러 볼지(탐험) 결정합니다.

Interactive Simulator

슬롯머신 환경 (Bandit Environment)

직접 머신을 클릭하거나 [자동 실행]을 눌러 컴퓨터가 학습하는 과정을 관찰하세요.

에피소드: 0

예측된 평균 보상률 변화 (Q-value) X축: 실행 횟수 / Y축: 기대 확률(0~1)

Epsilon-Greedy 전략

30%

확률 ε로 다섯 대 중 아무 머신이나 무작위로 골라 탐험(Exploration)하고, 나머지 확률로는 예측이 가장 높은 머신을 활용(Exploitation)합니다. 무작위로 고를 때 1등 머신도 후보에 들어가므로, ε를 100%로 두어도 1등 머신이 5번에 1번꼴로 뽑힙니다.

보기 및 실행

보통
느림 빠름

헷갈리기 쉬운 점

「어? 처음 몇 번 눌렀을 때 계속 꽝이 나오던 슬롯머신인데, 알고 보니 확률이 제일 높은 대박 머신이었어요!」
맞습니다. 확률적으로 보상이 주어지기 때문에, 진짜 확률이 높아도 운이 나빠 초반에 꽝이 연속될 수 있습니다. 그래서 현재 1등으로 보이는 머신만 누르는 「활용(Exploitation)」만 하면, 진짜 대박 머신을 영영 놓칠 수 있습니다. 가끔은 다른 머신도 테스트해 보는 「탐험(Exploration)」이 반드시 필요한 이유입니다.

다만 탐험이 많을수록 좋다는 뜻은 아닙니다. ε를 100%로 올리면 예측치는 실제 확률에 잘 맞아 들어가지만, 배운 것을 한 번도 쓰지 않고 매번 아무 머신이나 누르게 되어 총 보상은 오히려 줄어듭니다. 대박 머신을 찾아내고도 손해를 보는 셈입니다. 답은 탐험과 활용 중 한쪽을 고르는 것이 아니라 둘의 비율을 어디에 두느냐에 있습니다. ε를 0%, 10%, 100%로 바꿔 가며 같은 횟수만큼 실행해 비교해 보세요.


확인 질문

Q1. 탐험(Exploration) 확률(Epsilon)을 0%로 설정하면 어떤 문제가 발생할까요?

정답: 초반에 우연히 보상이 잘 나온 머신만 계속 누르게 되어, 실제로 확률이 더 높은 「진짜 최고의 머신」을 찾을 기회를 영원히 잃어버릴 수 있습니다.

Q2. 우리가 학습 과정에서 구하는 「평균 보상(Q-value)」은 무엇을 의미하나요?

정답: 해당 슬롯머신을 선택했을 때 「보상을 받을 기대 확률(예측치)」을 의미합니다. 횟수가 많아질수록 이 예측치는 실제 확률과 비슷해집니다.