1장 다음 단어는요? 언어 모델
__1.1. 언어 모델은 확률 게임
__1.2. N-gram 언어 모델
____1.2.1. 텍스트 전처리
____1.2.2. 제로 카운트 해결하기
____1.2.3. N-gram 모델 학습하기
____1.2.4. N-gram 언어 모델의 한계
__1.3. Word2Vec 기반의 언어 모델
__1.4. RNN 기반의 언어 모델
__1.4.1. RNN의 구조
__1.4.2. GRU 언어 모델 구현하기
__1.4.3. GRU 언어 모델로 문장 생성하기
2장 집중해 보자! 어텐션
__2.1. 하나의 벡터로 모든 정보를 담는 RNN
__2.2. 왜 어텐션(Attention하지 않지?
__2.3. 어떻게 어텐션(Attention하지?
____2.3.1. 묻고 참고하고 답하기
____2.3.2. 어텐션 계산해 보기
____2.3.3. 어텐션 구현하기
____2.3.4 모델링 학습하기
3장 안녕, 트랜스포머
__3.1. 트랜스포머의 구조
__3.2. 트랜스포머 구현하기
____3.2.1. 인코더
__3.3. Why Transformer
__3.4. 트랜스포머 학습 결과
____3.4.1. Perplexity(PPL
____3.4.2. BLEU 스코어
4장 중간부터 학습하자! 사전학습과 파인튜닝
__4.1. 사전학습과 Fine-Tuning
__4.2. BERT
____4.2.1. BERT의 모델 구조와 이해하기
____4.2.2. BERT 모델의 입력 이해하기
____4.2.3. 사전학습 이해하기
____4.2.4. Masked Language Model(MLM
____4.2.5. Next Sentence Prediction(NSP
____4.2.6. 사전학습을 위한 데이터셋 준비와 Self-supervised Learning
____4.2.7. 사전학습 파헤치기
____4.2.8. 사전학습 정리하기
____4.2.9. Fine-Tuning 이해하기
_
이 책의 구성
1장에서는 언어 모델에 관한 내용을 다뤘다. 언어 모델이 무엇인지 확률적으로 정의한 후, N-gram 기법을 이용해서 언어 모델을 설명하고 그 과정을 코드를 통해 구현했다. 또한 N-gram 이후에 오랫동안 사용됐던 인공지능 모델인 RNN 계열의 인공지능 모델도 설명했다. RNN 계열의 언어 모델도 간단하게 학습해볼 수 있도록 샘플 코드를 구현했다.
2장에서는 어텐션에 대해서 자세하게 다뤘다. 어텐션은 트랜스포머의 핵심을 이루는 연산이다. 어텐션 연산을 RNN 계열에 추가했을 때 어떠한 장점이 있는지 설명했하고 관련된 샘플 코드도 공부해볼 수 있도록 구현했다.
3장부터 본격적으로 트랜스포머의 구조를 다뤘다. 2장에서 다룬 어텐션을 기반으로 트랜스포머를 어떻게 구현했는지 구조적으로 설명했다.
4장에서는 BERT 모델에 대해서 설명했다. BERT를 사전 학습하는 방법에 대해서 소개했고, 사전학습된 모델을 파인튜닝하는 방법에 대해서도 소개하며 또한 BERT 이후에 발표된 개선된 모델도 몇 가지 소개했다.
5장에서는 GPT 계열의 모델을 설명했다. GPT2에서부터는 메타러닝의 개념이 추가된다. 자연어 처리에서 메타러닝이 왜 필요하고 어떤 방법으로 학습되는지 소개했다. 다만 GPT2/GPT3의 정확한 학습 방법은 공개되지 않았기 때문에 학습 과정은 코드로 구현하지 못했다.
마지막으로 부록에서는 딥러닝 모델의 양자화에 대해서 살펴본다. 딥러닝 모델의 성능이 비약적으로 발전했지만 그와 동시에 모델의 연산량과 파라미터 수도 굉장히 많아졌다. 큰 모델을 간단하게 경량화할 수 있는 방법으로 양자화가 있다. 부록에서는 양자화의 기본 원리에 대해서 다루고 4장에서 살펴본 BERT를 파인 튜닝해서 학습한 분류 모델을 경량화하는 내용을 다룬다.
이진기(지은이의 말
2015년 전까지도 AI라는 용어는 IT 전문직에 종사하는 소수만이 알고 있는 전문 용어였습니다. 사람들은 이세돌 9단을 이긴 알파고의 바둑 실력에 놀라움을 감추지 못했고 실제 기자가