您的位置:首页 > 财经 > 金融 > 中国免费网站申请_东莞人才市场招聘_百度竞价代理公司_谷歌seo软件

中国免费网站申请_东莞人才市场招聘_百度竞价代理公司_谷歌seo软件

2024/12/23 16:49:52 来源:https://blog.csdn.net/weixin_66512566/article/details/144311466  浏览:    关键词:中国免费网站申请_东莞人才市场招聘_百度竞价代理公司_谷歌seo软件
中国免费网站申请_东莞人才市场招聘_百度竞价代理公司_谷歌seo软件

作用: 

        torch.max()函数用于从每个样本的类别预测分数中选择最大值,来确定模型预测的类别。

代码: 

predict_y = torch.max(outputs, dim=1)[1]

详细解释:

output: 

        outputs是模型的预测结果,通常是一个二维张量,其形状为[batch_size,num_classes],其中:

        ①batch_size:当前批次中的样本数        

        ②num_classes:分类任务中的类别数(对于一个有10类的分类任务,num_classes=10

        每一行对应一个样本的预测分数(logits),即模型对每个类别的信心分数。对于多分类问题,outputs[i]是第i个样本对各个类别的预测分数,outputs[i][j]就表示第i个样本对第j个分类的预测分数

torch.max(outputs,dim=1):

        ①torch.max():PyTorch 中的一个函数,用于返回输入张量中的最大值及其索引

        ②dim=1:表示沿着维度 1(即每个样本的类别维度)查找最大值

       torch.max()返回也是一个二维张量,第一行返回每个样本的最大的预测分数,第二行返回每个样本最大的预测分数所对应的索引,即我们想要的预测类别

torch.max(outputs,dim=1)[1]:

        [1]:表示返回第二行的数据,,即对每个样本预测的索引类别

样例:

        假设outputs是一个形状为[batch_size=3,num_classes=4]的张量,表示3个样本对4个类别的预测分数。

        假设outputs的内容如下:

tensor([[ 2.3,  0.1, -1.2,  0.5],   # 样本 1 的预测分数[ 0.2,  1.7,  0.9, -0.3],   # 样本 2 的预测分数[-0.5,  0.8,  1.2,  0.7]])  # 样本 3 的预测分数

        样本1最大值是2.3,对应的类别是0(第一个类别);

        样本2最大值是1.7,对应的类别是1(第二个类别);

        样本3最大值是1.2,对应的类别是2(第三个类别);

        如果你执行torch.max(outputs,dim=1),它会返回: 

(torch.tensor([2.3, 1.7, 1.2]), torch.tensor([0, 1, 2]))

        第一个元素是每个样本的最大分数:[2.3,1.7,1.2];

        第二个元素是每个样本的预测类别索引:[0,1,2]:

        最终,predict_y = torch.max(outputs,dim=1)[1]会得到:

tensor([0, 1, 2])

        这就是每个样本对应的预测类别索引。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com