GPT_1

YJ·2023년 7월 6일
0

▷ 오늘 학습 계획: GPT 강의(1~3)

📖 Chapter 01_GPT 개요 및 자연어 처리 기초

자연어 데이터의 특징

  • Tabular Dataset
    각각의 데이터 샘플들이 구성하고 있는 features는 독립적이다.

  • 이미지
    이미지 안의 의미있는 정보는 위치와 관련이 없다.
    convolution 연산은 위치에 무관한 지역적인 정보를 추출하기에 좋다.

  • 자연어 데이터
    문장을 구성하고 있는 단어들의 위치가 변하면 안된다.
    단어들 간의 관계가 중요하고 하나의 단어만 바뀌어도 전혀 다른 의미를 가질 수 있다.

GPT를 구성하고 있는 모델은 Transformer에서 가져온 것이다.
Bert, GPT의 경우 자연어 데이터에 특화된 프레임워크
문장이 가지고 있는 문맥을 알고리즘이 이해할 수 있게 하는 것이 어렵다.

자연어 데이터의 토큰화

  • Character based: 문장의 시계열 길이가 늘어나고 각각의 문자는 의미를 가지고 있지 않다.

  • Word based: 경우의 수가 너무 많고 사전에 없는 단어가 생길 수 있다.

토큰처리 과정의 중요성
Hugging face와 같은 대중적인 공유 라이브러리가 존재하기 전까지 토큰화가 임의로 진행되었고 모델을 다운받아 실행시키면 결과가 달라졌다.

자연어 처리 task

  • Language Model: 하나의 문장을 여러개로 나누고, 나눈 토큰들의 결합분포로 문장에 대해 확률을 계산

    • 문장 감정 분석
    • 기계어 번역, question answering

자연어 처리 metric

  • BLEU(Bilingual evaluation understudy)
    Based on n-gram based precision
  • Rounge(Recall Oriented Understudy of Gisting Evaluation)
  • METEOR(Metric for Evaluation of Translation with Explicit ORdering)
  • Human based measures
    measuring quality of a single best result

자연어 처리 모델 기존 연구

  • 문장의 문맥을 하나의 벡터로 표현하기 위해 인코딩
    Encoder를 학습하면 다양한 Task에 적용 가능

  • RNNs(Recurrent neural networks)
    a directed network along sequential data

  • 자연어 데이터의 순차적인 특성을 고려했고
    문장마다의 중요도를 계산해서 attention 모듈을 생객해냈다.

📖 Chapter 02_Transformer

Transformer 개요

  • 입력 방법: Positional Encoding
    Transformer에서는 기존의 RNN에서 가능했던 순서처리가 되지 않았다.

  • 핵심 모듈: (Masked) Multi head attention
    self-attention 메커니즘을 이용한 자연어 처리 향상 모듈

  • 성능 향상

    • Skip Connection
    • Layer Normalization
  • 기계번역 task에서 기존 연구들보다 성능 우수

  • 병렬적인 처리가 가능한 모델 → time complexity 감소

  • 이후 Bert, GPT 모델에서 일반화에 강점이 있다는 것이 확인됨

Positional Encoding

  • 기존 RNN 기반의 방법에서는 context 벡터 추출을 위해 문장의 단어들을 순차적으로 처리해야만 했다.

  • 디코더를 위해서도 순차적으로 처리되었고, 이러한 순차적인 방법은 문장의 순서를 고려해야 했다.

  • Transformer의 입력 Q의 경우 행렬 연산을 통해 입력 벡터로 변환되어 Multi-head attention 모듈에 들어갔다.

    • 문장의 순서에 대한 정보를 넣어줄 필요성
  • 연속함수이며 주기함수인 sin, cos 사용(Sinusoidal Encoding)

    • 벡터의 차원에 따라 진동수가 줄어든다.

Transformer의 input embedding은 RNN과 다르게 위치 정보를 얻을 수 없다. → Positional Encoding 사용

Multi-head Self-attention

  • Key, Query, Value attention 철학을 기반으로 Scaled Dot-product attention을 사용함
    • attention: 문장을 이해할 때 각각의 단어는 서로 영향을 끼친다.
    • Key value query: 그 강도는 다르다.
    • multi head: 연관의 근거는 다 다르다.

단어에 대한 벡터(Q)는 주어진 단어들에 대해서 유사한 정도만큼(K) 고려하고, 각 주어진 단어들은 (V)만큼의 중요도를 가진다.

Layer normalization

  • Batch norm: sample들의 feature별 평균과 분산 → batch size에 따라 성능 변화가 심하다.
  • Layer norn: 각 batch에 대해 feature들의 평균과 분산

Transformer 관련 연구_Computer Vision

  • Visual Transformer

    • Transformer를 사용하여 이미지 인식에 적용한 연구
    • CNN에서 사용되는 inductive bias(귀납 편향)없이 이미지 인식에서 성능 향상
    • 컴퓨터 비전 분야에서는 Convolution 연산을 이용한 방법이 대중적
  • DETR

    • Object Detection 문제를 direct set prediction으로 푸는 모델
    • 기존의 Detection에서 생기는 NMS(Non-Maximum Suppression) 문제 해결(기존에는 post processing 필요)
    • Transformer 기반의 prediction(end-to-end 방식)
      → bipartite matching: 각각의 실제 레이블에 대해 하나만 할당

Transformer 관련 연구_시계열 데이터

  • 기존 시계열 데이터 처리는 LSTM을 많이 사용함
  • 시계열 데이터는 일반적으로 자연어 데이터보다 훨씬 긴 시계열 예측
  • Transformer의 attention layer는 matrix 연산 → 계산인 size의 제곱만큼 증가

▷ 내일 학습 계획: GPT 강의(4~7)

[이 글은 제로베이스 데이터 취업 스쿨의 강의 자료 일부를 발췌하여 작성되었습니다.]

0개의 댓글