提示的错误为logits和标签必须是可广播的:logits_size = [131072,9] labels_size = [131072,8],我理解的大致意思就是预测结果与标签尺寸不匹配,无法进行计算loss。
这是我在debug到train_one_epoch以下部分时,出现了问题。
summary, step, _, loss_val, pred_val, _ = sess.run(
[
ops["merged"],
ops["step"],
ops["train_op"],
ops["loss"],
ops["pred"],
ops["update_iou"],
],
feed_dict=feed_dict,
)
后发现经过model预测出来的分类pred为(16,8192,9),但是我在变形label的时候将其转为了(16,8192,8)的独热编码,导致两个值不对应无法比较出现错误。将label变为(16,8192,9)后无误。