24.06.22 00:48 작성
·
164
0
DQN 환경 학습에서 conv1 레이어로 들어가는 인풋이 [32,168,3,64] 사이즈로 들어가서 에러가 나는 상황입니다. state size를 확인해보니 84가 아닌 168이 계속 인풋으로 들어오는데, 유니티 환경이 잘못된 것일까요?
답변 3
0
2024. 06. 25. 22:00
음...
사실 mlagents 버전 상관없이 agentRenderTexture 사이즈는 84x64면 visual obs도 (1,3,64,84) 이런식으로 나와야할텐데요..
많이 이상하네요 ㅜㅜㅜ 유니티 버전도 6버전을 써본 적은 없지만 사실 유니티 버전은 별로 상관없을 것으로 생각되구요..
혹시 그럼 해당 agentRenderTexture 크기를 변경하면 파이썬에 전달되는 visual obs 크기도 변할까요?
2024. 06. 25. 22:12
바뀌긴 바뀌는군요.? 그럼 혹시 한번 해당 값 원래 크기로 바꾸고 visual obs 한번 렌더링해보실 수 있으실까요?
그래프로 한번 띄워보시면 될 것 같습니다!
2024. 06. 25. 22:18
이제 지금 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()
2024. 06. 25. 22:34
음.. 뭔가 살짝 위아래가 잘려보이긴 하지만 잘 나오는 것 같네요..! 설정은 맞게 됐는데 값이 이상하게 나오는 에러는 처음이라 많이 당황스러운데요..!
저희 강의에서 했던 설정과 다른 것은 유니티 버전밖에 없는 듯 하여 해당 버전을 2022 버전 정도로 변경해보시거나 아니면 파이썬에서 visual obs에 대한 state size를 변경하고 학습하셔도 될 것 같습니다!
0
2024. 06. 24. 15:18
state shape은 (1,3,64,168)로 출력이 됩니다.
유니티 Vector Observation 파라미터는 다음과 같습니다.
2024. 06. 25. 21:10
음.. 4차원 벡터가 사이즈가 이상한거 봐서는 바로 그 아래있는 Render Texture Sensor의 renderer 설정이 잘못된 것 같습니다! 이 부분은 따로 건드리지 않으셨으면 잘못 설정되지는 않을 것 같은데 이상하네요 ㅜㅜ
혹시 mlagents 유니티 버전 어떤걸 사용하고 계실까요?
2024. 06. 25. 21:54
agentRenderTexture 사이즈는 84x64로 되어 있습니다.
유니티 버전은 6 preview로 활용하고 있고, mlagent 버전은 이렇게 사용하고 있습니다.
2024. 06. 25. 22:10
지금 agentRenderTexture 사이즈를 2배 키워서 168x128 사이즈로 학습을 돌려보면 state 사이즈는 (1,3,128,336) 이렇게 출력됩니다.