r/MachineLearning: preflight, label leakage와 NaN을 학습 전에 막는 PyTorch pre-training validator
Original: [P] preflight, a pre-training validator for PyTorch I built after losing 3 days to label leakage View original →
GPU 시간을 태우기 전에 dataset와 pipeline부터 검사하자는 접근
2026년 3월 15일 r/MachineLearning에서는 preflight 소개 글이 56 points와 13 comments를 기록했다. 작성자는 training run이 crash 없이 끝났는데도 model이 아무것도 배우지 못했고, 원인을 찾는 데 3일이 걸렸다고 적었다. 문제는 label leakage였다. 그래서 긴 training job을 시작하기 전에 dataset와 model wiring의 기본 건강 상태를 짧게 검사하는 CLI를 만들었다는 것이 이 post의 핵심이다.
GitHub README에 따르면 preflight는 preflight run --dataloader my_dataloader.py 같은 형태로 실행된다. check는 총 10개이며 severity는 FATAL, WARN, INFO 세 단계로 나뉜다. FATAL failure가 하나라도 있으면 exit code 1을 반환해 CI를 차단한다. 항목에는 nan_inf_detection, label_leakage, shape_mismatch, gradient_check, normalisation_sanity, channel_ordering, vram_estimation, class_imbalance, split_sizes, duplicate_samples가 포함된다. README 예시는 30초 안팎의 pre-flight check를 목표로 하고, JSON output과 GitHub Actions integration도 제공한다.
이 프로젝트의 위치 설정도 현실적이다. 작성자는 pytest를 대체하려는 것이 아니라고 분명히 말한다. code logic test는 pytest가 맡고, comprehensive ML validation platform은 Deepchecks 같은 도구가 맡고, experiment tracking은 WandB나 MLflow가 맡는다. preflight가 노리는 지점은 그 사이, 즉 'code는 돌아가는데 model은 망가진다'는 가장 비싼 실패 구간이다. 특히 label leakage, NaN, wrong channel ordering, dead gradients처럼 Python exception을 던지지 않는 silent failure를 미리 잡아내겠다는 설명은 많은 실무자에게 바로 와닿는다.
설정 방법도 과하게 무겁지 않다. model과 loss를 추가로 넘기면 shape와 gradient, VRAM 관련 검사를 켤 수 있고, .preflight.toml으로 threshold 조정이나 특정 check 비활성화도 가능하다. roadmap에는 --fix 자동 수정, drift detection, dry-run mode, plugin 형태 확장도 적혀 있다. 아직 v0.1.x 초기 도구이지만, 커뮤니티가 반응한 이유는 명확하다. 긴 training run에서 가장 비싼 비용은 compute보다도 늦게 발견되는 silent bug일 때가 많기 때문이다.
Primary source: preflight GitHub repository. Community discussion: r/MachineLearning.
Related Articles
2026년 3월 15일 r/MachineLearning에는 preflight라는 PyTorch용 CLI가 소개됐다. label leakage, NaN, gradient 문제, VRAM 추정 등 10개 점검을 학습 시작 전에 수행해 비용 낭비를 막는 것이 목적이다.
Hugging Face는 2026년 3월 10일 checkpoint, processed data, log, agent trace를 위한 non-versioned S3-like storage인 Storage Buckets를 공개했다. 이 기능은 Xet deduplication 위에 구축됐고, AWS와 GCP를 대상으로 hot data를 compute 근처로 옮기는 pre-warming도 포함한다.
r/MachineLearning post는 단 하나의 context manager로 PyTorch run을 계측하고, training이 끝나기 전에 timing, memory, rank skew를 보여 주는 open-source tool TraceML을 소개했다. 핵심은 heavyweight profiler가 아니라 실시간 observability다.
Comments (0)
No comments yet. Be the first to comment!