쉬엄쉬엄블로그

(KLUE) BERT 언어모델 소개 본문

부스트캠프 AI Tech 4기

(KLUE) BERT 언어모델 소개

쉬엄쉬엄블로그 2023. 8. 15. 12:05
728x90

이 색깔은 주석이라 무시하셔도 됩니다.

한국어 언어 모델 학습 및 다중 과제 튜닝

BERT 언어모델

BERT 모델 소개

  • 트랜스포머 모델은 인코더와 디코더가 하나로 합쳐져있는 구성을 가짐

  • BERT는 self attention 즉, 트랜스포머를 사용한 모델
  • 입력된 정보를 다시 입력된 정보로 표현하기 위해 학습됨
  • 그런데 그냥 원본을 복원하는 것이 아니라 masked된 단어를 맞추도록 학습함
    • 더 어렵게 만든 문제를 해결하도록 만들어서 언어를 학습하도록 만듬

  • * GPT-2는 원본 이미지를 특정한 sequence를 가지고 잘라낸 후 그 다음을 예측하도록 학습함*

  • 모델 구조도

  • 학습 코퍼스 데이터

    • BooksCorpus (800M words)
    • English Wikipedia (2,500M words without lists, tables and headers)
    • 30,000 token vocabulary
  • 데이터의 tokenizing

    • WordPiece tokenizing

    • He likes playing → He likes play ##ing

    • 입력 문장을 tokenizing하고, 그 token들로 ‘token sequence’를 만들어 학습에 사용

    • 2개의 token sequence가 학습에 사용

  • Masked Langauge Model

  • NLP 실험

    • 위 데이터들을 통해 성능 평가 지표를 만듬

BERT 모델의 응용

  • 감성 분석

    • 입력된 문장의 대해서 이 문장이 긍정이냐 부정이냐를 분류하는 task

  • 관계 추출

    • 문장 내에 존재하는 지식 정보를 추출하는 task

    • 관계 추출의 대상이 되는 존재를 entity라고 함

    • ex) ‘이순신은 조선 중기의 무신이다.’ 에서 이순신의 직업을 물었다면 ‘이순신’ 과 ‘무신’ 이 entity가 됨*

  • 의미 비교

    • 두 문장이 의미적으로 같냐 다르냐를 분류하는 task

    • 데이터가 너무 쉽기 때문에 현업에서 쓸 수 없음

  • 개체명 분석

  • 기계 독해

    • task에 맞춰서 tokenizer를 정의하여 사용하면 성능 개선이 가능

한국어 BERT 모델

  • ETRI KoBERT의 tokenizing

  • 한국어 tokenizing에 따른 성능 비교 (https://arxiv.org/abs2010.02534)

    • 형태소 분석을 먼저하고 wordpiece를 적용한 것(Morpheme-aware Subword)이 성능이 가장 좋았음
  • Advanced BERT model

    • KBQA에서 가장 중요한 entity 정보가 기존 BERT에서는 무시

    • Entity linking을 통한 주요 entity 추출 및 entity tag 부착

    • Entity embedding layer의 추가

    • 형태소 분석을 통해 NNP와 entity 우선 chunking masking

    • 학습 데이터 : 2019년 6월 20일 Wiki dump (약 4,700만 어절)

    • Batch : 128

    • Sequence length : 512

    • Training steps : 300,000 (대략 10 epochs)

    • entity embedding layer를 추가하여 wiki(약 600MB) 데이터를 사용했을 때 성능이 훨씬 향상됨

출처: 부스트캠프 AI Tech 4기(NAVER Connect Foundation)

Comments