gpt4 book ai didi

tensorflow - 如何使用 Tensorflow 的对象检测 API 在训练中修改卡住层?

转载 作者:行者123 更新时间:2023-12-03 18:40:48 24 4
gpt4 key购买 nike

我在训练中使用 Tensorflow's Object Detection API

在哪个文件中,卡住层被定义为在训练中对模型进行微调。
我需要在微调中尝试更改卡住层。

例如,如果我使用 Resnet50 configuration ,我可以在哪里更改卡住层?

最佳答案

那当然可以。

通过读取 proto 文件进行训练,有一个名为 freeze_variables 的字段,这应该是一个包含您要卡住的所有变量的列表,例如在培训期间排除他们。

假设您想卡住第一个块的第一个单元中第一个瓶颈的权重,您可以通过添加

freeze_variables: ["resnet_v1_50/block1/unit_1/bottleneck_v1/conv1/weights"]

所以你的配置文件看起来像这样:
train_config: {
batch_size: 1
freeze_variables: ["resnet_v1_50/block1/unit_1/bottleneck_v1/conv1/weights"]
...

您可以通过检查 tensorflow 图来验证权重实际上是否已卡住。 enter image description here

如图所示,权重不再有 train 操作。

通过为 freeze_variables 选择特定模式,您可以非常灵活地卡住变量(您可以从 tensorflow 图中获取层名称)。

顺便说一句, here 是实际的过滤操作。

关于tensorflow - 如何使用 Tensorflow 的对象检测 API 在训练中修改卡住层?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55962158/

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