이미 파인튜닝된 언어모델을 가지고, 감정을 분류하는 과정을 단계적으로 설명하겠습니다.
1. 텍스트 입력 처리
입력된 자연어 문장을 언어모델이 이해할 수 있는 형태로 변환합니다.
- 토크나이징
- 숫자 id로 변환
- 패딩 및 어텐션 마스크 처리
2. 모델 입력 및 통과
변환된 입력 데이터를 BERT와 같은 모델에 전달
transformer에서 입력한 문장 내의 단어들의 문맥정보를 학습하고 최종 특징 벡터를 생성합니다.
- 임베딩 레이어에서 입력데이터가 토큰 임베딩, 위치 임베딩, 세그먼트 임베딩으로 변환
- Transformer 인코더에서 attention 매커니즘을 사용해서 각 단어가 문맥적으로 다른 단어와 어떻게 연관되는 지 학습한다
- 트랜스포머 모델(ex. bert, gpt)는 기본적으로 특징 추출기 역할을 합니다.
- 마지막 인코딩 레이어에서 [CLS] 벡터를 가져온다.
- 여기서, [CLS] 벡터는 문장 전체의 의미를 담고 있다.
3. 트랜스포머 모델 위의 헤드에 통과 => 결과 출력
[CLS] 벡터를 트랜스포머 모델 위의 헤드에 통과 시킵니다.
이 벡터 자체에는 감정 분석이나 번역 등 구체적인 작업에 바로 사용될 수 없습니다.
그래서, 트랜스 포머 모델 위에 특정 작업을 위한 모듈인 '헤드'를 추가해 결과를 만들어 냅니다.
이 헤드는 완결 연결층, 소프트 맥스 등으로 구성되어 있습니다.
- 완전 연결층(Dense Layer)는 트랜스 포머의 출력 벡터를 입력받아 저차원 벡터로 전환
ex) [CLS] 벡터 크기 -> 감정 레이블의 갯수 - 소프트맥스 함수에 통과시켜 각 감정 클래스(예: 긍정, 부정, 중립)에 대한 확률 분포를 얻습니다.
'ai' 카테고리의 다른 글
[기술면접] 딥러닝은 무엇인가요? 딥러닝과 머신러닝의 차이점? (0) | 2025.01.08 |
---|---|
[Together.ai] 멀티턴 대화 파인튜닝 하는법 (0) | 2025.01.07 |
[용어정리] 모델 vs 아키텍쳐 vs 가중치의 관계 (0) | 2025.01.06 |
[기술면접] 트랜스포머란 무엇인가요? (0) | 2025.01.06 |
[기술면접] 자연어 처리란 무엇인가요? (0) | 2025.01.05 |