Spoken Language Processing
GPT 언어모델과 언어모델링에 대해서
햇농nongnong
2023. 3. 21. 16:12
이 글은 ETRI 박전규 박사님의 언어교육 성과 특강 강의를 듣고 정리한 글입니다.
언어 모델링 (Language Modeling) - language prediction
- 한 단어 다음에 어떤 단어가 나올지 예측하는 것이 언어 모델(LM).
- 역시 중요한 것은 학습 데이터.
- 학습 데이터에 잘 나타나지 않은 단어들은?
- balance의 문제 : "the" 라는 단어가 "loom" 같은 특정 단어보다 많이 나옴
- 이런 balance 의 문제도 잘 다뤄야 함.
- Different domains, different distributions
- 4시 15분이 아닌, 4:15 같은 표현.
- 신조어
- 의학, 법학 - 도메인별 단어 또 다 다름
- 따라서 language model 도 그 때 그 때 fine-tuning 이 필요할 수 있음.
- 문맥이 예측을 돕는다.
- 카네기.. ? - 홀, 멜론
- 이게 GPT 같은 사전학습모델에서 중요한 이슈.
전통적인 모델은 n-gram models
- 지구 상에 이론적으로 존재하는 모든 텍스트 시퀀스를 표현할 방법이 없으니까 이것을 통계적으로 모델링.
- n-gram models : unigram, bigram, trigram, n-gram
- unigram : single word 기반 특정 단어 나올 확률
- bigram : 두 단어가 동시에 나올 확률; 특정 sequence 두 개가 동시에 나올 확률
- 예를 들어 5만 단어를 trigrams 으로 표현한다면 어마어마한 함수가 나옴.
- 못함.. 모든 텍스트 시퀀스 반영할 수 없어서 통계적 확률 모델 쓰는 것.
- 5만 단어의 경우, 대략 40 테라의 trigrams 으로 표현하면 가능.
- 이런것들도 변수가 됨.
- limit vocabulary < 1M
- make them all UPPER CASE : Upper, uPper, upPer, uppEr, uppeR --> UPPER
- 모델에선 위 5개를 다 다르게 인식하기 때문에 같은 "UPPER"로 normalization
- remove punctuation <-- people don't say punctuation
- have a "unknown word" token --> replace all low frequency words with UNK
- collapse similar word --> all numbers to NUM, call cities to CITY : NUM과 CITY 가 일종의 class 를 반영하도록.
- 이런식으로 언어모델의 perplexity를 확 줄이기
GPT
- 2022년 기준 가장 진보된 언어 알고리즘이 GPT-3.
- 현재 시대에서 가장 똑똑한 인공지능이 GPT라고 할 수 있음.
- 언어 모델이 단지 텍스트 시퀀스만 예측하는 것이 아니라 사칙연산도 하고 글도 쓰고 소설도 쓰고 하는 일이 많음.
- GPT-3는 기사도 작성하고, 두 자리 수 덧셈도 잘하고, 컴퓨터 프로그램도 잘 짬.
- 연산을 학습시킨 적도 없고, 그냥 대규모 언어뭉치 던져줬더니 사칙연산도 잘 하는 것임.
- 버전이 1년마다 공개되고 있음.
- version 1 : Improving language understanding by GPT : self-supervision
- task-specific fine tuning, 1.1B
- version 2 : Language Models are unsupervised multitask learners
- zero-shot task learning, 15B
- version 3 : Language Models are few-shot learners
- few-shot learning, 175B
- Extras : Dialog GPT, Instruct GPT
NLP에서 다루는 문제
- A, B 문장이 얼마나 유사하냐
- Q&A : 위키피디아 article 하나 던져주고 질문 주고 풀기
Reference
- 2022.06.02 ETRI 언어교육 성과 특강 (ETRI 박전규 박사님)