손실 마스킹: Attention Masking
ㅁ 손실 마스킹
ㅇ 정의:
– 손실 마스킹은 모델 학습 시 특정 위치의 손실 값을 무시하거나 제외하여 계산하는 기법이다.
ㅇ 특징:
– 주로 패딩 토큰이나 학습에 불필요한 요소를 제외하기 위해 사용된다.
– 손실 계산 과정에서 마스킹된 값은 손실에 영향을 미치지 않는다.
ㅇ 적합한 경우:
– 입력 데이터에 패딩이 포함된 경우
– 특정 데이터 셋에서 학습 대상이 아닌 항목을 제외해야 하는 경우
ㅇ 시험 함정:
– 손실 마스킹과 Attention Masking의 개념을 혼동할 가능성이 있다.
– 마스킹 적용 후 손실 계산 과정에서 누락된 항목이 없는지 확인해야 한다.
ㅇ 시험 대비 “패턴 보기” 예시:
– O: 손실 마스킹은 패딩된 토큰을 손실 계산에서 제외한다.
– X: 손실 마스킹은 모든 입력 데이터를 동일하게 처리한다.
================================
1. Attention Masking
ㅇ 정의:
– Attention Masking은 모델의 어텐션 메커니즘에서 특정 위치에 대한 가중치를 0으로 설정하여 무시하도록 하는 기법이다.
ㅇ 특징:
– 주로 입력 데이터의 패딩 토큰이나 불필요한 부분을 제외하기 위해 사용된다.
– 마스킹된 위치는 어텐션 계산에 영향을 미치지 않는다.
ㅇ 적합한 경우:
– NLP 모델에서 패딩 토큰을 포함한 입력 데이터를 처리할 때
– 특정 위치의 정보를 모델이 학습하지 않도록 제한해야 할 때
ㅇ 시험 함정:
– Attention Masking과 손실 마스킹을 동일한 개념으로 오인할 수 있다.
– 마스킹 적용 후 모델 출력이 의도한 대로 작동하는지 확인하지 않는 경우 실수가 발생할 수 있다.
ㅇ 시험 대비 “패턴 보기” 예시:
– O: Attention Masking은 패딩 토큰의 영향을 제거하기 위해 사용된다.
– X: Attention Masking은 손실 계산을 위한 마스킹 기법이다.
ㅁ 추가 학습 내용
손실 마스킹과 Attention Masking의 차이점을 명확히 이해하기 위해 각각의 개념, 사용 목적, 작동 방식, 그리고 주요 차이점을 정리합니다.
1. 손실 마스킹 (Loss Masking)
– 개념: 손실 마스킹은 모델의 손실 함수 계산 과정에서 특정 토큰이나 데이터를 제외하기 위해 사용됩니다.
– 사용 목적: 주로 패딩 토큰과 같이 학습에 유효하지 않은 데이터를 손실 계산에서 제외하여 모델이 불필요한 정보에 의해 영향을 받지 않도록 합니다.
– 작동 방식: 손실 계산 시, 마스킹된 위치에 대해 손실 값을 무시하거나 0으로 처리하여 모델이 해당 위치를 학습하지 않도록 합니다.
– 예시: 시퀀스 데이터에서 패딩 토큰이 포함된 경우, 패딩 토큰이 손실 계산에 포함되지 않도록 마스킹을 적용합니다.
2. Attention Masking
– 개념: Attention Masking은 어텐션 메커니즘에서 특정 위치의 정보를 차단하거나 제한하기 위해 사용됩니다.
– 사용 목적: 모델이 불필요하거나 부적절한 위치에 주의를 기울이지 않도록 하여 올바른 학습을 유도합니다.
– 작동 방식: 어텐션 점수 계산 단계에서 마스킹된 위치의 값을 매우 작은 값(예: 음의 무한대)으로 설정하여 소프트맥스 결과에서 사실상 무시되도록 만듭니다.
– 유형:
– Causal Mask: 언어 모델에서 미래의 토큰을 보지 않도록 현재 시점 이후의 토큰을 마스킹합니다.
– Padding Mask: 입력 데이터에서 패딩 토큰 위치를 마스킹하여 어텐션 메커니즘이 패딩 토큰에 주의를 기울이지 않도록 합니다.
– 기타: 특정 토큰이나 위치를 마스킹하는 커스텀 마스크도 사용될 수 있습니다.
3. 주요 차이점
– 사용 단계: 손실 마스킹은 손실 함수 계산 단계에서 사용되며, Attention Masking은 어텐션 메커니즘 단계에서 사용됩니다.
– 목적: 손실 마스킹은 손실 계산에서 불필요한 데이터를 제외하기 위해 사용되고, Attention Masking은 어텐션 메커니즘이 특정 위치에 주의를 기울이지 않도록 하기 위해 사용됩니다.
– 적용 범위: 손실 마스킹은 주로 출력과 관련된 데이터에 적용되며, Attention Masking은 입력 데이터의 어텐션 계산에 적용됩니다.
이처럼 손실 마스킹과 Attention Masking은 각각 다른 단계와 목적을 가지고 있으며, 모델의 학습 과정에서 서로 보완적으로 사용될 수 있습니다.