Notice
Recent Posts
Recent Comments
Link
«   2025/03   »
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 31
Tags
more
Archives
Today
Total
관리 메뉴

archive

LLM 파인튜닝 데이터 전처리 (2) & 모델 학습 코드 백업 본문

AIH 학부연구생/23_2 연구 논문

LLM 파인튜닝 데이터 전처리 (2) & 모델 학습 코드 백업

안정민 2024. 2. 16. 01:13

내가 진짜 초짜라 모델 저장도 못 하고 코랩 런타임 끊기면 다 날아가는 거에서 아등바등 중이라 그런 거일 수도 있는데, 하여간 데이터 전처리 여간 이거저거 신경 써야되는 게 아니더만요...

하여간 글자 수 모델에 맞게 좀 줄이고, 그리고 mbti도 문자열로는 라벨로 전달이 안 되는 터라 다 정수화해서 인코딩하는 작업까지 추가함

mbti_types = [
    "ISTJ", "ISFJ", "INFJ", "INTJ",
    "ISTP", "ISFP", "INFP", "INTP",
    "ESTP", "ESFP", "ENFP", "ENTP",
    "ESTJ", "ESFJ", "ENFJ", "ENTJ"
]

import pandas as pd

# CSV 파일 불러오기
df = pd.read_csv("C:\\Users\\jordi\\OneDrive\\바탕 화면\\23-2 연구\\data_set\\mbti\\train_set_3.csv")

# 'type' 열의 값을 MBTI 유형 리스트의 인덱스로 변환하여 새로운 열에 저장
df['type'] = df['type'].apply(lambda x: mbti_types.index(x))

df
path= "C:\\Users\\jordi\\OneDrive\\바탕 화면\\23-2 연구\\data_set\\mbti\\train_set_3_with_index.csv"
# CSV 파일에서 데이터 읽어오기
df = pd.read_csv(path)


# 전처리된 텍스트를 담을 리스트
processed_texts = []

# 텍스트를 512 길이로 자르는 함수
def truncate_text(text):
    # 최대 길이를 512로 설정
    max_length = 190
    # 텍스트를 공백을 기준으로 단어로 분할
    words = text.split()
    # 최대 길이까지의 단어만 선택하여 다시 조합
    truncated_text = ' '.join(words[:max_length])
    return truncated_text

# 각 텍스트에 대해 전처리 및 자르기 수행
for text in df['posts']:
    # 최대 길이로 자르기
    truncated_text = truncate_text(text)
    # 결과를 리스트에 추가
    processed_texts.append(truncated_text)

# 데이터프레임 열 갱신
df['posts'] = processed_texts

processed_texts[0]

 

그리고 다음은 학습시키는 중인 버트 모델 파이썬 코드이다

아니 정확도가 0.19에서 시작해서 ㅋㅋ... 0.5까지 멱살 잡고 끌어올렸는데 이거 맞냐

deeplearning.ipynb
0.03MB