stanford-star/relbench
RelBench: Relational Deep Learning Benchmark
RelBench – 관계형 데이터베이스 기반 딥러닝 벤치마킹
소개 – RelBench는 연구자와 엔지니어가 관계형 데이터베이스에서 직접 머신러닝 모델(특히 그래프 신경망)을 학습하고 평가할 수 있도록 하는 오픈소스 벤치마크 제품군입니다. 실제 관계형 데이터셋 모음, 통합 태스크 API, 공개 리더보드를 제공합니다.
중요성 – 대부분의 머신러닝 연구는 평면 테이블이나 단일 테이블 예측에 집중되어 있습니다. 관계형 데이터(연결된 여러 테이블)는 산업 현장에서 흔히 볼 수 있지만 신경망에 입력하기는 어렵습니다. RelBench는 이 문제를 표준화하여 즉시 로드 가능한 데이터셋, 시계열 학습/검증/테스트 분할, 공통 평가 프로토콜을 제공함으로써 새로운 방법론을 공정하게 비교할 수 있도록 합니다.
주요 구성 요소
- Python 패키지 (
relbench) – PyPI를 통해 설치합니다. Hugging Face hub에서 데이터셋과 태스크를 가져와Database객체(원시 테이블)와Task객체(학습/검증/테스트 레이블 테이블, 메트릭 계산기)를 반환합니다. 모든 ML 스택과 호환되며, 예제는 PyTorch Geometric + PyTorch Frame을 사용합니다. - 데이터셋 및 태스크 – 핵심 세트(예:
rel-f1)로 시작하여 현재는 SALT, RateBeer, arXiv, MIMIC-IV를 포함하며, ReDeLEx 통합을 통해 70개 이상의 CTU 데이터베이스와 4DBInfer 테이블을 포함하도록 확장되었습니다. 각 데이터셋은 자체 설명 폴더(manifest.yaml + parquet 테이블 + 태스크 정의) 형태로 제공됩니다. - 리더보드 – 3개의 보드(분류, 회귀, 추천)가 있습니다. 제출은 태스크별로 간단한 CSV 파일을 통해 이루어지며, CLI 명령어
python -m relbench.submit이 검증, 패키징 및 GitHub issue 생성을 수행하고, 선택적으로 자동화된 에이전트 기반 제출도 지원합니다. - BYOD (데이터 직접 가져오기) – 사용자는 자신만의 RelBench 형식 폴더를 생성하여 Hugging Face에 게시할 수 있습니다. 중앙 레지스트리가 필요 없으며, 라이브러리는
org/repo[/subdir]주소를 통해 직접 로드할 수 있습니다. - 튜토리얼 및 예제 – 빠른 시작을 위한 Colab 노트북, 전체 GNN 베이스라인, 그리고
examples/디렉토리에 실행 가능한 스크립트가 포함되어 있습니다.
일반적인 워크플로우
import relbench
ds = relbench.load_dataset("rel-f1") # HF hub에서 가져오기
db = ds.get_db() # 원시 관계형 테이블
task = ds.load_task("driver-position") # 예: 엔티티 예측 태스크
train = task.get_table("train")
# `db` + `train`으로 모델 학습
pred = model.predict(db, test_entities)
score = task.evaluate(pred) # 태스크별 메트릭 사용
이 라이브러리는 시계열 분할을 위해 ds.val_timestamp와 ds.test_timestamp도 제공합니다.
사용 권장 대상 – 관계형 딥러닝 모델을 개발하는 연구자, 다중 테이블 예측을 위한 플러그 앤 플레이 벤치마크를 찾는 데이터 과학자, 그리고 공통의 실제 태스크 세트에서 GNN 기반 또는 기타 관계형 ML 접근 방식을 비교하고자 하는 모든 분.
추가 정보 – 프로젝트 웹사이트, Hugging Face 데이터셋 hub, arXiv 논문(NeurIPS 2024 및 ICLR 2026), 그리고 코드, 리더보드, 기여 가이드가 포함된 GitHub 저장소를 확인하세요.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트