인프런 커뮤니티 질문&답변
key의 차원으로 정규화
작성
·
165
0
중간에 루트 키의 차원으로 나눠주는 부분에 있어서 내적이 너무 커지는 것을 방지하기 위함이라고 하셨는데 내적이 커지면 왜 그레디언트 배니싱 현상이 일어나는 것인가요?
퀴즈
트랜스포머가 기존 순환 모델(LSTM 등)과 다른 주요 처리 방식은 무엇일까요?
순차적으로 데이터를 처리합니다.
어텐션을 이용해 병렬 처리합니다.
CNN 레이어를 주로 사용합니다.
어텐션 메커니즘을 사용하지 않습니다.
답변 1
0
딥러닝호형
지식공유자
안녕하세요.
좋은 질문 감사합니다.
트랜스포머 저자들이 좀 애매한 표현으로 관련 내용을 언급하였습니다. 내적의 차원과 크기가 커질 경우 softmax의 결과가 미분값이 작은 구간에 모여있을 것이라고 추측 했다고 합니다.
루트 d_k로 나누는 이유는 키, 쿼리 값이 평균 0, 분산 1인 독립 변수라고 가정할 때 내적의 평균과 분산이 각각 0, d_k이 나옵니다. 개인적인 생각으로는 루트 d_k로 나누어 분산을 다시 1로 만들어 키, 쿼리, 내적이 같은 분포를 따르게 하려고 했던 것 같습니다.
추가적으로 CIFAR10을 이용한 우리 실험에서는 스케일링에 대한 유의미한 차이는 없었습니다.
열공하세요!





