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보다 성능이 더 좋아서)
- passage X를 input으로 받고
- dataset의 entity type t를 이용하여 “what describes t?”로 바꿈
- 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함
'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 |