Attention is All You Need
attention is all you need. 순환신경망이 필요하지 않다! 순환신경망 기반의 seq2seq모형이 갖는 문제점 보완하기 위해 나옴 기존 문제는?
입력된 sequence data에 대해 하나의 고정된 벡터정보(마지막 은닉층) 만 디코더로 전달. 그게 제일 많이 저장되고 앞에 내용이 소실되어버린다는 것. 근데 번역을 위해서는 앞의 내용이 다 필요.
attention은 모든 단어들에 대한 hidden state 정보를 decoder로 전달
넘어온 각각의 단어에 대한 히든스테이트 정보를 어떻게 사용할까? 특정 타임스텝에서 예측하고자 하는 단어가 있을 때, 그거랑 관련이 상대적으로 높은 단어에 가중치를 더 주는(그 hidden state에 attention0 방법. 가중치의 합은 1. friday를 예측할 때 어떤 정보를 더 많이 활용하겠다.
encoder-decoder attention
유사도 → 유클리디안/내적/코사인유사도
self attention
attention은 인코더디코더 모형에서 인코더에서 넘어오는 정보에 가중치 주는 방식이라면, self attention은 입력된 텍스트 데이터 내에 존재하는 단어들간의 관계를 파악하기 위해 사용.
의문: 그럼 가깝다는 정보를 어떻게 넣어주지?
attention score: 단어간의 유사한 정도를 표현. 서로다른 embedding vector 간 유사한 정도. “Monday”단어에 대한 임베딩 벡터와 다른 단어들의 벡터들(자신 포함) 간의 내적연산→추후 softmax
의문: 그럼 임베딩 벡터는 어떤 기준으로 만들어진거지?..
입력된 sequence data에 대해 하나의 고정된 벡터정보(마지막 은닉층) 만 디코더로 전달. 그게 제일 많이 저장되고 앞에 내용이 소실되어버린다는 것. 근데 번역을 위해서는 앞의 내용이 다 필요.