pytorch 實(shí)現(xiàn)cross entropy損失函數(shù)計(jì)算方式
均方損失函數(shù):

這里 loss, x, y 的維度是一樣的,可以是向量或者矩陣,i 是下標(biāo)。
很多的 loss 函數(shù)都有 size_average 和 reduce 兩個(gè)布爾類型的參數(shù)。因?yàn)橐话銚p失函數(shù)都是直接計(jì)算 batch 的數(shù)據(jù),因此返回的 loss 結(jié)果都是維度為 (batch_size, ) 的向量。
(1)如果 reduce = False,那么 size_average 參數(shù)失效,直接返回向量形式的 loss
(2)如果 reduce = True,那么 loss 返回的是標(biāo)量
a)如果 size_average = True,返回 loss.mean(); b)如果 size_average = False,返回 loss.sum();
注意:默認(rèn)情況下, reduce = True,size_average = True
import torch import numpy as np
1、返回向量
loss_fn = torch.nn.MSELoss(reduce=False, size_average=False)
a=np.array([[1,2],[3,4]]) b=np.array([[2,3],[4,5]])
input = torch.autograd.Variable(torch.from_numpy(a)) target = torch.autograd.Variable(torch.from_numpy(b))
這里將Variable類型統(tǒng)一為float()(tensor類型也是調(diào)用xxx.float())
loss = loss_fn(input.float(), target.float())
print(loss)
tensor([[ 1., 1.], [ 1., 1.]])
2、返回平均值
a=np.array([[1,2],[3,4]]) b=np.array([[2,3],[4,4]])
loss_fn = torch.nn.MSELoss(reduce=True, size_average=True)
input = torch.autograd.Variable(torch.from_numpy(a)) target = torch.autograd.Variable(torch.from_numpy(b))
loss = loss_fn(input.float(), target.float())
print(loss)
tensor(0.7500)
以上這篇pytorch 實(shí)現(xiàn)cross entropy損失函數(shù)計(jì)算方式就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
2021年值得向Python開(kāi)發(fā)者推薦的VS Code擴(kuò)展插件
這篇文章主要介紹了2021年值得向Python開(kāi)發(fā)者推薦的VS Code擴(kuò)展插件,幫助大家更好的利用vscode進(jìn)行python的開(kāi)發(fā),感興趣的朋友可以了解下2021-01-01
信號(hào)生成及DFT的python實(shí)現(xiàn)方式
今天小編就為大家分享一篇信號(hào)生成及DFT的python實(shí)現(xiàn)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-02-02
Python數(shù)據(jù)可視化之Matplotlib和Seaborn的使用教程詳解
這篇文章主要為大家詳細(xì)介紹了Python數(shù)據(jù)可視化中Matplotlib和Seaborn使用的相關(guān)教程,文中的示例代碼講解詳細(xì),有需要的可以參考下2024-03-03
Python中pip安裝非PyPI官網(wǎng)第三方庫(kù)的方法
這篇文章主要介紹了Python中pip安裝非PyPI官網(wǎng)第三方庫(kù)的方法,pip最新的版本(1.5以上的版本), 出于安全的考 慮,pip不允許安裝非PyPI的URL,本文就給出兩種解決方法,需要的朋友可以參考下2015-06-06
Django實(shí)現(xiàn)jquery select2帶搜索的下拉框
最近在開(kāi)發(fā)一個(gè)web應(yīng)用中需要用到帶搜索功能下拉框,本文實(shí)現(xiàn)Django實(shí)現(xiàn)jquery select2帶搜索的下拉框,感興趣的小伙伴們可以參考一下2021-06-06
Django ORM filter() 的運(yùn)用詳解
這篇文章主要介紹了Django ORM filter() 的運(yùn)用詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-05-05

