program_guard包含两次distributed lookup table,退化成非distributed
Created by: colin1988
File "/home/work/liushengbing/liushengbing/model_train/paddle/paddlecloud/python/mms-hpc-devel/lib/python2.7/site-packages/paddle/fluid/parallel_executor.py", line 277, in run self.executor.run(fetch_list, fetch_var_name) paddle.fluid.core.EnforceNotMet: Enforce failed. Expected ids[i] >= 0, but received ids[i]:-9199116807137126908 < 0:0.
outer = fluid.Program()
join_program = fluid.Program()
update_program = fluid.Program()
with fluid.program_guard(outer):
with fluid.program_guard(join_program, outer):
slot_names, label_slot_name = gen_slot_names('feat_conf.conf')
slots_data, label, avg_cost, acc, predict, auc_var, cur_auc_var, auc_states, py_reader = network(True, slot_names, label_slot_name, outer, init=True)
with fluid.program_guard(update_program, outer):
up_slots_data, up_label, up_avg_cost, up_acc, up_predict, up_auc_var, up_cur_auc_var, up_auc_states, up_py_reader = network(False, slot_names, label_slot_name, outer, init=False)
emb = fluid.layers.embedding(
is_distributed=True,
input=slot,
size=[SPARSE_DICT_SIZE, 9],
param_attr=fluid.ParamAttr(
name=emb_name,
learning_rate=lr_x,
trainable=True,
regularizer=fluid.regularizer.L2Decay(0.0),
initializer=fluid.initializer.UniformInitializer(low=-1/9.0, high=1/9.0)
),
create_prob = 0.1,
is_sparse=True)