사전 요구 사항
일부 미디어 유형에는 추가 의존성이 필요합니다. 미디어 의존성을 포함하여 Weights & Biases SDK를 설치하려면 다음 명령을 실행하세요:이미지
wandb.Image를 사용하여 NumPy 배열, PIL 이미지 또는 로컬 파일의 이미지를 로깅하세요. 이미지를 로깅하면 입력, 출력, 필터 가중치, 활성화 값을 살펴볼 수 있습니다.

학습 성능과 이미지 로딩 시간에 미치는 영향을 줄이려면 step당 50개 미만의 이미지를 로깅할 것을 CoreWeave는 권장합니다.
- 배열
- PIL 이미지
- 이미지 파일
torchvision의 make_grid를 사용할 때처럼 이미지를 직접 구성하는 경우에는 배열을 바로 전달하세요.Weights & Biases는 Pillow를 사용하여 배열을 PNG 이미지로 변환합니다.
(height, width, channels) 형태로 사용하세요. Weights & Biases는 채널 수가 1, 3, 4이면 각각 그레이스케일, RGB, RGBA로 추론합니다. 이미지는 기본적으로 PNG 파일로 저장됩니다.값이 0–255 범위를 벗어나거나 모든 값이 0–1 범위 안에 있으면 픽셀 값이 0–255 범위로 정규화됩니다. 정규화를 끄려면 normalize=False를 전달하세요. 배열 변환을 더 세밀하게 제어하려면 PIL 이미지 탭에 나온 것처럼 PIL 이미지를 생성하세요.이미지 오버레이
시맨틱 세그멘테이션 마스크를 로깅하면 Weights & Biases 앱 UI에서 마스크의 불투명도를 조절하고 step별 변화를 확인할 수 있습니다.- 세그멘테이션 마스크
- 경계 상자
세그멘테이션 마스크나 경계 상자가 포함된 이미지를 로깅하면 Weights & Biases 앱 UI에서 모델 예측과 정답 데이터를 확인할 수 있습니다.
각 키의 세그멘테이션 마스크는 step마다(즉,

wandb.Image의 masks 인수에 딕셔너리를 전달하세요. 각 키는 predictions 또는 ground_truth처럼 마스크의 이름을 지정합니다. 각 값은 다음 필드로 구성된 딕셔너리입니다.이미지 하나에 여러 마스크를 로깅하려면 마스크마다 별도의 딕셔너리를 제공하세요.
wandb.Run.log()를 호출할 때마다) 정의됩니다.- 여러 step에서 동일한 마스크 키에 서로 다른 값을 제공하면 해당 키의 가장 최근 값만 이미지에 적용됩니다.
- 여러 step에서 서로 다른 마스크 키를 제공하면 표시 여부 컨트롤에는 모든 키가 나타나지만, 이미지에는 선택한 step에서 정의된 마스크만 적용됩니다. 해당 step에서 정의되지 않은 마스크는 켜거나 꺼도 이미지가 변경되지 않습니다.
Tables의 이미지 오버레이
Weights & Biases Table에 이미지 오버레이를 표시하려면 마스크 또는 경계 상자가 포함된wandb.Image 객체를 각 행에 추가하세요.
- 세그멘테이션 마스크
- 바운딩 박스

히스토그램
wandb.Histogram을 사용하여 모델 기울기와 같은 숫자 분포를 로깅하세요. Weights & Biases 앱 UI에서 x축은 학습 단계, y축은 메트릭 값을 나타내고, 색상은 각 구간에 속한 개수를 나타냅니다.
- 기본 히스토그램 로깅
- 유연한 히스토그램 로깅
목록, 배열, 텐서 등의 숫자 시퀀스를 
wandb.Histogram에 전달하세요. Weights & Biases는 배열과 텐서를 평탄화한 다음 numpy.histogram()을 사용하여 히스토그램을 계산합니다.히스토그램은 기본적으로 64개의 구간을 사용합니다. 구간 수를 사용자 지정하려면 num_bins를 최대 512까지의 값으로 설정하세요.
density=True를 설정하면 구간 값을 개수 대신 확률 밀도로 나타낼 수 있습니다.
3D 시각화
wandb.Object3D를 사용하여 3D 포인트 클라우드와 경계 상자가 포함된 lidar 장면을 로깅하세요. 점 좌표와 선택적으로 색상 또는 범주 레이블이 포함된 NumPy 배열을 제공하세요.
포인트 클라우드는 Weights & Biases 앱 UI에서 대화형으로 조작할 수 있습니다. 드래그하여 뷰를 회전하거나, 확대/축소하여 세부 사항을 살펴보거나, Control 키를 누른 채 마우스로 장면 안을 이동할 수 있습니다.
다음 보고서는 3D 경계 상자가 포함된 Lyft 데이터셋의 장면을 보여줍니다.
Weights & Biases 앱 UI는 포인트 클라우드당 최대 300,000개의 데이터 포인트를 표시합니다.
NumPy 배열 형식
다음 배열 형식 중 하나를 사용하세요. 여기서n은 포인트 수입니다.
Python 객체
wandb.Object3D.from_point_cloud()를 사용하여 데이터 포인트, 경계 상자, 벡터로 구성된 장면을 만드세요.
포인트 클라우드 파일
JSON 파일에서 포인트 클라우드 데이터를 불러오려면wandb.Object3D.from_file()을 사용하세요.
NumPy 배열
지원되는 배열 형식의 데이터는 모두wandb.Object3D.from_numpy()로 사용할 수 있습니다:
분자
wandb.Molecule을 사용하여 분자 데이터를 로깅하고 Weights & Biases 앱 UI에서 3D 구조를 확인하세요.
pdb, pqr, mmcif, mcif, cif, sdf, sd, gro, mol2, mmtf입니다.
SMILES 문자열, RDKit mol 파일, rdkit.Chem.rdchem.Mol 객체도 로깅할 수 있습니다. 이 예시를 실행하려면 RDKit이 필요합니다.

분자의 2D 뷰
wandb.Image 데이터 유형과 rdkit을 사용하여 분자의 2D 뷰를 로깅할 수 있습니다:
기타 미디어
Weights & Biases는 다양한 기타 미디어 유형의 로깅도 지원합니다.오디오
오디오 데이터를 로깅하려면wandb.Audio를 사용하세요. sample_rate에는 녹음된 오디오의 샘플링 레이트를 헤르츠(Hz) 단위로 지정하세요.
audio-file을 참조하세요.
비디오
비디오 파일을 로깅하려면wandb.Video를 사용하세요:
(frames, channels, height, width) 형태를, 배치에는 (batch, frames, channels, height, width) 형태를 사용하세요. NumPy 배열을 인코딩하려면 FFmpeg와 MoviePy가 필요합니다.
지원되는 형식은 "gif", "mp4", "webm", "ogg"입니다. 배열이나 메모리 내 스트림을 전달할 때는 format을 지정하세요. 원시 프레임을 인코딩할 때 기본 프레임 속도는 초당 4프레임입니다.
파일 경로를 제공하면 Weights & Biases는 파일이 존재하는지, 지원되는 형식인지 확인합니다. BytesIO 객체를 제공하면 Weights & Biases는 지정된 형식을 확장자로 사용하는 임시 파일을 생성합니다.
비디오를 보고 재생하려면 프로젝트 Workspace, run 워크스페이스 또는 보고서에서 미디어 패널을 여세요. 비교 모드를 사용하면 여러 run 또는 step의 비디오를 비교할 수 있습니다.
텍스트
wandb.Table을 사용하면 예측, 레이블 또는 기타 값과 함께 텍스트를 표시할 수 있습니다. table을 생성할 때 열 이름을 지정하세요.
기본적으로 열 머리글은 ["Input", "Output", "Expected"]입니다. 최적의 UI 성능을 보장하기 위해 기본 최대 행 수는 10,000으로 설정되어 있습니다. 하지만 wandb.Table.MAX_ROWS = {DESIRED_MAX}를 사용하여 최댓값을 명시적으로 재정의할 수 있습니다.
wandb.Table.add_data()를 사용하여 행을 추가할 수도 있습니다.
dataframe에 전달하세요.
string을 참조하세요.
HTML
wandb.Html을 사용하면 run 페이지의 패널에 맞춤형 HTML을 표시할 수 있습니다. HTML 파일 또는 문자열을 전달하세요:
inject=False를 전달하세요. 이 동작을 끄려면 다음과 같이 inject=False를 전달하세요.
html-file를 참조하세요.
