인프런 커뮤니티 질문&답변

이상원님의 프로필 이미지
이상원

작성한 질문수

최신 딥러닝 기술 Vision Transformer 개념부터 Pytorch 구현까지

어텐션 기법 - 키, 쿼리, 밸류는 무엇인가?

Key query value관련 질문

해결된 질문

작성

·

409

1

안녕하세요 강사님. 비전 트랜스포머를 열심히 듣고 있는 학생입니다.
보통 키, 쿼리 밸류하면 어떤 임베딩된 입력을
키에 따로, 쿼리 따로 밸류 따로 linear연산을 수행을 하고
쿼리와 키를 내적을 하는 걸로 알고 있습니다.
여기서 궁금한 점이 있는데
키 쿼리 밸류 별로 linear(선형 연산)연산을 왜 하는지 궁금하게 되었습니다.
패치(이미지)에서 feature을 더 잘 뽑으려고 하는 것인가요?
 

답변 2

1

딥러닝호형님의 프로필 이미지
딥러닝호형
지식공유자

안녕하세요.

 

키, 쿼리, 밸류 별로 왜 linear 연산을 하는지 궁금해 하셨는데요.

"왜"라는게 정확히 무엇이 궁금하신지 모르겠습니다.

키, 쿼리, 밸류는 동일한 어텐션 인풋으로 부터 얻어지는 것인데요. 모두를 linear연산으로 정의했을 때 동시에 연산할 수 있는 장점이 있고요. 또한 linear 연산은 벡터 형태로 들어오는 것을 처리하는데 가장 기본적으로 쓰이는 구조이기 때문에 쉽게 적용 가능합니다. 

 

답변이 되셨나요? :)

0

이상원님의 프로필 이미지
이상원
질문자

오오 빠른 답변감사드립니다. 

처음에 임베딩된 입력벡터를 그냥 키 쿼리 밸류로 단순히 복사해서 키와 쿼리를 비교하지 않고 

키와 쿼리, 밸류로 각각 linear로 한번씩 처리하고 비교하는 이유가 궁금해져서 여쭤보았습니다.

감사합니다!  

딥러닝호형님의 프로필 이미지
딥러닝호형
지식공유자

각각 다른 역할을 하기 때문에 단순히 복사하지 않고 각각에 대한 연산을 별로로 거치게 되는 것입니다. :)

이상원님의 프로필 이미지
이상원
질문자

감사합니다! 키 쿼리 밸류 한 번 다시 훝어보겠습니다. 좋은 하루 되세요!

이상원님의 프로필 이미지
이상원

작성한 질문수

질문하기