mindspore中执行model.报错

问题描述:

使用bseloss,可以训练但是eval会报错,

(1)如果meterics={'accuracy':}

   报错为:ValueError: Classification case, dims of y_pred equal dims of y add 1, but got y_pred: 2 dims and y: 2 dims

(2)如果metrics = { 'accuracy': nn.Accuracy(),'loss': nn.Loss(),'precision': nn.Precision(),'recall': nn.Recall(),'f1_score': nn.F1() }

   报错为:ValueError: The dimension of loss must be 1, but got 2

   模型输出的shape和标签的shape都是(1,1),我看了官网编程教程-模型运行-model接口应用中的例子,输出的shape和标签的shape也都是(1,1),但那是一个回归问题,我还是不太清楚对于为这种分类问题这该如何解决?需要如何修改?

解答:

Accuracy评估指标适用于label是one_hot的场景,典型的使用场景是分类场景。

如果找不到适用的评估指标,可以自定义metric,定义符合当前网络的评估指标。参考编程指南:

自定义Metrics验证模型推理精度 — MindSpore master documentation

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值