본문 바로가기

딥러닝(Deep Learning)/LLM

1. 딥러닝과 언어 모델링

1장: 딥러닝과 언어 모델링

 

1.1 딥러닝과 언어 모델링 기초

 

  딥러닝과 언어 모델링은 AI에서 매우 중요한 역할을 해요. 딥러닝은 데이터를 학습하고, 언어 모델링은 텍스트를 이해하고 예측하는 과정을 말해요.

 

 

1.1.1 데이터의 특징을 스스로 추출하는 딥러닝

  딥러닝은 주어진 데이터를 스스로 분석해 패턴을 찾아내는 능력이 있어요. 많은 양의 텍스트 데이터를 학습하면서 문맥과 규칙을 이해할 수 있죠. 이 때문에 딥러닝은 자연어 처리(NLP)에서 큰 역할을 하고 있어요.

 

 

  • 요약:
    딥러닝은 데이터를 스스로 분석해 패턴을 찾고, 자연어 처리(NLP)에서 유용하게 활용돼요.
  • 용어설명: 자연어 처리(NLP)
    자연어 처리(NLP)는 'Natural Language Processing'의 약자이며, 사람이 사용하는 언어를 컴퓨터가 이해하고 처리하는 기술이에요. 예를 들어, 한국어나 영어 같은 언어를 컴퓨터가 처리할 수 있도록 변환하는 과정이에요.

1.1.2 임베딩(Embedding)

  텍스트 데이터를 숫자로 변환해 이해하기 위해 임베딩이라는 과정을 사용해요. 임베딩은 비슷한 의미를 가진 단어들을 더 가까이 배치하도록 훈련하며, 이를 통해 컴퓨터가 단어 간의 관계를 잘 이해할 수 있게 돼요.임베딩(Embedding)이란 영어를 그대로 해석하면, '끼워 넣다'라는 뜻인데요. 즉, 비슷한 단어들끼리 같은 상자(벡터 공간)에 끼워넣는 것이죠.  

 

  • 요약:
    임베딩은 텍스트를 숫자로 변환해, 컴퓨터가 단어 간의 의미적 관계를 이해하게 도와줘요.
  • 용어설명: 임베딩(Embedding)
    임베딩은 텍스트를 벡터 형태의 숫자로 변환해, 의미가 비슷한 단어들이 가깝게 배치되도록 하는 방법이에요.

1.1.3 언어 모델링

  언어 모델링은 주어진 텍스트 데이터에서 다음에 나올 단어를 예측하는 과정이에요. 예를 들어, "저는"이라는 단어가 있을 때, 그 다음에 "심바입니다"가 나올 확률을 학습하는 것이죠.

 

  • 요약:
    언어 모델링은 문맥을 학습해 다음에 나올 단어를 예측해요.
  • 용어설명: 언어 모델링(Language Modeling)
    언어 모델링은 텍스트 데이터를 통해 문맥을 이해하고, 다음에 나올 단어를 예측하는 기술이에요. 이를 통해 AI는 자연스러운 문장을 생성할 수 있어요.

실습 1: 언어 모델 기본 이해하기

  GPT-2 모델을 사용해 언어 모델이 어떻게 동작하는지 실습해볼 거예요. 주어진 텍스트를 기반으로 모델이 이어서 문장을 생성하는 과정을 파이썬 코드를 통해 경험할 수 있어요.

 

코드 설명

 

  GPT-2 모델과 토크나이저를 불러와서 입력된 문장을 기반으로 텍스트를 생성하는 과정을 단계별로 설명하겠습니다. 참고로, 모델(Model)은 방금 설명한 언어모델링(다음 단어 예측)이며 토크나이저는 임베딩(텍스트 to 숫자)을 의미해요. 즉, 모델이 토크나이저가 텍스트를 벡터화한 숫자데이터를 갖고 문장을 생성하는 것이죠. 

 

 

from transformers import GPT2LMHeadModel, GPT2Tokenizer

# 모델과 토크나이저 불러오기
model = GPT2LMHeadModel.from_pretrained("gpt2")
tokenizer = GPT2Tokenizer.from_pretrained("gpt2")

# 입력 문장을 토큰화하기
input_text = "안녕하세요. 저는"
inputs = tokenizer.encode(input_text, return_tensors="pt")

# 모델을 사용해 텍스트 생성하기
outputs = model.generate(inputs, max_length=50, do_sample=True)

# 결과 디코딩
generated_text = tokenizer.decode(outputs[0], skip_special_tokens=True)
print(generated_text)

 

 

  1. 모델과 토크나이저 불러오기
    GPT-2 모델과 토크나이저는 입력된 텍스트를 숫자로 변환하고, 그 숫자를 바탕으로 텍스트를 이어서 생성해요.
  2. 입력 문장을 토큰화하기
    "안녕하세요. 저는"이라는 문장을 숫자로 변환해, 모델이 처리할 수 있는 형식으로 바꿔줘요.
  3. 텍스트 생성하기
    주어진 문장을 기반으로 모델이 새로운 문장을 생성해요. 최대 50자까지 문장을 생성할 수 있어요.
  4. 결과 디코딩
    생성된 문장은 다시 사람이 읽을 수 있는 텍스트로 변환돼요. 이 과정을 통해 AI가 자연스럽게 문장을 이어나가는 방식을 경험할 수 있어요.
  • 요약:
    GPT-2 모델은 입력된 텍스트를 바탕으로 다음 문장을 예측해 이어나가는 능력을 가지고 있어요.

정리

  1. 딥러닝은 데이터를 학습해 스스로 패턴을 찾아내며, 자연어 처리(NLP)에서 매우 유용해요.
  2. 임베딩은 텍스트를 숫자로 변환해 컴퓨터가 단어 간의 의미를 더 잘 이해할 수 있도록 도와줘요.
  3. 언어 모델링은 문맥을 이해하고, 다음에 나올 단어를 예측하는 과정이에요.
  4. GPT-2 모델을 통해 텍스트 생성을 실습하고, AI가 문장을 자연스럽게 이어나가는 방법을 경험할 수 있어요.