언어 모델링이나 음성 인식, 강화학습 또는 주식 데이터 분석 등 시계열 데이터를 다루는 AI 분야에서는 매우 긴 시퀀스 데이터를 효과적으로 학습하고 표현(representation)할 필요가 있다. 그러나 모든 과거 데이터를 저장하고 처리하는 것은 저장 공간과 계산 자원의 한계로 인해 비효율적일 뿐만 아니라 실질적으로 불가능하다. 특히 온라인 환경에서는 데이터가 지속적으로 유입되기 때문에 이전 데이터를 적절히 요약(summarization)하면서도 중요한 패턴과 정보를 유지하는 메모리 메커니즘이 필요하다. 이러한 문제를 해결하기 위해 등장한 것이 바로 HiPPO (High-order Polynomial Projection Operators)다.
HiPPO는 '고차 다항식 투사 연산자'를 의미하는 것으로서 시간에 따라 변화하는 데이터를 다항식 기반의 최적화된 방법으로 압축 및 표현하여, 과거 데이터를 효율적으로 요약하면서도 새로운 데이터가 유입될 때마다 실시간으로 업데이트할 수 있는 수학적 도구다. 구체적인 내용은 다음 논문에 있으니 참고하기 바란다.
Albert Gu, Tri Dao, Stefano Ermon, Atri Rudra, and Christopher Re, "HiPPO: Recurrent Memory with Optimal Polynomial Projections", arXiv:2008.07669v2, Oct. 2020.
HiPPO 알고리즘은 직교 함수(orthogonal function)와 투사(projection)의 개념에 바탕을 두고 있으므로 이에 대한 사전 지식이 필요하다.
먼저 두 벡터
만약
벡터의 경우와 마찬가지로, 구간
여기서
임의의 벡터
여기서
여기서
벡터의 경우와 마찬가지로, 함수
여기서
단위 직교 함수의 성질을 이용하면 식 (6)의 계수
원래 함수
이때 근사 함수

이제 시간 구간
위에서 논한 바와 같이 함수
식 (10)에서 계수
균등 가중함수는 구간
여기서 시간
식 (11)에 의하면 가중함수는 모든 시간 구간을 동일한 비중으로 고려하며 시간이 증가함에 따라 가중치를 다시 균등하게 재분배하는 것을 알 수 있다.

르장드르 다항식은 다음과 같이 직교 특성을 가지고 있다(https://pasus.tistory.com/175).
적분 구간이
그러면 적분 구간은
식 (11)의 균등 가중함수와 식 (14)를 고려하여 기저함수를 다음과 같이 선정한다.
여기서 시간
이 되므로 기저함수는 구간
정리하면, 함수
'AI 딥러닝 > Sequence' 카테고리의 다른 글
HiPPO - 3 (0) | 2025.01.12 |
---|---|
HiPPO - 2 (0) | 2025.01.09 |
[PtrNet] Pointer Net 구조 (0) | 2023.09.12 |
[seq2seq] 어텐션이 포함된 seq2seq 모델 (0) | 2023.08.23 |
[seq2seq] 간단한 seq2seq 모델 구현 (0) | 2023.08.17 |
댓글