[프리온보딩 AI/ML] 1주차 Day 2 과제

bluegun·2022년 2월 22일
0

1.Paperswithcode(https://paperswithcode.com/task/natural-language-understanding)에서 NLU sub task 중 하나를 선택하여 본인 블로그에 정리해보세요. 아래 3가지 항목에 대해서 정리하세요. (각 항목 고려 사항 참고)

  • 문제 정의
    • task가 해결하고자 하는 문제가 무엇인가?
  • 데이터셋 소개(대표적인 데이터셋 1개)
    • task를 해결하기 위해 사용할 수 있는데 데이터셋이 무엇인가?
    • 데이터 구조는 어떻게 생겼는가?
  • SOTA 모델 소개(대표적인 모델 최소 2개 이상)
    • task의 SOTA 모델은 무엇인가?
    • 해당 모델 논문의 요약에서 주요 키워드들에 대한 설명

Sentiment Analysis(감정 분석)

  • 주어진 문장에 대한 감정을 판별하는 문제를 의미한다. 대체로 문장이 Input으로 주어지면, 이 문장을 미리 label로 지정한 특정 감정으로 classification하는 형태가 대표적인 예시로 보인다.

  • 대표적인 활용 예시인 Review 분야를 예로 들면, 영화에 대한 Review가 Input으로 들어오면(ex. 영화 보다가 잠들뻔 했어요.), 이 Review를 NLU로 이해하여 해당 Review를 긍정/부정으로 분류할 수 있다.
    ※ 감정 분석 영역에 포함된다고 해야할 진 모르겠지만, 댓글을 보고 악플인지 판단하는 악플 탐지의 경우, output label을 악플이다/아니다로 나눌 수 있을 것이므로 유사한 예시라고 생각할 수 있을 것 같다.

  • 대표적인 Dataset으로 SST가 있다.

    • Stanford Sentiment Treeback
    • 영화 Review에서 추출한 단일 문장으로 구성되어 있으며, 각 문장을 Parse tree를 통해 phrase 단위로 구분된다. 이 phrase가 특정 감정으로 분류되는데, class 개수에 따라 SST뒤에 숫자가 붙는다.(ex. 긍정/부정의 이진 분류일 경우 SST-2)
    • huggingface의 SST 예시
  • SOTA 모델로는 ALBERT, XLNet 등이 있다.

    • ALBERT는 기존에 모델들이 성능을 높이기 위해 모델 크기를 키우는 방식이, GPU/TPU 메모리에 한계가 있다는 점과 긴 학습 시간 때문에 무한정 키우는 데 한계가 있다고 지적하였다. 이를 위해 기존 BERT에서 Input token embedding size를 줄이고, Transformer layer간 같은 parameter를 공유하여 모델 size를 확 줄였다. 또 Sentence order prediction을 적용하여, 두 문장의 연관성을 파악할 때 두 문장의 순서를 바꿨을 때 어떤 문장이 옳은지 예측하는 식으로 구성하여 좀 더 문장간의 연관 관계를 잘 학습한다.
    • XLNet은 auto-regressive model과 auto-encoder model의 장점만을 합한 Generalized AR pretraining model이다. 또 Permutation language modeling objective과 Two-stream attention mechanism 기법을 적용하였다.

3개의 댓글

comment-user-thumbnail
2022년 2월 22일

ALBERT가 지닌 설계의 특장점을 잘 설명해주셔서 감사합니다.

답글 달기
comment-user-thumbnail
2022년 2월 22일

SST 데이터셋은 처음 접해보는데, 위에 작성해주신 것처럼 문장 1개에 대한 1개의 감정이 아닌, parse tree 구조를 이용했을 때의 특징점이 무엇인지 궁금해졌습니다. 고생하셨습니다!

답글 달기
comment-user-thumbnail
2022년 2월 22일

특이한 데이터셋이네요 특히 데이터셋에서 트리구조를 만들어냈다는게 신기하네요 고생하셨습니다.

답글 달기