Skip to content

  • 体验新版
    • 正在加载...
  • 登录
  • PaddlePaddle
  • Paddle
  • Issue
  • #18472

P
Paddle
  • 项目概览

PaddlePaddle / Paddle
大约 2 年 前同步成功

通知 2325
Star 20933
Fork 5424
  • 代码
    • 文件
    • 提交
    • 分支
    • Tags
    • 贡献者
    • 分支图
    • Diff
  • Issue 1423
    • 列表
    • 看板
    • 标记
    • 里程碑
  • 合并请求 543
  • Wiki 0
    • Wiki
  • 分析
    • 仓库
    • DevOps
  • 项目成员
  • Pages
P
Paddle
  • 项目概览
    • 项目概览
    • 详情
    • 发布
  • 仓库
    • 仓库
    • 文件
    • 提交
    • 分支
    • 标签
    • 贡献者
    • 分支图
    • 比较
  • Issue 1,423
    • Issue 1,423
    • 列表
    • 看板
    • 标记
    • 里程碑
  • 合并请求 543
    • 合并请求 543
  • Pages
  • 分析
    • 分析
    • 仓库分析
    • DevOps
  • Wiki 0
    • Wiki
  • 成员
    • 成员
  • 收起侧边栏
  • 动态
  • 分支图
  • 创建新Issue
  • 提交
  • Issue看板
已关闭
开放中
Opened 7月 03, 2019 by saxon_zh@saxon_zhGuest

加入IfElse导致paddle.fluid.core.EnforceNotMet

Created by: Gaffey

  • 版本、环境信息:    1)PaddlePaddle版本:1.4.1    2)CPU:-    3)GPU:Nvidia V100    4)系统环境:python2.7
  • 训练信息    1)单机,多卡    2)32G    3)Operator信息
  • 复现信息:
        limit = fluid.layers.fill_constant_batch_size_like(
                input=cond1, shape=[1], value=0, dtype=cond1.dtype)
        cond = fluid.layers.less_than(x=cond1, y=limit)
        ie = fluid.layers.IfElse(cond)
        with ie.true_block():
            ie_input = ie.input(input)
            zero_output = paddle.fluid.layers.zeros(shape=ie_input.shape, dtype=input.dtype)
            ie.output(zero_output)

        with ie.false_block():
            ie_input = ie.input(input)
            op_output = self.conv_bn_layer(input=ie_input, num_filters=filter1, filter_size=5, stride=2, act='relu')
            ie.output(op_output)

        conv1 = ie()[0]
        conv2 = self.conv_bn_layer(input=input, num_filters=filter1, filter_size=3, stride=2, act='relu')
        conv = fluid.layers.elementwise_add(conv1, conv2)

报错信息为

  File "/home/slurm/python-gcc482-paddle/lib/python2.7/site-packages/paddle/fluid/optimizer.py", line 403, in backward
    no_grad_set, callbacks)
  File "/home/slurm/python-gcc482-paddle/lib/python2.7/site-packages/paddle/fluid/backward.py", line 518, in append_backward
    _append_backward_vars_(root_block, fwd_op_num, grad_to_var, grad_info_map)
  File "/home/slurm/python-gcc482-paddle/lib/python2.7/site-packages/paddle/fluid/backward.py", line 354, in _append_backward_vars_
    op_desc.infer_shape(block.desc)
paddle.fluid.core.EnforceNotMet:  at [/paddle/paddle/fluid/operators/controlflow/conditional_block_op.cc:214]
PaddlePaddle Call Stacks:
0       0x7fdfb35217f0p void paddle::platform::EnforceNotMet::Init<char const*>(char const*, char const*, int) + 352
1       0x7fdfb3521b69p paddle::platform::EnforceNotMet::EnforceNotMet(std::__exception_ptr::exception_ptr, char const*, int) + 137
2       0x7fdfb4c7e861p paddle::operators::ConditionalBlockGradInferShape::operator()(paddle::framework::InferShapeContext*) const + 1089
3       0x7fdfb4c7ea73p std::_Function_handler<void (paddle::framework::InferShapeContext*), paddle::framework::details::OpInfoFiller<paddle::operators::Condi
tionalBlockGradInferShape, (paddle::framework::details::OpInfoFillType)4>::operator()(char const*, paddle::framework::OpInfo*) const::{lambda(paddle::framewor
k::InferShapeContext*)#1}>::_M_invoke(std::_Any_data const&, paddle::framework::InferShapeContext*) + 35
4       0x7fdfb367c21ep paddle::framework::OpDesc::InferShape(paddle::framework::BlockDesc const&) const + 862
5       0x7fdfb35d2b2cp
6       0x7fdfb35548dep
7       0x7fe04aa8555fp PyEval_EvalFrameEx + 29855
8       0x7fe04aa8786dp PyEval_EvalCodeEx + 2061
9       0x7fe04aa849fcp PyEval_EvalFrameEx + 26940
10      0x7fe04aa8786dp PyEval_EvalCodeEx + 2061
11      0x7fe04aa849fcp PyEval_EvalFrameEx + 26940
12      0x7fe04aa8786dp PyEval_EvalCodeEx + 2061
13      0x7fe04aa849fcp PyEval_EvalFrameEx + 26940
14      0x7fe04aa8786dp PyEval_EvalCodeEx + 2061
15      0x7fe04aa849fcp PyEval_EvalFrameEx + 26940
16      0x7fe04aa84b17p PyEval_EvalFrameEx + 27223
17      0x7fe04aa84b17p PyEval_EvalFrameEx + 27223
18      0x7fe04aa8786dp PyEval_EvalCodeEx + 2061
19      0x7fe04aa879a2p PyEval_EvalCode + 50
20      0x7fe04aab0782p PyRun_FileExFlags + 146
21      0x7fe04aab1af9p PyRun_SimpleFileExFlags + 217
22      0x7fe04aac782dp Py_Main + 3149
23      0x7fe049cc4bd5p __libc_start_main + 245
24            0x4007a1p
  • 问题描述: 希望通过使用IfElse操作在不同的step通过feed的方式选择不同的层进行前向和训练,但使用过程中报如上错误,没有准确的错误信息 去掉IfElse操作,直接将conv1赋为conv_bn_layer能够正常运行
指派人
分配到
无
里程碑
无
分配里程碑
工时统计
无
截止日期
无
标识: paddlepaddle/Paddle#18472
渝ICP备2023009037号

京公网安备11010502055752号

网络110报警服务 Powered by GitLab CE v13.7
开源知识
Git 入门 Pro Git 电子书 在线学 Git
Markdown 基础入门 IT 技术知识开源图谱
帮助
使用手册 反馈建议 博客
《GitCode 隐私声明》 《GitCode 服务条款》 关于GitCode
Powered by GitLab CE v13.7