最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

使用Pytorch訓(xùn)練分類(lèi)問(wèn)題時(shí),分類(lèi)準(zhǔn)確率的計(jì)算方式

 更新時(shí)間:2023年09月14日 14:24:58   作者:jayus丶  
這篇文章主要介紹了使用Pytorch訓(xùn)練分類(lèi)問(wèn)題時(shí),分類(lèi)準(zhǔn)確率的計(jì)算方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

Pytorch訓(xùn)練分類(lèi)問(wèn)題時(shí),分類(lèi)準(zhǔn)確率的計(jì)算

作者記錄方便查詢(xún)

使用條件

真實(shí)標(biāo)簽與預(yù)測(cè)標(biāo)簽都是tensor。

使用方法

#標(biāo)簽情況
print(y)
tensor([[1, 1, 0, 0]])
print(pred)
tensor([[1, 0, 1, 0]])
# 比較真實(shí)與預(yù)測(cè)
print(y==pred)
tensor([[ True, False, False,  True]])
# 對(duì)正確元素求和,sum會(huì)自動(dòng)計(jì)算True的個(gè)數(shù)
print((y==pred).sum())
tensor(2)

因此在每個(gè)epoch開(kāi)始時(shí),只需要初始化一個(gè)計(jì)數(shù)器accuracy,對(duì)每次的正確元素進(jìn)行累加,在除以訓(xùn)練元素的總數(shù),便獲得了每個(gè)epoch的準(zhǔn)確率。

for epoch in range(epochs):
    accuracy=0
    for i, (x,y) in enumerate(train_loader, 1): 
        pred = net(x)
        loss = loss_function(pred.to(torch.float32),y.to(torch.float32))
        optimizer.zero_grad()
        loss.backward() #反向傳播
        optimizer.step() #更新梯度
        loss_steps[epoch]=loss.item()#保存loss
        running_loss = loss.item()
        accuracy += (pred == y).sum()
        acc = float(accuracy*100)/float(len(train_ids))# 除以元素總數(shù),可以用其他方式獲取
    print(f"第{epoch}次訓(xùn)練,loss={running_loss:.4f},Accuracy={acc:.3f}".format(epoch,running_loss,acc))

結(jié)果

訓(xùn)練情況

Pytorch 計(jì)算分類(lèi)器準(zhǔn)確率(總分類(lèi)及子分類(lèi))

分類(lèi)器平均準(zhǔn)確率計(jì)算

correct = torch.zeros(1).squeeze().cuda()
total = torch.zeros(1).squeeze().cuda()
for i, (images, labels) in enumerate(train_loader):
            images = Variable(images.cuda())
            labels = Variable(labels.cuda())
            output = model(images)
            prediction = torch.argmax(output, 1)
            correct += (prediction == labels).sum().float()
            total += len(labels)
acc_str = 'Accuracy: %f'%((correct/total).cpu().detach().data.numpy())

分類(lèi)器各個(gè)子類(lèi)準(zhǔn)確率計(jì)算

correct = list(0. for i in range(args.class_num))
total = list(0. for i in range(args.class_num))
for i, (images, labels) in enumerate(train_loader):
            images = Variable(images.cuda())
            labels = Variable(labels.cuda())
            output = model(images)
            prediction = torch.argmax(output, 1)
            res = prediction == labels
            for label_idx in range(len(labels)):
                label_single = label[label_idx]
                correct[label_single] += res[label_idx].item()
                total[label_single] += 1
 acc_str = 'Accuracy: %f'%(sum(correct)/sum(total))
 for acc_idx in range(len(train_class_correct)):
            try:
                acc = correct[acc_idx]/total[acc_idx]
            except:
                acc = 0
            finally:
                acc_str += '\tclassID:%d\tacc:%f\t'%(acc_idx+1, acc)

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 從入門(mén)到精通詳解Python函數(shù)參數(shù)全攻略

    從入門(mén)到精通詳解Python函數(shù)參數(shù)全攻略

    在編程的世界里,函數(shù)(Function)就像是一個(gè)精密加工的工廠,本文將帶你系統(tǒng)地拆解 Python 函數(shù)參數(shù)的奧秘,從最基礎(chǔ)的用法到進(jìn)階技巧,助你徹底攻克這一知識(shí)點(diǎn)
    2025-12-12
  • pytorch之添加BN的實(shí)現(xiàn)

    pytorch之添加BN的實(shí)現(xiàn)

    今天小編就為大家分享一篇pytorch之添加BN的實(shí)現(xiàn),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-01-01
  • Python Flask 庫(kù)及應(yīng)用場(chǎng)景

    Python Flask 庫(kù)及應(yīng)用場(chǎng)景

    Flask 是 Python 生態(tài)中 ?輕量級(jí)且高度靈活的 Web 開(kāi)發(fā)框架,基于 Werkzeug WSGI 工具庫(kù)和 Jinja2 模板引擎構(gòu)建,下面給大家介紹Python Flask 庫(kù)詳解,感興趣的朋友一起看看吧
    2025-05-05
  • pytorch 如何把圖像數(shù)據(jù)集進(jìn)行劃分成train,test和val

    pytorch 如何把圖像數(shù)據(jù)集進(jìn)行劃分成train,test和val

    這篇文章主要介紹了pytorch 把圖像數(shù)據(jù)集進(jìn)行劃分成train,test和val的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-05-05
  • python處理列表的部分元素的實(shí)例詳解

    python處理列表的部分元素的實(shí)例詳解

    在本篇文章里小編給大家整理的是一篇關(guān)于python處理列表的部分元素的實(shí)例詳解內(nèi)容,有興趣的朋友們可以學(xué)習(xí)下。
    2021-09-09
  • 自動(dòng)轉(zhuǎn)換Python代碼為HTML界面的GUI庫(kù)remi使用探究

    自動(dòng)轉(zhuǎn)換Python代碼為HTML界面的GUI庫(kù)remi使用探究

    這篇文章主要為大家介紹了自動(dòng)轉(zhuǎn)換Python代碼為HTML界面的GUI庫(kù)remi使用探究,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2024-01-01
  • 使用Python編寫(xiě)Prometheus監(jiān)控的方法

    使用Python編寫(xiě)Prometheus監(jiān)控的方法

    今天小編就為大家分享一篇關(guān)于使用Python編寫(xiě)Prometheus監(jiān)控的方法,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧
    2018-10-10
  • Python實(shí)戰(zhàn)小項(xiàng)目之Mnist手寫(xiě)數(shù)字識(shí)別

    Python實(shí)戰(zhàn)小項(xiàng)目之Mnist手寫(xiě)數(shù)字識(shí)別

    MNIST 數(shù)據(jù)集已經(jīng)是一個(gè)被”嚼爛”了的數(shù)據(jù)集, 很多教程都會(huì)對(duì)它”下手”, 幾乎成為一個(gè) “典范”. 不過(guò)有些人可能對(duì)它還不是很了解, 下面通過(guò)一個(gè)小實(shí)例來(lái)帶你了解它
    2021-10-10
  • Python語(yǔ)音合成的項(xiàng)目實(shí)戰(zhàn)(PyQt5+pyttsx3)

    Python語(yǔ)音合成的項(xiàng)目實(shí)戰(zhàn)(PyQt5+pyttsx3)

    本文主要介紹了Python語(yǔ)音合成的項(xiàng)目實(shí)戰(zhàn)(PyQt5+pyttsx3),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-02-02
  • 能讓Python提速超40倍的神器Cython詳解

    能讓Python提速超40倍的神器Cython詳解

    今天帶大家了解一下能讓Python提速超40倍的神器,文章圍繞著神器Cython展開(kāi),文中有非常詳細(xì)的介紹及代碼示例,需要的朋友可以參考下
    2021-06-06

最新評(píng)論

南投市| 黄陵县| 丽水市| 富平县| 罗江县| 贵阳市| 沂源县| 阜南县| 缙云县| 全州县| 抚松县| 新宁县| 黑山县| 临朐县| 黎城县| 宜春市| 任丘市| 巴南区| 沧源| 兖州市| 海林市| 瓮安县| 上饶县| 随州市| 彭州市| 天水市| 康保县| 九台市| 顺义区| 阿克苏市| 上饶市| 凌源市| 高台县| 周口市| 汉川市| 石首市| 河北省| 双辽市| 天等县| 绩溪县| 任丘市|