모델: 시퀀스 처리 –
ㅁ 시퀀스 처리
ㅇ 정의:
문장 또는 토큰 시퀀스를 구분하기 위해 사용하는 특수 토큰 중 하나로, 특히 BERT 계열 모델에서 두 문장을 구분할 때 사용되는 구분자 토큰.
ㅇ 특징:
– 일반적으로 토큰화 과정에서 자동으로 삽입됨.
– 두 개 이상의 문장을 하나의 입력으로 처리할 때 경계 표시 역할 수행.
– 모델이 문장 A와 문장 B를 구분하여 처리할 수 있게 함.
ㅇ 적합한 경우:
– 문장 쌍 분류(Task: Next Sentence Prediction, 문장 유사도 판단 등)
– 질의-응답(QA)에서 질문과 문서 구분
ㅇ 시험 함정:
– [SEP] 토큰이 문장 끝마다 항상 필요한 것은 아님(단일 문장 입력 시 마지막에만 사용)
– [CLS]와 혼동하는 경우가 많음
– 패딩 토큰([PAD])과 역할이 전혀 다름
ㅇ 시험 대비 “패턴 보기” 예시:
O: “BERT에서 두 문장을 입력할 때 [SEP] 토큰이 문장 경계에 사용된다.”
X: “[SEP] 토큰은 입력 시퀀스의 길이를 맞추기 위해 사용된다.”
ㅁ 추가 학습 내용
[SEP] 토큰은 BERT 구조에서 segment embedding과 함께 사용되어 문장 구분을 명확히 한다. 단일 문장을 입력할 때도 마지막에 [SEP]를 추가하는 것이 일반적이며, 이는 모델 학습 시 일관성을 유지하기 위함이다. 일부 모델(RoBERTa 등)은 NSP(Next Sentence Prediction)를 사용하지 않지만, [SEP] 토큰은 여전히 문장 구분 목적으로 사용된다. 시험에서는 [SEP], [PAD], [CLS]의 역할 차이를 묻는 문제가 자주 출제된다. 또한 토크나이저에 따라 [SEP] 토큰의 ID 값이 다르므로 구현 시 주의가 필요하다.