2. BERT 모델감성분석
1) 학습 및 평가 데이터 세트
(1) 데이터 세트 준비
- strafify : target에는 0,1이 있는데, 한쪽으로 치우치지 않게 해주는 것(0에서 80% 1에서 80%)
- train data에서 train과 val 또 나눔.
(2) 데이터 세트 클래스 정의
- overriding을 통해 재정의.
2) Pre-trained 모델 다운로드 및 Fine-tunning 설정
(1) Pre-trained Tokenizer 다운로드
- 데이터 보기 전에, 토크나이저를 지정 함.
- 우리가 다운 받은 모델과 호환되는 것을 해야 함.
- 보통은 모델 다운 받은 곳에 토크나이저를 제공함.
- 우리는 bert-base-uncased 사용 (작은 모델을 사용, 대소문자 구분 x)
- bert-large-uncased (이거는 큰 모델 24layer)
- tolist( ) : 시퀀스를 리스트로 변환
(2) Pre-trained 모델 다운로드
(3) Fine-Tuning 설정
- 스스로 필요한 튜닝 작업
- 그럼 번호와 pooler 아는 방법은?
- 아키테처 구조를 아는 것 출력을 해서, 그거에 맞춰서 학습 전략 수립
3) 모델 학습 및 평가
(1) Training을 위한 하이퍼 파라미터 설정
- watmup_steps : 초반에는 learning rate 증가폭 크게하지만, 나중에는 줄임. 그것을 지정해주는 것
- :weight_decay : 가중치가 지나치게 커지는 것을 방지(비율로 지정)
- save_stratehy : 어떤 단계에서 저장할꺼냐?
- evalution_strategy : 평가는 steps단위로 하겠다
(2) Evaluation을 위한 Test 데이터 세트 준비 및 파라미터 설정
- do_predict = True는 예측 수행
(3) Evaluation을 위한 Predict 수행
- 실제 사용할 trainer 객체 생성함.
- 여기 모델은 fine-tuning한 모델을 넣으면 된다.
'🥾 프로젝트 > (STEP)파이썬을 활용한 인공지능 자연어 처리' 카테고리의 다른 글
8-2회차) BERT 모델을 활용한 Text Classification 모델 구현 (0) | 2023.05.15 |
---|---|
8-1회차) BERT 모델을 활용한 Text Classification 모델 구현 (0) | 2023.05.15 |
7-1회차) 자연어 처리를 위한 BERT 모델 (0) | 2023.05.13 |
6-2회차) 자연어 처리를 위한 Transformer 적용 (0) | 2023.05.11 |
6-1회차) 자연어 처리를 위한 Transformer 적용 (0) | 2023.05.10 |