SlideShare a Scribd company logo
LaMDA:
Language Models for
DialogApplications
발표자 : 최상우(flyfishsw@gmail.com)
자연어처리팀1(민지원, 백지윤, 아이린, 주정헌, 최상우)
2021 Google I/O
- 제목: LaMDA(Language Models for Dialog Applications)
- 발표: 2021년 Google I/O
- 링크: https://arxiv.org/pdf/2201.08239.pdf
- 키워드: BERT, GPT, Transformer, Chatbot
- 요약: 단어 시퀀스에 확률을 할당하는 Larget-scale LM방법과
직접 레이블링한 데이터로 파인 튜닝한 트랜스포머 계열의 대화 task를 위한 언어 모델
1. Introduction
• 언어 모델이란? : 단어 시퀀스(문장)에 확률을 할당하는 모델
• Unlabelled 방식의 사전 학습 선능을 높이기 위해서 사용할 수 있는 방법은?
1. Large-Sclae LM 사용
2. 데이터셋 크기 키우기 -> 특히 데이터셋 사이즈는 챗봇 퀄리티에 큰 영향을 끼침
• GPT3 :
Transformer의 decoder구조, 이전 단어들을 바탕으로 이후 단어를 예측하는 방식으로 사전학습(unlabelled)되어
각 NLG Task(eg.chatbot)에 fine-tuning
Ÿ LaMDA : 이 두 가지 방법을 모두 적용한 트랜스포머 계열의 대화 task 를 위한 LM
1. large-scale : 모델 사이즈 2B~137B parameters
2. 사전학습 데이터 셋 : public texts (1.56T words)
2. Related Work
• Language models and dialog models
1. LM 을 dialog model에 적용
2. scaling 만으로는 성능 향상에 한계
3. 모델이 스스로 외부 지식을 적용할 수 있도록 함
4. Groundedness metrics 향상을 위해서 external knowledge 사용 및 ‘사고’,‘응답’ unit 분리
Ÿ Dialog metrics
1. 인간 중심의 평가지표 도입, 단순 정량적 지표 (ex.BLEU,perplexity) 외에 인간 평가가 필요
2. 각각의 지표는 개별적으로 평가.
Ÿ Safety and safety of dialog models
1. 잘못된 데이터로 학습한 lm의 위험성
2. Toxicity, bias, 개인정보
3. 제있는 output을 감지하는 용도의 layers 를 구성한 연구
4. safety 향상을 위해 human rights Principle 같은 외부 데이터 활용
Ÿ Groundedness metrics
1. Groundedness (팩트 기반 여부) 평가를 위해 외부 crowd workers 도움 받음
3. LaMDA pre-training(1/3)
• Pre-training Objective
• next token prediction
• Dataset
• public dialog data + public web documents
(대게 대화 데이터로만 학습한 다른 대화 모델과 차이점)
• 1.12B dialogs(13.39B dialog utterances) + 2.97B documents ⇒ 1.56T words
• Meena(40B words)와 비교하면 약 40배
• dialog task의 robust한 성능을 위해 다음과 같이 구성 [Appendix E]
• 50% — dilalogs from public forums
• 12.5% — C4 (웹 크롤링 corpus, T5 pre-training에 활용)
• 12.5% — code documents from Q&A, tutorials, etc.
• 12.5% — Wikipedia (English)
• 6.25% — web documents (English)
• 6.25% — web documents (non-English)
• 90% 이상의 데이터는 영어 데이터
• Tokenization
• byte pair encoding(BPE) algorithm
• SentencePiece library 사용
• pre-training 과정에 사용된 총 token 수는 2.81T
• vocabulary size: 32K
3. LaMDA pre-training(2/3)
• Architecture
• decoder-only transformer
• 137B params (embedding layer 제외) — Meena의 약 50배
• 64 layers
• embedding dimension = 8192
• feed-forward dimension = 65536
• number of heads = 128
• key, value dimension = 128
• relative attention (relative position embeddings)
• gated-GELU (Shazeer, 2020)
• 2B, 8B model도 학습해서 model scaling 실험
• Experiment
• TPU-v3 1024개로 57.7일 동안 학습
• Lingvo framework로 123 TFLOPS/sec 달성
• 56.5% FLOPS utilization with the 2D sharding algorithm (GSPMD) [→ Section 10]
• batch당 256K tokens (all models)
• Hyperparameter details
• Decoding Strategy
• sample-and-rank strategy
• 후보 response 추출 (N=16)
• top-k (k=40) beam search
• temperature = 1 (unmodified distribution)
• 각 후보의 log-likelihood와 길이에 따른 score가 가장 높은 response 채택
• Meena에서 제안한 방법과 동일. 다만 Meena에서는 T=0.88, N=20이었음.
3. LaMDA pre-training(3/3)
Figure 2: LaMDA pre-training as a language model. 4
• Foundation Metrics
• Quality
• Sensibleness, Specificity, Interestingness (SSI): 각각의 평균
1. sensibleness: 생성 모델의 발화가 문맥상 자연스러운지 (말이 되는지), 이전 대화와 모순되지 않는지
2. specificity: 해당 문맥에서만 말이 되는(specific) 말인지
e.g ) “I love Eurovision” → “Me too”(0) vs “Me too. I love Eurovision songs”(1)
3. interestingness: 상대방의 관심, 궁금증을 유발하는지, 의외성, 위트, 인사이트...
E.g.)“야구공 던지는 방법?” → “손으로 공을 잡아서 놓으면 된다."(낮음) vs “공을 잡아서 몸의 반동을 이
용하고, 검지와 중지에 힘을 주어서...”
• sensibleness and specificity average(SSA)에 interestingness 추가
• 0~1, 높을수록 좋음
• Safety
• 의도치 않은 부작용과 피해 사례를 배제하기 위함 — harm, bias, 악의적 이용 등
• Google’s AI Principles에 따라 objective 도출
• 최근 large-scale language model의 윤리적 논의와 같은 맥락 [Appendix A
4. Metrics(1/2)
• Role-Specific Metrics
application-specific role에 적합한지에 대한 metrics [→ Section 8]
1. Helpfulness
• 사용자 정보(from retrieval system)와 일치하는 내용인지 + 사용자가 실제로 도움이 된다고 느끼는지
• “helpful response”은 “informative response”의 부분집합 — 정확한 정보이면서 사용자에게 유용한지
1. Role Consistency
• response가 기대되는 역할에 부응하는지
• 대화 내 consistency(sensibleness로 평가)와는 별개로, (대화 외부에서) 정의한 역할과의 consistency를
측정
4. Metrics(2/2)
• Groundness
• 현재 언어 모델들은 그럴듯 하지만 사실과 다른 내용을 생성하는 경향이 있음
• 외부 source에 근거한 cross-checking
• groundness = 외부 지식에 대한 주장 중 ’알려진' source에 의해 뒷받침되는 주장의 비율
• informativeness = 전체 중 ‘알려진' source에 의해 뒷받침되는 외부 지식을 포함하는 경우의
비율
• citation accuracy = 외부 지식(상식은 제외)을 언급한 발화 중 source의 URL을 인용한 경우의
비율
QnA
5. LaMDA fine-tuning and evaluation data(1/2)
1. Quality (품질) :
1. 6400 dialogue 를 직원들에게 lambda 를 와의 대화를 통해 얻어낸다.
2. Lambda 가 대답한 각 대답에 대해 직원들은 이 대답이 Sensible (말이 되는지) Specific ( 정확한지 )
interesting(흥미로운지) 에 대해 ’예’ ‘아니오’ ‘아마도’ 3가지 종류로 label 을 달도록 한다.
3. 만약 Sensible 에 ‘아니오’ 라고 대답했을경우, specific 과 interesting 은 고려하지않고 ‘아니오’로
취급한다.
4. Specific 역시 ‘아니오' 일경우 interesting 의 label 도 자동으로 ‘아니오’ 로 label 된다.
5. 5명중 3명 이상의 직원이 SSI 에 대해 ‘예’ 라고 대답한 답변만, 정상적인 답변이라고 취급
2. Safety (안전성):
1. 여러분야의 배경을 가진 사람들을 통해 Lamda 로 만들어지는 답변에 대한 안정성을 평가 한다.
2. 위험을 불러일으킬수 있는 문장 : 위험한 물건, 마약, 자해, 잘못된 금융 조언, 사기 등
3. 차별적인 발언 : 특정 집단에 대한 혐오, 사람/집단을 인간이 아닌것과 비교, 인종 종교등에 대한 편견 ,
장애를 가진사람에대한 차별
위험을 불러일으킬수있는 가짜 정보 : 시간이 지난 법적문서, 논란이있는 의료 / 생물 법, 음모론, 특정
정당에 대한 반대
[Safety 계속]
-SSI 와 비슷하게 48K 회수의 8K dialogue 를 랜덤한 토픽에 대해 직원들과 lambda 가 대화를 나누고
3가지에 대해 ‘예' , ‘아니오’ , '아마도’ 중 평가를 내리게 함 . 3명중 3명이 ‘예' 라고 답변했을시,
해당답변은 안전하지않다고 평가함
1.문장이 자연스러운 형태인지
2.예민한 주제인지
3.안전성을 위반하는 답변인지
3. Groundedness : 해당 정보가 외부 지식이 필요한지에 대한 평가
-상식이 아니고 외부 지식이 필요한 답변의 경우, 답변을 추가하고 외부 답변이 포함되어있는 URL 을 달도록 함
5. LaMDA fine-tuning and evaluation data(2/2)
• Pre-trained 된 Lambda 를 여러번의 finetuning 진행
• “What’s up? RESPONSE not much.” 라는 문장에 <attribute-name > SSI 중 어떤것에 대한
평가인지 태그를 달아주고 그에 대한 점수를 달아줌
• “What’s up? RESPONSE not much. SENSIBLE 1”
• “What’s up? RESPONSE not much. INTERESTING 0”
• “What’s up? RESPONSE not much. UNSAFE 0”
- 이 SSI와 safety 에 대한 평가를 예측할수있도록 fine-tuning 그리고 그중 안전성 threshold 를 넘지
못하는 후보는 제거
- 3 * P(sensible) + P(specific) + P(interesting) 이렇게 점수를 내려서 가장 높은 점수를 가진 모델을
다음단계로 넘어가도록 선택
6. Fine tuning(1/3)
• 추가 정보학습에 대한 Fine-tuning
• Lamda는 말이되는듯한 답변을 내놓지만 꼭 그게 정확한 사실은 아닐수있음 따라서 외부
믿을만한 정보가 필요한지에 대한 추가 학습이 필요하다.
• 방법1 : 학습데이터의 양을 늘림 – 이 방법은 매번 현재 시간 과 같이 매번 업데이트되는
답변에 대해 정확한 답을 해주지않는다. 따라서 추가적인 외부 정보가 필요
• Toolset(ts) : Toolset 이라는 계산기, 번역기와 같은 정보추출 시스템을 만들어 가능한 모든
답변을 리스트 형태로 반환한다.
• Dialogue collection :‘correct’ ‘incorrect’ 가 label 된 4 만개의 dialogue 를 모아 dialogue 의
답변이 TS 를 통해 정확한 답변을 추출할수있는 dialog 들에 대한 답변을 추가
• 입력된 질문에 대해 해당 질문이 추가적인 TS 가 필요한지 확인, 필요할경우 “TS, 문장” 으로
표기
• 정보추출을 이용해 정보 추출, 사용자에게 문장형태로 추출 “User, 답변 문장”
6. Fine tuning(2/3)
6. Fine tuning(3/3)
• Foundation을 평가하기 위해선 크게 2가지 fine-tuning으로 나눠서 평가하였다.
1. FT quality-safety
1. PT(프리트레인모델)는 quality와 safety 라벨을 구분하는 discriminator를 학습한다.
2. 람다 추론기는 먼저 safety scores를 보고 필터를 거친 다음 weighted-sum을한 3개의 quality sc
ore로 re-ranking 한다.
2. FT groundedness
1. 람다는 External information을 호출하는 정보추출시스템을 이용하여 attributed한 대답을 제공
한다.
2. 이 모델은 safety-quality와 해당 정보 type을 예측하는 걸 jointly learning을 한다.
7. Results on foundation metrics(1/2)
7. Results on foundation metrics(2/2)
• LaMDA는 Human과 일부 matric에 대해서 비슷한 성능을 보여줌
• 모델사이즈가 크면 클수록 그리고 파인튜닝 할때마다 성능이 더 좋게 나옴
• Human w/o IR은 사람들이 평가지에 적은 답변이 구글링(정보검색시스템) 없이 측정한 것.
• PT는 fine-tuning없는 것. 오로지 GPT 모델
• Lamda는 PT를 포함한 파인튜닝 시스템 포함
• 람다는 도메인에 적절하게 답변을 할 수도 있다. 이를 Domain grounding이라 부른다.
• 논문에서 2가지 영역에서 실험해보았다.
1. “에베레스트 산”와 같은 유명한 사물을 자기 자신을 의인화하여 교육목적으로 답변해준다.
2. 음악 추천해주는 인공지능으로도 역할을 한다. 이는 추천시스템을 활용하기 위함이다.
• 음악추천
• 좋아하는 노래 추천해 달라고 하면 계속 대화를 이끌어가면서 노래 추천을 해준다. 이때 영화”인터
스텔라 봐봤니?”와 같이 다른 정보들도 섞어서 답변해준다.
• 교육시스템(에버레스트 예제)
• 자기 자신이 에버레트스산이라 하고 자기에 대해서 정확하고 디테일한 정보를 답변해준다.
• Domain Grounding을 평가할때에는 2가지 PT 모델을 가지고 600개 답변이 오간 대화목록을 보고
진행하였다. Crowd-worker들은 helpfulness, role-consistent에 기준에 따라서 평가해주었다.
8. Domain grounding(1/3)
8. Domain grounding(2/3)
PT와 람다를 비교해보면
1) PT는 에버레스트가 너무 성급히 “가장 높은 산”이다라고 답변. 하지만 람다는 2900feet라고 자세하게
답변
2) 둘다 Consistency에선 비슷한 점수를 받았다. 이는 람다가 더이상 에버레스트에 대해서 이야기 하지
않는 경우가 있음. 이는 추론시간에 학습데이터 대부분이 다른 제3자로 되돌아가는 걸 예방했었어야했
는데 그러지 못했기 때문.
3) Music recommendation에선 매우 좋은 성능을 보였다. “anything”이라고 모호한 답변을해도 문맥에
따라 음악을 추천해주었다.
8. Domain grounding(3/3)
8. Discussion and limitations
1. Examining bias :
Bias가 다양한 방식으로 사용되어 줄이고 싶지만, 찾아내기 쉽지 않음
2. Adversarial data collection :
모델향상을 위해 adversarial한 대화를 사용하였는데, LaMDA가 safety object를 어길때가있음
3. Safety as a concept and a metric :
다양한 safety objectives를 하나의 matric으로 만들다 보니, 다양한 object나 weighting object로 다르게 관리하지
4. Appropriateness as a concept and a metric :
safety와 quality가 minimum threshold에 만족해여야 하여 더 많은 대화가 필요함
5. Cultural responsiveness :
다양한 소셜 그룹들의 dataset과 crowdworker의 대표성을 찾기 어려움
6. Impersonation and anthropomorphization :
사람과 같이 자연스러운 대화의 퍼포먼스를 내는것이 어려움
9. Conclusion
1. Fine tuning에 대한 중요성을 확인함
2. Dialog 모델링에서 외부 API를 사용한 information retrieval의 중요성을 확인함
3. pre-training-only (PT) 보다 LaMDA-based applications이 더 helpful 함
QnA

More Related Content

PDF
[216]네이버 검색 사용자를 만족시켜라! 의도파악과 의미검색
PDF
오토인코더의 모든 것
PDF
Recommender Systems
PDF
Fluentd loves MongoDB, at MongoDB SV User Group, July 17, 2012
PPT
Recommendation system
PDF
개발자가 알아야 할 Amazon DynamoDB 활용법 :: 김일호 :: AWS Summit Seoul 2016
PDF
GloVe:Global vectors for word representation
PDF
그림 그리는 AI
[216]네이버 검색 사용자를 만족시켜라! 의도파악과 의미검색
오토인코더의 모든 것
Recommender Systems
Fluentd loves MongoDB, at MongoDB SV User Group, July 17, 2012
Recommendation system
개발자가 알아야 할 Amazon DynamoDB 활용법 :: 김일호 :: AWS Summit Seoul 2016
GloVe:Global vectors for word representation
그림 그리는 AI

What's hot (20)

PDF
Spark 의 핵심은 무엇인가? RDD! (RDD paper review)
PDF
NoSQL 위에서 MMORPG 개발하기
PPTX
Introduction to NoSQL Databases
PPTX
What is NoSQL and CAP Theorem
PPTX
딥 러닝 자연어 처리를 학습을 위한 파워포인트. (Deep Learning for Natural Language Processing)
PDF
1시간만에 GAN(Generative Adversarial Network) 완전 정복하기
PDF
[261] 실시간 추천엔진 머신한대에 구겨넣기
PDF
Real-Time Stream Processing with KSQL and Apache Kafka
PDF
Alphorm.com Formation Big Data & Hadoop : Le Guide Complet
PPTX
Artificial Intelligence, Machine Learning and Deep Learning
PDF
인공지능추천시스템 airs개발기_모델링과시스템
PPTX
Temporal-Joins in Kafka Streams and ksqlDB | Matthias Sax, Confluent
PPTX
Ch6 대용량서비스레퍼런스아키텍처 part.1
PDF
Near Real-Time Netflix Recommendations Using Apache Spark Streaming with Nit...
PDF
TF에서 팀 빌딩까지 9개월의 기록 : 성장하는 조직을 만드는 여정
PDF
Introduction to MongoDB
PDF
[2019] 게임 서버 대규모 부하 테스트와 모니터링 이렇게 해보자
PPTX
Ozone- Object store for Apache Hadoop
PDF
텐서플로우 설치도 했고 튜토리얼도 봤고 기초 예제도 짜봤다면 TensorFlow KR Meetup 2016
Spark 의 핵심은 무엇인가? RDD! (RDD paper review)
NoSQL 위에서 MMORPG 개발하기
Introduction to NoSQL Databases
What is NoSQL and CAP Theorem
딥 러닝 자연어 처리를 학습을 위한 파워포인트. (Deep Learning for Natural Language Processing)
1시간만에 GAN(Generative Adversarial Network) 완전 정복하기
[261] 실시간 추천엔진 머신한대에 구겨넣기
Real-Time Stream Processing with KSQL and Apache Kafka
Alphorm.com Formation Big Data & Hadoop : Le Guide Complet
Artificial Intelligence, Machine Learning and Deep Learning
인공지능추천시스템 airs개발기_모델링과시스템
Temporal-Joins in Kafka Streams and ksqlDB | Matthias Sax, Confluent
Ch6 대용량서비스레퍼런스아키텍처 part.1
Near Real-Time Netflix Recommendations Using Apache Spark Streaming with Nit...
TF에서 팀 빌딩까지 9개월의 기록 : 성장하는 조직을 만드는 여정
Introduction to MongoDB
[2019] 게임 서버 대규모 부하 테스트와 모니터링 이렇게 해보자
Ozone- Object store for Apache Hadoop
텐서플로우 설치도 했고 튜토리얼도 봤고 기초 예제도 짜봤다면 TensorFlow KR Meetup 2016
Ad

Similar to [2021 Google I/O] LaMDA : Language Models for DialogApplications (20)

PPTX
추천 시스템 개요 (1)-draft
PDF
Clova Tech Summit 2: 대화모델 엔진 구조와 Chatbot 개발 최적화 방안
PDF
[PyCon KR 2018] 땀내를 줄이는 Data와 Feature 다루기
PDF
Lab Seminar - Reading Wikipedia to Answer Open-Domain Questions (DrQA)
 
PDF
2주차: 뉴스 빅데이터 분석을 위한 자연어처리 이론
PDF
Using Behavioral Data to Identify Interviewer Fabrication in Surveys + CHI 20...
PPTX
1910 tfkr3 warnikchow
PPTX
LDA : latent Dirichlet Allocation (Fairies NLP Series) - Korean Ver.
PDF
29th Meetup 실습 설명 및 실습 자료 링크
PDF
[Langcon2020]롯데의 딥러닝 모델은 어떻게 자기소개서를 읽고 있을까?
PDF
Machine Learning Foundations (a case study approach) 강의 정리
PDF
이상열, Interpretable Recommender System 개발 사례연구, NDC 2019
PDF
메이크챗봇 자연어기초
PDF
Python을 활용한 챗봇 서비스 개발 2일차
PPTX
2204 Kakao talk on Hate speech dataset
PDF
Machine Learning with Apache Spark and Zeppelin
PDF
LLM 프로젝트를 성공적으로 수행하기 위한 질문들.pdf
PDF
<Little Big Data #1> 한국어 채팅 데이터로 머신러닝 하기
PPTX
1911 keracorn
PDF
2022.07.01 불평등연구회 특강 "계량모형과 자연어 분석을 결합하기"
추천 시스템 개요 (1)-draft
Clova Tech Summit 2: 대화모델 엔진 구조와 Chatbot 개발 최적화 방안
[PyCon KR 2018] 땀내를 줄이는 Data와 Feature 다루기
Lab Seminar - Reading Wikipedia to Answer Open-Domain Questions (DrQA)
 
2주차: 뉴스 빅데이터 분석을 위한 자연어처리 이론
Using Behavioral Data to Identify Interviewer Fabrication in Surveys + CHI 20...
1910 tfkr3 warnikchow
LDA : latent Dirichlet Allocation (Fairies NLP Series) - Korean Ver.
29th Meetup 실습 설명 및 실습 자료 링크
[Langcon2020]롯데의 딥러닝 모델은 어떻게 자기소개서를 읽고 있을까?
Machine Learning Foundations (a case study approach) 강의 정리
이상열, Interpretable Recommender System 개발 사례연구, NDC 2019
메이크챗봇 자연어기초
Python을 활용한 챗봇 서비스 개발 2일차
2204 Kakao talk on Hate speech dataset
Machine Learning with Apache Spark and Zeppelin
LLM 프로젝트를 성공적으로 수행하기 위한 질문들.pdf
<Little Big Data #1> 한국어 채팅 데이터로 머신러닝 하기
1911 keracorn
2022.07.01 불평등연구회 특강 "계량모형과 자연어 분석을 결합하기"
Ad

More from taeseon ryu (20)

PDF
VoxelNet
PDF
OpineSum Entailment-based self-training for abstractive opinion summarization...
PPTX
3D Gaussian Splatting
PDF
JetsonTX2 Python
PPTX
Hyperbolic Image Embedding.pptx
PDF
MCSE_Multimodal Contrastive Learning of Sentence Embeddings_변현정
PDF
LLaMA Open and Efficient Foundation Language Models - 230528.pdf
PDF
YOLO V6
PDF
Dataset Distillation by Matching Training Trajectories
PDF
RL_UpsideDown
PDF
Packed Levitated Marker for Entity and Relation Extraction
PPTX
MOReL: Model-Based Offline Reinforcement Learning
PDF
Scaling Instruction-Finetuned Language Models
PDF
Visual prompt tuning
PDF
PDF
variBAD, A Very Good Method for Bayes-Adaptive Deep RL via Meta-Learning.pdf
PDF
Reinforced Genetic Algorithm Learning For Optimizing Computation Graphs.pdf
PDF
The Forward-Forward Algorithm
PPTX
Towards Robust and Reproducible Active Learning using Neural Networks
PDF
BRIO: Bringing Order to Abstractive Summarization
VoxelNet
OpineSum Entailment-based self-training for abstractive opinion summarization...
3D Gaussian Splatting
JetsonTX2 Python
Hyperbolic Image Embedding.pptx
MCSE_Multimodal Contrastive Learning of Sentence Embeddings_변현정
LLaMA Open and Efficient Foundation Language Models - 230528.pdf
YOLO V6
Dataset Distillation by Matching Training Trajectories
RL_UpsideDown
Packed Levitated Marker for Entity and Relation Extraction
MOReL: Model-Based Offline Reinforcement Learning
Scaling Instruction-Finetuned Language Models
Visual prompt tuning
variBAD, A Very Good Method for Bayes-Adaptive Deep RL via Meta-Learning.pdf
Reinforced Genetic Algorithm Learning For Optimizing Computation Graphs.pdf
The Forward-Forward Algorithm
Towards Robust and Reproducible Active Learning using Neural Networks
BRIO: Bringing Order to Abstractive Summarization

[2021 Google I/O] LaMDA : Language Models for DialogApplications

  • 1. LaMDA: Language Models for DialogApplications 발표자 : 최상우(flyfishsw@gmail.com) 자연어처리팀1(민지원, 백지윤, 아이린, 주정헌, 최상우) 2021 Google I/O
  • 2. - 제목: LaMDA(Language Models for Dialog Applications) - 발표: 2021년 Google I/O - 링크: https://arxiv.org/pdf/2201.08239.pdf - 키워드: BERT, GPT, Transformer, Chatbot - 요약: 단어 시퀀스에 확률을 할당하는 Larget-scale LM방법과 직접 레이블링한 데이터로 파인 튜닝한 트랜스포머 계열의 대화 task를 위한 언어 모델
  • 3. 1. Introduction • 언어 모델이란? : 단어 시퀀스(문장)에 확률을 할당하는 모델 • Unlabelled 방식의 사전 학습 선능을 높이기 위해서 사용할 수 있는 방법은? 1. Large-Sclae LM 사용 2. 데이터셋 크기 키우기 -> 특히 데이터셋 사이즈는 챗봇 퀄리티에 큰 영향을 끼침 • GPT3 : Transformer의 decoder구조, 이전 단어들을 바탕으로 이후 단어를 예측하는 방식으로 사전학습(unlabelled)되어 각 NLG Task(eg.chatbot)에 fine-tuning Ÿ LaMDA : 이 두 가지 방법을 모두 적용한 트랜스포머 계열의 대화 task 를 위한 LM 1. large-scale : 모델 사이즈 2B~137B parameters 2. 사전학습 데이터 셋 : public texts (1.56T words)
  • 4. 2. Related Work • Language models and dialog models 1. LM 을 dialog model에 적용 2. scaling 만으로는 성능 향상에 한계 3. 모델이 스스로 외부 지식을 적용할 수 있도록 함 4. Groundedness metrics 향상을 위해서 external knowledge 사용 및 ‘사고’,‘응답’ unit 분리 Ÿ Dialog metrics 1. 인간 중심의 평가지표 도입, 단순 정량적 지표 (ex.BLEU,perplexity) 외에 인간 평가가 필요 2. 각각의 지표는 개별적으로 평가. Ÿ Safety and safety of dialog models 1. 잘못된 데이터로 학습한 lm의 위험성 2. Toxicity, bias, 개인정보 3. 제있는 output을 감지하는 용도의 layers 를 구성한 연구 4. safety 향상을 위해 human rights Principle 같은 외부 데이터 활용 Ÿ Groundedness metrics 1. Groundedness (팩트 기반 여부) 평가를 위해 외부 crowd workers 도움 받음
  • 5. 3. LaMDA pre-training(1/3) • Pre-training Objective • next token prediction • Dataset • public dialog data + public web documents (대게 대화 데이터로만 학습한 다른 대화 모델과 차이점) • 1.12B dialogs(13.39B dialog utterances) + 2.97B documents ⇒ 1.56T words • Meena(40B words)와 비교하면 약 40배 • dialog task의 robust한 성능을 위해 다음과 같이 구성 [Appendix E] • 50% — dilalogs from public forums • 12.5% — C4 (웹 크롤링 corpus, T5 pre-training에 활용) • 12.5% — code documents from Q&A, tutorials, etc. • 12.5% — Wikipedia (English) • 6.25% — web documents (English) • 6.25% — web documents (non-English) • 90% 이상의 데이터는 영어 데이터 • Tokenization • byte pair encoding(BPE) algorithm • SentencePiece library 사용 • pre-training 과정에 사용된 총 token 수는 2.81T • vocabulary size: 32K
  • 6. 3. LaMDA pre-training(2/3) • Architecture • decoder-only transformer • 137B params (embedding layer 제외) — Meena의 약 50배 • 64 layers • embedding dimension = 8192 • feed-forward dimension = 65536 • number of heads = 128 • key, value dimension = 128 • relative attention (relative position embeddings) • gated-GELU (Shazeer, 2020) • 2B, 8B model도 학습해서 model scaling 실험 • Experiment • TPU-v3 1024개로 57.7일 동안 학습 • Lingvo framework로 123 TFLOPS/sec 달성 • 56.5% FLOPS utilization with the 2D sharding algorithm (GSPMD) [→ Section 10] • batch당 256K tokens (all models) • Hyperparameter details
  • 7. • Decoding Strategy • sample-and-rank strategy • 후보 response 추출 (N=16) • top-k (k=40) beam search • temperature = 1 (unmodified distribution) • 각 후보의 log-likelihood와 길이에 따른 score가 가장 높은 response 채택 • Meena에서 제안한 방법과 동일. 다만 Meena에서는 T=0.88, N=20이었음. 3. LaMDA pre-training(3/3) Figure 2: LaMDA pre-training as a language model. 4
  • 8. • Foundation Metrics • Quality • Sensibleness, Specificity, Interestingness (SSI): 각각의 평균 1. sensibleness: 생성 모델의 발화가 문맥상 자연스러운지 (말이 되는지), 이전 대화와 모순되지 않는지 2. specificity: 해당 문맥에서만 말이 되는(specific) 말인지 e.g ) “I love Eurovision” → “Me too”(0) vs “Me too. I love Eurovision songs”(1) 3. interestingness: 상대방의 관심, 궁금증을 유발하는지, 의외성, 위트, 인사이트... E.g.)“야구공 던지는 방법?” → “손으로 공을 잡아서 놓으면 된다."(낮음) vs “공을 잡아서 몸의 반동을 이 용하고, 검지와 중지에 힘을 주어서...” • sensibleness and specificity average(SSA)에 interestingness 추가 • 0~1, 높을수록 좋음 • Safety • 의도치 않은 부작용과 피해 사례를 배제하기 위함 — harm, bias, 악의적 이용 등 • Google’s AI Principles에 따라 objective 도출 • 최근 large-scale language model의 윤리적 논의와 같은 맥락 [Appendix A 4. Metrics(1/2)
  • 9. • Role-Specific Metrics application-specific role에 적합한지에 대한 metrics [→ Section 8] 1. Helpfulness • 사용자 정보(from retrieval system)와 일치하는 내용인지 + 사용자가 실제로 도움이 된다고 느끼는지 • “helpful response”은 “informative response”의 부분집합 — 정확한 정보이면서 사용자에게 유용한지 1. Role Consistency • response가 기대되는 역할에 부응하는지 • 대화 내 consistency(sensibleness로 평가)와는 별개로, (대화 외부에서) 정의한 역할과의 consistency를 측정 4. Metrics(2/2) • Groundness • 현재 언어 모델들은 그럴듯 하지만 사실과 다른 내용을 생성하는 경향이 있음 • 외부 source에 근거한 cross-checking • groundness = 외부 지식에 대한 주장 중 ’알려진' source에 의해 뒷받침되는 주장의 비율 • informativeness = 전체 중 ‘알려진' source에 의해 뒷받침되는 외부 지식을 포함하는 경우의 비율 • citation accuracy = 외부 지식(상식은 제외)을 언급한 발화 중 source의 URL을 인용한 경우의 비율
  • 10. QnA
  • 11. 5. LaMDA fine-tuning and evaluation data(1/2) 1. Quality (품질) : 1. 6400 dialogue 를 직원들에게 lambda 를 와의 대화를 통해 얻어낸다. 2. Lambda 가 대답한 각 대답에 대해 직원들은 이 대답이 Sensible (말이 되는지) Specific ( 정확한지 ) interesting(흥미로운지) 에 대해 ’예’ ‘아니오’ ‘아마도’ 3가지 종류로 label 을 달도록 한다. 3. 만약 Sensible 에 ‘아니오’ 라고 대답했을경우, specific 과 interesting 은 고려하지않고 ‘아니오’로 취급한다. 4. Specific 역시 ‘아니오' 일경우 interesting 의 label 도 자동으로 ‘아니오’ 로 label 된다. 5. 5명중 3명 이상의 직원이 SSI 에 대해 ‘예’ 라고 대답한 답변만, 정상적인 답변이라고 취급 2. Safety (안전성): 1. 여러분야의 배경을 가진 사람들을 통해 Lamda 로 만들어지는 답변에 대한 안정성을 평가 한다. 2. 위험을 불러일으킬수 있는 문장 : 위험한 물건, 마약, 자해, 잘못된 금융 조언, 사기 등 3. 차별적인 발언 : 특정 집단에 대한 혐오, 사람/집단을 인간이 아닌것과 비교, 인종 종교등에 대한 편견 , 장애를 가진사람에대한 차별 위험을 불러일으킬수있는 가짜 정보 : 시간이 지난 법적문서, 논란이있는 의료 / 생물 법, 음모론, 특정 정당에 대한 반대
  • 12. [Safety 계속] -SSI 와 비슷하게 48K 회수의 8K dialogue 를 랜덤한 토픽에 대해 직원들과 lambda 가 대화를 나누고 3가지에 대해 ‘예' , ‘아니오’ , '아마도’ 중 평가를 내리게 함 . 3명중 3명이 ‘예' 라고 답변했을시, 해당답변은 안전하지않다고 평가함 1.문장이 자연스러운 형태인지 2.예민한 주제인지 3.안전성을 위반하는 답변인지 3. Groundedness : 해당 정보가 외부 지식이 필요한지에 대한 평가 -상식이 아니고 외부 지식이 필요한 답변의 경우, 답변을 추가하고 외부 답변이 포함되어있는 URL 을 달도록 함 5. LaMDA fine-tuning and evaluation data(2/2)
  • 13. • Pre-trained 된 Lambda 를 여러번의 finetuning 진행 • “What’s up? RESPONSE not much.” 라는 문장에 <attribute-name > SSI 중 어떤것에 대한 평가인지 태그를 달아주고 그에 대한 점수를 달아줌 • “What’s up? RESPONSE not much. SENSIBLE 1” • “What’s up? RESPONSE not much. INTERESTING 0” • “What’s up? RESPONSE not much. UNSAFE 0” - 이 SSI와 safety 에 대한 평가를 예측할수있도록 fine-tuning 그리고 그중 안전성 threshold 를 넘지 못하는 후보는 제거 - 3 * P(sensible) + P(specific) + P(interesting) 이렇게 점수를 내려서 가장 높은 점수를 가진 모델을 다음단계로 넘어가도록 선택 6. Fine tuning(1/3)
  • 14. • 추가 정보학습에 대한 Fine-tuning • Lamda는 말이되는듯한 답변을 내놓지만 꼭 그게 정확한 사실은 아닐수있음 따라서 외부 믿을만한 정보가 필요한지에 대한 추가 학습이 필요하다. • 방법1 : 학습데이터의 양을 늘림 – 이 방법은 매번 현재 시간 과 같이 매번 업데이트되는 답변에 대해 정확한 답을 해주지않는다. 따라서 추가적인 외부 정보가 필요 • Toolset(ts) : Toolset 이라는 계산기, 번역기와 같은 정보추출 시스템을 만들어 가능한 모든 답변을 리스트 형태로 반환한다. • Dialogue collection :‘correct’ ‘incorrect’ 가 label 된 4 만개의 dialogue 를 모아 dialogue 의 답변이 TS 를 통해 정확한 답변을 추출할수있는 dialog 들에 대한 답변을 추가 • 입력된 질문에 대해 해당 질문이 추가적인 TS 가 필요한지 확인, 필요할경우 “TS, 문장” 으로 표기 • 정보추출을 이용해 정보 추출, 사용자에게 문장형태로 추출 “User, 답변 문장” 6. Fine tuning(2/3)
  • 16. • Foundation을 평가하기 위해선 크게 2가지 fine-tuning으로 나눠서 평가하였다. 1. FT quality-safety 1. PT(프리트레인모델)는 quality와 safety 라벨을 구분하는 discriminator를 학습한다. 2. 람다 추론기는 먼저 safety scores를 보고 필터를 거친 다음 weighted-sum을한 3개의 quality sc ore로 re-ranking 한다. 2. FT groundedness 1. 람다는 External information을 호출하는 정보추출시스템을 이용하여 attributed한 대답을 제공 한다. 2. 이 모델은 safety-quality와 해당 정보 type을 예측하는 걸 jointly learning을 한다. 7. Results on foundation metrics(1/2)
  • 17. 7. Results on foundation metrics(2/2) • LaMDA는 Human과 일부 matric에 대해서 비슷한 성능을 보여줌 • 모델사이즈가 크면 클수록 그리고 파인튜닝 할때마다 성능이 더 좋게 나옴 • Human w/o IR은 사람들이 평가지에 적은 답변이 구글링(정보검색시스템) 없이 측정한 것. • PT는 fine-tuning없는 것. 오로지 GPT 모델 • Lamda는 PT를 포함한 파인튜닝 시스템 포함
  • 18. • 람다는 도메인에 적절하게 답변을 할 수도 있다. 이를 Domain grounding이라 부른다. • 논문에서 2가지 영역에서 실험해보았다. 1. “에베레스트 산”와 같은 유명한 사물을 자기 자신을 의인화하여 교육목적으로 답변해준다. 2. 음악 추천해주는 인공지능으로도 역할을 한다. 이는 추천시스템을 활용하기 위함이다. • 음악추천 • 좋아하는 노래 추천해 달라고 하면 계속 대화를 이끌어가면서 노래 추천을 해준다. 이때 영화”인터 스텔라 봐봤니?”와 같이 다른 정보들도 섞어서 답변해준다. • 교육시스템(에버레스트 예제) • 자기 자신이 에버레트스산이라 하고 자기에 대해서 정확하고 디테일한 정보를 답변해준다. • Domain Grounding을 평가할때에는 2가지 PT 모델을 가지고 600개 답변이 오간 대화목록을 보고 진행하였다. Crowd-worker들은 helpfulness, role-consistent에 기준에 따라서 평가해주었다. 8. Domain grounding(1/3)
  • 20. PT와 람다를 비교해보면 1) PT는 에버레스트가 너무 성급히 “가장 높은 산”이다라고 답변. 하지만 람다는 2900feet라고 자세하게 답변 2) 둘다 Consistency에선 비슷한 점수를 받았다. 이는 람다가 더이상 에버레스트에 대해서 이야기 하지 않는 경우가 있음. 이는 추론시간에 학습데이터 대부분이 다른 제3자로 되돌아가는 걸 예방했었어야했 는데 그러지 못했기 때문. 3) Music recommendation에선 매우 좋은 성능을 보였다. “anything”이라고 모호한 답변을해도 문맥에 따라 음악을 추천해주었다. 8. Domain grounding(3/3)
  • 21. 8. Discussion and limitations 1. Examining bias : Bias가 다양한 방식으로 사용되어 줄이고 싶지만, 찾아내기 쉽지 않음 2. Adversarial data collection : 모델향상을 위해 adversarial한 대화를 사용하였는데, LaMDA가 safety object를 어길때가있음 3. Safety as a concept and a metric : 다양한 safety objectives를 하나의 matric으로 만들다 보니, 다양한 object나 weighting object로 다르게 관리하지 4. Appropriateness as a concept and a metric : safety와 quality가 minimum threshold에 만족해여야 하여 더 많은 대화가 필요함 5. Cultural responsiveness : 다양한 소셜 그룹들의 dataset과 crowdworker의 대표성을 찾기 어려움 6. Impersonation and anthropomorphization : 사람과 같이 자연스러운 대화의 퍼포먼스를 내는것이 어려움
  • 22. 9. Conclusion 1. Fine tuning에 대한 중요성을 확인함 2. Dialog 모델링에서 외부 API를 사용한 information retrieval의 중요성을 확인함 3. pre-training-only (PT) 보다 LaMDA-based applications이 더 helpful 함
  • 23. QnA