:이 도구는 당신이 hyperparameter 검색에 만을 집중할 수는 varisous 훈련 모델의 측정 통계를 비교하는 tensorboard를 사용하여.
DyTB는 현재 하이퍼 매개 변수 세트와 관련된 고유 한 이름을 작성하고이를 로그 디렉토리로 사용합니다. 다른 로그 디렉토리를 만들면 Tensorboard를 쉽게 비교할 수 있습니다.
예를 들어,이 한 줄에 Cifar10에 VGG을 훈련 할 수있다 (VGG 및 Cifar10 모두 미리 정의 된 모델 & 데이터 세트의 일부를 사용할 수 있습니다) :
import tensorflow as tf
from dytb.inputs.predefined import Cifar10
from dytb.train import train
from dytb.models.predefined.VGG import VGG
# Instantiate the model
vgg = VGG()
# Instantiate the CIFAR-10 input source
cifar10 = Cifar10.Cifar10()
# 1: Train VGG on Cifar10 for 50 epochs
# Place the train process on GPU:0
device = '/gpu:0'
with tf.device(device):
info = train(
model=vgg,
dataset=cifar10,
hyperparameters={
"epochs": 50,
"batch_size": 50,
"regularizations": {
"l2": 1e-5,
"augmentation": {
"name": "FlipLR",
"fn": tf.image.random_flip_left_right,
# factor is the estimated amount of augmentation
# that "fn" introduces.
# In this case, "fn" doubles the training set size
# Thus, an epoch is now seen as the original training
# training set size * 2
"factor": 2,
}
},
"gd": {
"optimizer": tf.train.AdamOptimizer,
"args": {
"learning_rate": 1e-3,
"beta1": 0.9,
"beta2": 0.99,
"epsilon": 1e-8
}
}
})
이 모델의 훈련을하는 동안, 당신은을 모니터링 할 수 있습니다 손실 경향 및 텐서 보드를 사용한 정확도 값.
새 폴더가 사용되는 대표적인 하이퍼 파라미터의 일부 사용하여 생성됩니다 : 당신이 볼 수있는
tensorboard --logdir "log/VGG/CIFAR-10_Adam_l2=1e-05_fliplr/"
을 만들어 모델과 다음 추가 훈련하는 데 사용되는 hyperparameter에 대한 폴더, 하위 폴더로.
즉, ADAM에서 MomentumOptimizer로 변경하거나 메모를 추가하거나 l2 정규화 매개 변수 ecc를 변경하면 DyTB가 VGG 폴더에 하위 폴더를 만듭니다.
이이 방법으로, logdir
로 모델 디렉토리를 사용, tensorboard로 측정 된 메트릭을 비교할 수 : 좀 더 포괄적 인 가이드를 들어
tensorboard --logdir log/VGG
, 단지 DyTB README.md 또는 python-notebook example를 보라.
공부 한 코드를 표시하면 더 나은 답변을 얻을 수 있습니다 – DarkCygnus
tensorflow 부분 또는 tensorboard 부분에 대해 묻고 있습니까? 그래프와 매개 변수를 다루는 방법이나 적절하게 기록하고 비교를 위해 tensorboard를 사용하는 방법? – asakryukin
이 질문에 대한 답은 매우 명확하지 않습니다. 약간의 정보를 직접 제공하지 않으면 현상금을 배치하는 것이 도움이되지 않습니다. –