gpt4 book ai didi

python - 每个训练周期后进行评估

转载 作者:行者123 更新时间:2023-12-01 08:51:56 25 4
gpt4 key购买 nike

尝试使用tensorflow对象检测API获取工作流程。

我已经为我的训练集(4070 个图像)和验证集(1080 个图像)创建了一个 tfrecords。

训练进行 400 次迭代,然后切换到评估,需要相当长的时间(大约 10 分钟),然后继续重复评估。我一直很困惑为什么我的表现很差,但我似乎只训练了 10 分钟,尽管跑了 24 小时。

评估配置是

   eval_config {
num_visualizations: 30
num_examples: 30
eval_interval_secs: 600
max_evals: 1
include_metrics_per_category: true
batch_size: 1
}
eval_input_reader {
label_map_path: "D:/src/Wind/WindObjectDetector/data/labels.pbtxt"
shuffle: false
num_epochs: 1
num_readers: 1
tf_record_input_reader {
input_path: "D:/src/Wind/WindObjectDetector/data/val.record"
}
sample_1_of_n_examples: 1
}

训练配置:

train_config {
batch_size: 8
data_augmentation_options {
random_horizontal_flip {
}
}
data_augmentation_options {
ssd_random_crop {
}
}
optimizer {
rms_prop_optimizer {
learning_rate {
exponential_decay_learning_rate {
initial_learning_rate: 0.0010000000474974513
decay_steps: 1017
decay_factor: 0.949999988079071
}
}
momentum_optimizer_value: 0.8999999761581421
decay: 0.8999999761581421
epsilon: 1.0
}
}
fine_tune_checkpoint: "D:/src/Wind/WindObjectDetector/experiments/test2/tl/model.ckpt"
from_detection_checkpoint: true
num_steps: 25400
}

我真正想要的是我进行常规图像分类和分割的工作流程。即训练一个 epoch(num_images//batch_size 迭代)。然后评估一个时期的验证集,然后重复。因此,每个循环我都会看到每个图像一次,并对每个(验证)图像进行一次评估。此时我很乐意对其进行训练。

最佳答案

训练和评估是对象检测 API 中的两个独立步骤。您必须运行 train.py 进行训练,并运行 eval.py 进行评估。如果您想在训练过程中进行评估,两个脚本必须并行运行。我真的无法说出为什么你只训练 10 分钟,却没有看到配置文件的训练部分。你训练多少步?

如果你想在每个纪元之后进行评估,则必须在每个纪元之后生成一个检查点(要更改检查点生成频率,请查看 here )。当生成新的检查点时,eval 脚本将自动评估这个新检查点。

关于python - 每个训练周期后进行评估,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53052301/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com