TL;DR
- 신경진화(Neuroevolution) 연습 과제는 Google Colab에서 코드의 빈 부분을 채우고 실행해 작동을 확인하는 방식임.
- Google Colab은 무료 클라우드 서비스로, 주피터 노트북(Jupyter Notebook)에서 파이썬(Python) 코드를 실행하며 제한된 그래픽 처리 장치(GPU) 자원도 제공함.
- 과제는 2장부터 8장, 12장과 튜토리얼 연습까지 구성되며 진화 전략(ES), 유전 알고리즘(GA), NEAT, CPPN, MAP-Elites 등을 다룸.
- 과제 주제는 블랙박스 최적화, MNIST와 CartPole, 창의적 패턴 생성, COVID-19 정책 처방, SlimeVolley 에이전트와 헤비안 학습 등을 포함함.
- 해답은 강사용 페이지에서 요청해 받을 수 있으며, SlimeVolley 과제는 학급 전체 토너먼트로 진행 가능함.
Google Colab 사용 방법
- 대부분의 연습은 주피터 노트북에서 파이썬 코드를 작성하고 실행하는 무료 클라우드 서비스인 Google Colab을 사용함.
- Colab에는
TensorFlow,Matplotlib,Pandas등 여러 파이썬 라이브러리가 포함되며, 실험 실행을 위한 제한된 그래픽 처리 장치(GPU) 자원도 제공됨. - Google Drive를 통해 Colab에 접속한 뒤 과제 노트북 사본을 계정에 만들고, 일반 설정 코드가 포함된 노트북에서 비어 있는 코드 부분을 직접 작성해 실행한 다음 정상 작동 여부를 확인하는 방식임.
- 작동 코드 예시는 2장과 3장에서 사용한 Bipedal walker임.
과제
- 2장: NumPy를 사용한 블랙박스 최적화의 진화 전략(ES)과 유전 알고리즘(GA) 노트북.
- 3장:
- 1부: MNIST 과제를 위한 신경망을 진화시키는 ES와 GA 노트북.
- 2부: CartPole 과제를 위한 신경망을 진화시키는 ES와 GA 노트북.
- 3부: 데이터 분류 과제용 NEAT 구현 노트북.
- 4장:
- 1부: 창의적 패턴 생성을 위한 구성 패턴 생성 네트워크(CPPN) 진화 노트북.
- 2부: MNIST용 MAP-Elites 구현 노트북.
- 6장: COVID-19 정책 처방 과제.
- 7장: 패턴 생성을 위한 신경 세포 자동자(NCA) 진화 노트북.
- 8장:
- 1부: 무작위 상대와 대결하는 간단한 SlimeVolley 플레이어의 신경진화 과제.
- 2부: 진화적 군비 경쟁을 이용한 더 나은 SlimeVolley 플레이어의 신경진화 과제.
- 두 과제 모두 노트북으로 제공되며, 학급 전체 토너먼트로 진행 가능함.
- 12장: 헤비안 학습 진화 노트북.
- 튜토리얼 연습: 일부 신경진화 학회 튜토리얼에서 사용하는 연습으로, 폴 밸런싱, 모델 병합, MAP-Elites를 포함하는 노트북.
해답
- 해답은 강사용 페이지에서 요청해 받을 수 있음.
댓글 (0)
로그인하면 이 기사에 내 생각을 남길 수 있어요