과제

AI Opt Lab·2022년 2월 23일
1
  1. RNN
    RNN은 연속적인 정보를 처리하는데 쓰이는 신경망입니다.
    이전의 정보가 그 다음 순서의 정보에 영향을 줄때 사용합니다.
    RNN의 input으로는 임베딩 레이어를 거친 t시점의 입력 정보와, t-1시점의 hidden state의 정보가 들어가며
    각각의 hidden state의 정보가 출력층을 통과하여 output으로 정보를 뱉어낸다.
  1. Seq2seq
    RNN을 기반으로 한다. 구조가 디코더와 인코더 두가지로 나눠지며, 각각의 hidden state의 정보가 출력층을 통과하여 output으로 정보를 뱉어냈던 기존 RNN과 달리, 마지막 t 시점의 정보가 컨텍스트 벡터라는 형태로 디코더의 입력값으로 들어간다. 이때 RNN기반이기 떄문에 마지막 시점의 정보는 사실상 이전의 모든 정보를 반영한다. 이후 디코더에서 순차적으로 정보를 뱉어낸다 이때 디코더 셀의 입력값은 이전 시점의 output 데이터와 hidden state의 정보가 된다.
  1. 어텐션 메커니즘
    Seq2seq를 보완한것으로써, Seq2seq의 컨텍스트벡터는 RNN의 성질상 모든 입력정보를 반영하였지만, 그 과정에서 정보의 손실이 발생한다. 이를 해결하기 위해, 디코더의 hidden state정보를 쿼리, 인코더의 히든스테이트를 키, 벨류로 두고, 쿼리와 키의 유사도를 계산한다. 이후 구한 유사도를 벨류에 반영하여 attention value 벡터를 만들어준다. 이 벸터를 기존 디코더의 hidden state정보에 콘켓시켜, 이 전의 정보들을 현 시점의 중요도에 따라 반영해준다.
  1. 트랜스포머
    RNN기반에서 벗어나 attention만으로 연속적인 정보를 처리하는 기법이다.
    모든 입력값을 행렬 형태로 한번에 입력하며, 대신 그 시간정보를 보충하는 포지셔널 인코딩을 해준다. 이는 각 위치정보를 나타내는 값을 만들어 행렬에 더해주는 것이다. 인코더와 디코더의 구성으로 나뉘어져 있으며, 인코더는 셀프 어텐션과 셀프 멀티헤드 어텐션, 다코더는 마스크드 셀프 어텐션과 멀티헤드 어텐션으로 나뉘어져있다. 이 각 구조는 이전 output을 input으로 쓰는 여러 레이어를 가진다.

    셀프 어텐션&셀프 멀티헤드 어텐션
    셀프 어텐션은 입력 정보를 행렬곱하기를 통해 각각의 q,k,v행렬로 만들어 attention 시킨것이다. 이때 가중치가 반영된v를 더하지 않고 행렬 형태로 본존한다. 그리고 셀프 멀티 헤드 어텐션에서 이를 여러번 반복한다. 여러 셀프 어텐션의 결과값을 콘켓하여 다양한 관점에서 입력정보를 해석한다.
    마스크드 셀프 어텐션과 멀티헤드 어텐션
    디코더에는 훈련을 위한 정답 데이터, 디코더의 이전 출력 데이터가 input이 된다. 이후 훈련시엔 정답 데이터에 마스크드 셀프 어텐션을 해준다. 이는 각 정보의 시점에서 미래 시점의 정보를 가린 후 attention을 실시하는 것으로 각 정보가 미래시점의 정보를 모르는 상태를 만들어주기 위함이다. 실제 출력 데이터는 미래 정보가 없음으로 마스킹이 별도로 필요하지않다. 이후 디코더의 정보를 q 인코더 정보를 k,v로 하는 멀티헤드 어텐션을 실시한다.

이 4가지attention과 여러 처리를 해준 후 출력층에서 belu 함수를 이용하여 정보를 출력한다.

  1. DQN
    CNN을 이용해 이미지를 state로 하는 인공신경망 강화학습법이며, 현실의 무한에 가까운 state와 action을 해결하였다. frame skiping&stacking으로 행동과 상태에 정보를 받으며, 환경과 상호작용하여 학습하고, 학습결과를 리플레이 버퍼에 저정한다. 그리고 타겟네트워크를 별도로 두어, actor 네트워크와의 손실함수를 줄이는 방향으로 학습한다
  2. Reinforce, A2C

    Reinforce
    MDP환경에서 벨만 방정식을 사용하며 가치함수와 정책함수 두가지로 나뉘어진다 정답을 주지 않고 특정 상태에서 행동에 대한 리워드를 주어 학습한다.
    A2C
    actor-critic에서 baseline함수를 사용하여 어드벤티지를 q벨류 대신 사용한 것이다.

profile
인천대학교 산업경영공학과 AI Optimization Lab

1개의 댓글

comment-user-thumbnail
2022년 3월 4일

핵심을 잘 짚어주셔서 정확히 이해할 수 있는것같아요~!!

답글 달기