ABSA 대회 데이터 분석

정성현·2022년 11월 10일
0

ABSA 대회

목록 보기
2/2

1. 데이터 구성

제공 데이터 형식은 jsonl 형식으로 구성되어 있고, 문장이 주어지면, 해당 문장에 등장한 개체&속성 쌍들과 그 쌍 각각에 대한 극성(Positive, Neutral, Negative) 값으로 이루어져 있다.
도메인은 화장품, 자동차 부품, 생활용품 등 쇼핑 분야이다.


2. 극성별 분포

  • Train set
    Positive : 3,102개
    Negative : 58개
    Neutral : 95개

  • Validation set
    Positive : 2,997개
    Negative : 28개
    Neutral : 54개

Negative, Neutral에 비해 Positive 데이터가 압도적으로 많아 모델 성능이 걱정되었다. 쇼핑 리뷰 특성상, 리뷰 이벤트 등으로 인해 Positive로 치우쳐질 수 밖에 없었던 거 같다. Data Imbalance를 해결하기 위해 여러 논문들을 읽고, loss 함수 측면에서와 Data Augmentation 측면으로 접근해 보았는데 효과가 없었다. 진행한 실험 및 과정들은 따로 정리하겠다.


3. Emoji

데이터 분석을 하면서 되게 재밌는 걸 발견했는데, 아마 이 부분이 이번 대회에서 가장 크게 얻은 게 아닐까 한다.
바로 Emoji를 Unknown 토큰으로 처리한다는 것이다. 물론, 사전학습 모델의 Tokenizer에 따라 Emoji를 잡아낼 수도 있겠지만, 중요한 건 Emoji가 Tokenizer vocab에 존재하지 않는다면, 같이 붙어있는 단어까지도 통째로 Unknown 처리가 되는 것이었다. 만약 Emoji가 문장의 정보를 가장 잘 나타내는 단어 옆에 붙는다면, 모델은 해당 문장의 정보를 제대로 추출하지 못할 것이다. 이 문제를 해결하기 위해 후에 다양한 실험(실험 분석 부분 참고)들을 했고, 실제로 큰 효과가 있었다.
NLP에서 전처리가 얼마나 중요한지 느낄 수 있는 순간이었다.


4. 맞춤법, 띄어쓰기

리뷰 데이터라 그런지, 텍스트에 Noise들이 많이 보였다. 띄어쓰기와 맞춤법들이 잘 맞지 않는 경우가 많았다. 학습 전에 데이터 전처리가 필요해 보였다.

profile
데이터에 관심이 많은 백엔드 개발자

0개의 댓글