Weights & Biases와 함께 TensorBoard에서 모델 시각화
이 글은 Weights & Biases를 사용해 TensorBoard에서 모델을 시각화하는 방법을 소개하고, FashionMNIST 데이터셋을 예제로 보여줍니다. 이 글은 AI 번역본입니다. 오역이 있을 수 있으니 댓글로 알려 주세요.
Created on September 15|Last edited on September 15
Comment
TensorBoard 은 머신러닝 모델을 시각화하는 도구입니다. TensorBoard는 깔끔한 웹 인터페이스를 통해 모델 성능 지표, 파라미터, 계산 그래프(그리고 그 밖의 다양한 항목)까지 기록하고 확인할 수 있게 해줍니다.
이 글에서는 Weights & Biases를 사용해 TensorBoard 인스턴스를 온라인으로 실행하고 호스팅하는 방법을 살펴보겠습니다. 마지막에는 시각화를 통해 혼동 행렬 TensorBoard에서

모델
TensorBoard를 사용하려면 먼저 모델이 필요합니다. 가능하면 TensorBoard와 쉽게 호환되는 모델이 좋습니다. tf.keras 콜백으로 TensorBoard를 연결하기가 매우 쉬워집니다. 곧 방법을 살펴보겠습니다. 그전에, 아주 간단한 모델을 만들어 학습시켜 우리 TensorBoard 인스턴스에 채울 데이터를 준비해 봅시다.
다음과 같이 빠르게 만들 수 있습니다:
model = Sequential()model.add(Conv2D(16, (5, 5), activation='relu',input_shape=(28, 28, 1)))model.add(MaxPooling2D(pool_size=(2, 2)))model.add(Conv2D(32, (5, 5), activation='relu'))model.add(MaxPooling2D(pool_size=(2, 2)))model.add(Dropout(0.2))model.add(Flatten())model.add(Dense(128, activation='relu'))model.add(Dense(10, activation='softmax'))We will be using the good old FashionMNIST dataset for training this model. Below is a sneak peek of the dataset in case you have not worked with the dataset before:
데이터셋

이 데이터셋은 다양한 의류 이미지로 구성되어 있으며, 각 이미지는 28×28 픽셀입니다. 이미지는 그레이스케일입니다. 이 데이터셋은 tf.keras.datasets에 포함되어 있습니다. 먼저 이를 로드한 다음, 픽셀 값을 [0, 1] 범위로 정규화하겠습니다.
# Load and preprocess the data(X_train, y_train), (X_test, y_test) = fashion_mnist.load_data()X_train /= 255.X_test /= 255.
이제 모델을 설정하고 모델에 투입할 데이터를 준비했으니, 모델 학습으로 넘어가 봅시다.
먼저 W&B를 다음과 같이 초기화해야 합니다 sync_tensorboard = True 호스팅된 TensorBoard 환경에서 이벤트 파일을 동기화하기 위해.
wandb.init(project="your-project-name", sync_tensorboard=True)
이제 모델 학습 단계에서는 적절한 설정으로 TensorBoard 콜백만 넘겨주면 됩니다. log_dir 인자입니다. 이 경우 값은 wandb.run.dir이어야 합니다.
model.fit(X_train, y_train, validation_data=(X_test, y_test), epochs=config.epochs,callbacks=[WandbCallback(data_type="image", labels=labels), TensorBoard(log_dir=wandb.run.dir)])
모델 학습을 실행하면, W&B 실행 페이지에서 (다음과 같은 모습의) app.wandb.ai/<username>/<project-name>/runs/<run-name>) TensorBoard가 표시됩니다.
라이브 TensorBoard 살펴보기 →

우리는 기록할 수 있습니다 혼동 행렬 TensorBoard 인스턴스에서 에포크별 방식으로 우리 모델의 혼동 행렬을 기록합니다. 혼동 행렬은 모델을 이해하는 데 도움이 됩니다. 예를 들어, 모델이 어디에서 오답을 내는지, 어떤 클래스에서 가장 어려움을 겪는지 살펴볼 수 있습니다. 이는 특히 모델 학습 중에 유용한데, 예측 성능이 학습을 통해 실제로 향상되고 있는지에 대한 통찰을 제공하기 때문입니다.
라이브 혼동 행렬 살펴보기 →
(클릭하여 Images 혼동 행렬을 확인하려면)."

이 글은 여기까지입니다! TensorBoard와 Weights & Biases를 통해 여러분이 만든 흥미로운 모델 시각화를 볼 날이 기대됩니다.
TensorBoard 직접 사용해 보기 →
Add a comment