Unity/AI인공지능

0517 _ 인공지능이란?

minquu 2021. 5. 17. 15:22
반응형

유니티에서 지원하는 인공지능이 있다. 그걸 사용할 것이다.
unity ml-agent

 

https://github.com/Unity-Technologies/ml-agents
유니티 테크에서 지원하는 github 가 있다.

 

 

 

 

 

머신러닝
인공지능을 구현하는 여러 방식중에하나
컴퓨터가 상태를 동화 시키며 학습한 해법
시스템을 지칭할때는 인공지능
구현을 지칭할때는 머신머닝이라함

 

 

머신러닝에는 종류가 많은데 우리는 강화학습을한다.

 

훈련모델 (방법을 얘기함)
비지도훈련
자체적으로 데이터셋을 검사 하고 분류 하는 작업을 수행
지도 훈련 
데이터 과학 분야의 머신러닝 방법중 대다수가 예측 또는 분류를 수행 하는데 사용하는 일반적인 기법 
강화학습
우리가하는것.
환경에대한 초기 상태나 모델없이 학습하는 기법
강화학습에서는 환경이 중요하다.
에이전트는 환경속에서 모델링되고 그들의 행동을 기준으로 보상을 받음

환경// 에이전트 // 보상 (이 세가지가 핵심)
에이전트 - 대상
환경 - 어디서 학습 시킬건가
보상 - 어떻게 보상을 줄 것인가. (보상을 나중에 수치를 줄 것이다.)

모방학습
바람직한 행동을 모방하는 식 (플레이어가 직접 플레이해서 에이전트가 따라함)

커리큘럼 학습
문제를 복잡도에 따라 쪼개서 처리하는 학습

딥러닝
다양한 형태의 내부 훈련 매커니즘을 사용해서 신경망을 훈련함

 

 

 

 

----

 

 

 

---

 

---

DeepMimic (딥러닝 + 이미테이션러닝)
레퍼런스 모션을 줌으로써 조금더 자연스러운 동작을 보여줌

 

 

강화 학습의 학습과정
에이전트가 행동을 취하면 환경내의 상태가 변경됨
보상을 받게되고 더 많은 보상을 받기 위한 학습을 수행함
새로운 환경에서 다시 행동을 취하고 상태에 따른 보상을 받음(반복)

 

 

에이전트 : 상태정보와 보상정보를 가지고 행동을 함
              다양한 강화 학습 알고리즘이 이 역할을 해줌
환경 : 상태랑 보상정보를  Agent와 주고 받을 수 있는 환경
실제로 환경이 많이 없다. 유니티에는 있다.

 


문제점
환경은 내용수정이 어려움
필요한 환경이 없을수도 있음
---> 그래서 생긴거 MI-agent

 

-----

 

Agent: 강화 학습 알고리즘으로 함 (파이썬 기반)

Environment : 환경 그 자체 (유니티)

 

 

 

Agent는 똑똑한 분들이 만든것을 쓴다.

우리는 유니티에서 환경을 만든다.

 

 

 

 

 

----

 

 

 

에이전트 스크립트와 비헤이어 스크립터는 반드시 같이 있어야함

비에이어 // 구체적인 설정 (거미예시로, 거미 다리는 앞뒤로만 움직일 수 있어 같은 내용)

 

 

액션의 종류

 

Continuous = 범위

Discrte = 딱 떨어지는 

 

액션의 갯수

 

연속적이다.  Continuous

정해져 있다. Discrete 

 

----

 

에이전트

 

 

 

 

다수 존재 할 수있다.

★Communicator 가 있어야지만 파이썬이랑 통신이 가능하다.

 

학습이 끝나면 파일로 제공이 된다.
훈련된 결과가 모델이라는 파일로 나오게된다. .nn파일
환경을 통해서 훈련된 내용을 파일로 가질 수 있다. 

 

 

 

----

 

3. 다 다르다. 

에이전트 - 비헤이어 / 

 

---

 

 

 

-------

 

 

반응형