当前位置: 首页 > 知识库问答 >
问题:

[Tensorflow][对象检测]ValueError当尝试训练时--num_clones=2

水瀚漠
2023-03-14

我想在多个CPU上训练,所以我运行这个命令

C:\用户\解决方案\桌面\Tensorflow\研究

我得到了下面的错误

Traceback(最近一次调用):文件"object_detection/train.py",第169行,在tf.app.run()文件"C:\用户\解决方案\AppData\本地\程序\Python\Python35\lib\site-包\tenorflow\python\平台\app.py",第124行,在运行_sys.exit(主文件)文件“object_detection/train.py”,第165行,在主worker_job_name,is_chief,FLAGS。train_dir)文件“C:\用户\解决方案\桌面\Tensorflow\研究\object_detection\trainer.py”,第246行,在列克隆=model_deploy.create_clones(deploy_config,model_fn,[input_queue])文件"C:\用户\解决方案\桌面\Tensorflow\研究\Slim\部署\model_deploy.py",第193行,create_clones输出=model_fn(*args,**kwargs)文件"C:\用户\解决方案\桌面\Tensorflow\研究\object_detection\trainer.py",第158行,_create_lossestrain_config.merge_multiple_label_boxes)ValueError:没有足够的值来解压(预期为7,得到0)

如果我设置num_clones1或省略它,它正常工作。我也尝试设置-ps_tasks=1,但没有帮助

如有任何建议,将不胜感激

共有2个答案

宋弘壮
2023-03-14

您没有提到您正在训练哪种类型的模型——如果像我一样,您使用了TensorFlow对象检测应用编程接口示例(Faster-RCNN-盗梦空间-V2)中的默认模型,那么num_clones应该等于batch_size。然而,我使用的是GPU,但是当我从一个克隆到两个克隆时,我看到了类似的错误,在训练配置文件中设置batch_size: 2是解决方案。

刘博文
2023-03-14

我通过稍微更改原始配置中的一个参数来解决此问题:

...
train_config: {
  fine_tune_checkpoint: "C:/some_path/model.ckpt"
  batch_size: 1
  sync_replicas: true
  startup_delay_steps: 0
  replicas_to_aggregate: 8
  num_steps: 25000
  ...
}
...

更改参数replicas_to_aggregate: 1,或设置sync_replicas: false都解决了我的问题,因为我只在一个显卡上训练,没有任何副本(就像在TPU上训练时一样)。

 类似资料:
  • 我在火车上遇到了一个问题。执行力差。 这是命令行:python train。py--logtoderr--train\u dir=training/--pipeline\u config\u path=training/ssd\u inception\u v2\u coco。配置 结果是: 警告:tensorflow:From/home/vivien/。conda/envs/tensorflow\

  • 我正在使用Tensor对象检测API创建一个自定义对象检测模型。我安装了本笔记本中提到的所有内容,并遵循本笔记本中提到的相同步骤,但当我尝试运行model_builder_测试时。py文件 我得到以下错误: 我正在使用python 3.7。10和tensorflow 2.6。英特尔OneAPI Devcloud上的0。请帮我解决这个错误。

  • /usr/local/lib/python3.6/dist-packages/keras/backend/tensorflow_backend.py:174:不推荐使用名称tf.get_default_session。请改用tf.compat.v1.get_default_session。 /usr/local/lib/python3.6/dist-packages/keras/backend/t

  • 本文向大家介绍检测20类物体,多少张训练集,怎么训练相关面试题,主要包含被问及检测20类物体,多少张训练集,怎么训练时的应答技巧和注意事项,需要的朋友参考一下 参考回答: 多分类问题,保证各类别的样例比,提取特征,用libsvm等做多分类。

  • 本文向大家介绍Tensorflow实现在训练好的模型上进行测试,包括了Tensorflow实现在训练好的模型上进行测试的使用技巧和注意事项,需要的朋友参考一下 Tensorflow可以使用训练好的模型对新的数据进行测试,有两种方法:第一种方法是调用模型和训练在同一个py文件中,中情况比较简单;第二种是训练过程和调用模型过程分别在两个py文件中。本文将讲解第二种方法。 模型的保存 tensorflo