이것은 순수한 자체 플레이 훈련에서 간단한 보드 게임 Gomoku (Gobang 또는 Five in Own)를 연주하기위한 Alphazero 알고리즘의 구현입니다. Gomoku는 Go 또는 Chess보다 훨씬 간단하여 Alphazero의 훈련 체계에 집중하고 몇 시간 안에 단일 PC에서 꽤 좋은 AI 모델을 얻을 수 있습니다.
참조 :
훈련 된 AI 모델을 사용하려면
AI 모델을 처음부터 훈련하려면 추가 요구 사항도 필요합니다.
추신 : Theano의 버전> 0.7 인 경우이 문제를 따라 Lasagne을 설치하십시오.
그렇지 않으면, Pip이 Theano를 0.7 pip install --upgrade theano==0.7.0
다른 DL 프레임 워크를 사용하여 모델을 교육하려면 policy_value_net.py를 다시 작성하면됩니다.
제공된 모델을 사용하려면 디렉토리에서 다음 스크립트를 실행하십시오.
python human_play.py
human_play.py를 수정하여 다른 제공된 모델 또는 순수한 MCT를 시도 할 수 있습니다.
Theano와 Lasagne과 함께 AI 모델을 처음부터 훈련시키기 위해 직접 실행하십시오.
python train.py
Pytorch 또는 Tensorflow를 사용하면 먼저 파일 Train.py를 수정하십시오.
from policy_value_net import PolicyValueNet # Theano and Lasagne
그리고 줄을 타협합니다
# from policy_value_net_pytorch import PolicyValueNet # Pytorch
or
# from policy_value_net_tensorflow import PolicyValueNet # Tensorflow
그리고 python train.py (pytorch에서 gpu를 사용하려면 pytorch 버전이 0.5보다 큰 경우 policy_value_net_pytorch.py의 function a train_step에서 use_gpu=True return loss.item(), entropy.item() 사용하십시오.
모델 (best_policy.model 및 current_policy.model)은 몇 가지 업데이트마다 저장됩니다 (기본 50).
참고 : 제공된 4 가지 모델은 Theano/Lasagne을 사용하여 교육을 받았으며 Pytorch와 함께 사용하여 5 호를 참조하십시오.
훈련을위한 팁 :
중국의 구현에 대한 몇 가지 세부 사항을 설명하는 내 기사 : https://zhuanlan.zhihu.com/p/32089487