DACON Monthly Korean sentence relation classification Competition

Algorithm | NLP | Classification | Natural Language | Accuracy

 

Private 2nd | 0.899 | Dataset Wrangling

2022.03.01 20:33 2,866 Views language

Classification 작업에 앞서서 크게 다섯 가지 작업을 수행했습니다.

1. 리뷰 데이터(NSMC, AirBnB)와 논설문 데이터(Wikipedia, Wikinews 등)의 비교
2. 리뷰 데이터와 논설문 데이터의 장르 분류 작업
3. NLI task에 맞는 랜덤 셔플링 적용, StatifiedKFold와 KFold의 비교
4. Pororo를 이용한 만족도와 평점 라벨링
5. 장르 / 만족도 / 평점을 사용하여 만든 Text Span 각 문장에다가 접붙이기

오히려 분류작업보다 데이터셋 작업에서 끙끙 앓았던 것 같습니다.
읽으시면서 생기는 궁금하신 부분을 알려주신다면, 곧 저에게도 배울 기회가 될 것 같습니다.
감사합니다.

Code
Login Required
0 / 1000
dxxrphine
2022.03.01 20:43

영진님 안녕하세요 함께 부스트캠프 참여했던 정두해라고 합니다!
저도 데이터셋을 어떻게 처리할지, 특히 KorNLI 데이터셋을 어떻게 활용할지 고민을 많이 했었는데 많이 배우고 갑니다! 감사합니다

snoop2head
2022.03.01 20:55

두해님 오랜만이에요 🤗 그저 시간을 갈아넣었을 뿐 ㅎㅎ... 좋게 봐주셔서 감사합니당 💪

건조한안구는싫어
2022.03.01 21:20

데이터 피쳐를 늘려주었을 때 그렇지 않은 데이터와 어느정도의 차이가 있나요?

snoop2head
2022.03.01 21:34

반갑습니다 :) span text에 대해서 말씀하시는 거라면 다음과 같았습니다.
- pororo labelled span text를 붙였을 때 -> +0.1%p
- pororo와 electra의 평균치로 span text를 붙였을 때 -> +0.1%p

장어
2022.03.02 22:13

엄청나네요.. 수고하셨습니다!
공유 감사합니다!! 

snoop2head
2022.03.03 00:57

감사합니다 :)

정성문
2022.03.04 13:50

Stratifiedfold 할 때 Robust 한 성능지표를 얻기 위해서 premise를 고려해서 fold를 나누신 게 굉장히 인상깊네요!! 
근데 데이콘 test셋의 premise는 Klue data에 포함되어 있기 때문에 오히려 적용하지 않는게 리더보드 점수와 local 성능 지표의 차이를 줄일 수 있지 않나 생각하는데 실제로는 어땠는지 궁금하네요

snoop2head
2022.03.04 19:23

성문님 안녕하세요 :D 
Test 셋의 premise가 KLUE의 Dev 셋에 포함되어 있는 걸 말씀하시는 것 같습니다.

하지만 훈련 데이터셋에 포함되어있다고 해서, 모든 Fold가 해당 premise를 학습하는 건 아닐 것 같습니다.
즉, StratifiedKFold 같은 경우는 모든 fold가 한 문장쌍 이상(A or A,B or A,B,C)을 본다는 특징이 있고,
이번 대회에 사용한 KFold 같은 경우는 1 fold를 제외하고 나머지 fold가 세 문장쌍(A,B,C)을 보게하도록 강제한 것입니다.

모델로 하여금 더 어려운 Task를 시키는 것이 낫다고 판단했기에, 새로운 문장쌍을 보고 예측하게 한 지표들이 더 믿을만하다고 판단했습니다.
실제로 evaluation metrics 측면에서는 SKF가 KFold보다 더 나은 지표들을 보이지만, 막상 제출했을 때에는 KFold가 0.1%p ~ 0.3%p 더 나은 성능을 보여줬습니다.