[Day8] 한 권으로 LLM 온라인 스터디 1기 - 단일 GPU Gemma 파인튜닝 2 3.4.5 키워드 데이터 생성jaehy12/new3 데이터셋은 각 기사별 키워드 정보를 포함하지 않으므로 Gemma 모델을 활용해서 각 데이터마다 5개씩 키워드를 추출 3.4.6 데이터 전처리Gemma 모델이 이해할 수 있도록 기사 형식의 데이터를 대화 형식으로 데이터 전처리 진행 3.4.7 데이터셋 분리 및 콜레이터 설정학습용 데이터와테스트용 데이터 분리모델이 중점적으로 학습해야할 부분을 지정 프로그래밍/LLM 2025.01.25
[Day6] 한 권으로 LLM 온라인 스터디 1기 - GPU 병렬화 기법 3.3 GPU 병렬화 기법3.3.1 데이터 병렬 처리(Data Parallelism, DP)전체 데이터를 작은 덩어리 여러 개로 나눠 각각을 서로 다른 GPU에서 동시에 처리학습시간 크게 단축, 메모리 제약 없이 대규모 데이터셋을 효과적으로 다룰 수 있음모든 GPU의 VRAM을 균등하게 활용하지 못함 → 모델 병렬화 기법이 등장 3.3.2 모델 병렬화(Model Parallelism, MP)대규모 신경망 모델을 여러 GPU에서 나누어 처리하는 방식모델을 수직으로 분할해서 처리(수직 모델 병렬화)단일 GPU로는 처리하기 어려운 대규모 모델을 효율적으로 학습하고 실행특정 시점에 대부분의 GPU가 놀고 있을 수 있음기기 간 데이터 복사로 인한 부담이 전체적인 학습속도를 저하시킬 수 있음→ 파이프라인 병렬화 등.. 프로그래밍/LLM 2025.01.25
[Day2] 한 권으로 LLM 온라인 스터디 1기 - 언어 모델 구조 및 셀프 어텐션 메커니즘 이해 2.3 언어 모델 만들기2.3.1 라이브러리 설명torch : 텐서 연산과 자동 미분기능 등을 제공해 딥러닝 모델 구현에 필수적인 기능 제공torch.nn : 신경망 구축에 필요한 다양한 레이어와 매개변수 관리 기능 제공이를 통해 모델 아키텍처를 정의하고 매개변수를 초기화하며, 순전파(forward pass)를 구현할 수 있다 2.3.2 __init__ 함수__init__- 클래스 인스턴스가생성될 때 자동으로 호출되는 메서드- 신경망 모델에서는 모델 구조와 필요한 초기설정을 정의함super().__init__()- 부모 클래스의 __init__ 메서드를 호출 → nn.Module의 생성자 호출super()- 여러 클래스를 동시에 상속받을 때 생길 수 있는 복잡한 상황을 관리하기 위함num_embeddin.. 프로그래밍/LLM 2025.01.24