Unity ML-Agents 2.0 설치 따라하기
Version : Unity 2021.3.5f1
Unity ML-Agents 2.0을 설치를 기록한 글입니다. 에이전트의 버전이 바뀌면 설치법이 달라질 수 있습니다.
(This article records the installation of Unity ML-Agent 2.0. If the version of the agent changes, the installation method may change.)
항상 유니티에서 제공하는 공식 문서를 확인하세요
https://unity.com/kr/products/machine-learning-agents <- 공식 사이트
홈페이지에서 Github에서 다운로드 클릭
Github에서 파일을 받아줍니다.
다운받은 프로젝트의 파일(ml-agents-main)을 프로젝트 폴더에 넣어줍니다.
최신버전 문서를 확인
문서에서 Installation 확인
유니티 버전과 파이썬 버젼을 확인합니다.
파이썬도 필요하니 설치해줍니다.
최신 버전도 좋지만 영상을 따라서 3.6.2 버전을 설치해줍니다.
Windows x86-64 web-based installer 설치
Add Python to 3.6 PATH 선택
강의를 따라서 Customize installation
C:\ 에 Python 폴더를 생성 내부에 3.6.2 폴더를 또 생성하고 그 위치에 설치
설치가 완료된 후에 CMD 창을 열어서 python –version 입력
나는 관리자 권한으로 실행
시스템 환경 변수 편집 실행
건드릴 부분은 없고 설치를 확인하는 절차 입니다.
유니티에서 ml agent 프로젝트를 불러온다.
해당 프로젝트와 내가 사용하는 버젼이 다르다는 뜻 Choose another Editor version 을 누르고
내 유니티 버전으로 변경해준다.
버전이 다르다고 하는데 continue 로 넘겨주고 기다려준다.
열리는 동안 아까 열어둔 CMD 창에서 PyTorch를 설치한다.
pip3 install torch~=1.7.1 -f https://download.pytorch.org/whl/torch_stable.html
https://github.com/Unity-Technologies/ml-agents/blob/release_19_docs/docs/Installation.md <- 링크
완료!
ml-agents 도 설치해주자
python -m pip install mlagents==0.28.0
pip 버전이 낮으므로 업그레이드 해주자 ( pip는 unity의 asset store 와 비슷하다 )
python -m pip install --upgrade pip
다시 ml-agents 설치
강의 영상과는 약간 다르다
완료!
자 이제 직접 훈련을 시켜보자
제 아래의 Getting Started 를 눌러보자
이제 열린 유니티 프로젝트에 3DBall 씬을 열어보자
그리고 플레이
이미 학습되어진 아이들이 작동되고 있다.
이제 학습을 시켜보기 위해서 한마리만 빼고 비활성화해주자
https://github.com/Unity-Technologies/ml-agents/blob/release_19_docs/docs/Getting-Started.md
Getting-Started 아래쪽에보면 훈련관련 명령어가 있다.
우리는 이것을 사용한다.
아까 받은 파일인 ml-agents-main 에서 3DBall.yaml 이 있는 것을 확인한다.
ml-agents-main\ml-agents-main\config\ppo
윈도우 폴더 옵션에서 숨김파일, 폴더 및 드라이브 표시 체크
알려진 파일 형식의 파일 확장명 숨기기 해제
를 해주는 것을 추천한다.
cmd 창을 열고 ppo 위치로 이동하자
cd 폴더위치 를 이용하면 편하다
dir로 폴더 내부의 파일이 있는지 확인 하자
이제 명령어로 학습을 시켜보자
mlagents-learn config/ppo/3DBall.yaml –run-id=first3DBallRun
ppo 위치에 있으므로 명령어를 바꾸어서 입력했다.
mlagents-learn 3DBall.yaml –run-id=first3DBallRun
그리고 유니티를 플레이 해준다.
훈련중!@!
훈련 종료는 CTRL + C 버튼으로 종료
응답이 없을 시에는 엔터 몇 번 치고 CTRL + C 를 입력하면 된다.
훈련 결과 파일 onnx를 확인 할 수 있습니다.
그리고 그 파일을 유니티에 넣어줍니다.
그 다음 훈련한 파일을 agent에 넣어줍니다.
그리고 플레이 해줍니다.
훈련이 덜되서 계속 떨어 뜨리네요 ㅠ
이미 훈련을 끝낸 애들과 비교해보겠습니다.
우리가 훈련시킨 아이만… 계속 공을 떨어뜨리네요 ㅋㅋㅋ
추가로 훈련 과정을 그래프로 확인할 수 있다
https://github.com/Unity-Technologies/ml-agents/blob/release_19_docs/docs/Getting-Started.md
CMD 창에서
….. \ml-agents-main\ml-agents-main\config\ppo 위치로 들어가서
tensorboard --logdir results 입력
나오는 주소를 아무 주소창에 입력하고 이동
아래와 같이 방금 우리가 한 훈련에 대한 정보가 나온다.
텐서보드를 사용하여 훈련에 관한 다양한 정보를 확인하는 방법인데 추후에 따로 정리할 예정
끝