IndexError: list index out of range


#1

I am using Edward 1.3.5 and getting the below error when I run inference.run()

IndexError Traceback (most recent call last)
in ()
2 inference = ed.KLqp({W_0: qW_0, b_0: qb_0, W_1: qW_1, b_1: qb_1},
3 data={x: x_train, y: y_train})
----> 4 inference.run()

~\anaconda3\lib\site-packages\edward\inferences\inference.py in run(self, variables, use_coordinator, *args, **kwargs)
123 for key, value in six.iteritems(self.data):
124 if isinstance(key, tf.Tensor) and “Placeholder” in key.op.type:
–> 125 feed_dict[key] = value
126
127 init.run(feed_dict)

~\anaconda3\lib\site-packages\edward\inferences\klqp.py in initialize(self, n_samples, kl_scaling, *args, **kwargs)
108 self.n_samples = n_samples
109 self.kl_scaling = kl_scaling
–> 110 return super(KLqp, self).initialize(*args, **kwargs)
111
112 def build_loss_and_gradients(self, var_list):

~\anaconda3\lib\site-packages\edward\inferences\variational_inference.py in initialize(self, optimizer, var_list, use_prettytensor, global_step, *args, **kwargs)
66 var_list = list(var_list)
67
—> 68 self.loss, grads_and_vars = self.build_loss_and_gradients(var_list)
69
70 if self.logging:

~\anaconda3\lib\site-packages\edward\inferences\klqp.py in build_loss_and_gradients(self, var_list)
143 if is_reparameterizable:
144 if is_analytic_kl:
–> 145 return build_reparam_kl_loss_and_gradients(self, var_list)
146 # elif is_analytic_entropy:
147 # return build_reparam_entropy_loss_and_gradients(self, var_list)

~\anaconda3\lib\site-packages\edward\inferences\klqp.py in build_reparam_kl_loss_and_gradients(inference, var_list)
715 for z, qz in six.iteritems(inference.latent_vars):
716 # Copy q(z) to obtain new set of posterior samples.
–> 717 qz_copy = copy(qz, scope=scope)
718 dict_swap[z] = qz_copy.value()
719

~\anaconda3\lib\site-packages\edward\util\random_variables.py in copy(org_instance, dict_swap, scope, replace_itself, copy_q, copy_parent_rvs)
244 else:
245 kwargs[key] = _copy_default(
–> 246 value, dict_swap, scope, True, copy_q, False)
247
248 kwargs[‘name’] = new_name

~\anaconda3\lib\site-packages\edward\util\random_variables.py in _copy_default(x, *args, **kwargs)
86 def _copy_default(x, *args, **kwargs):
87 if isinstance(x, (RandomVariable, tf.Operation, tf.Tensor, tf.Variable)):
—> 88 x = copy(x, *args, **kwargs)
89
90 return x

~\anaconda3\lib\site-packages\edward\util\random_variables.py in copy(org_instance, dict_swap, scope, replace_itself, copy_q, copy_parent_rvs)
268 # op. Therefore copy the op itself.
269 op = tensor.op
–> 270 new_op = copy(op, dict_swap, scope, True, copy_q, False)
271
272 output_index = op.outputs.index(tensor)

~\anaconda3\lib\site-packages\edward\util\random_variables.py in copy(org_instance, dict_swap, scope, replace_itself, copy_q, copy_parent_rvs)
314 [], # input types; will add them afterwards
315 original_op,
–> 316 op_def)
317
318 # advertise op early to break recursions

~\anaconda3\lib\site-packages\tensorflow\python\framework\ops.py in init(self, node_def, g, inputs, output_types, control_inputs, input_types, original_op, op_def)
1788 # Refactor so we don’t have to do this here.
1789 grouped_inputs = self._reconstruct_sequence_inputs(
-> 1790 op_def, inputs, node_def.attr)
1791 self._c_op = _create_c_op(self._graph, node_def, grouped_inputs,
1792 control_input_ops)

~\anaconda3\lib\site-packages\tensorflow\python\framework\ops.py in _reconstruct_sequence_inputs(self, op_def, inputs, attrs)
1847 grouped_inputs.append(inputs[i:i + input_len])
1848 else:
-> 1849 grouped_inputs.append(inputs[i])
1850 i += input_len
1851

IndexError: list index out of range

Can someone help.

Best Regards