목차
반응형

1. LLM 학습을 위한 데이터 형식
모델에 따라 필요한 데이터의 형식은 달라질 수 있으나,
일반적인 모델은 텍스트만 있으면 된다. (특이 케이스 형태의 데이터는 다음에 업데이트 하겠다.)
그리고 아래와 같은 태그를 붙여준다. (안붙여줘도 학습은 된다고 한다.)
<s> : 문장의 시작
</s> : 문장의 끝
예를 들면 다음과 같다.
data = [
{"text": "<s> 인공지능은 사람의 언어를 학습할 수 있습니다. </s>"},
{"text": "<s> 사용자: 오늘 날씨 어때? </s>"}
]
만약 데이터를 직접 만들고 싶으면
위와 같이 만들면 되겠다.
2. datasets를 이용해 데이터 불러오기
datasets 는 huggingface에서 관리하는 데이터 셋을 불러오기 위한 라이브러리이다.
설치 명령어는 아래와 같다.
pip install datasets
다음으로 huggingface에 들어가서 필요한 데이터를 고른다

데이터를 골랐다면
Use this dataset 을 클릭해
데이터를 다운받는 코드를 복사한다.

코드 예시
- load_dataset 에 데이터 이름을 넣어주면 된다.
from datasets import load_dataset
ds = load_dataset("ganchengguang/resume_seven_class")
3. 나의 데이터로 Datasets 만들기
3.1. 딕셔너리로 Datasets 만들기
- 아래와 같은 형식으로 딕셔너리를 만든다. (딕셔너리로 만드는 방식이 가장 간단하다)
- Dataset.from_dict() 메서드로 Dataset을 만들어 준다.
from datasets import Dataset
data_dict = {
"text": [
"첫 번째 문장입니다.",
"두 번째 문장입니다.",
"세 번째 문장입니다."
],
"label": [0, 1, 0]
}
# 딕셔너리를 Dataset으로 변환
dataset = Dataset.from_dict(data_dict)
3.2. train, test, validation 데이터 만들기
Hugging Face datasets에서는
train_test_split() 함수를 사용할 수 있다
# train, test 분할
split_dataset = dataset.train_test_split(test_size=0.2) # 80%: train, 20%: test
train_dataset = split_dataset['train']
test_dataset = split_dataset['test']
# 추가로 validation이 필요하다면
split_val = train_dataset.train_test_split(test_size=0.25) # 예: train의 25%를 validation으로
train_dataset = split_val['train']
valid_dataset = split_val['test']
반응형
'자연어처리 > LLM을 위한 코딩' 카테고리의 다른 글
[LLM] 모델 학습 with HuggingFace (Accelerate) (6) (0) | 2025.02.15 |
---|---|
[LLM] 모델 학습 with Hugging Face (TrainingArguments, Trainer, trl) (5) (1) | 2025.02.13 |
LLM 모델 불러오기 실행하기 (Huggingface Transformers) (3) (2) | 2025.01.28 |
Pytorch Transformers 설치 (2) (0) | 2025.01.28 |
LLM을 위한 Pytorch와 HuggingFace 개요 (1) (1) | 2025.01.28 |