네이쳐2024 2024. 10. 22. 13:31

 

attention 은 rnn 으로 sequence 2 sequence에서 bottle neck problem(시간관계없고, 어떤문장이든 길어지던간에 고정길이 ht에 정장한다.) 을 해결하기 위해 나옴

data의 어떤 부분에 집중 attention해서 출력을 계산해야할지 자동으로 학습하는기법

장점: 중요한부분에 집중해서 계산(마지막 ht만 본게 아니라 여러 h를 보면서 그중 어디 집중할지 보니,

정보손실이 없다)

 

 

 

 

bottle nectk problem: final ht에 너무 많은 정보를 넣어서 병목현상문제 발생

 

해결점 -> attention mechanisam

입력문제를 다 보지 않고 집중해서 몇몇만 봄

 

 

attention -> 입력값, 출력값을 잘 나열 -> alignment로 부름 (without supervision)

 

hn x d1 -> softmax -> 출력값 attention값들(distribution) (h1,h2,h3,h4 x d1-> 내적한후 softmax 한값이 a1,a2, a3, a4)

 

입력문장 h1,h2,h3,h4에 문장내에 어떤부분을 가중치를 많이 줄건가 -> 가중합 a를 곱함

 

 

concatenate

 

 

가중합 = z백터

여기에 d1벡터를 concatnate -> x벡터

여기에 원하는 y^ 을 구하기 위해 w를 곱한다.

 

위 과정을 반복 -> attention

 

attention - 집중하는 부분 - 하얀색

화면 기록 2024-10-22 오전 10.57.24.mov
3.20MB