LSTM과 GRU를 Vector combination 관점에서 어떤 차이가 있는지 알아보겠습니다.
바로 비교하기 앞서 Vector combination에 대해 먼저 알아보고 LSTM과 GRU의 차이를 비교해 보겠습니다.
선형대수나 기하학에서 자주 등장하는 Combination은 보통 여러 벡터를 특정 규칙에 따라 합치는 방식을 의미합니다.
먼저 가장 익숙한 Linear Combination에 대해 알아볼게요.
Linear Combination
정의: 벡터 공간에서 벡터 x1, x2, …, xn과 스칼라(실수) 계수 α1, α2, …, αn가 주어졌을 때, α1x1 + α2x2 + ⋯ + αnxn 의 형태를 선형 결합 이라고 부릅니다.
계수의 제약: 없음. 모든 αi는 어떤 실수든 가능하며, 합이 특정 값이어야 한다는 조건도 없습니다.
예시: 2차원 공간에서 (1,0)과 (0,1)의 모든 선형 결합은 (α, β) 형태로, α, β ∈ ℝ 이면 2차원 평면 전체를 표현합니다.
Affine Combination
정의: 벡터(점) x1, x2, …, xn와 스칼라 α1, α2, …, αn가 주어졌을 때, α1x1 + α2x2 + ⋯ + αnxn의 형태이되, 다음 조건을 만족할 때 이를 affine combination이라 합니다:
Σi=1n αi = 1.
계수의 제약: 합이 1이 되면 되며, 각 계수의 음수 여부에는 제한이 없습니다 (αi가 음수가 되어도 괜찮습니다).
기하학적 의미: Affine combination은 모든 계수 합이 1이므로, 예를 들어 2차원에서 벡터가 ‘평행 이동’되어 있는 상태에서도 표현이 가능합니다. n개의 점이 만들 수 있는 어파인 결합의 전체 집합은 그 점들이 만드는 ‘어파인 공간(affine space)’을 이룹니다.
즉, 이차원 공간이면 일직선을 만들 수 있고 이런 점이 Convex combination과 어떻게 다른 결과를 불러오는지 살펴보겠습니다.
다음은 GRU방식에서 hidden state의 결합을 표현하는 Convex Combination에 대해 알아보겠습니다.
Convex Combination
정의: 위의 어파인 결합에서 계수가 모두 0 이상이라는 조건이 추가된 형태를 convex combination이라 합니다.
즉, αi ≥ 0이고, Σi=1n αi = 1을 만족해야 합니다.
계수의 제약:
1) 모든 αi ≥ 0
2) 계수의 합이 1
기하학적 의미: 볼록 결합은 기하학적으로 “선분”, “볼록 다각형(혹은 다면체)의 내부” 등을 표현하는 중요한 도구입니다. 예컨대 2차원에서 점 A, B의 볼록 결합은 A와 B를 연결하는 선분 위의 모든 점이 됩니다. 3차원에서 세 점 A, B, C의 볼록 결합은 삼각형 내부와 변, 꼭짓점을 포함한 영역이 됩니다.
LSTM과 GRU
Combination에 대해 알아봤으니 LSTM과 GRU를 Combination관점에서 비교해 보도록 하겠습니다.
GRU는 LSTM과 다르게 Cell에 대한 정보 없이 hidden state만으로도 gradient highway를 만들어 학습이 이뤄집니다.
GRU의 hidden state를 보면 \(h_t = z_t h_{t-1} + (1 - z_t) \tilde{h}_t \)로 input gate와 forget gate의 Convex Combination으로 이뤄져 있습니다.
이는 hidden state의 정보량을 제한하는 역할을 합니다.
LSTM의 경우 \( c_t = f_t c_{t-1} + (i_t) \tilde{c}_t \)로 이뤄진 cell state를 새로 정의하여 input gate와 forget gate가 서로 영향을 받지 않고 각각 커지거나 작아질 수 있습니다. 이런 점은 cell state의 정보량이 지나치게 커질 수 있습니다.
즉, 따로 놀던 input gate와 forget gate를 weighted sum한 GRU는 좀 더 효율적으로 적은 파라미터를 이용하여 학습을 진행할 수 있습니다.
'Machine learning & Deep learning' 카테고리의 다른 글
[Deep learning] Transformer 자세히 공부한 것.. (0) | 2025.02.18 |
---|---|
[Deep learning] Transformer에 대한 기본 아이디어 (0) | 2025.02.17 |
[Deep learning] Attention Mechanism에 대하여 (0) | 2025.02.16 |
[Machine learning] Dropout 내가 궁금했던 모든 것 정리 (0) | 2025.02.15 |
[Machine learning] Ridge Regression (0) | 2025.02.15 |