kongsberg
콩스버그
kongsberg
전체 방문자
오늘
어제
  • 분류 전체보기 (42)
    • DL&ML (29)
    • 웹프로그래밍 (2)
    • 상식 (3)
    • 재테크 (7)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • html 글자크기
  • Llama
  • pylint
  • llm pre-training
  • instruction-pt
  • CMA
  • 거대언어모델
  • GPT
  • 네이버통장
  • 재테크
  • 토스뱅크
  • 네이버CMA
  • CSS 글자크기
  • further pre-training
  • 글자크기 조절
  • TMUX
  • LLM
  • pytorch
  • llm code
  • llama2

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
kongsberg

콩스버그

UniversalNER
DL&ML

UniversalNER

2023. 8. 29. 16:59
728x90

UniversalNER 2023.08

UniversalNER: Targeted Distillation from Large Language Models for Open Named Entity Recognition

  • entity(엔터티)란? : "Entity"는 텍스트에서 특정한 타입의 단어를 의미함. ex) 텍스트에서 사람 이름, 장소, 조직, 날짜 등

이 논문의 목적: 한가지 task(NER)에 집중적으로 instruction tuning을 시켜서 teacher LLM(GPT3.5)보다 성능이 좋거나 비슷한 sLLM을 만들어보자

—> targeted distillation with mission-focused instruction tuning

instruction tuning을 학습시킨 후, 그 sLLM을 zeroshot으로 benchmark NER에 evaluation 했을 때, Alphaca, Vicuna 등 보다 월등한 성능을 보여주었고, fine-tuning을 했을 때도 마찬가지였음

기존 방법론의 단점: 기존 supervised NER model은 새로운 도메인과 새로운 entity 타입들에 대한 낮은 일반화 성능을 보여줌

UniversalNER은 다음과 같이 학습을 하기 때문에, entity에 높은 일반화 성능을 보여줌

Mission-focussed Instruction tuning

  • 기존의 LLM instruction-tuning은 일반화 성능 때문에, 다양한 ‘task’에 집중하였음
  • 하지만 proposed method는 information extraction에 대해서 다양한 ‘domain’과 ‘class’들을 학습하는 것에 집중을 하였음
  • instruction 방식
    • f : (X × T ) → Y
    • X: text, T: entity type, Y: specific type of entity

Data construction (데이터 준비)

의미적, domain에서의 generalization을 위해 다양한 larget corpus에서 sampling을 함

“Pile corpus”를 사용함

Pile corpus에서 maximum 256 token으로 끊어진 passage들로부터 5만개를 sampling함

이 sample들을 가지고 ChatGPT (gpt3.5-turbo)를 이용하여 data를 생성함

  • 만드는 방법
  • misformating된 결과들을 filtering을 거치니 총 45,889개의 instruction이 생기고, entities는 240,725개, entity type은 13,020개가 생김
  • 추출한 데이터 분포

Instruction Tuning 방식

conversation style tuning format을 채택 (기존 NER style tuning보다 성능이 더 좋아서)

  1. passage X를 input으로 받고
  2. dataset의 entity type t를 이용하여 “what describes t?”로 바꿈
  3. LM이 structured output y를 생성하도록 함

(for문으로 하나하나 뽑는건지 궁금..)

Negative sampling

없는데 entity type t에 대해 output을 내놓으라고 하면 hallucination이 날 수 있음

따라서 negative sampling을 해야하는데, 전체 entity type에서 random sampling 하였음

Supervised finetuning

supervised finetuning을 하면 당연히 성능은 올라가겠지만, 같은것을 지칭하는 label이 서로 다를 경우 conflict가 발생함. 따라서 Dataset-specific format으로 finetuning함

728x90

'DL&ML' 카테고리의 다른 글

Polyglot-Ko (한국어 LLM) 논문 리뷰  (1) 2024.01.09
EcomGPT: Ecommerce LLM Instruct tuning paper 리뷰  (1) 2023.10.11
llama2 간단 요약  (0) 2023.08.01
LLama1 review  (0) 2023.07.31
GPU란? AI와 가상화폐  (1) 2023.01.07
    'DL&ML' 카테고리의 다른 글
    • Polyglot-Ko (한국어 LLM) 논문 리뷰
    • EcomGPT: Ecommerce LLM Instruct tuning paper 리뷰
    • llama2 간단 요약
    • LLama1 review
    kongsberg
    kongsberg

    티스토리툴바