inflearn logo
강의

Course

Instructor

Complete Guide to Unity Machine Learning Agents (Basics)

DQN 환경 학습

366

jpzz kim

1 asked

0

DQN 환경 학습에서 conv1 레이어로 들어가는 인풋이 [32,168,3,64] 사이즈로 들어가서 에러가 나는 상황입니다. state size를 확인해보니 84가 아닌 168이 계속 인풋으로 들어오는데, 유니티 환경이 잘못된 것일까요?

unity 머신러닝 강화학습 unity-ml-agents

Answer 3

0

kyushik

음...

사실 mlagents 버전 상관없이 agentRenderTexture 사이즈는 84x64면 visual obs도 (1,3,64,84) 이런식으로 나와야할텐데요..

많이 이상하네요 ㅜㅜㅜ 유니티 버전도 6버전을 써본 적은 없지만 사실 유니티 버전은 별로 상관없을 것으로 생각되구요..

혹시 그럼 해당 agentRenderTexture 크기를 변경하면 파이썬에 전달되는 visual obs 크기도 변할까요?

0

jpzz kim

지금 agentRenderTexture 사이즈를 2배 키워서 168x128 사이즈로 학습을 돌려보면 state 사이즈는 (1,3,128,336) 이렇게 출력됩니다.

0

jpzz kim

 

imageimage

0

kyushik

바뀌긴 바뀌는군요.? 그럼 혹시 한번 해당 값 원래 크기로 바꾸고 visual obs 한번 렌더링해보실 수 있으실까요?

그래프로 한번 띄워보시면 될 것 같습니다!

0

jpzz kim

그래프로 출력한다는게 어떤 의미인지 알 수 있을까요?

0

kyushik

이제 지금 batch 차원 제외하면 3차원 RGB 이미지 데이터여서 파이썬에서 그림 파일 확인하는것과 동일하게 확인 가능합니다!

Dec.obs에서 나온 관측 차원 확인해보시고 아래 코드는 gpt한테 np array 이미지를 matplotlib으로 시각화하라고 한 코드인데 참고 부탁드려요!

import numpy as np
import matplotlib.pyplot as plt

# Create a sample NumPy array representing image data
# For example, a 100x100 pixel image with random colors
image_data = np.random.rand(100, 100, 3)

# Display the image using Matplotlib
plt.imshow(image_data)
plt.title("Random Image")
plt.axis('off')  # Turn off axis numbers and ticks
plt.show()

0

jpzz kim

image

원래대로 렌더텍스처 크기로 바꿔서 dec obs shape (1,3,64,128)

아래는 시각화한 이미지입니다.

image

 

0

kyushik

음.. 뭔가 살짝 위아래가 잘려보이긴 하지만 잘 나오는 것 같네요..! 설정은 맞게 됐는데 값이 이상하게 나오는 에러는 처음이라 많이 당황스러운데요..!

저희 강의에서 했던 설정과 다른 것은 유니티 버전밖에 없는 듯 하여 해당 버전을 2022 버전 정도로 변경해보시거나 아니면 파이썬에서 visual obs에 대한 state size를 변경하고 학습하셔도 될 것 같습니다!

0

jpzz kim

Screenshot 2024-06-24 at 3.16.09 PM.pngstate shape은 (1,3,64,168)로 출력이 됩니다.

유니티 Vector Observation 파라미터는 다음과 같습니다.

Screenshot 2024-06-24 at 2.58.52 PM.png

0

kyushik

음.. 4차원 벡터가 사이즈가 이상한거 봐서는 바로 그 아래있는 Render Texture Sensor의 renderer 설정이 잘못된 것 같습니다! 이 부분은 따로 건드리지 않으셨으면 잘못 설정되지는 않을 것 같은데 이상하네요 ㅜㅜ

혹시 mlagents 유니티 버전 어떤걸 사용하고 계실까요?

0

jpzz kim

image

agentRenderTexture 사이즈는 84x64로 되어 있습니다.

유니티 버전은 6 preview로 활용하고 있고, mlagent 버전은 이렇게 사용하고 있습니다.

 

image

0

kyushik

안녕하세요!

말씀주신 내용에 따르면 카메라의 입력의 크기에 문제가 있는 듯 합니다.

혹시 obs의 shape가 어떻게 되는지 체크해보실 수 있으실까요??

해당 shape이 잘못된 경우 유니티 환경의 visual observation, 즉 시각적 관측을 전달하는 설정에 문제가 있는 듯 합니다.

0

jpzz kim

 

Screenshot 2024-06-24 at 3.16.09 PM.pngstate shape은 (1,3,64,168)로 출력이 됩니다.

유니티 Vector Observation 파라미터는 다음과 같습니다.

Screenshot 2024-06-24 at 2.58.52 PM.png

설치 프로그램 버전 질문있습니다.

0

74

2

env 환경경로 입력방법

0

78

2

onnx에 대해서

0

110

1

텐서플로우가 안열립니다

0

101

2

DQN을 위한 파라메터값 세팅에서 goal-plus, goal-ex

0

79

1

dqn 인덱스 에러

0

92

3

2025년 pip ml agents 설치 에러

0

215

1

DQN 실행 오류

0

307

2

ML-Agents 살펴보기 11페이지 질문입니다.

0

210

1

배웠던 내용을 기반으로 match3 인공지능으로 플레이 하는 걸 만들고 있는데.. 질문이 있습니다.

0

378

2

3DBall 학습 중 문제

0

218

1

mlagents-learn --hlep

0

236

1

DQN 함수를 어디에다 만들고 실행하나요??>?>

0

335

1

갑자기 Template>Scripts 폴더는 어디에서 만들어졌는지...

0

280

2

mlagents-learn 에러 수정 방법을 문의드립니다.

0

643

3

Pyuthon API 적용

0

701

7

GridWorld, CollectObservations에서 에러 질문입니다.

0

641

1

yaml을 이용한 GAIL 및 BC를 mlagents-learn으로 실행 시 에러

0

456

1

GridWorld, 유니티에서 실행하면 observation 관련 에러가 뜹니다.

0

489

2

PPO Parameters에서 normalize 관련 질문입니다.

0

356

1

GridWorld 가 작동은 잘 되는데, score가 너무 낮게 나와요.

0

568

3

GridWorld가 움직이지 않고, time out 으로 중지됩니다.

0

483

2

싱글에이전트 코드를 멀티에이전트 코드로 수정 관련

0

408

2

Start와 awake 함수의 차이점이 궁금합니다.

0

636

1