成功解决python\ops\seq2seq.py TypeError: ms_error() got an unexpected keyword argument 'labels'


槟榔加酒
槟榔加酒 2022-09-19 15:19:37 51315
分类专栏: 资讯

成功解决python\ops\seq2seq.py TypeError: ms_error() got an unexpected keyword argument 'labels'

目录

解决问题

解决思路

解决方法


解决问题

错误地址:contrib\legacy_seq2seq\python\ops\seq2seq.py", line 1098, in sequence_loss_by_example
TypeError: ms_error() got an unexpected keyword argument 'labels'

解决思路

查看函数使用方法

  1. def sequence_loss_by_example(logits,
  2. targets,
  3. weights,
  4. average_across_timesteps=True,
  5. softmax_loss_function=None,
  6. name=None):
  7. """Weighted cross-entropy loss for a sequence of logits (per example).
  8. Args:
  9. logits: List of 2D Tensors of shape [batch_size x num_decoder_symbols].
  10. targets: List of 1D batch-sized int32 Tensors of the same length as logits.
  11. weights: List of 1D batch-sized float-Tensors of the same length as logits.
  12. average_across_timesteps: If set, divide the returned cost by the total
  13. label weight.
  14. softmax_loss_function: Function (labels, logits) -> loss-batch
  15. to be used instead of the standard softmax (the default if this is None).
  16. **Note that to avoid confusion, it is required for the function to accept
  17. named arguments.**
  18. name: Optional name for this operation, default: "sequence_loss_by_example".
  19. Returns:
  20. 1D batch-sized float Tensor: The log-perplexity for each sequence.
  21. Raises:
  22. ValueError: If len(logits) is different from len(targets) or len(weights).
  23. """
  24. if len(targets) != len(logits) or len(weights) != len(logits):
  25. raise ValueError("Lengths of logits, weights, and targets must be the same "
  26. "%d, %d, %d." % (len(logits), len(weights), len(targets)))
  27. with ops.name_scope(name, "sequence_loss_by_example",
  28. logits + targets + weights):
  29. log_perp_list = []
  30. for logit, target, weight in zip(logits, targets, weights):
  31. if softmax_loss_function is None:
  32. TODO(irving,ebrevdo): This reshape is needed because
  33. sequence_loss_by_example is called with scalars sometimes, which
  34. violates our general scalar strictness policy.
  35. target = array_ops.reshape(target, [-1])
  36. crossent = nn_ops.sparse_softmax_cross_entropy_with_logits(
  37. labels=target, logits=logit)
  38. else:
  39. crossent = softmax_loss_function(targets, logits=logit) 190318修改 targets
  40. log_perp_list.append(crossent * weight)
  41. log_perps = math_ops.add_n(log_perp_list)
  42. if average_across_timesteps:
  43. total_size = math_ops.add_n(weights)
  44. total_size += 1e-12 Just to avoid division by 0 for all-0 weights.
  45. log_perps /= total_size
  46. return log_perps

解决方法

crossent = softmax_loss_function(labels=targets, logits=logit) 
修改为
crossent = softmax_loss_function(targets, logits) 

大功告成!哈哈!

网站声明:如果转载,请联系本站管理员。否则一切后果自行承担。

本文链接:https://www.xckfsq.com/news/show.html?id=3235
赞同 0
评论 0 条
槟榔加酒L0
粉丝 0 发表 12 + 关注 私信
上周热门
如何使用 StarRocks 管理和优化数据湖中的数据?  2944
【软件正版化】软件正版化工作要点  2863
统信UOS试玩黑神话:悟空  2823
信刻光盘安全隔离与信息交换系统  2717
镜舟科技与中启乘数科技达成战略合作,共筑数据服务新生态  1251
grub引导程序无法找到指定设备和分区  1217
华为全联接大会2024丨软通动力分论坛精彩议程抢先看!  163
点击报名 | 京东2025校招进校行程预告  162
2024海洋能源产业融合发展论坛暨博览会同期活动-海洋能源与数字化智能化论坛成功举办  160
华为纯血鸿蒙正式版9月底见!但Mate 70的内情还得接着挖...  157
本周热议
我的信创开放社区兼职赚钱历程 40
今天你签到了吗? 27
信创开放社区邀请他人注册的具体步骤如下 15
如何玩转信创开放社区—从小白进阶到专家 15
方德桌面操作系统 14
我有15积分有什么用? 13
用抖音玩法闯信创开放社区——用平台宣传企业产品服务 13
如何让你先人一步获得悬赏问题信息?(创作者必看) 12
2024中国信创产业发展大会暨中国信息科技创新与应用博览会 9
中央国家机关政府采购中心:应当将CPU、操作系统符合安全可靠测评要求纳入采购需求 8

加入交流群

请使用微信扫一扫!