계산을 시작하기 전에 가설 작성하기
개선할 동작을 설명하세요. 특정 도메인의 문서 분류, 응답 형식 준수, 구조화된 정보 추출 등입니다. 저하되어서는 안 되는 것도 정하세요. 추출의 경우 형식 유효성과 필수 필드 존재 여부, 분류의 경우 단일 전체 평균이 아니라 카테고리별 지표가 될 수 있습니다.
먼저 학습과 분리된 세트에서 시작 모델을 평가하세요. 이 평가의 출력과 구성을 보관하세요. 그러면 구체적인 출발점과 적응을 비교하고, 일부 예시에만 국한된 개선을 찾아낼 수 있습니다. 최종 테스트 데이터는 남겨 두세요. 모든 설정을 차례로 고르는 데 사용하면 결국 그 통제 가치가 약해집니다.
데이터와 그 분할 준비하기
예시, 정제 규칙, 변환을 버전 관리하세요. 학습과 평가 사이의 중복을 찾고, 프로그램의 정확한 전처리 후 작은 샘플을 검사하세요. 텍스트의 경우 tokenizer, 구분자, 절단, 손실이 계산되는 위치를 확인하세요. 이미지의 경우 크기와 카테고리에 적용된 변환을 확인하세요.
준비 예시: 각 카테고리에서 대표적인 예시 몇 개를 골라 변환 후의 형태를 표시하고 예상 대상(target)을 수동으로 확인하세요. 그런 다음 학습 루프와 평가를 한 번 완전히 통과시키세요. 이 방법은 데이터나 연결 오류를 찾기 위한 것이며, 모델의 최종 품질을 판단하게 해주지는 않습니다.
학습시킬 파라미터 선택하기
전체 파인튜닝은 모델이 정의한 모든 파라미터를 업데이트합니다. LoRA 같은 방법은 기본 가중치를 유지하고 선택한 모듈에 저랭크 추가 행렬을 학습시킵니다. 이 선택은 학습 가능한 파라미터 수를 줄이지만, 기본 모델을 로드하고 그 활성화를 처리해야 할 필요성은 없애지 않습니다.
대상 모듈, 학습 가능한 파라미터, 저장되는 추가 레이어가 있다면 이를 기록하세요. LoRA의 경우 랭크는 비교할 구성의 일부이며, 그것만으로 품질을 예측하기에는 충분하지 않습니다. 처음부터 업데이트가 실제로 예상된 파라미터를 변경하는지 확인하세요. 내보낼 때 어댑터는 기본 모델 및 그 정확한 버전과 연결된 상태로 유지되어야 합니다.
완전한 학습 단계의 규모 산정하기
손실 계산, 역전파, 옵티마이저 업데이트를 포함하는 한 단계를 검증하세요. 로딩 중 메모리에 상주하는 모델은 이 단계에서 사용 가능한 용량을 초과할 수 있습니다. 대표적인 입력 길이와 마이크로배치로 측정하세요. 정밀도, 옵티마이저 상태, 실제로 학습되는 파라미터도 추정에 포함됩니다.
그래디언트 누적을 사용하면 여러 마이크로배치로부터 하나의 업데이트를 구성할 수 있습니다. 그 개수와 손실 정규화를 문서화하세요. 활성화 체크포인팅은 약간의 추가 연산을 대가로 보관하는 활성화를 줄입니다. 이 옵션들을 결합하기 전에 각각을 따로 검증하세요. 이들은 실험의 진행 방식을 바꾸므로 결과 기록에 포함되어야 합니다.
CUDA, ROCm 및 분산 처리를 프로토콜에 유지하기
모델, 확장 기능, 적응 방법이 선택한 백엔드와 호환되는지 확인하세요. NVIDIA에서는 CUDA 체인을, AMD에서는 ROCm 체인을 준비하세요. 플랫폼을 변경하면 실행 및 품질 점검을 다시 해야 합니다. 같은 이름의 환경이 같은 실행을 만들어낸다고 가정하지 말고 실제로 사용한 버전을 보관하세요.
DistributedDataParallel에서는 각 프로세스가 모델의 복제본과 함께 작업하며 그래디언트가 동기화됩니다. 이 전략은 GPU 메모리 간에 가중치를 자동으로 공유하지 않으므로 데이터 분배도 별도로 구성해야 합니다. 더 큰 상태를 담는 것이 목표라면 그 상태를 분산하는 전략을 검토하고, 배치 수를 늘리기 전에 그 제약 조건을 확인하세요.
변형과 최종 결정 정리하기
각 실험에 식별자를 부여하고 설명할 수 있는 하나의 파라미터 집합만 변경하세요. 변형 간에 동일한 평가 절차를 유지하고 시드, 학습 예산, 사용한 데이터를 동일하게 하세요. 중단되거나 유효하지 않은 시도도 기록하세요. 설명 없이 제외하면 비교를 해석하기 어려워집니다.
3일, 7일, 30일 대여를 초기 점검, 실험, 평가, 재개, 내보내기라는 뚜렷한 단계를 중심으로 계획하세요. 새 프로세스에서 체크포인트를 다시 읽을 여유를 두세요. 마지막에는 모델 또는 어댑터, 그 구성, 비교 결과, 관찰된 한계를 제공하세요. 처리 방식의 선택은 여러분의 자율에 맡겨집니다. Kernodeck은 그 내용을 검사하지 않습니다.