LSTM 모형의 이해
선생님 이해가 잘 안가는 부분이 있습니다 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
안녕하세요.
이전 f와 현재 i값의 비율의 합이 1일 이유는 없습니다. 저자가 모델을 이렇게 제안한 것이지요. 물론 비율의 합이 1이 되는 형태로 f와 s 대신 1-f로 설계는 할 수 있고 원하신다면 어떤 것이 좋은지 비교하는 것도 공부에는 도움이 된다고 생각합니다 :) 반면에 GRU를 보시면 GRU 저자들이 LSTM를 간소화하면서 h state에 대해서 비율의 합이 1인 형태로 설계하신 것을 보실 수 있습니다. 인공신경망의 장점 중 하나가 설계 자유도가 높다는 점입니다. 엽강통강님도 이런 궁금증으로부터 새로운 아이디어를 만들어 모델을 개선하실 수 있습니다 :)
식에서 알 수 있듯이 forget gate f와 input gate i는 따로 계산됩니다.
f를 통해 이전 s를 얼마나 받을지를 정하는 것이고 이를 forget gate라고 정의하였습니다. f가 0에 가까울수록 이전 정보를 많이 잊고 1에 가까울수록 덜 잊는다는 개념입니다.
이전 질문에서도 말씀드렸듯이 큰 틀에서 RNN, LSTM, GRU는 같은 원리로 작동합니다. 순서가 있는 데이터를 처리할 때 이 전 state를 반영하여 현재 state를 계산하는 방식입니다. 좀 더 구체적으로 말씀드리면 각 기능마다 다른 가중치를 사용한다는 말은 다른 함수를 사용한다는 의미입니다. 즉, 서로 같은 데이터를 받아 다른 피쳐로 데이터를 가공할 수 있다는 말입니다. 이를 묶어 이전 가공된 정보와 현재 계산 된 정보를 함께 계산할 수 있게 됩니다.
열공하세요!
random_state 값
0
12
2
19강 감정분석 강의처럼 api 돌렸는데
0
9
0
완독 챌린지 도서 인정 방법에 대한 문의
0
14
2
강의 연장 문의 드립니다.
0
12
1
강의 연장 문의
0
43
1
강사님 강의 자료와 코드를 부탁드리고 싶습니다.
0
47
2
16강에서 코드가 계속 안도길래. ai가 고쳐서 일단 supabase에 preditc 한 주가를
1
37
1
오징어게임
0
52
1
[클라우드 설정 중 앞 내용 문의 사항]
1
35
1
선생님 강의자료를 받을수 없어요! 메일보냈어요.
0
53
2
16강 구글 colab 에서 코드 실행이 안돼요.
0
58
1
object 컬럼이 여러 개인 경우 인코딩 전처리 방법
0
45
2
데이터 전처리 순서 관련
0
55
2
작업형2 모의문제 데이터 불러오기
0
58
2
다중레이어 경사하강법에서 질문
0
318
2
XOR파트에서 입력표현 방식
1
336
2
경사하강법에서 다중레이어에서의 가중치를 구할 때 식이 이해가 가질 않습니다 ㅠ.ㅠ
1
410
1
경우에 따른 최적의 활성화 함수 선정하는 방법
0
491
2
전이학습 강의 중 질문이 있어서 남깁니다.
0
306
1
XOR 파트에서 질문 있습니다.
0
302
1
SGD + 모멘텀 등의 코드
0
507
1
bias가 왜 필요한지 정확하게 모르겠습니다.
2
1236
1
RNN 가중치 w,u,l shape 질문
1
400
1
과적합 판단 방법에 대해 질문 드립니다.
0
2387
1





