gpt4 book ai didi

c++ - Caffe GoogleNet classification.cpp 给出随机输出

转载 作者:行者123 更新时间:2023-11-28 02:03:58 25 4
gpt4 key购买 nike

我使用 Caffe GoogleNet 模型来训练我自己的数据(1 万张图片,2 个类别)。我在第 400000 次迭代时停止它,准确度约为 80%。

如果我运行以下命令:

./build/examples/cpp_classification/classification.bin
models/bvlc_googlenet/deploy.prototxt
models/bvlc_reference_caffenet/bvlc_reference_caffenet.caffemodel
data/ilsvrc12/imagenet_mean.binaryproto
data/ilsvrc12/synset_words.txt
1.png

它每次都会给我一个不同的——显然是随机的——结果(即,如果我运行它 n 次,那么我会得到 n 个不同的结果)。为什么?我的训练失败了吗?它是否仍然使用引用模型中的旧数据?

最佳答案

我认为这不是培训的问题。即使训练数据不是,它也应该每次都给出相同的(可能是错误的)输出。如果您得到随机结果,则表明权重加载不正确。

当您针对 .prototxt 加载 .caffemodel 时,caffe 将加载 prototxt 中名称与 caffemodel 中的层匹配的所有层的权重。对于其他层,它将根据 prototxt 中的规范进行随机初始化(gaussian xavier 等)。

因此,您现在要做的最好的事情是检查模型是否使用与您现在使用的相同的 prototxt 进行训练。

我看到您正在使用 GoogleNet prototxt 和 reference_caffenet caffemodel。这是故意的吗?

关于c++ - Caffe GoogleNet classification.cpp 给出随机输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38312250/

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