[include(틀:주요 바둑 인공지능)] [목차] == 개요 == [[https://github.com/tensorflow/minigo|GitHub]] [[https://cloudygo.com/|Stats]] [[https://discordapp.com/invite/jNEwKBj|Discord]][* 그럭저럭 활발한 커뮤니티. 개발자들의 토의를 볼 수 있어서 좋다. 들어가서 궁금한 거 물어보면 답변도 해준다.] [[https://console.cloud.google.com/storage/browser/minigo-pub/|가중치 파일 전체]] || [[파일:minigo_andrew_jackson.jpg]] || || 미니고 개발자 앤드류 잭슨 || [[구글]]의 Andrew Jackson에 의한, [[알파고#s-8.5|알파고 제로]]/[[알파고#s-8.6|알파제로]]의 재구현을 목표로 하는 [[오픈 소스]] 바둑 인공지능 프로젝트. 따라서 알파고 제로 혹은 알파제로의 다른 재구현 프로젝트들인 [[릴라(바둑 프로그램)#s-2.1|릴라 제로]], [[ELF 오픈고]] 등과 매우 비슷한 내부구조를 갖는 버전들이 많다.[* 그러므로 구체적인 작동 원리가 궁금한 경우 미니고 깃헙이나 미니고 디스코드 외에도 다른 [[릴라(바둑 프로그램)#s-2.1|제로]] [[ELF 오픈고|계열]] 인공지능에 관한 자료들을 참고할 수도 있을 것이다.] 이 사례에 해당하는 v15와 v16의 가중치들은 간단한 변환과정만 거치면 릴라 제로 엔진을 가지고도 사용할 수 있는데, 아래의 버전별 정보에 링크된 파일들이 바로 릴라 제로 엔진에서 사용되도록 변환된 파일들이다. 그러나 프로젝트로서는 엄연히 알파고와 독립으로, '''미니고는 알파고가 아니며, 딥마인드와도 직접적인 연관은 없다'''고 밝히고 있다. == 상세 == [[텐서플로]]를 기반으로 개발되었다. [[강화학습]]에 [[TPU]]를 활용하고 있어 굉장히 빠른 진행을 보이고 있는 것이 특징이다. "played on X00 TPU"라 밝히고 있으므로 수백 개가 쓰이고 있다는 것까지는 알 수 있지만 정확히 몇백 개인지는 알 수 없다. 학습을 위한 자가대국은 800 playouts의 설정으로 이루어지는데, 프로젝트의 진행이 빠를 때는 하루에 백만 판이 넘게 진행된다. 가중치들 간의 기력 비교를 위한 평가대국에서는 TPU가 사용되지 않는다고 한다. 버전의 숫자가 올라갈 때마다 기술적으로 새로운 시도를 하며 가중치 파일을 맨바닥에서부터 다시 학습하기 때문에, 공개되는 것들이 굉장히 의미있는 데이터라고 할 수 있다. 예전에는 [[구글]]이 바둑을 또 손댄다는 의미로 주목을 받았었는데, v15에 들어서면서부터는 [[릴라(바둑 프로그램)#s-2.1|릴라 제로]], [[ELF 오픈고]]와 겨룰 만큼의 기력을 갖추면서 강자로 인식되게 되었다.~~삼대장 체제의 도래~~ 떠오른 시기가 [[바둑/인공지능|인공지능 바둑]]의 관심도가 절정일 때와는 조금 떨어져 있고, 엘프고가 등장할 때 그 당시의 릴라 제로를 압도하며 오픈 소스 최강자라는 인식을 선점하고 화제를 일으킨 바가 이미 한 번 있었기 때문에, 여러 바둑 커뮤니티나 유튜브 등지에서 미니고가 언급되는 경우는 비교적 적었다. 그러다가 2019년 3월부터 v17의 기력이 강하다는 것이 알려지기 시작하면서 커뮤니티에서도 주목을 받게 되었다. == 버전별 정보 == === v15 === [[https://cloudygo.com/converted_model/v15-19x19/models/|v15 - LZ 엔진용 변환 가중치 파일]] [[https://cloudygo.com/RESULTS|자체적인 평가]]에 의하면, [[https://cloudygo.com/v15-19x19/eval-graphs|v15에서 가장 강한 가중치]]인 '''000990-cormorant'''는 [[릴라(바둑 프로그램)#s-2.1|릴라 제로]]와 [[ELF 오픈고]]에 견줄 만큼 강하다고 한다.[* 그러나 제3자에 의한 여러 실험 결과들에서는 미니고가 약간 더 약한 것으로 나오는 경우가 많다. v15의 학습이 끝나고 자체적인 기력 평가가 있은 후로도 시간이 제법 흐르면서 [[릴라(바둑 프로그램)#s-2.1|릴라 제로]]는 버전 업데이트를 여러 번 거쳤고, [[ELF 오픈고|엘프고]] 또한 v2를 공개하였기 때문이기도 하다.] 총 2560만 판의 자가대국이 v15의 학습과정에서 치러졌다. === v16 === [[https://cloudygo.com/converted_model/v16-19x19/models/|v16 - LZ 엔진용 변환 가중치 파일]] 미니고 프로젝트의 첫 40블록인 v16도 진행이 완료되었다. 흑으로 첫 수를 3·3에 두는 것이 특징이다.[* 미니고 개발자도 v16이 첫 수 3·3을 두게 된 것에 어떤 의미가 있는지 궁금하다고 디스코드에서 여러 번 말한 바 있다. 똑같은 40블록인 [[알파고#s-8.5|알파고 제로]]도 안 그랬고, [[릴라 제로]]도 현재 안 그러고 있으니...] v15와 비교했을 때 동일 visits에서 더 강한 기력이 나오는 것 같지 않으며, 따라서 동일 시간 하에서의 성능은 더 나쁜 것 같다고 평가되었다.~~역시 40블록을 잘 학습시키는 것은 아주 어려운 작업이다.~~ 좋은 40블록짜리 미니고를 기대한다면 차기 버전을 기약해야 하는 상황이나, 미니고가 40블록의 학습을 다시 시도할 계획을 가지고 있는지는 불명.[* 개발자 입장에서 40블록이 20블록에 비해 얼마나 매력이 있을지 생각해보자. 확실히, 20블록으로 [[축(바둑)|축]] 버그나 [[사활]] 버그를 비롯한 여러 약점들을 다 해결하는 것은 무리이고, 이들에 관해 40블록은 약간이나마 더 나은 잠재력을 가진다는 장점이 있다. 그러나 개발자에 성향에 따라 강한 기력의 성취보다는 [[딥러닝]] 기법의 실험 과정으로서의 의의에 더 중점을 둘 수도 있는데, 이 경우 새로운 기술과 아이디어가 쏟아져 나오고 있는 상황에서 한 번의 학습과정을 오래 붙들고 있어야 하는 40블록을 택할 메리트를 크게 못 느낄지도 모른다.] === v17 === v17에서는 다시 20블록 크기로 돌아왔다. 기존 방식과는 다르게 [[https://github.com/tensorflow/minigo/issues/683|Squeeze and Excitation]]이라는 네트워크[* 줄여서 '''SENet'''이라고도 한다.]를 새로 적용했기 때문에, v17은 [[릴라(바둑 프로그램)#s-2.1|릴라 제로]] 엔진에서 구동하도록 만드는 변환 작업이 쉽지 않다고 한다. [[https://github.com/tensorflow/minigo/issues/722|링크]] 세븐틴님의 '''인공지능 바둑 통합설치팩'''에 미니고 v17을 구동할 수 있는 엔진이 포함되어 있으며, v17 내에서 가장 강한 가중치인 '''000990-pallas'''와 연결되어 있다. [[https://m.blog.naver.com/wonsiksnz|세븐틴님 블로그 바로가기]] [[https://cloudygo.com/all-eval-graphs|자체 테스트 결과]][* 여기에 링크된 페이지를 볼 때 유의해야 할 점은, 여기서 평가된 미니고의 [[Elo 레이팅]]은 프로기사들의 세계랭킹을 매기는 [[https://www.goratings.org/en/|goratings]]에 기록된 점수와 통일된 스케일을 사용하는 것이 아니라는 점이다. 따라서 수치를 직접 비교해서는 안 된다.]에 의하면, v17의 기력은 이전 버전들보다 강하다. 여러 유저들에 의한 테스트 결과들도 각종 커뮤니티를 통해 올라오고 있는데, [[릴라 제로]]와 [[ELF 오픈고]]를 상대로도 상당히 선전한다는 보고가 다수여서 새로운 시도를 통해 강한 기력을 얻는 데에 성공한 듯하다.~~대세로 떠오르는 SENet?~~ v17의 학습이 '''001003-leviathan'''을 마지막으로 종료될 것인지 아니면 다시 재개될 것인지가 아직 결정되지 않았다는 뉘앙스의 언급이 디스코드에 있었으나, 학습이 정지된 채로 시간이 여러 달 흐르고 개발자도 v18을 언급하게 되면서 결국 종료되었다. === v18 === 2019년 3월에 미니고 디스코드에서 v18에 대한 구상을 밝혔다. [[https://github.com/tensorflow/minigo/issues/460|이 곳]]에 적어둔 아이디어들을 적용해 볼 계획이라고 한다. 2019년 10월에 미니고 깃헙에서 [[https://github.com/tensorflow/minigo/issues/904|조만간 v18을 시작할 계획이 있음]]을 밝혔다. lightvector의 [[카타고]]가 가진 특징들을 일부 도입할 것이라고 한다. v17이 종료된 지도 1년이 지났으나, 개발자는 다른 일들 때문에 바쁜 듯하다. == 외부 링크 == [[https://www.youtube.com/playlist?list=PLNdb2jm4bkhMYFUvQY0-5Ksz7gbVs2SNc|세븐틴님의 유튜브 채널]] - 통합설치팩의 설치나 사용에 어려움을 겪는 경우에 참고하면 좋다. [[http://www.baduk.or.kr/news/monthly/53|개발자 Andrew Jackson의 인터뷰 기사]] [[분류:바둑 인공지능]]