关于神经网络转化报错

转化自己的网络模型时遇到了如下报错:

Traceback (most recent call last):
File ".\bin\weights_generator.py", line 118, in <module>
File ".\bin\weights_generator.py", line 66, in __init__
File ".\bin\tensorflow_dep\weights_generator_tensorflow.py", line 69, in __init__
IndexError: list index out of range

请问是什么原因呢?

tf.Variable(tf.truncated_normal(shape, stddev=0.1))是这个API不支持吗?
  • 看提示信息里有 list index out of range这个错误,是不是你某一层的shape没有设对?
  • 我在电脑上训练是正常训练的。
    和shape相关的参数都是常数的形式定义好了,应该不会错。
    全连接前用x_shape = x.get_shape().as_list()获取了一下。
  • 你的118行是调用了这个API吗?tf.Variable(tf.truncated_normal(shape, stddev=0.1))
    你可以做个简单的测试,搭一个两层的模型,加上或不加这个API看看翻译有没有问题,如果确实是这个API不支持,那只能考虑换个API了。
  • 您好,我刚刚把参数进行了命名,初始化改成了w = tf.get_variable(name, shape, initializer=tf.contrib.layers.xavier_initializer(seed=0)),就转化通过了。
    之前用的w = tf.Variable(tf.truncated_normal(shape, stddev=0.1)),没有命名。
    不知道为什么会出现list的问题。。。
    (改来改去现在模型的性能太差了)
  • 嗯,谢谢您,昨天发现好像确实是这个API不能用,似乎滑动平均也不能用。
    现在模型翻译是通过了,不过内存大小又出了问题,我们一改内存大小就会报错。