1blue3brown의 Transformers 영상
https://youtu.be/LPZh9BOjkQs?si=DGKW99vESeTXnPUM
구글의 한 연구팀이 Transformers라는 신경망 아키텍쳐를 만들어내기 전까지 LLM들은 문장을 토큰단위로 분할하고, 토큰을 순차적으로 처리하며 다음 단어를 예측했다.
하지만 transformers의 등장 이후로 이런 과정이 바뀌었다.
transformers는 각 토큰을 모두 임베딩시켜 벡터화한다. 그리고 Attention이라는 작업을 수행함. 이건 각 토큰끼리의 관계를 비교하며 전체 문장의 문맥을 파악하는 행위임.
이 메커니즘을 이용해 입력된 문장내 토큰들에 가중치를 부여하고 무엇이 가장 중요한 토큰인지를 파악하게끔 한다고 함.
이 Attention이 병렬적으로 이뤄진다는게 이전 아키텍쳐와 Transformers의 차이이다.
최종적으로는 문맥을 고려해 마지막 단어가 무엇이 올지 확률을 얻어내 문장을 완성시킨다.
transformers 아키텍쳐에서 인코더는 입력된 자연어를 문맥을 파악하고, 그 과정에서 토큰들을 임베딩한다.
디코더는 임베딩된 토큰과 파악된 문맥을 바탕으로 다음에 나올 키워드를 정한다.
이런 아키텍쳐를 바탕으로 만들어진 모델이 BERT, BART, GPT이다.
bert-base-uncased
, distilbert
.facebook/bart-large
, bart-base
.gpt2
, gpt-3
, chatgpt
.모델 | 구조 | 방향성 | 목적 | 주요 사용 사례 |
---|---|---|---|---|
BERT | Encoder-only | 양방향 | 텍스트 이해 | 감정 분석, NER, QA |
BART | Encoder-Decoder | 양방향 + 단방향 | 텍스트 생성 및 복원 | 텍스트 요약, 기계 번역 |
GPT | Decoder-only | 단방향 | 텍스트 생성 | 대화형 AI, 창의적 텍스트 작성 |