최근에 Alphabet의 DeepMind 리서치 팀이 기계 학습 엔진을 확장하여 Shogi와 체스를 모두 수행한다는 소식이 발표되었습니다. 명백히, 몇 시간의 자기 학습, 즉 게임의 규칙에 따라 자체적으로 만 플레이한다는 의미에서 체스에서의 성능은 이미 Stockfish 8과 같은 최고 현재 엔진 의 성능을 능가했습니다.. 계산 시간이 제한된 엔진은 성능이 매우 떨어질 수 있기 때문에 Stockfish가 어떤 조건에서 수행하도록 설정했는지에 따라 개인적으로 경기가 정확히 어떻게 설정되었는지는 알지 못합니다. 어쨌든 이것은 매우 인상적인 성과입니다. 왜냐하면 훈련 시간이 몇 시간 더 걸리지 않고 Stockfish를보다 최적으로 설정할 수 있음에도 불구하고 AlphaZero는 현재 수준보다 AlphaZero의 근본적으로 강함을 의미하는 놀이 수준을 다시 능가 할 것입니다. 휴리스틱 평가 기능에 기반한 표준 체스 엔진.
이 뉴스에 비추어 볼 때, 누군가가 우리가 사용하는 표준 엔진에 비해 기계 학습 체스 엔진의 작동에서 주요 차이점을 자세히 설명 할 수 있다면 좋을 것입니다. 보다 구체적으로 :
- 기계 학습 방법으로 훈련 된 AlphaZero가 사용하는 평가 기능이 결국 다른 휴리스틱 평가 기능이 아닙니까? 그렇다면 두 엔진의 평가 기능 간의 근본적인 차이점은 Stockfish가 인간에 의해 수동 조정 된 최적화 된 평가 기능을 가지고 있다는 것입니다. 이는 최적화 할 기능의 정의가 고정되어 있음을 의미합니다. AlphaZero, 목표 평가 기능은 추가 교육 (예 : 자체 재생)을 통해 지속적으로 재정의되고 있습니까? 후자를 훨씬 더 역동적 인 접근 방식으로 만듭니다.
궁극적으로 모호하게 말하면 Stockfish와 같은 엔진은 평가 기능을 가능한 이동의 나무에 적용하여 유지할 지점과 떨어질 지점을 결정한 다음 더 깊은 콘크리트 를 통해 결정합니다.각각의 브랜치의 분석은 다시 평가 기능을 통해 어떤 브랜치가 가장 높은 값을 산출했으며 이것이 주요 변형이되는지 파악합니다 (물론이 프로세스에는이 큰 트리를 효율적으로 프 루닝하기위한 많은 고급 기술이 있습니다). 즉, 각 위치에 대해 Stockfish가 결정을 내리려면이 매우 구체적인 루틴을 반복해야합니다. 반대로, AlphaZero는 매우 다른 작업을 수행한다고 생각합니다. 즉, 주어진 위치에서 가능한 이동 트리에 대한 구체적인 분석에 의존하지 않고 평가 기능이 본질적으로 해당 위치에 값을 할당합니다 (직관적으로 구체적 으로 수행 할 필요없이 훈련 된 다른 모든 위치와 유사한 현재 위치)Stockfish 또는 인간 플레이어와 같은 방식으로 분석합니다. 이것은 AlphaZero 또는 이와 유사하게 훈련 된 머신 러닝 엔진의 작동에 대한 건전한 그림입니까?
우리는 체스 위치의 공간이 그 위치의 모든 위치를 샘플링하려는 시도가 원칙적으로 완전히 헛되이 될 정도로 충분히 크다는 것을 알고 있습니다. (EXPTIME 복잡성), 이는 자기 플레이를 통한 훈련량이 충분하지 않다는 것을 암시합니다. 모든 위치를 탐색 했으므로 셀프 플레이를 통해 공간의 작은 부분을 잠재적으로 탐색 했음에도 불구하고 어떻게 최종 결과가 좋을 수 있습니까? 여기서 중요한 아이디어는 무엇입니까?
내 생각에, AlphaZero는 훈련 위치에서 이전에 방문한 위치와 새로운 위치를 비교할 때 주어진 위치를 비교할 수있는 최적의 방법을 가지고 있습니다. 비교가 가까울수록 비교에서 얻을 수있는 평가가 더 유효합니다. 예를 들어, 게임 5에서 Bg5 이동을했을 때 , 훈련하는 동안 비슷한 구조를 탐색 했어야합니다. 즉,이 위치가 훈련에서 연구 한 다른 위치와 본질적으로 동일하다는 것을 인식 할 수 있습니다. 머신 러닝을 통해 얼굴 인식이 달성되는 방식과 유사하며, 그 결과 Bg5가 다른 유사한 위치에서와 마찬가지로 가장 좋은 움직임이라고 결론을 내립니다. 이것은 모두 올바른 추측입니까? 나는이 비교가 어떻게되는지 모른다 훈련 된 모든 위치를 저장하고 매번 파싱 할 수는 없으므로 반드시 수행됩니다.
이것은 단지 AlphaZero의 작업에 대한 통찰력을 얻고 그 입장에서 결정을 내리는 방법입니다.