본문 바로가기
C.W.K.
Stream
Lesson 01 of 05 · published

왜 합성곱을 다시 봐야 할까?

~12 min · convolution, fft, shift-invariance

Level 0관찰자
0 XP0/50 lessons0/14 achievements
0/100 XP to next level100 XP to go0% complete

합성곱을 다시 볼 이유가 있어

어텐션 이전에는 합성곱이 시퀀스를 섞는 주역이었어. 수학적 성질과 커널이 잘 알려져 있고 세 가지 장점도 분명해. 이동 불변성 덕분에 무늬가 시퀀스 어디에 있든 같은 방식으로 찾고, FFT로 O(L log L)에 계산할 수 있으며, 같은 커널 가중치를 모든 위치에서 공유해.

문제는 표준 1D 합성곱의 수용 영역이 고정되어 있다는 거야. 크기 k인 커널은 k토큰짜리 창 안에서만 정보를 섞어. 장거리 의존성을 잡으려면 엄청나게 큰 커널이 필요하고, 그 가중치를 저장할 메모리도 길이에 비례해 늘어.

필터 자체를 저장하지 않으면 돼

Hyena의 통찰은 필터를 저장할 필요가 없다는 것이야. 작은 신경망이 위치를 받아 그 자리의 필터 가중치를 그때그때 만들어. 전체 시퀀스만큼 긴 필터도 한꺼번에 메모리에 존재하지 않아. 필터를 생성하는 FFN의 매개변수 수는 길이와 무관하게 고정돼.

위치 부호화에서도 볼 수 있는 공학적 발상이야. RoPE는 위치마다 임베딩 매개변수를 저장하는 대신 위치에 따라 정해지는 각도로 회전해. 암시적 필터도 마찬가지로 함수가 위치마다 합성곱 가중치를 만들어. 비용의 중심이 거대한 필터를 저장하는 데서 위치마다 작은 FFN을 호출하는 쪽으로 옮겨 가고, 현대 하드웨어에서는 이 맞바꿈이 훨씬 유리해.

External links

Exercise

작은 암시적 필터 합성곱을 구현해. 위치 부호화와 층 번호를 받아 1024탭 필터를 내는 3층 MLP를 만들고, torch.fft.rfftirfft로 길이 1024인 신호에 적용해. 같은 필터를 쓰는 명시적 conv1d와 결과가 같은지 확인하고 시간도 재 봐. 필터 탭이 512개를 넘을 즈음 FFT 경로가 앞서기 시작하는지 살펴봐. 그 교차점이 Hyena가 필요한 구간의 출발점이야.

Progress

Progress is local-only — sign in to sync across devices.
이 페이지에서 버그를 발견하셨거나 피드백이 있으세요?문제 신고

댓글 0

🔔 답글 알림 (로그인 필요)
로그인댓글을 남기려면 로그인해 주세요.

아직 댓글이 없어요. 첫 댓글을 남겨보세요.