작성
·
720
0
안녕하세요. 선생님
Cross Attention에 대한 질문을 드리고 싶습니다.
Flatten 및 embedding된 이미지 A(784xC), 이미지 B(1024×C)가 있을 때,
이미지 A를 Cross Attention의 Key와 Value로,
이미지 B를 Cross Attention의 Query로 사용하려고 합니다.
Scale dot attention 계산 과정 중
Softmax(QK^T/sqrt(d_k)까지 하면
(1024x784)인 행렬이 나올테고
이 행렬에 Value를 행렬곱하면
(1024xC)가 나올텐데
그럼 Attention한 결과(1024xC)는 이미지 A에 대한 내용이 맞나요?
원래 이미지 A는 784행으로 이루어져 있었는데
결과는 1024행으로 나와서 헷갈려서요.
답변 1
0
안녕하세요.
z의 크기를 항상 일정하게 해야만 MSA의 반복 연산이 가능합니다.
그런데 어떤 의도신지는 모르겠지만 왜 q,k,v의 크기가 다른거죠?
q = 1024 x c
k = 874 x c
v = 874 x c
라고 하면 qk^T가 1024 x 874이므로 A가 1024 x 874이고 Av는 1024 x c가 되므로 다음 연산이 안 될 것 같습니다. 따라서 원하시는 것을 하시려면 메카니즘을 바꿔야 할 것 같아요.
감사합니다.