다크 포레스트

Darkforest

다크포레스트 컨볼루션 뉴럴 네트워크를 이용한 딥러닝 기술을 기반으로 페이스북이 개발컴퓨터 바둑 프로그램이다.업데이트 버전 Darkfores2는 이전 버전의 기술과 몬테카를로 트리 [1][2]검색을 결합한 것입니다.MCTS는 컴퓨터 체스 프로그램에서 흔히 볼 수 있는 트리 검색 방법을 효과적으로 사용하여 랜덤화합니다.[3]업데이트를 통해 시스템은 Darkfmcts3[4]인식됩니다.

다크포레스트는 CrazyStone이나 [5]Zen과 같은 프로그램과 비슷한 강도를 가지고 있다.2016년 UEC컵에서 인간 프로 선수를 상대로 테스트되었다.구글의 알파고 프로그램은 2015년 10월 비슷한 기술을 [6]조합하여 프로 선수를 이겼다.

다크 포레스트는 류시신의 공상과학 소설 다크 [7]포레스트의 이름을 따왔다.

배경

고대 바둑에서 최고의 인간들과 경쟁하는 것은 인공지능의 장기적인 목표였다.바둑의 브랜치 요소가 높아 첨단 하드웨어에서도 기존 검색기법을 제대로 활용하지 못하고 바둑의 평가기능도 돌변할 수 있다.그러나 Darkforest는 장기 예측을 위해 설계된 심층 컨볼루션 뉴럴 네트워크를 사용하여 보다 전통적인 몬테카를로 트리 검색 기반 접근 방식보다 봇의 성공률을 크게 개선할 수 있었다.

일치.

Darkfores2는 인간 플레이어를 상대로 KGS Go Server에서 약진 아마추어 인간 플레이어와 맞먹는 안정적인 3D 랭킹을 달성한다.그러나 Darkfores2몬테카를로 트리 검색을 추가하여 darkfmcts3라는 이름의 훨씬 강력한 플레이어를 만든 후 KGS Go Server에서 5D 랭킹을 획득할 수 있습니다.

다른 AI와의 비교

darkfmcts3는 선, 돌바람, 크레이지 스톤 등 최첨단 바둑 AI와 어깨를 나란히 하지만 알파고에는 [8]뒤진다.2016년 1월 KGS 봇 토너먼트에서 다른 바둑알이들을 제치고 3위를 차지했다.

뉴스 커버리지

2015년 구글의 알파고판후이(Fan Hui)에 승리한 후, 페이스북은 자사의 AI 하드웨어 디자인을 공개하고, 다크포레스트의 코드를 오픈 소스로 공개하며 AI 엔지니어 [3]팀을 강화하기 위한 대규모 채용을 실시했다.

플레이 스타일

Darkforest는 신경망을 사용하여 10개의100 보드 위치를 정렬하고 가장 강력한 다음 [9]수를 찾습니다.그러나 뉴럴 네트워크만으로는 훌륭한 아마추어 플레이어나 최고의 검색 기반 Go 엔진 수준에 필적할 수 없기 때문에 Darkfores2는 뉴럴 네트워크 접근 방식과 검색 기반 머신을 결합합니다.다크포레스트 개발에는 25만 개의 실제 바둑 데이터베이스가 사용되었으며, 22만 개의 바둑을 훈련 세트로 사용하고 나머지는 실제 게임에서 진행되는 다음 움직임을 예측하는 신경망의 능력을 테스트하는 데 사용되었다.이를 통해 다크포레스트는 보드의 글로벌 상태를 정확하게 평가할 수 있었지만 현지 전술은 여전히 부실했다.검색 기반 엔진은 글로벌 평가는 떨어지지만 현지 전술에는 능하다.검색 기반 엔진이 뉴럴 네트워크보다 훨씬 더 빠르게 작동하기 때문에 이 두 가지 방식을 결합하는 것은 어려우며,[9] 이는 Darkfores2에서 프로세스를 동시에 실행함으로써 해결되었다.

종래의 전략

바둑은 일반적으로 판 위에 있는 돌들의 위치를 분석해서 한다.몇몇 선진 선수들은 그것을 무의식적으로 플레이하는 것으로 묘사했다.AI 선수들이 인간보다 더 멀리 내다볼 수 있는 체스나 체커와 달리 바둑의 각 라운드는 평균 250개의 가능한 수를 가지고 있기 때문에 그러한 접근은 효과적이지 않다.대신에, 신경 네트워크는 AI 시스템을 성공적인 움직임의 이미지로 훈련시킴으로써 인간의 놀이를 모방한다. AI는 많은 할머니들이 하는 [10]것처럼 효과적으로 보드 모양을 해석하는 방법을 배울 수 있다.2015년 11월, Facebook은 MCTS와 뉴럴 네트워크의 결합을 시연했습니다.뉴럴 네트워크는 "인간적인 [10]느낌"을 주는 스타일로 플레이했습니다.

결함

다크포레스트는 플레이 스타일에 아직 결함이 있다는 지적이 있다.로컬 파워 무브가 필요할 때 봇이 무의미하게 tenuki("다른 곳으로 이동")를 재생하는 경우가 있습니다.봇이 지고 있을 때는 MCTS의 일반적인 동작을 나타내며, 잘못된 움직임을 재생하여 더 많은 것을 잃습니다.Facebook AI 팀은 이러한 점을 향후 [11]개선 분야로 인정했습니다.

프로그램 아키텍처

Darkforest 컴퓨터 바둑 프로그램 패밀리는 컨볼루션 [3]뉴럴 네트워크를 기반으로 합니다.Darkfmcts3의 가장 최근의 발전은 보다 전통적인 몬테카를로 트리 [3]검색과 컨볼루션 신경망을 결합했다.Darkfmcts3는 Darkfores2에서 Facebook의 최첨단 컨볼루션 뉴럴 네트워크 아키텍처와 몬테카를로 트리 검색을 결합한 Darkforest의 최신 버전입니다.

Darkfmcts3는 현재 플레이 상태에 따라 다음 k개의 움직임을 예측하는 컨볼루션 신경 네트워크에 의존합니다.이 보드는 여러 채널을 가진 19x19 이미지로 취급됩니다.각 채널은 특정 플레이 스타일에 따라 보드 정보의 다른 측면을 나타냅니다.표준 재생과 확장 재생의 경우 각각 21개의 채널과 25개의 채널이 있습니다.표준 플레이에서 각 플레이어의 자유는 6개의 바이너리 채널 또는 평면으로 표현됩니다.플레이어가 1개, 2개 또는 3개 이상의 자유도를 사용할 수 있는 경우 해당 평면이 참입니다.Ko(즉, 불법 이동)는 하나의 이진 평면으로 표시됩니다.각 상대의 돌 배치와 빈 보드 위치는 3개의 이진 평면으로 표현되며, 돌을 배치한 이후의 시간은 각 선수당 1개씩 2개의 평면에 실수로 표현된다.마지막으로, 상대 랭크는 9개의 이진 평면으로 표시되며, 모든 것이 참이면 플레이어는 9d 레벨, 8이 참이면 8d 레벨 등입니다.확장 플레이는 보더(경계에 참인 바이너리 평면), 위치 마스크(보드의 중심으로부터의 거리로 표시됨, x5 s a 2){\ x를 추가로 고려하며, x(\x}는 위치 및 영역에서의 실수입니다.y, 위치가 가까운 플레이어에 따라 달라집니다).

Darkfmct3에서는 무게 공유 또는 풀링 없이 폭 384 노드의 12층 풀컨볼루션네트워크를 사용합니다.각 컨볼루션 층은 심층 [12]뉴럴 네트워크에서 인기 있는 활성화 함수인 정류된 선형 유닛에 이어 이어진다.이전 접근법에 비해 Darkfmct3의 주요 혁신은 다음 동작을 예측하기 위해 하나의 softmax 함수만 사용한다는 것이며, 이를 통해 전체 [3]매개 변수 수를 줄일 수 있습니다.Darkfmct3는 다양한 게임 스테이지를 나타내는 경험적 데이터 세트에서 무작위로 선택된 300개의 게임에 대해 훈련되었습니다.학습률은 바닐라 확률적 경사 강하법에 의해 결정되었다.

Darkfmct3는 컨볼루션 뉴럴 네트워크를 몬테카를로 트리 검색과 동기적으로 결합한다.컨볼루션 신경망은 계산적으로 부담이 되기 때문에 몬테카를로 트리 검색은 보다 가능성이 높은 게임 플레이 궤적에 연산을 집중한다.몬테카를로 트리 탐색과 동시에 뉴럴 네트워크를 실행함으로써 뉴럴 네트워크에 의해 예측되는 움직임에 의해 각 노드가 확장됨을 보증할 수 있다.

다른 시스템과의 비교

Darkfores2는 뉴럴 네트워크 전용의 전작인 Darkforest를 약 90%, 최고의 검색 베이스 엔진 중 하나인 Pachi를 [9]약 95% 능가한다.Kyu 등급 시스템에서 Darkforest는 1~2d 수준을 유지하고 있습니다.Darkfores2는 KGS Go Server에서 [1]랭크 봇으로 안정적인 3D 레벨을 달성합니다.몬테카를로 트리 검색을 추가하여 Darkfmcts3는 5,000개의 롤아웃을 통해 250개 게임 모두에서 10,000개의 롤아웃으로 Pachi를 누르고, 75k의 롤아웃으로 최첨단 Go AI(예: Zen, Dolbaram, Craze Stone)와 동등한 안정적인 5D 레벨을 KGS 서버에서 달성했습니다.

「 」를 참조해 주세요.

레퍼런스

  1. ^ a b Tian, Yuandong; Zhu, Yan (2015). "Better Computer Go Player with Neural Network and Long-term Prediction". arXiv:1511.06410v1 [cs.LG].
  2. ^ "How Facebook's AI Researchers Built a Game-Changing Go Engine". MIT Technology Review. December 4, 2015. Retrieved 2016-02-03.
  3. ^ a b c d e "Facebook AI Go Player Gets Smarter With Neural Network And Long-Term Prediction To Master World's Hardest Game". Tech Times. 2016-01-28. Retrieved 2016-04-24.
  4. ^ a b "Facebook's artificially intelligent Go player is getting smarter". VentureBeat. 27 January 2016. Retrieved 2016-04-24.
  5. ^ "Strachey Lecture - Dr Demis Hassabis by University of Oxford Live".
  6. ^ "No Go: Facebook fails to spoil Google's big AI day". The Guardian. 2016-01-28. ISSN 0261-3077. Retrieved 2016-02-01.
  7. ^ "FB围棋项目负责人谈人机大战" [FB Go Project Manager Discusses Man vs Machine Showdown] (in Chinese). Tencent. 2016-03-01.
  8. ^ Silver, David; Huang, Aja; Maddison, Chris J.; Guez, Arthur; Sifre, Laurent; Driessche, George van den; Schrittwieser, Julian; Antonoglou, Ioannis; Panneershelvam, Veda; Lanctot, Marc; Dieleman, Sander; Grewe, Dominik; Nham, John; Kalchbrenner, Nal; Sutskever, Ilya; Lillicrap, Timothy; Leach, Madeleine; Kavukcuoglu, Koray; Graepel, Thore; Hassabis, Demis (28 January 2016). "Mastering the game of Go with deep neural networks and tree search". Nature. 529 (7587): 484–489. Bibcode:2016Natur.529..484S. doi:10.1038/nature16961. ISSN 0028-0836. PMID 26819042. S2CID 515925.closed access
  9. ^ a b c "How Facebook's AI Researchers Built a Game-Changing Go Engine". MIT Technology Review. Retrieved 2016-04-24.
  10. ^ a b Metz, Cade (7 December 2015). "Google and Facebook Race to Solve the Ancient Game of Go With AI". WIRED. Retrieved 2016-04-24.
  11. ^ Kelion, Leo (27 January 2016). "Facebook trains AI to beat humans at Go board game - BBC News". BBC News. Retrieved 2016-04-24.
  12. ^ LeCun, Yann; Bengio, Yoshua; Hinton, Geoffrey (27 May 2015). "Deep learning". Nature. 521 (7553): 436–444. Bibcode:2015Natur.521..436L. doi:10.1038/nature14539. PMID 26017442. S2CID 3074096.

외부 링크