논문 리뷰) A Generalist Agent (GATO)

2022. 5. 25. 23:55관심있는 주제/Paper

728x90

 

 

 

구글에서 일반화되는 에이전트라는 주제로 낸 논문이다.

저자들은 일반화된 이러한 방식을 쓰면, 새롭게 들어온다기보다는 out of distribution에 있는 부분에 대해서도 잘할 것이라고 한다. 

즉 완전히 새로운 것보다는 기존에 하던 것 중에서 조금 범위가 넘어가는 것에 대해서 잘할 수 있다고 하는 것 같다.

개인적으로 궁금했던 부분은 인풋과 아웃풋 그리고 손실 함수의 구성 방식이라서 이 부분을 주로 간단하게 보기로 했다.

인풋

기본적으로 인풋 같은 경우 continuous 한 것들을 discrete하게 만들거나 VIT 같은 방식을 도입해서 패치하는 식을 이용했다고 한다.

아직 그래프까지는 커버하는 아키텍처는 아닌 것 같다.

   
continuous 1024개의 uniform unit (여기서는 값 자체보다는 토큰들이 가지는 순서를 학습하는 것으로 일치시키는 것으로 생각됨)
discrete 0,1024를 이용(가장 궁금한 부분이긴 함)
text setence Pice [0,320000]
image non-overlapping 18x18 patches -> normalized [-1,1]

 

 

아웃풋

데이터를 자동 회귀적으로 모델링할 때 각 토큰은 또한 다음과 같은 경우 target labeling이 될 수 있습니다.
이전 토큰 텍스트 토큰, 이산 및 연속 값 및 작업을 토큰화 후 대상으로 직접 설정할 수 있습니다.

미지 토큰과 에이전트 observation은 현재 Gato에서 예측되지 않았지만 향후 작업에 흥미로운 방향이 될 수 있다.

이러한 예측되지 않은 토큰의 대상은 사용되지 않은 값으로 설정되고 손실 기여도는 마스크 된다고 한다.

 

즉 액션 역시 discrete 하면 그 값을 그대로 이용해서 lookup table로 임베딩 된 방식을 사용하고

continous 하면 역시 discrete 하게 만들어주고 lookup table로 임베딩 시키는 방식을 사용한다.

 

roa-major order라는 것을 방식을 쓴다고 이야기한다.

 

근데 여기서 참 궁금한 점은 어떻게 continuous 한 것을 discrete 하게 순서대로 하는 것은 이해가 되는데, 

discrete 한 것을 그대로 사용한다는 것은 좀 이상하다고 생각한다.

 

어떤 환경에서는 0을  UP이라고 표현하고 어떤 환경에서는 0을 DOWN이라고 표현한다고 하면,

이것은 분명 상반되는 액션인데, 이것을 어떤 특정 LOOK UP TABLE에서 INDEX를 통해 가져올 수 있다는 것을 사용하면 이상할 것 같은데... 아직 논문을 잘 이해하지 못해서 그런 것 같다...

 

학습 방식

저자의 손실 함수를 보면, 액션 역시 이산화 해서 진행하는 것 같다. 

그래서 마치 지도 학습처럼 맞추면 1 아니면 0과 같은 형태로 만들어서 배치 단위로 학습할 수 있게 했다.

저자는 현재 이 모델을 지도 학습 방식으로 했다고 한다.

 

 

Positional Encodings

토큰 임베딩으로 맵핑한 후에는 2개의 temporal과 spatial 정보를 제공하기 위해서 포지션 인코딩을 추가해해준다고 한다.

 

Patch Positional Encodings

Local Observation Position Encodings

개인 생각

여러 가지 인풋의 차원을 동일하게 만들어주거나 하는 토큰 방식으로 하는 것에 있어서 공감하는 부분도 있지만, 저걸로 다 커버가 될지는 잘 모르겠다. 분명 값 자체가 중요한 분야가 있는 것에는 어려움이 있어 보인다.

 

아웃풋 자체에 대해서도 개인적으로 궁금했는데, 일반화하기 위해서 저렇게 하는 것이 가장 쉬울 것 같다는 생각도 든다. 

그렇지만 저걸로 다 커버하기에는 변수가 많아 보인다.

transformer 구조가 최고인 것 같다.

 

https://arxiv.org/abs/2205.06175

 

A Generalist Agent

Inspired by progress in large-scale language modeling, we apply a similar approach towards building a single generalist agent beyond the realm of text outputs. The agent, which we refer to as Gato, works as a multi-modal, multi-task, multi-embodiment gener

arxiv.org

 

https://www.deepmind.com/publications/a-generalist-agent

 

A Generalist Agent

Inspired by progress in large-scale language modelling, we apply a similar approach towards building a single generalist agent beyond the realm of text outputs. The agent, which we refer to as Gato, works as a multi-modal, multi-task, multi-embodiment gene

www.deepmind.com

 

728x90