한 번의 학습 반복에서도 손실, 평가 리턴, 이후 수정한 지표처럼 여러 관측이 나올 수 있습니다. 쓰기마다 새 반복으로 취급하면 실험의 대응 관계가 어긋나고, 중복 스텝을 버리면 정보가 사라집니다. 강화학습 및 진화 학습 프레임워크 EvoRL은 베이징 시간 2026년 11월 12일 main에 로컬 JSONL 기록을 추가했고, 11월 13일 파일명 후속 수정을 반영했습니다. 원래 쓰기 이력과 스텝에 맞춰 정렬한 분석용 뷰를 따로 제공합니다.

원본 실험 기록지 옆에 관측 스텝별로 묶은 기록 보관함

개념 일러스트: 개별 관측을 보존하고 병합한 뷰를 학습 스텝별로 정리합니다.

실험 맥락을 담은 로컬 파일

recorders=[log,jsonl]을 선택하면 추적 SDK를 추가하지 않고 일반 로그와 함께 기계가 읽을 수 있는 지표를 저장합니다. 고정 버전 빠른 시작 문서는 학습 스크립트의 공통 기록기 설정을 설명합니다. JSONL 백엔드도 프로젝트, 실행 이름, 해석 완료된 설정, 태그, 출력 경로와 선택적 그룹을 받습니다.

초기화할 때 이 맥락을 메타데이터 헤더로 기록합니다. 이후 쓰기마다 주어진 정수 step과 중첩된 data를 포함한 JSON 객체를 추가하고 파일 버퍼를 비웁니다. 원본 파일은 스텝 순서가 뒤섞이거나 쓰기가 반복되어도 도착 순서를 유지합니다. 실험 출력 디렉터리를 별도 분석 컴퓨터로 옮길 때 설정과 관측을 읽기 쉬운 로컬 산출물로 함께 가져갈 수 있습니다.

기록할 때가 아니라 읽을 때 병합

evorl.recorders에서 제공하는 load_jsonl_records(path)는 전체 데이터셋을 읽고 스텝순 목록을 반환합니다. 같은 스텝의 딕셔너리를 재귀적으로 병합하며, 충돌한 값은 나중 쓰기가 덮어쓰고 언급되지 않은 지표는 유지합니다. 배열은 전체가 교체되며 나중의 null도 이전 값을 덮어씁니다. 선택적인 첫 줄 메타데이터 헤더는 지표 목록에 넣지 않고 건너뜁니다.

스텝 10에서 학습 손실과 평가 리턴을 따로 기록한 뒤 손실을 수정하는 경우를 생각해 보세요. 원본 파일에는 세 번의 쓰기가 모두 남습니다. 로드한 레코드는 최신 손실과 평가 리턴을 담습니다. 스텝 8 기록이 나중에 도착하더라도 정렬 후에는 10 앞에 놓입니다. 학습 곡선에서 반복을 식별하는 기준은 줄 위치나 로깅 호출 횟수가 아니라 step입니다.

직렬화에서 보존되는 정보

구현과 회귀 테스트는 NumPy, JAX, pandas 값을 다룹니다. 배열과 Series는 목록이 됩니다. DataFrame은 열과 행 데이터를 유지하지만 인덱스는 제외합니다. NaN, 무한대와 pandas 결측값은 JSON null이 됩니다. DataFrame 인덱스가 샘플을 식별한다면 기록 전에 명시적인 열로 옮기세요. 실제 저장 형식에서 바로 도출되는 조치입니다.

잘못되거나 불완전한 줄은 파일과 줄 번호가 포함된 오류를 일으킵니다. 로더는 잘린 마지막 레코드를 조용히 버리지 않습니다. 전체 데이터셋을 메모리에 올리므로 누적 파일 크기에 맞춰 분석 메모리를 계획해야 합니다. 애플리케이션 지표 이름이 step이어도 data 안에 남으며, 기록기 바깥쪽의 반복 필드와 구분됩니다.

실행마다 서로 다른 저장 위치

후속 수정은 JSONL과 스크립트가 만든 로그 파일에서 sanitize_filename을 공유합니다. /를 _로 바꾸므로 MetaWorld/Hammer-v3는 MetaWorld_Hammer-v3가 됩니다. 다른 문자는 유지되고 메타데이터에는 원래 실행 이름이 남습니다. 확장자는 각각 .jsonl과 .log입니다. 최초 커밋의 퍼센트 인코딩 규칙을 대체한 것으로, 파일명 정규화가 고유성을 보장하지는 않습니다.

같은 JSONL 파일 경로를 다시 초기화하면 내용이 덮어써집니다. 특히 슬래시와 밑줄만 다른 이름에는 실행별로 별도 출력 디렉터리나 파일명을 사용하세요. 두 커밋이 포함된 소스에서 위 설정으로 작은 실험을 시작해 헤더, 중복 스텝 병합과 저장 위치를 확인한 뒤 긴 실행으로 넘어가세요. 이전 EvoRL 개발 기사가 설명한 그래디언트, 장치와 지표 형상의 관측을 이번 업데이트로 로컬에 보관하고 다시 분석하기 쉬워집니다.

← 소식 목록으로 돌아가기맨 위로 ↑