기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
Nova 2.0의 CPT
Amazon Nova Lite 2.0은 Nova Lite 1.0보다 더 크고 다양한 데이터 세트를 기반으로 훈련된 추론 모델입니다. 더 큰 모델임에도 불구하고 Nova Lite 2.0은 Nova Lite 1.0보다 더 빠른 추론을 제공하는 동시에 향상된 추론 기능, 더 긴 컨텍스트 길이 및 향상된 다국어 성능을 제공합니다.
Nova 2.0의 CPT를 사용하면 도메인별 데이터로 이러한 고급 기능을 확장하여 모델이 우수한 추론 및 분석 능력을 유지하면서 전문 영역에 대한 심층적인 전문 지식을 개발할 수 있습니다.
2.0에서 CPT를 위한 데이터 준비
데이터 형식 요구 사항
훈련 및 검증 데이터 세트는 아래 표시된 형식의 JSONL 파일이어야 합니다. 여기서 각 줄에는 필수 필드 및 구조와의 대화를 나타내는 JSON 객체가 포함되어 있습니다. 다음 예를 참고하세요
{"text": "AWS stands for Amazon Web Services"} {"text": "Amazon SageMaker is a fully managed machine learning service"} {"text": "Amazon Bedrock is a fully managed service for foundation models"}
텍스트 항목에는 대상 도메인을 나타내는 자연스럽게 흐르는 고품질 콘텐츠가 포함되어야 합니다.
데이터가 Arrow 형식으로datasets==2.18.0 버전이 사용되는지 확인합니다.
from datasets import load_dataset, load_from_disk from pathlib import Path input_path = Path("<Your jsonl file>") output_path = Path("<Your output directory>") dataset = load_dataset("json", data_files=str(input_path), split="train") dataset.save_to_disk(str(output_path), max_shard_size="1GB") try: test_dataset = datasets.load_from_disk(output_dir) print(f"Dataset loaded successfully ✅! Contains {len(test_dataset)} samples") except Exception as e: print(e)
JSONL 파일에 있는 것과 동일한 수의 줄을 인쇄해야 합니다.
데이터 믹싱을 사용하는 경우를 사용하여 첫 번째 작업을 실행합니다max_steps=2. 이렇게 하면 클러스터에서 데이터 액세스를 위한 최적화를 생성하고 모든 데이터믹스를 사용할 수 있는지 확인할 수 있습니다.
CPT용 데이터를 준비하는 방법
훈련 데이터는 지속적인 사전 훈련의 성공을 위한 가장 중요한 결정 요소입니다. CPT 데이터는 종종 "레이블 지정되지 않음"으로 설명되지만 현실은 훨씬 더 미묘합니다. 데이터가 구조화, 형식 지정 및 표시되는 방식에 따라 모델이 비즈니스 사용 사례에 필요한 지식과 기술을 얻을지 여부가 결정됩니다.
CPT를 위한 구조화된 비즈니스 데이터 세트 준비
이는 도메인에 특화된 파운데이션 모델을 구축하는 기업과 조직의 일반적인 과제입니다. 대부분의 기업은 제품 카탈로그, 사용자 프로필, 트랜잭션 로그, 양식 제출, API 호출, 운영 메타데이터 등 구조화된 데이터의 풍부한 리포지토리를 보유하고 있습니다. 처음에는 표준 사전 훈련에 일반적으로 사용되는 비정형 웹 텍스트와 매우 다르게 보입니다.
구조화된 비즈니스 데이터에서 효과적으로 학습하려면 다운스트림 작업에 대해 신중하게 생각하고 모델이 올바른 예측 관계를 학습하도록 데이터 프레젠테이션을 설계합니다.
지속적인 사전 훈련의 잠재력을 최대한 활용하려면 다음을 고려하세요.
-
추론 시 모델이 수행해야 하는 작업
-
원시 데이터에 있는 정보
-
모델이 정보를 올바르게 추출하고 조작하는 방법을 학습하도록 해당 데이터를 구조화하는 방법
구조화된 데이터를 훈련에 덤프하는 것만으로는 모델을 추론할 수 없습니다. 모델이 학습하는 내용을 안내하기 위해 데이터 프레젠테이션을 적극적으로 구성합니다.
다음 섹션에는 데이터 증강의 중요성을 보여주는 문헌 검토가 있으며 CPT용 비즈니스 데이터 세트를 처리하고 구성하는 방법에 대한 유용한 아이디어를 제공하는 구조화된 비즈니스 데이터에 대한 예제 증강 전략을 제공합니다.
문헌의 CPT에 대한 구조화된 데이터
CPT는 도메인 팩트를 모델에 압축할 수 있지만 입력 또는 작업이 이동할 때 해당 팩트를 검색하고 조작할 수 없게 만드는 경우가 많습니다. 제어된 실험은 사전 훈련 중에 다양한 증강이 없으면 모델이 나중에 명령 튜닝 후에도 추출하기 어려운 취약한 방식으로 사실을 기억하고 훈련 초기에 신호와 같은 명령을 주입하는 것이 좋습니다. 반정형 데이터의 경우 무작위 직렬화 및 기타 증강은 스키마 과적합을 줄이므로 CPT를 먼저 실행하고 나중에 IFT를 실행하는 대신 명령 스타일 작업과 인터리브해야 합니다. 재무 중심의 작업에서는 배치 시간에 CPT와 명령 데이터를 공동으로 혼합하면 순차 레시피에 비해 일반화가 향상되고 잊어버리기가 줄어듭니다. Qwen 기술 보고서는 고품질 지침 데이터를 사전 훈련 자체에 통합하여 동일한 패턴으로 수렴하므로 컨텍스트 학습이 향상되고 새로운 도메인 지식을 얻는 동안 다음 지침을 유지합니다.
반정형 코포라의 데이터 증강은 키 레버입니다. 합성 그래프 인식 CPT는 작은 도메인 세트를 추론 시 검색으로 관계와 화합물을 명시적으로 학습시키는 개체 연결 코포라로 확장합니다. 공동 CPT와 명령어를 혼합하면 재무 및 밸런싱 도메인의 순차 파이프라인보다 성능이 뛰어나고 일반 데이터와의 밸런싱 도메인의 성능이 저하됩니다. 또한 대규모 도메인 CPT는 광범위한 기능을 유지하고 모델 병합을 통한 절충을 허용할 수 있지만, 여전히 명령 튜닝을 필수적인 다음 단계로 가리켜 CPT 중에 명령 신호를 도입하는 가치를 강화합니다.
무작위화 및 셔플링을 통한 다양성 주입
구조화 및 반구조화 데이터 세트에서 모델을 효과적으로 학습시키는 데 도움이 되는 일반적인 전략은 데이터 세트의 필드 순서를 셔플링하고 일부 키를 무작위로 삭제하는 것입니다.
필드를 셔플링하면 모델이 표시되는 위치 대신 각 값의 의미를 읽고 모든 필드 간의 관계를 학습합니다. 예를 들어 amazon 스토어에 게시된 비디오 게임의 경우 "Title," "Platform," "Price," "Condition," "Edition"이 서로 다른 순열로 도착하면 모델은 "세 번째 슬롯은 플랫폼"에 의존할 수 없습니다. 즉, 레이블을 값에 바인딩하고 제목 """ 플랫폼, 플랫폼 "" 가격, 조건 "" 가격과 같은 속성 간의 양자 관계를 학습해야 합니다. 따라서 예를 들어 게임 이름과 관찰된 가격에서 가능한 플랫폼을 유추하거나 제목과 플랫폼이 주어지면 타당한 가격 범위를 추정할 수 있습니다.
직렬화 중에 키를 무작위로 삭제하는 것은 기능 드롭아웃과 같은 역할을 합니다. 즉, 한 필드에 대한 동시 적용을 방지하고 모델이 나머지 증거에서 누락된 정보를 복구하도록 강제합니다. “플랫폼”이 없는 경우 모델은 제목 문자열 또는 호환성 텍스트에서 모델을 선택해야 하며, “가격”이 숨겨져 있는 경우 플랫폼, 에디션 및 조건에서 삼각형화해야 합니다. 이렇게 하면 대칭(A→B 및 B→A), 복잡한 실제 목록에 대한 견고성, 필드가 누락되거나 이름이 변경되거나 재정렬될 때 스키마 불변성이 구축됩니다.
쇼핑 스타일의 예제는 이를 구체화합니다. “제목: 'Elden Ring' | 플랫폼: PlayStation 5 | 조건: Used—Like New | Price: $34.99” 및 "Price: $34.99 | Title: 'Elden Ring' | Condition: Used—Like New | Platform: PlayStation 5"와 같은 순열과 같은 여러 가지 방법으로 동일한 항목을 직렬화하고 설명에 "Platform"을 그대로 두고 일부 전달에서는 "PlatformPS5"을 삭제합니다. {title, price}에서 플랫폼 예측 및 {title, platform}에서 가격 버킷 예측과 같은 보완적 목표를 교육합니다. 키의 순서와 존재도 다르기 때문에 유일하게 안정적인 전략은 템플릿을 기억하지 않고 속성 간의 실제 관계를 학습하는 것입니다.
데이터가 표시되는 방식이 중요합니다.
LLMs 이미 본 것에서 다음 토큰을 예측하여 학습합니다. 따라서 훈련 중에 표시되는 필드 및 이벤트의 순서에 따라 모델이 학습할 수 있는 내용이 결정됩니다. 훈련 형식이 실제 작업과 일치하면 손실이 정확한 결정 토큰에 도달합니다. 필드가 구조 없이 함께 토스되는 경우 모델은 바로 가기를 학습하거나 인기를 기억한 다음 옵션 중에서 선택하라는 메시지가 표시되면 실패합니다.
상황을 먼저 표시한 다음 옵션을 표시하고 결정을 표시합니다. 모델이 결과나 설명에 대해서도 알고 있어야 하는 경우 결정 후에 추가하세요.
CPT용 샘플 패킹
패킹이란 무엇입니까?
이는 패딩이 아닌 실제 토큰으로 윈도우가 밀집되도록 훈련 데이터의 각 시퀀스 윈도우를 여러 전체 예제로 채우는 것을 의미합니다.
이것이 중요한 이유
훈련 중에는 최대 컨텍스트 길이가 설정됩니다. 예를 들어 토큰은 8,192개입니다. 배치는 [배치 크기 × 컨텍스트 길이]로 형성됩니다. 훈련 예제가 컨텍스트 길이보다 짧으면 나머지 위치가 패딩됩니다. 패딩은 손실이 마스킹된 경우에도 여전히 관심과 MLP 커널을 통해 실행되므로 학습 신호가 없는 토큰에 대해서는 컴퓨팅이 지불됩니다.
패킹은 어떻게 하나요?
여러 샘플을 패키징하려면 샘플의 전체 길이가 원하는 컨텍스트 길이 미만이 되도록 여러 훈련 샘플을 사이에 [DOC] 구분 기호와 연결합니다([DOC] 앞뒤의 공간 참고).
압축된 문서의 예는 다음과 같습니다.
{"text": "training sample 1 [DOC] training sample 2 [DOC] training sample 3"}