Transformer 디코더에서 MASK를 사용하여 토큰을 학습하는 과정은 다음과 같은 순차적 흐름으로 설명할 수 있습니다.
- train 중에 디코더는 전체 대상 시퀀스를 입력으로 수신하고 한 번에 한 토큰씩 출력 시퀀스를 생성합니다.
- 각 디코딩 단계에서 디코더가 출력 시퀀스의 후속 위치에 참여하는 것을 방지하는 마스크가 디코더의 셀프 어텐션 메커니즘에 적용됩니다. 이것은 masked attention으로 알려져 있습니다.
- 마스킹된 디코더 self-attention 메커니즘은 Query, Key, Value 벡터를 사용하여 인코더 출력의 가중합을 계산하여 출력 시퀀스에서 이전에 생성된 토큰에 주의를 기울입니다.
- 결과 컨텍스트 벡터는 일반적으로 이전 출력 토큰의 임베딩인 디코더 입력과 연결되고 피드포워드 네트워크를 통해 전달되어 디코더 출력을 생성합니다.
- 그런 다음 디코더 출력은 시퀀스의 다음 출력 토큰을 예측하는 데 사용됩니다.
- train 중에 디코더의 예측을 실제 대상 시퀀스와 비교하여 손실을 계산하고 역전파를 통해 모델 매개변수를 업데이트하는 데 사용합니다.
- 업데이트된 모델 매개변수는 출력 시퀀스에서 다음 토큰을 생성하기 위해 다음 iteration에서 사용됩니다.
- 이 프로세스는 전체 출력 시퀀스가 생성될 때까지 계속됩니다.