6년전 세상을 놀라게했던 바둑 인공지능 알파고! 강화학습으로 완벽에 이르다😮

2022.02.09 05:30 5,562 Views


본 포스팅은 데이콘 서포터즈 “데이크루" 1기 활동의 일환입니다.

 


여러분 다들 ‘알파고’ 기억하시나요?

알파고는 2016년 3월 우리나라의 이세돌 9단과 바둑 시합을 펼쳐 4승 1패로 승리를 거머쥔 슈퍼 컴퓨터죠.

알파고는 구글의 딥마인드사에서 개발한 바둑 인공지능 프로그램입니다.

사실 알파고를 처음으로 인공지능을 접하게 되신 분들이 많을 것 같아요! (저도 그 중 하나입니다)

인간과 인공지능의 바둑 대결, 그리고 인공지능의 승리는 전세계인들이 인공지능(AI)의 수준과 위력을 실감하는 계기가 되었죠.

 

데이콘에서 인공지능, 딥러닝에 대해 계속 접하다보니 인공지능의 발전을 처음 일깨워준 알파고의 그 이후가 궁금해졌습니다!

 

알파고는 크게 이세돌과 겨루었던 버전인 ‘알파고리’,

이세돌에 패배했던 4국의 문제를 극복하고 출시되어 중국의 프로바둑기사 커제에 전승을 거둔 ‘알파고 마스터’,

자체학습을 도입한 ‘알파고 제로’를 거쳐 발전하였습니다.

 

그 중, 이번 포스팅은 강화학습 알고리즘을 활용한 알파고 제로에 대해 다루어보았습니다.

 

당시 2017년 알파고 제로에 주목할 점은,

알파고 제로는 인간의 지식으로 AI를 교육·감독하는 ‘지도학습 시스템(supervised learning system)’이 아니라

생물의 뇌와 유사하게 시행착오를 통해 이치를 깨닫는 ‘강화학습 시스템(reinforcement learning system)’이 적용되기 시작했다는 점입니다.

즉, 기존 알파고 리와 알파고 마스터가 인간이 만든 정석이나 기보 등을 통해 바둑을 학습하고 이를 기반으로 전략을 구상했다면,

알파고 제로는 바둑의 규칙 외에는 사전 지식이 없는 백지 상태의 신경망에서  자기 학습을 통해 데이터를 쌓고 스스로 훈련한 것이죠.

그 결과 알파고 제로는 3일 동안 490만 회의 셀프 대국 이후 ‘알파고 리’와 진행된 100판의 대국을 모두 이겼고,

40일 동안 2,900만 회의 셀프 대국 뒤엔 ‘알파고 마스터’와의 대국에서도 90% 가까운 승률을 기록했습니다.

  다시 말하면 3일만에 이세돌 9단, 21일만에 커제 9단을 능가하는 실력을 갖추게 된 것이죠.


 강화 학습의 위력이란, 정말 대단하지 않나요?

이 같은 알파고 제로의 능력과 관련하여 알파고 제로 관련 논문은 “인간이 가진 지식의 한계에 구속되지 않기 때문에 더 강력해졌다”고 설명하였죠.

알파고 제로는 사람의 지식이나 지도 없이 자기 학습을 통해 스스로 바둑의 원리를 깨우치고 승리하는 법을 찾아냈다는 점에서

인간의 통제를 벗어나 AI를 더 높은 경지로 이끌었습니다.

 

 

알파고 제로의 강화학습에 대해 좀 더 구체적으로 알아볼까요?


강화학습에는 에이전트(Agent), 상태(State), 행동(Action), 보상(Reward) , 환경(Environment), 정책(Policy)와 같은 개념들이 존재합니다.

그림출처 : https://www.secmem.org/blog/2019/12/15/RL-key-concepts/

·      

상태(State)는 현재 시점에서 상황이 어떤지 나타내는 값의 집합이고, 행동(Action)은 우리가 취할 수 있는 선택지를 일컫는 말입니다.

에이전트가 어떤 행동을 했을 때 따라오는 이득을 보상(Reward) 이라고 합니다. 말 그대로 보상이기 때문에 높을수록 좋겠죠?

·      그리고 주어진 문제 상황에서 행동하는 주체를 에이전트(Agent)라고 부릅니다.

게임에서는 플레이어가 조작하는 캐릭터, 또는 조작하는 플레이어 본인이 에이전트가 될 것입니다.

·      에이전트가 판단하는 방식을 정책(Policy)이라고 부르고, 환경(Environment)은 문제 세팅 그 자체를 의미합니다. 

알파고에 이러한 개념들을 연결지어보면,

  • 에이전트(Agent)는 알파고
  • 상태(State)는 바둑판 상황
  • 행동(Action)은 수를 두기
  • 보상(Reward) 은 경기의 결과
  • 환경(Environment)는 바둑의 규칙
  • 정책(Policy)는 알파고의 정책 네트워크

라고 이해할 수 있습니다.


정책은 인공지능이 행동을 선택할 때 어떤 행동이 좋을 지 추천을 해주는 역할을 합니다.