인프런 커뮤니티 질문&답변

엽강통강님의 프로필 이미지
엽강통강

작성한 질문수

실전 인공지능으로 이어지는 딥러닝 개념 잡기

장단기 메모리와 게이트 순환 유닛(LSTM and GRU)

LSTM 모형의 이해

해결된 질문

작성

·

414

1

선생님 이해가 잘 안가는 부분이 있습니다 LSTM을 보면 f, i, s~, o 전부 같은 x, h t-1의 데이터를 쓰고 있지만 각각의 다른 가중치를 쓰는 것은 이해를 했습니다

그런데 input, forget 게이트에서 얼만큼 잊고, 얼만큼 받아 드린다고 하셨는데 이 부분은 각각 따로 계산이 되는건가요? 1-x가 아니여서 비율의 합이 1이 아닌데 어떤 원리로 이것을 forget gate라고 하는건가요? (아니면 s t-1이 자체가 전의 정보를 담고 있어서 이를 시그모이드로 비례적으로 계산하는건가요...?)

 

그리고 마지막으로 i,s~ 는 둘다 곱해서 이를 input gate라고 하는건가요? 아니면 i_t만 input gate인가요?

(i,s~ 둘다 같은 데이터인데 가중치만 달라서 혼동이 옵니다)

 

*요약하자면 선생님 써주신 공식을 보면 그냥 같은 데이터에 다른 가중치를 계산한건데 어떤 원리로 이게 작동하는지 잘 이해가 가지 않습니다

*가능하시면 해당 수식이 해당 모형에서 어떻게 작동하는지 조금 더 알려주시면 감사하겠습니다 :)

답변 1

1

딥러닝호형님의 프로필 이미지
딥러닝호형
지식공유자

안녕하세요.

 

  1. 이전 f와 현재 i값의 비율의 합이 1일 이유는 없습니다. 저자가 모델을 이렇게 제안한 것이지요. 물론 비율의 합이 1이 되는 형태로 f와 s 대신 1-f로 설계는 할 수 있고 원하신다면 어떤 것이 좋은지 비교하는 것도 공부에는 도움이 된다고 생각합니다 :) 반면에 GRU를 보시면 GRU 저자들이 LSTM를 간소화하면서 h state에 대해서 비율의 합이 1인 형태로 설계하신 것을 보실 수 있습니다. 인공신경망의 장점 중 하나가 설계 자유도가 높다는 점입니다. 엽강통강님도 이런 궁금증으로부터 새로운 아이디어를 만들어 모델을 개선하실 수 있습니다 :)

     

  2. 식에서 알 수 있듯이 forget gate f와 input gate i는 따로 계산됩니다.

     

  3. f를 통해 이전 s를 얼마나 받을지를 정하는 것이고 이를 forget gate라고 정의하였습니다. f가 0에 가까울수록 이전 정보를 많이 잊고 1에 가까울수록 덜 잊는다는 개념입니다.

     

  4. 이전 질문에서도 말씀드렸듯이 큰 틀에서 RNN, LSTM, GRU는 같은 원리로 작동합니다. 순서가 있는 데이터를 처리할 때 이 전 state를 반영하여 현재 state를 계산하는 방식입니다. 좀 더 구체적으로 말씀드리면 각 기능마다 다른 가중치를 사용한다는 말은 다른 함수를 사용한다는 의미입니다. 즉, 서로 같은 데이터를 받아 다른 피쳐로 데이터를 가공할 수 있다는 말입니다. 이를 묶어 이전 가공된 정보와 현재 계산 된 정보를 함께 계산할 수 있게 됩니다.

열공하세요!

엽강통강님의 프로필 이미지
엽강통강

작성한 질문수

질문하기