5분만에 트랜스포머 엔코더 이해하기

여기에 이미지 설명 삽입

이 기사는 네트워크의 훈련이 아닌 네트워크의 구조만을 다룹니다.
변압기는 6개의 인코더와 6개의 디코더로 구성됩니다.

하나, self-attention

여기에 이미지 설명 삽입
싱글 헤드 셀프 어텐션을 직접 건너뛰고 멀티 헤드는 q, k, vq,k,v를 의미합니다.q ,k ,하나 이상의 v가 있으며 , 그림에서 보듯이 양쪽 끝에서 self-attention입니다.
그렇다면 단일 헤드 어텐션이 아닌 이유는 아마도 모든qqqkkk 의 상관관계 가 다르므로 여러 상관관계를 결합한 계산이 더 강력합니다.
여기에 이미지 설명 삽입
위치 코드: 명확히 하기 위해aaa 는 이미 인코딩되어 있습니다.a 이므로 사실 시간별로 하나씩 입력하면 이 위치정보는 필요없지만 셀프어텐션의 특수성으로 인해 위치정보를 추가해야 합니다. 그 특이점은 self-attention이 동등하게 취급된다는 것입니다.상관관계를 계산할 때 첫 번째 단어와 마지막 단어는 멀리 떨어져 있기 때문에 작은 가중치를 갖지 않습니다.이러한 연산은 실제로 원래 위치 정보를 버립니다.그래서 여기에 추가하십시오. .

2. 인코더

인코더는 이름에서 알 수 있듯이 입력을 기계가 쉽게 학습할 수 있는 벡터로 인코딩(변환)합니다. 여기서 트랜스포머의 저자는 음성 신호가 입력되면 6개의 인코더를 거쳐야 기계가 음성 신호를 학습하기 쉬워진다고 믿고 있다.
여기에 이미지 설명 삽입
1. 입력은 소리 신호 또는 텍스트를 벡터 형식으로 변환하는 입력 임베딩 레이어를 통과합니다.
2. 위치 코드를 추가하십시오. 이 신호에는 위치 정보가 없습니다. 여기에 위치 정보를 추가하십시오.
3. Multi-head Attention Layer를 통해
4. 이전 단계의 출력에 잔차를 추가한 다음 계층 정규화 수행(샘플의 모든 특징에 대해)
5. MLP 계층을 통해
6. 잔차를 의 출력에 추가 이전 단계 및 레이어 정규화 수행

위의 6단계는 출력을 얻기 위해 6번 수행되며, 출력도 벡터 집합 또는 시퀀스이지만 인코딩된 시퀀스는 특정 기능을 추출하므로 나중에 디코더에 넣는 것이 더 나을 수 있습니다.

Supongo que te gusta

Origin blog.csdn.net/xiufan1/article/details/122552132
Recomendado
Clasificación