메인 콘텐츠로 건너뛰기
run을 그룹으로 구성할 수 있습니다. 그룹은 특정 모델에 대한 트레이닝 run이나 특정 데이터셋에 대한 평가 run처럼 공통된 목적을 가진 run들의 모음입니다. 또한 job type과 같은 다른 속성별로 run을 구성할 수도 있습니다. Job typespreprocessing, training, evaluation과 같이 run의 역할을 나타냅니다.

run을 그룹으로 정리하기

W&B Python SDK를 사용하여 프로그래밍 방식으로, 또는 W&B App에서 대화형으로 run을 그룹에 추가할 수 있습니다.
W&B는 그룹 이름을 run의 wandb.Run.group 속성으로 저장합니다.
W&B Python SDK를 사용하여 하나 이상의 run을 프로그래밍 방식으로 그룹에 추가할 수 있습니다. wandb.init(group="")으로 run을 초기화할 때 group 파라미터에 그룹 이름을 인자로 전달합니다. 그룹 이름을 사용해 W&B App에서 run을 정리하고 필터링할 수 있습니다.다음 예시는 A, B, C라는 세 개의 그룹을 생성합니다. 각 그룹에는 세 개의 run이 포함됩니다.
import wandb

entity = "<entity>"
project = "<project>"

for group in ["A", "B", "C"]:
    for i in range(3):
        with wandb.init(entity=entity, project=project, group=group, name=f"{group}_run_{i}") as run:
            # 트레이닝을 시뮬레이션
            for step in range(100):
                run.log({
                    "acc": 0.5 + (step / 100) * 0.3 + (i * 0.05),
                    "loss": 1.0 - (step / 100) * 0.5
                })
프로젝트의 워크스페이스에서 그룹별로 정리된 run을 확인할 수 있습니다. 다음 이미지는 run 테이블을 그룹 이름으로 정리한 예시를 보여줍니다. A, B, C라는 세 개의 그룹이 run 테이블에 표시되며, 각 그룹에는 세 개의 run이 포함되어 있습니다.
그룹 이름으로 그룹화된 Runs 테이블

그룹 보기

W&B App에서 그룹별로 정리된 run을 보려면 다음을 수행하세요:
  1. 프로젝트 사이드바에서 Runs 탭을 선택합니다.
  2. run 목록 상단에서 Group 버튼을 클릭합니다.
  3. 드롭다운에서 Group을 선택합니다.

그룹 간 run 이동

한 그룹에서 다른 그룹으로 run을 이동하려면:
  1. W&B 프로젝트로 이동하세요.
  2. 프로젝트 사이드바에서 Runs 탭을 선택하세요.
  3. 체크박스를 클릭해 하나 이상의 run을 선택하세요.
  4. 테이블 상단에서 Move to group을 클릭하세요.
  5. 드로어에서 대상 그룹을 선택하거나 새 그룹을 생성하세요.
  6. Move를 클릭하세요.

그룹에서 run 제거

  1. W&B 프로젝트로 이동합니다.
  2. 프로젝트 사이드바에서 Runs 탭을 선택합니다.
  3. run 목록 위의 Group 버튼을 클릭합니다.
  4. 드롭다운에서 제거하려는 그룹 이름 옆에 있는 X를 클릭합니다.

그룹 삭제

그룹을 삭제하려면 해당 그룹의 모든 run을 제거하세요. 그러면 그룹이 자동으로 삭제됩니다.

작업 유형별로 run을 정리하기

run을 작업 유형(job type) 별로 정리합니다. 작업 유형은 preprocessing, training, evaluation처럼 run이 수행하는 기능을 나타냅니다.
run의 작업 유형은 run의 wandb.Run.job_type 속성을 통해 확인할 수 있습니다.
job_type 파라미터를 wandb.init(job_type="")에 전달하여 run에 작업 유형을 추가합니다. 예를 들어, 다음 코드 스니펫은 작업 유형이 training 또는 evaluation인 run을 생성합니다:
import wandb

entity = "<entity>"
project = "<project>"

for job_type in ["training", "evaluation"]:
    for i in range(2):
        with wandb.init(entity=entity, project=project, job_type=job_type, name=f"{job_type}_run_{i}") as run:
            # 일부 프로세스 시뮬레이션
            for step in range(50):
                run.log({
                    "metric1": 0.2 + (step / 50) * 0.4 + (i * 0.03),
                    "metric2": 0.8 - (step / 50) * 0.3
                })

다음 이미지는 작업 유형별로 정리된 run을 보여줍니다:
그룹 해제된 Runs 테이블

작업 유형별로 정리된 run 보기

W&B App에서 그룹별로 정리된 run을 보려면 다음을 수행합니다:
  1. 프로젝트 사이드바에서 Runs 탭을 선택합니다.
  2. run 목록 위에 있는 Group 버튼을 클릭합니다.
  3. 드롭다운에서 Job Type을 선택합니다.