-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Description
- 데이터 파이프라인: 순차적인 흐름으로 데이터를 처리하는 것
- 웹 = 요청 + 응답
- 배치 프로그램 = 한 곳에서 + 모든 것을 한 번에
- DW, ML, AI 등 데이터 분야에서 많이 사용
- NLP ⊃ LLM
- NLP는 컴퓨터가 인간의 언어를 이해/분석/생성하도록 만드는 것을 의미
- LLM은 대규모 파라미터를 가진 언어 모델(대부분 transfomer 구조 기반)
- 벡터 공간 모델(Vector Space Model, VSM)
- 텍스트를 수치 벡터로 표현
- 문서간 유사도 계산, 검색, 분류 등에 활용하는 정보검색/자연어처리의 기본 모델
- 문서를 기하학적 공간의 점으로 본다
- 문서 집합에서 등장하는 모든 단어를 차원으로 갖는 n차원 공간을 구성
- 각 문서는 벡터로 표현 D = (w₁, w₂, ..., wₙ)
- 여기서 wᵢ는 해당 단어의 가중치다. 단순 빈도(TF) 또는 TF-IDF를 사용한다.
- TF-IDF 벡터화(Term Frequency–Inverse Document Frequency)
- 문서를 숫자 벡터로 변환하는 방법
- TF는 특정 단어가 한 문서 안에서 얼마나 자주 등장하는지
- IDF는 전체 문서 집합에서 그 단어가 얼마나 희귀한지
- 한 문서 안에서는 자주 등장하지만, 전체 문서에서는 드물게 등장하는 단어가 높은 점수
D1: “I like apple” D2: “I like banana” D3: “I like apple banana” “I”, “like”는 모든 문서에 등장하므로 IDF가 낮다. “apple”과 “banana”는 일부 문서에만 등장하므로 상대적으로 IDF가 높다.
- 유사도 계산 방식
- COSINE 유사도 / FAISS 라이브러리가 많이 쓰임
- 가장 일반적인 방식은 코사인 유사도
- 값 범위는 0~1로 1에서 가까울수록 두 문서가 유사
- 벡터 DB(Vector Database)는 고차원 벡터(embedding)를 저장하고, 유사도 기반 검색을 수행하는 데이터베이스
- 전통적인 RDB나 키-값 DB가 “정확히 일치하는 값”을 찾는 데 최적화되어 있다면, 벡터 DB는 “의미적으로 비슷한 것”을 찾는 데 최적화되어 있다.
- 대규모 언어 모델 LLM 기반으로 언어 모델의 튜닝과 지식 증류 기반의 소형 언어 모델 제작이 필수적
- 언어 모델 튜닝 기법: SFT, PEFT, RLHF 등
- 경량화 전략: LoRA, QLoRA, Adapter Tuning 등
- 워드 임베딩로 단어의 의미적 관계를 효율적으로 표현할 수 있게 됨
- 2013년 구글의 word2vec과 스탠포드의 GloVe와 같은 임베딩 모델
- CBOW 모델에서는 주변 단어의 임베딩 평균을 통해 중심 단어를 예측
- 이후 17년의 구글 Transformer 아키텍처 등장으로 자연어처리 분야가 붐
- Transformer 모델은 문장 내 단어 간 관계를 효과적으로 학습할 수 있도록, self attention을 도입해서 기존 순차적인 모델(RNN, LSTM 등)이 지닌 한계를 극복함
- Transformer 아키텍처에서 3가지의 어텐션이 이루어지는 위치: encoder / encoder-decoder / decoder
- 이후 Transformer 모델을 기반으로 18년 OpenAI가 발표한 GPT(Generative Pretrained Transfomer) 모델은 방대한 데이터를 이용하여 사전학습을 수행한 후, 다양한 작업에 맞춰 파인튜닝을 진행하는 방식을 소개함
- GPT-3는 1750억 개의 파라미터를 활용하여 범용성을 크게 확대함
- 이어 Meta의 LLaMa(Large Language Model Meta AI) 등의 등장
- 언어모델의 튜닝
- SFT 지도형 파인튜닝, 가장 기본적이고 직관적으로 사람이 사전에 준비한 명확한 정답이 포함된 데이터를 사용하여 모델을 지도학습하는 방법
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels