Patrick's 데이터 세상
koELECTRA with Active Learning 감성 분류 개발 후기 본문
반응형
SMALL
https://github.com/hipster4020/sentiment_classification
GitHub - hipster4020/sentiment_classification: 긍정/부정/중립 3개로 분류하는 classification 모델 with active learn
긍정/부정/중립 3개로 분류하는 classification 모델 with active learning - GitHub - hipster4020/sentiment_classification: 긍정/부정/중립 3개로 분류하는 classification 모델 with active learning
github.com
👉🏻 model
Electra with Active Learning
본문 텍스트를 통해 긍정, 중립, 부정으로 분류하는 모델.
pretrained model "monologg/koelectra-small-v2-discriminator"을 활용하여 Downstream Task로 학습한 모델로 active learning을 구현 및 label annotation 추가함
sentiment : 긍정, 중립, 부정
👉🏻 설명
고정된 양의 데이터가 주어지면 semi-supervise 또는 unsupervised learning의 성능은 full-supervised learning에 제한됩니다.
또한, 주석 비용은 대상 작업에 따라 크게 다릅니다.

연결된 loss prediction module은 label이 없는 입력에서 loss 값을 예측합니다.
label이 지정되지 않은 pool의 모든 data point는 loss prediction module에 의해 evaluate 됩니다.

1. Electra Model에 dataset를 input하여 attenttion block 12에 대한 outputs에서 hidden_states를 받아 해당 hidden_states의 값을 LPM(Loss Predict Module)의 입력으로 넣습니다.
2. LPM 내부에서 각각 들어온 input에 대해 Adaptive Average Pooling → flatten → FC layer dense → ReLU를 수행하고 각각의 층을 concat하여 하나의 layer로 추출합니다.
3. 1에서 나온 Electra Model outputs.logits과 labels 데이터로 추출한 CrossEntropyLoss와 LPM에서 추출된 predict loss를 더해 최종 loss로 사용합니다.
👉🏻 요약
label annotation 추가 작업 시에 많은 공수와 비용이 발생하므로 적절한 Active Learining 사용으로 모델의 효율의 크게 증가할 수 있을 것으로 기대됩니다.
👉🏻 참고 자료
논문
깃허브
https://github.com/seominseok0429/Learning-Loss-for-Active-Learning-Pytorch/blob/master/main.py</blockquote>
반응형
LIST
'Deep Learning > 프로젝트 후기' 카테고리의 다른 글
2024년 회고록 (4) | 2024.12.31 |
---|---|
카피라이터 광고 문구 생성모델 학습 후기 (2) | 2023.08.11 |
국내 유통대기업 성격유형별 문체 특성 기반 맞춤형 광고 메시지 생성 모델 재구현 프로젝트 (0) | 2023.05.15 |
Transformer Encoder 카테고리 분류 개발 후기 - 2. train (0) | 2022.03.05 |
Transformer Encoder 카테고리 분류 개발 후기 - 1. Tokenizer (0) | 2022.02.27 |