본문 바로가기
딥러닝 with Python

[개념정리] Gated Network(Gating Mechanism)

by CodeCrafter 2024. 10. 17.
반응형

 

이번에 알아볼 내용은 Gated Network에 대한 개념정리입니다.

 

1. Gated Network

- Gated Network는 게이트 메커니즘(Gating mechansim)을 활용하여

 * 정보의 흐름을 제어하고,

 * 중요한 정보를 선택적으로 통과시키며

 * 불필요한 정보를 차단하는 신경망 구조를 일컫습니다.

 

- 이는 주로 시계열 데이터나 순차적 데이터에서 사용되며, 장기 의존성(long-term dependency)를 처리하거나, 입력 데이터의 특정 부분이 중요할 때 이를 강조하는데 활용됩니다.

 

- Gated Network의 주요 구성요소는 당연하게도 게이트(Gate) 입니다.

 * 게이트(Gate)는 시그모이드 함수를 통해 입력 데이터를 0과 1 사이의 값으로 변환하고, 이를 곱셈 연산에 사용하여 어떤 정보를 통과시킬지 결정합니다.

 * 이를 통해, time step 또는 특정 구간에서 정보를 유지(1)하거나 버리는(0) 결정을 내리게 되어 중요한 패턴을 강조하게되는 결과를 가져옵니다.

 

 

2. Gated Network를 활용한 주요 아키텍처

1) LSTM (Long Short Term Memory)

 

-  LSTM은 RNN의 변형으로, 장기 의존성 문제를 해결하기 위해 고안된 아키텍처로, 3개의 게이트(Forget, Input, Output)를 사용하여 각 time step에서 어떤 정보를 기억하고 잊을지를 결정하게 됩니다.

 

 

2) GRU(Gated Recurrent Unit)

 

- GRU는 LSTM과 유사하지만, 더 간단한 구조를 가진 RNN으로 Reset Gate와 Update Gate를 가집니다. 

 

 

 

3) Gated Attention Network

 

- Gated Attention Network는 기본 Attention 메커니즘에 게이트를 추가한 것으로 특정 time step이나 구간이 얼마나 중요한지를 더욱 세밀하게 평가하는 것입니다.

 

- 먼저, Attetion 메커니즘에서 각 time step별로 가중치를 부여하여 어떤 부분이 중요할지 학습하고, 여기에 Gated 메커니즘을 더해 더 정교하게 가중치를 적용하는 것입니다. 

 

반응형

댓글