관련된 예전 포스팅:

바둑 인공지능 '릴라 제로' 설치와 성능 향상 기여하기. (1)

바둑 인공지능 릴라 제로와 대국하기. '사바키' 설치와 설정. (2)



이 본문은 구버전(0.11) 기준으로 작성된 것입니다. 0.14버전 이후 사용자는 새로 작성한 글을 참고하세요! -> (http://www.yuhling.net/1209)



우수한 성능의 바둑학습 보조 프로그램이 있길래 소개합니다.


GoReviewPartner(GRP)는 릴라제로 포스팅을 하면서 해외 사이트 검색을 하다가 우연히 알게 된 프로그램인데, 인공지능에게 복기 지도를 받을 수 있는 강력한 기능을 가지고 있어 혼자 쓰기는 너무 아까웠습니다. 녹색창에도 국내에선 얼마나 사용되고 있나 검색해보니 모 바둑 카페 회원분들이 최근 들어서 사용하기 시작하신 것 외에는 아직 국내 바둑 팬들 사이에서는 썩 활용이 안 되고 있는 것 같아 얼른 소개해서 퍼뜨려야겠더라고요. 정말 멋진 분께서 한글화 작업에도 참여중이시니 조만간 한글판으로 더욱 편히 이용할 수 있게 될 겁니다.



1. 다운로드


우선 공식 사이트(http://yuntingdian.com/goreviewpartner/)에 접속해서 프로그램을 다운로드해야 합니다.


다운로드 파일은 같은 GRP임에도 사용하는 인공지능에 따라 여럿으로 나눠서 배포하고 있습니다. 소프트웨어 자체는 똑같지만 탑재되는 인공지능에 따라 차이를 둔 것인데요. 이미 인공지능 프로그램을 가지고 있는 분들은 가장 밑에 있는 No bot 버전을 받으시면 되고, 가지고 있는 인공지능이 없는 분들은 원하시는 것을 받으면 되는데, 제가 추천하는 릴라제로는 업데이트 관리 방법을 알면 도움이 되니 No bot 버전을 다운로드 받고 릴라제로는 별도 설치하는 방향으로 가는 것을 추천합니다.



인공지능에 따라 여러 다운로드를 제공하는 GRP



릴라제로는 공식 다운로드(https://github.com/gcp/leela-zero/releases)에 들어가 받으시면 되는데, 자신의 컴퓨터 사양에 자세한 분들은 그냥 사양 맞춰서 받으시면 되지만 잘 모르시는 분들은 본문 상단의 관련 포스팅(1)을 보고 오시면 되겠습니다. 다운로드 받아서 기억하기 좋은 적당한 폴더에 압축 풀어주세요.


그리고 릴라제로는 매일매일 기력이 향상중인 인공지능이라 '네트워크 해시'란 것을 자주 갱신해주는 것이 좋은데, 이 작업은 수동으로 해줘야 해서 컴퓨터 다루는 데 익숙지 않은 분들은 불편하고 귀찮으실 수 있습니다. 하지만 더욱 강력한 릴라제로를 쓸 수 있게 되는 작업이니 자주 갱신해주세요. 방법은 릴라제로 공식 사이트의 네트워크 페이지(http://zero.sjeng.org/network-profiles)에 들어가 가장 위에 있는 것을 클릭해 다운로드하시고 파일은 릴라제로 폴더에 넣어 주시면 됩니다. (압축 상태인 .gz 파일 그대로 넣어도 되고 압축 풀어서 .txt 파일로 넣어도 됩니다.)




2. 실행과 기본 설정


GRP를 실행하면 검은 명령 프롬프트창(흔히 도스창이라 부르는 것)과 길죽한 GRP 메뉴창이 뜹니다. 우선 처음에 할 일은 가장 밑에 있는 Settings를 눌러 릴라제로 설정을 하는 겁니다.



이런 식으로 두 개의 창이 동시에 뜹니다. 가장 밑에 있는 셋팅을 눌러주세요.



셋팅의 첫 화면은 GRP 설정인데 여긴 나중에 차근차근 살펴보면서 건드리고 싶은 부분 바꿔주시면 되고, 중요한 건 셋팅창 왼쪽에 보이는 Leela Zero를 클릭해 릴라제로 설정을 바꾸는 겁니다.



릴라제로 설정 화면



위 이미지와 같은 창인데, 윗쪽에 있는 Slow profile은 느리게 두지만 생각을 오래하는 녀석이라 같이 대국하는 상대용이 아니라 복기 지도를 해줄 녀석을 설정하는 곳입니다. 물론 대국 상대로 지명할 수도 있습니다. 아래쪽에 있는 Fast profile은 빨리빨리 두지만 그만큼 기력은 떨어지는 녀석이죠. 주로 대국할 상대는 빠른 녀석입니다.


두 녀석 모두 결국 같은 릴라제로라서 Command 칸에는 똑같이 릴라제로의 파일 경로를 입력하면 됩니다. 저는 F드라이브의 zero0.13이란 폴더에 압축을 풀었기 때문에 F:\zero0.13\leelaz.exe가 되었습니다.


Parameters에는 릴라제로가 어떻게 동작할 것인지 옵션을 넣는 곳인데 이건 제 예전 포스팅(http://www.yuhling.net/1191) 중간 쯤에 옵션 설명해둔 것을 참고로 보시면 되고, 귀찮으시다면 아래 입력 예를 참고해서 그대로 쓰셔도 될 것 같습니다.


* Slow 예시) -g --noponder -v 3200 -w 해시파일경로\해시파일.txt 

* Fast 예시) -g --noponder -v 500 -w 해시파일경로\해시파일.txt 


※ 해시파일은 제가 위에서 릴라제로 폴더에 넣으라고 설명드렸으니 그대로 하셨다면 같은 폴더 안에 leelaz-model~~~.txt 파일이나 ~~~.gz 파일이 들어 있을 겁니다. 그 파일 경로와 파일명을 쭉 써주시면 됩니다.


※ Parameters를 잘못 입력하면 프로그램이 먹통되는 버그가 발생할 수 있습니다. 이럴 경우엔 기존 고리뷰파트너를 지우고 다시 압축 풀어서 설치하시면 됩니다.


Time per move는 초읽기 착수 시간제한 기능인데 본래는 릴라제로 자체 옵션으로 설정할 수 있는데 불구하고 GRP에서 별도로 설정을 추가로 넣어두었습니다. 여기에 초를 입력해서 쓰셔도 되지만 릴라제로 자체 옵션으로 조절하는 것이 성능에 더 좋습니다. 위 예시에 적혀 있는 '-v 숫자'를 적당히 올리고 내리면서 바꿔서 쓰시고 Time per move는 공란으로 남겨두세요.


설정이 끝났으면 하단에 있는 Save settings를 반드시 눌러주고 x를 눌러 창을 닫아주시면 됩니다.


※ 인공지능에게 시간을 많이 주면 그만큼 기력이 강해지기는 하지만 마냥 시간을 길게 준다고 시간에 비례해서 강해지지는 않습니다. 어지간한 수는 방대한 학습량에 의해서 몇 초 안에 답을 내게 되어 있으니 너무 길게 설정하지는 마세요. 자신이 프로이거나 연구생이라 현재 설정된 상태로는 너무 싱겁다고 느끼시면 조금씩 시간을 늘려가며 두시면 되고, 급수로 기력을 따지는 분들이라면 5초 이내로 설정해도 접바둑 둬야 할 만큼 강합니다.




3. 인공지능과의 대국과 분석


다시 초기 메뉴창으로 돌아와서 이제 인공지능과 바둑을 둬보겠습니다. Run a live analysis를 누르면 대국 설정창이 뜹니다.



왼쪽 초기 메뉴에서 세번째 버튼을 누르면 오른쪽과 같은 새창이 뜹니다.

  



맨 위의 Bot to use for analysis는 복기해줄 인공지능 선택하는 곳이니 slow profile을 넣어주면 되고, Black, White player중 하나를 fast profile로 지정해주고 나머지 하나를 Human으로 두면 됩니다. Board size 바둑판 크기는 19줄, Komi는 덤이니 호선이면 6.5나 7.5를 하면 됩니다. 접바둑이면 Komi를 0으로 하고 Handicap stones에 바둑알 수를 입력해주면 됩니다.


SGF file name은 지정된 이름으로 기보 파일이 만들어진다는 것이니 그냥 놔두거나 원하는 이름으로 지정하시면 됩니다.


가장 밑에 있는 항목은 무슨 흑돌백돌 대국자 중 누구를 검토할 것인가 설정하는 곳인데 내가 둔 수를 복기지도 받는 것만이 중요한 것이 아니라 릴라제로가 왜 그곳에 두었나 참고도를 보는 것도 중요하니 Black & white로 해두고 양쪽 모두를 검토받는 것이 좋습니다.


모든 설정이 마무리되었으면 Start를 눌러 시작하면 됩니다. 컴퓨터 사양에 따라 시작에 시간이 조금 걸릴 수도 있습니다.



심플한 대국 화면. (진행된 바둑 내용은 블로그에 올리기 위해 놓아본 예시입니다.)



시작되면 바둑판 창이 뜨는데 기능은 단순합니다. 바둑판 위를 클릭해서 바둑알을 두면 되고, 왼쪽 버튼 중 Pass는 건너뛰기, Undo는 한 수 무르기, Open position은 대국 중간에 인공지능에게 다음 수를 묻거나 형세판단을 받을 수 있습니다. 조금 시간이 지나면 Start review버튼이 생기는데 이건 진행된 내용을 검토하는 기능으로, 보통은 한판이 끝났을 때 쓰지만 도중에 열어보셔도 됩니다. 검토는 위에서 말한 느린 녀석(slow profile)이 하는거라 속기로 진행하다가 도중에 열어보면 검토가 느려서 대국 내용이 전부 검토되지 않을 수도 있으니 조금 기다리셔야 합니다.


아래는 Open position 창 모습입니다. Undo 무르기와 인공지능 표시 버튼이 있고, 인공지능에게 다음 수를 묻는 Play one move 버튼, 응수를 물어보는 Play as white, black 기능이 있습니다. Self play는 인공지능 니가 혼자 계속 둬보라고 하는 기능입니다. Quick evaluation은 누가 유리한지 중간평가를 받을 수 있습니다. 이 기능들은 TV바둑중계를 보거나 기보 공부를 하면서 혼자 흑돌백돌을 놓다가 '인공지능이라면 이 상황에서 어떤 수를 둘까' 궁금할 때 물어보는 용도입니다.



공부하다가 컴퓨터에게 다음 응수를 물을 때 편한 Open position 화면



Start review는 참고도를 보여주며 한 수 한 수에 대해 세세하게 분석해줍니다. 아래 화면은 어느 18급 초보 바둑인의 대국 진행 도중의 모습인데 B16에 둔 것에 대해서 인공지능은 '님 바보임? 거기선 G16에 둬야지' 하면서 변화되는 참고도를 보여주고 있습니다. 그러면서 B16 한 수에 의해서 승률이 45.14%에서 36.72%로 급락하는 것이 보입니다.



인공지능이 추천하는 G16에 마우스를 올리면 수순이 표시됩니다.



화면 왼쪽 구석 Open position은 위에서 설명한 그 창을 띄워주는 기능이고, 오른쪽 구석 Graphs는 승률 변화를 보여주는 기능입니다. 중앙의 Table은 어떻게 착수하면 승률이 얼마나 변하는가 예상치를 보여주는 기능입니다.



Graphs가 보여주는 승률 변화



Table은 착수점에 따른 승률 변화



검토 기능은 이 정도면 설명 끝인 것 같고, 나머지는 기보를 불러와 검토하는 기능 설명 정도가 남았네요.


다시 메인 메뉴로 나가보시면 어쩌구저쩌구 SGF, RSGF 버튼들이 보입니다. 맨 위의 버튼은 저장되어 있는 기보 파일을 불러와 분석하는 기능, 두 번째 버튼은 인터넷상에 올라와 있는 기보 파일을 다운로드해서 분석하는 기능, 네 번째 버튼은 저장되어 있는 분석된 기보를 불러오는 기능, 다섯 번째 버튼은 분석된 기보를 일반 기보 파일로 변환하는 기능입니다. 기보 분석에는 컴퓨터 사양에 따라 시간이 제법 걸릴 수 있습니다. 기보가 불러와지면 위에서 설명한 Start review와 같은 창이 뜨며 기능은 동일합니다.





이상 사용 설명을 마칩니다. 잘 활용해서 바둑 기력이 일취월장하시길 빕니다.

Posted by 빈둥거리는 포이카

댓글을 달아 주세요

  1. 강랭이 2018.05.09 09:20  댓글주소  수정/삭제  댓글쓰기

    설정 부분 입력이 뭘 입력하는지 몰라서 해맸었는데...
    정말 감사합니다. 꾸벅~

  2. 바둑공부 2018.05.17 10:52  댓글주소  수정/삭제  댓글쓰기

    좋은 프로그램 상세한 설명 고맙습니다. 덕분에 잘 사용할 수 있게 되었습니다. 이 프로그램은 착수할 때 소리가 나질 않는데 설정에서 소리 나오게 해주는 부븐은 없는지요?

    • BlogIcon 빈둥거리는 포이카 2018.05.17 13:02 신고  댓글주소  수정/삭제

      학습용으로 개발된 탓인지 착수음이 지원되지 않고 있습니다.

      저도 소리가 안 들려서 약간 허전한 기분이 들 때가 있는데, 버전 업데이트할 때 소리 기능이 추가되었으면 하는 바램입니다.

    • 바둑공부 2018.05.18 11:44  댓글주소  수정/삭제

      예 그렇군요 잘알겠습니다. 고맙습니다^^

  3. 대박 2018.07.20 19:54  댓글주소  수정/삭제  댓글쓰기

    이프로그램 진짜 대박같네요. 대국기능까지 가능하면 굳이 골치아프게 사바키프로그램 설치할필요가 없지않을까요

    파라미터에 엘프고호환파일집어넣어도 인식되는거같네요.

  4. jcjang3000 2018.08.07 10:05  댓글주소  수정/삭제  댓글쓰기

    자세한 설명 깊이 감사드립니다. 그런데 제 경우 프로그램 설정에서 run a live analysis를 누르면 밑에 leelazero availity 부분이 없습니다. 그래서 대국을 해보면 start review 윗 부분에 open position 버튼이 없습니다. 있으면 참 유용할텐데요... 제 경우 어떤 옵션이 생략되서 그런가요? open posion 부분을 활성화할 방법은 없을까요? 다시 한번 감사드립니다.

    • BlogIcon 빈둥거리는 포이카 2018.08.07 14:36 신고  댓글주소  수정/삭제

      본문이 구버전(0.11)으로 작성된 것이라서 최신버전(0.14)와 설정 화면이나 화면의 배치가 이것저것 바뀌었습니다.

      OPEN POSITION 버튼은 신규 버전에서 제거된 것으로 보입니다.

      대신 바둑판 화면 상단에 'Live game'이란 탭 버튼이 보이는데, 그 옆에 있는 '+' 단추를 클릭하면 새로운 바둑판 탭이 열립니다. 여기서 Select a bot(인공지능 선택) 버튼을 눌러 인공지능을 하나 선택하면 가장 우측 Action 버튼이 활성화되는데, 여기에 기존 OPEN POSITION에서 활용할 수 있었던 기능이 들어있습니다.

      다시 본래 진행하던 대국화면으로 넘어가려면 상단 Live game 탭 버튼을 눌러주시면 됩니다.

      (본문 내용도 조만간 수정할 계획입니다.)