float16과 bfloat16은 두 가지 다른 형식의 16비트 부동 소수점 데이터 형식입니다. 이들 각각은 메모리 사용을 줄이고, 처리 속도를 높이며, 딥러닝과 같은 고성능 계산 작업에서 사용됩니다. 그러나 두 형식은 서로 다른 방식으로 비트를 배치하여 정밀도와 범위에서 차이를 보입니다.float16정밀도: float16은 1비트의 부호, 5비트의 지수, 그리고 10비트의 유효 숫자(가수)로 구성됩니다.범위: 대략 -65504에서 +65504까지의 값을 표현할 수 있으며, 작은 값의 표현에는 정밀도가 낮습니다.사용처: 주로 딥러닝에서 GPU를 사용한 계산에 널리 사용되며, NVIDIA의 최신 GPU 아키텍처에서는 float16 계산을 가속화합니다.bfloat16정밀도: bfloat16은 float16과..
LoRA 외에도 PEFT(Parameterized Efficient Fine-Tuning) 기술로 사용할 수 있는 여러 가지 방법이 있습니다. 각 방법은 LoRA와 마찬가지로 대규모 모델의 효율적인 파인튜닝을 목표로 하며, 메모리와 계산 비용을 줄이면서 성능을 유지하거나 개선할 수 있습니다. 아래에서 다른 주요 PEFT 기술들을 소개합니다.1. Prefix Tuning설명: 입력 시퀀스에 모델 학습 중 추가적인 "프리픽스" 벡터를 삽입하여 모델을 미세 조정하는 방식입니다. 모델의 기존 파라미터는 고정된 상태에서 추가된 프리픽스 벡터만 학습됩니다.장점:모델 파라미터를 수정하지 않고, 효율적으로 미세 조정이 가능합니다.원래 모델의 성능을 유지하면서도 특정 작업에 맞게 빠르게 조정할 수 있습니다.적용 시점: ..
LoRA(Low-Rank Adaptation)와 같은 PEFT(Parameterized Efficient Fine-Tuning) 기술을 적용할 때, 파라미터 설정은 주로 모델의 특성과 작업 목적에 따라 다릅니다. 각각의 파라미터는 LoRA가 어떤 방식으로 모델에 적용될지를 조정하며, 적절하게 설정하면 모델의 성능과 효율성을 최적화할 수 있습니다.아래는 각 파라미터의 의미와 적용 시 고려해야 할 사항입니다.1. r (저랭크 행렬의 차원)설명: r 값은 LoRA에서 학습할 저랭크 행렬의 크기를 결정합니다. 일반적으로 낮은 차원(r)으로 압축된 표현을 학습하면서 메모리와 계산 비용을 절감합니다.적용 기준: 작은 r 값은 메모리 사용량을 줄이지만, 학습 성능에 악영향을 미칠 수 있습니다.큰 r 값은 더 많은 학..
Tokenizer는 NLP 모델에서 텍스트 데이터를 처리하고 모델이 이해할 수 있는 형태(주로 숫자 시퀀스)로 변환하는 중요한 도구입니다. 직접 토크나이저를 만들려면 몇 가지 방법이 있지만, 보통 아래의 단계를 따릅니다.1. 토크나이저 정의 방식 선택토크나이저를 만드는 방식은 크게 세 가지로 나뉩니다:Word-level Tokenization: 단어 단위로 텍스트를 쪼갭니다. 예: "안녕하세요." -> ["안녕하세요", "."]Subword-level Tokenization: 자주 사용되는 서브워드를 추출하여 작은 단위로 쪼갭니다. Byte-Pair Encoding(BPE), WordPiece, SentencePiece 등이 이 방식을 따릅니다. 예: "안녕하세요" -> ["안", "녕", "하세요"]C..
---------------------------------------------------------------------------IndexError Traceback (most recent call last)Cell In[14], line 31 26 sentence_encoded = tokenizer(instruction, 27 add_special_tokens=True, 28 return_tensors="pt") # Ensure tensors are returned for model input 30 # Gen..
임베딩 크기를 수정하면 모델의 입력 텍스트가 임베딩되는 벡터의 차원이 변경됩니다. 이 변화는 모델의 전체 성능과 학습 과정에 중요한 영향을 미칩니다. 구체적으로, 임베딩 크기를 수정하면 다음과 같은 사항들이 발생할 수 있습니다:1. 모델의 표현력 변화임베딩 크기는 모델이 각 단어를 벡터로 변환할 때 사용하는 차원의 수를 의미합니다. 크기가 커질수록 각 단어를 더 고차원적으로 표현할 수 있으며, 더 많은 정보나 세부 사항을 학습할 수 있게 됩니다.임베딩 크기 증가: 더 큰 임베딩 벡터는 각 단어를 더 풍부하게 표현할 수 있어, 특히 복잡한 문맥에서 더 정확한 표현을 배울 수 있습니다. 하지만 차원이 너무 커지면 학습이 더 어려워지거나 과적합(overfitting)이 발생할 가능성이 있습니다.임베딩 크기 감..
T5ForConditionalGeneration( (shared): Embedding(32128, 1024) (encoder): T5Stack( (embed_tokens): Embedding(32128, 1024) (block): ModuleList( (0): T5Block( (layer): ModuleList( (0): T5LayerSelfAttention( (SelfAttention): T5Attention( (q): Linear(in_features=1024, out_features=1024, bias=False) (k): Linear(in_features=1024, out_feat..
- Total
- Today
- Yesterday
- 해시
- git
- 파이썬
- speaking
- Github
- Hugging Face
- Array
- RAG
- #패스트캠퍼스 #패스트캠퍼스ai부트캠프 #업스테이지패스트캠퍼스 #upstageailab#국비지원 #패스트캠퍼스업스테이지에이아이랩#패스트캠퍼스업스테이지부트캠프
- LLM
- #패스트캠퍼스 #UpstageAILab #Upstage #부트캠프 #AI #데이터분석 #데이터사이언스 #무료교육 #국비지원 #국비지원취업 #데이터분석취업 등
- clustering
- recursion #재귀 #자료구조 # 알고리즘
- #패스트캠퍼스 #패스트캠퍼스AI부트캠프 #업스테이지패스트캠퍼스 #UpstageAILab#국비지원 #패스트캠퍼스업스테이지에이아이랩#패스트캠퍼스업스테이지부트캠프
- Numpy
- Lora
- 코딩테스트
- 리스트
- 티스토리챌린지
- 오블완
- LIST
- 손실함수
- t5
- cnn
- PEFT
- Python
- English
- nlp
- classification
- Transformer
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |