chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

OpenMMLab 各算法庫的評(píng)測(cè)指標(biāo)集成

jf_pmFSk4VX ? 來源:GiantPandaCV ? 作者:GiantPandaCV ? 2022-11-03 10:16 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

在前段時(shí)間 2022 世界人工智能大會(huì)(WAIC)上, OpenMMLab 基于新一代訓(xùn)練架構(gòu) MMEngine ,發(fā)布了全新的 OpenMMLab 2.0 視覺算法體系,詳細(xì)見上一期內(nèi)容

MMEngine 提供了強(qiáng)大靈活的訓(xùn)練引擎,以及常見的訓(xùn)練技術(shù),以滿足用戶多樣的模型訓(xùn)練需求。對(duì)于模型評(píng)測(cè)的需求,MMEngine 也提供了評(píng)測(cè)指標(biāo)(Metric)和評(píng)測(cè)器(Evaluator)模塊,下游算法庫基于 MMEngine 提供的評(píng)測(cè)指標(biāo)基類,實(shí)現(xiàn)對(duì)應(yīng)任務(wù)所需的評(píng)測(cè)指標(biāo)。

OpenMMLab 是深度學(xué)習(xí)時(shí)代最完整的計(jì)算機(jī)視覺開源算法體系,目前已涵蓋 30+ 研究領(lǐng)域,這些研究領(lǐng)域都有各自任務(wù)的評(píng)測(cè)指標(biāo)。我們希望能夠?qū)⑦@些評(píng)測(cè)指標(biāo)統(tǒng)一起來,以更加易用和開放的方式服務(wù)于更多用戶。因此,我們?cè)?MMEngine 中的評(píng)測(cè)指標(biāo)模塊基礎(chǔ)上,將原 OpenMMLab 各算法庫的評(píng)測(cè)指標(biāo)集成進(jìn)來,開發(fā)了一個(gè)統(tǒng)一開放的跨框架算法評(píng)測(cè)庫:MMEval。

GitHub 主頁:

https://github.com/open-mmlab/mmeval

(文末點(diǎn)擊閱讀原文可直達(dá))

歡迎大家來 star~

中文文檔:

https://mmeval.readthedocs.io/zh_CN/latest

MMEval 簡(jiǎn)介

MMEval 是一個(gè)跨框架的機(jī)器學(xué)習(xí)算法評(píng)測(cè)庫,提供高效準(zhǔn)確的分布式評(píng)測(cè)以及多種機(jī)器學(xué)習(xí)框架后端支持,具有以下特點(diǎn):

提供豐富的計(jì)算機(jī)視覺各細(xì)分方向評(píng)測(cè)指標(biāo)(自然語言處理方向的評(píng)測(cè)指標(biāo)正在支持中)

支持多種分布式通信庫,實(shí)現(xiàn)高效準(zhǔn)確的分布式評(píng)測(cè)

支持多種機(jī)器學(xué)習(xí)框架,根據(jù)輸入自動(dòng)分發(fā)對(duì)應(yīng)實(shí)現(xiàn)

MMEval 的架構(gòu)如下圖所示:

19698e3e-5acb-11ed-a3b6-dac502259ad0.png

和已有一些開源的算法評(píng)測(cè)庫相比,比如 Lightning-AI/metrics,huggingface/evaluate,以及近日開源的 pytorch/torcheval,MMEval 的區(qū)別主要在于對(duì)計(jì)算機(jī)視覺領(lǐng)域評(píng)測(cè)指標(biāo)的更全面支持,以及提供跨框架評(píng)測(cè)的能力。

MMEval 目前提供了 20+ 評(píng)測(cè)指標(biāo),涵蓋了分類,目標(biāo)檢測(cè),圖像分割,點(diǎn)云分割,關(guān)鍵點(diǎn)檢測(cè)和光流估計(jì)等任務(wù),MMEval 已支持的評(píng)測(cè)指標(biāo)可以在文檔中的支持矩陣中查看:https://mmeval.readthedocs.io/zh_CN/latest/get_started/support_matrix.html

MMEval 安裝與使用

MMEval 依賴 Python 3.6+,可以通過 pip 來安裝 MMEval:pip install mmeval

MMEval 中的評(píng)測(cè)指標(biāo)提供兩種使用方式,以 Accuracy 為例:

from mmeval import Accuracy
import numpy as np


accuracy = Accuracy()


# 第一種是直接調(diào)用實(shí)例化的 Accuracy 對(duì)象,計(jì)算評(píng)測(cè)指標(biāo)。
labels = np.asarray([0, 1, 2, 3])
preds = np.asarray([0, 2, 1, 3])
accuracy(preds, labels)
# {'top1': 0.5}


# 第二種是累積多個(gè)批次的數(shù)據(jù)后,計(jì)算評(píng)測(cè)指標(biāo)。
for i in range(10):
  labels = np.random.randint(0, 4, size=(100, ))
  predicts = np.random.randint(0, 4, size=(100, ))
  # 調(diào)用 `add` 方法,保存指標(biāo)計(jì)算中間結(jié)果。
  accuracy.add(predicts, labels)


# 調(diào)用 compute 方法計(jì)算評(píng)測(cè)指標(biāo)
accuracy.compute()
# {'top1': ...}
# 調(diào)用 reset 方法,清除保存的中間結(jié)果。
accuracy.reset()

MMEval 中的評(píng)測(cè)指標(biāo)還支持分布式評(píng)測(cè)功能,關(guān)于分布式評(píng)測(cè)的使用方式可以參考教程:https://mmeval.readthedocs.io/zh_CN/latest/tutorials/dist_evaluation.html

多分布式通信后端支持

在評(píng)測(cè)過程中,通常會(huì)以數(shù)據(jù)并行的形式,在每張卡上推理部分?jǐn)?shù)據(jù)集的結(jié)果,以加快評(píng)測(cè)速度。而在每個(gè)數(shù)據(jù)子集上計(jì)算得到的評(píng)測(cè)結(jié)果,通常不能通過簡(jiǎn)單的求平均來與整個(gè)數(shù)據(jù)集的評(píng)測(cè)結(jié)果進(jìn)行等價(jià)。因此,通常的做法是在分布式評(píng)測(cè)過程中,將每張卡得到的推理結(jié)果或者指標(biāo)計(jì)算中間結(jié)果保存下來,在所有進(jìn)程中進(jìn)行 all-gather 操作,最后再計(jì)算整個(gè)評(píng)測(cè)數(shù)據(jù)集的指標(biāo)結(jié)果。

MMEval 在分布式評(píng)測(cè)過程中所需的分布式通信需求,主要有以下兩個(gè):

將各個(gè)進(jìn)程中保存的評(píng)測(cè)指標(biāo)計(jì)算中間結(jié)果 all-gather

將 rank 0 進(jìn)程計(jì)算得到的指標(biāo)結(jié)果 broadcast 給所有進(jìn)程

為了能夠靈活的支持多種分布式通信庫,MMEval 將上述分布式通信需求抽象定義了一個(gè)分布式通信接口 BaseDistBackend,其接口設(shè)計(jì)如下圖所示:

198201ee-5acb-11ed-a3b6-dac502259ad0.png

MMEval 中已經(jīng)預(yù)置實(shí)現(xiàn)了一些分布式通信后端,如下表所示:

MPI4Py torch.distributed Horovod paddle.distributed
MPI4PyDist TorchCPUDist & TorchCUDADist TFHorovodDist PaddleDist

多機(jī)器學(xué)習(xí)框架支持

MMEval 希望能夠支持多種機(jī)器學(xué)習(xí)框架,一個(gè)最為簡(jiǎn)單的方案是讓所有評(píng)測(cè)指標(biāo)的計(jì)算都支持 NumPy 即可。這樣做可以實(shí)現(xiàn)大部分評(píng)測(cè)需求,因?yàn)樗袡C(jī)器學(xué)習(xí)框架的 Tensor 數(shù)據(jù)類型都可以轉(zhuǎn)為 NumPy 的數(shù)組。

但是在某些情況下可能會(huì)存在一些問題:

NumPy 有一些常用算子尚未實(shí)現(xiàn),如 topk,會(huì)影響評(píng)測(cè)指標(biāo)的計(jì)算速度

大量的 Tensor 從 CUDA 設(shè)備搬運(yùn)到 CPU 內(nèi)存會(huì)比較耗時(shí)

如果希望評(píng)測(cè)指標(biāo)的計(jì)算過程是可導(dǎo)的,那么就需要用各自機(jī)器學(xué)習(xí)框架的 Tensor 數(shù)據(jù)類型進(jìn)行計(jì)算

為了應(yīng)對(duì)上述問題,MMEval 的評(píng)測(cè)指標(biāo)提供了一些特定機(jī)器學(xué)習(xí)框架的指標(biāo)計(jì)算實(shí)現(xiàn)。同時(shí),為了應(yīng)對(duì)不同指標(biāo)計(jì)算方式的分發(fā)問題,MMEval 采用了基于類型注釋的動(dòng)態(tài)多分派機(jī)制,可以根據(jù)輸入的數(shù)據(jù)類型,動(dòng)態(tài)的選擇不同的計(jì)算方式。

一個(gè)基于類型注釋的多分派簡(jiǎn)單示例如下:

from mmeval.core import dispatch


@dispatch
def compute(x: int, y: int):
  print('this is int')


@dispatch
def compute(x: str, y: str):
  print('this is str')


compute(1, 1)
# this is int


compute('1', '1')
# this is str

愿景

在機(jī)器學(xué)習(xí)模型實(shí)驗(yàn)和生產(chǎn)過程中,訓(xùn)練和評(píng)測(cè)是其中兩個(gè)非常重要的階段。

MMEngine 已經(jīng)提供了一個(gè)靈活強(qiáng)大的訓(xùn)練架構(gòu),而 MMEval 則希望能夠提供一個(gè)統(tǒng)一開放的模型評(píng)測(cè)庫。其中,統(tǒng)一體現(xiàn)在不同領(lǐng)域不同任務(wù)的模型評(píng)測(cè)需求都能夠滿足,開放則體現(xiàn)為與機(jī)器學(xué)習(xí)框架解耦,以更加開放的方式為不同的機(jī)器學(xué)習(xí)框架生態(tài)提供評(píng)測(cè)功能。

目前 MMEval 仍處于早期階段,有很多評(píng)測(cè)指標(biāo)仍在添加當(dāng)中,有一些架構(gòu)設(shè)計(jì)可能不夠成熟。在之后的一段時(shí)間里,MMEval 將主要圍繞以下兩個(gè)方向去持續(xù)迭代完善:

持續(xù)的補(bǔ)充添加評(píng)測(cè)指標(biāo),不斷擴(kuò)展到 NLP、語音、推薦系統(tǒng)等更多的任務(wù)領(lǐng)域

支持更多機(jī)器學(xué)習(xí)框架,并且探索多機(jī)器學(xué)習(xí)框架支持的新方式

審核編輯:彭靜
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 模型
    +關(guān)注

    關(guān)注

    1

    文章

    3645

    瀏覽量

    51685
  • 計(jì)算機(jī)視覺
    +關(guān)注

    關(guān)注

    9

    文章

    1714

    瀏覽量

    47443
  • 算法庫
    +關(guān)注

    關(guān)注

    0

    文章

    4

    瀏覽量

    1694

原文標(biāo)題:支持跨框架評(píng)測(cè),這個(gè)是你想要的算法評(píng)測(cè)庫嗎?

文章出處:【微信號(hào):GiantPandaCV,微信公眾號(hào):GiantPandaCV】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    mini57系列運(yùn)行帶算法庫的程序,編譯沒有錯(cuò)誤但無法運(yùn)行是為什么?

    我用mini57系列的芯片跑做一個(gè)心率檢測(cè)的產(chǎn)品。加入心率算法庫后,發(fā)現(xiàn)程序無法運(yùn)行,但是編譯沒有報(bào)錯(cuò)。我在線仿真發(fā)現(xiàn)無法進(jìn)入main函數(shù),程序運(yùn)行不了。算法庫是用新塘的demo在keil的環(huán)境下生成的。 不知道是為什么。
    發(fā)表于 01-15 08:33

    ADI算法庫,“警告”解決方案

    嗎? 答案來了~ 1.INPUT_SECTION中類似于adi_fastb0_prio1_r,adi_fastb0_prio0_temp這些section名稱的定義應(yīng)該都是算法庫中已經(jīng)定義好的,所以
    發(fā)表于 09-12 22:19

    C6678算法庫問題

    您好: 不知道TI有沒有矩陣矢量算法庫,我現(xiàn)在想要實(shí)現(xiàn)復(fù)數(shù)矩陣間的加減乘除,開方,共軛等運(yùn)算。如果有收費(fèi)的,我也可以買。 謝謝!
    發(fā)表于 06-21 00:36

    c++算法庫的移植問題

    目前有一個(gè)算法庫 用的c++ ?用ccs在dsp上可以調(diào)試 現(xiàn)在希望把庫放在8168的dsp上 ?需要將c++轉(zhuǎn)換成c 有個(gè)工具 mmCC C++-to-C Translator、 不知道論壇里有沒有 或者大家誰有 如果找不到mmcc 那么 ?8168上dsp用c調(diào)用c++庫 有沒有可行性
    發(fā)表于 06-21 13:14

    請(qǐng)問關(guān)于SigmaStudio的算法庫資源主要有哪些?

    最近才開始接觸SigmaStudio和SigmaDSP,SigmaStudio的算法庫資源據(jù)說是很大的優(yōu)勢(shì),這個(gè)我個(gè)人覺得是很重要的,沒有多少人愿意自己去開發(fā)這些算法,請(qǐng)問ADI的工程師大牛們,這些算法庫主要有哪些?對(duì)于車載音頻
    發(fā)表于 08-06 07:02

    ADI音效算法庫

    不含源碼,只是調(diào)用的庫函數(shù)。包含一些常用的音頻算法庫。壓縮包內(nèi)文件一覽: 附件ADI算法參考.rar2.2 MB
    發(fā)表于 10-17 15:19

    mini57系列運(yùn)行帶算法庫的程序,編譯沒有錯(cuò)誤,但無法運(yùn)行是為什么?

    我用mini57系列的芯片跑做一個(gè)心率檢測(cè)的產(chǎn)品。加入心率算法庫后,發(fā)現(xiàn)程序無法運(yùn)行,但是編譯沒有報(bào)錯(cuò)。我在線仿真發(fā)現(xiàn)無法進(jìn)入main函數(shù),程序運(yùn)行不了。算法庫是用新塘的demo在keil的環(huán)境下生成的。 不知道是為什么。
    發(fā)表于 06-13 09:05

    mini57系列運(yùn)行帶算法庫的程序,編譯沒有錯(cuò)誤但無法運(yùn)行是為什么?

    我用mini57系列的芯片跑做一個(gè)心率檢測(cè)的產(chǎn)品。加入心率算法庫后,發(fā)現(xiàn)程序無法運(yùn)行,但是編譯沒有報(bào)錯(cuò)。我在線仿真發(fā)現(xiàn)無法進(jìn)入main函數(shù),程序運(yùn)行不了。算法庫是用新塘的demo在keil的環(huán)境下生成的。 不知道是為什么。
    發(fā)表于 08-22 08:16

    新唐有提供BLDC軟件算法庫嗎?

    我看新塘的介紹里面 提供BLDC 軟件算法庫。
    發(fā)表于 09-06 07:58

    lpc1700開發(fā)板_dsp算法庫

    lpc1700開發(fā)板_dsp算法庫,有需要的下來看看。
    發(fā)表于 01-13 17:02 ?6次下載

    Crypto算法庫使用技巧之基于STM32 AES GCM應(yīng)用提示

    引言 X-CUBE-CRYPTOLIB 是基于 STM32 的 Crypto 算法庫,支持對(duì)稱密鑰、非對(duì)稱密鑰、哈希等多種算法。正確地使用 Cyrptolib 算法庫,可以在應(yīng)用程序中實(shí)現(xiàn)數(shù)據(jù)加密
    的頭像 發(fā)表于 09-24 14:23 ?4355次閱讀

    Crypto算法庫使用技巧 —— 基于STM32 AES GCM應(yīng)用提示

    X-CUBE-CRYPTOLIB 是基于 STM32 的 Crypto 算法庫,支持對(duì)稱密鑰、非對(duì)稱密鑰、哈希等多種算法。正確地使用 Cyrptolib 算法庫,可以在應(yīng)用程序中實(shí)現(xiàn)數(shù)據(jù)加密、設(shè)備身份認(rèn)證、加密通信等多種應(yīng)用層所
    發(fā)表于 02-08 15:23 ?1次下載
    Crypto<b class='flag-5'>算法庫</b>使用技巧 —— 基于STM32 AES GCM應(yīng)用提示

    摩爾線程與OpenMMLab戰(zhàn)略合作:推動(dòng)算法框架與GPU協(xié)同發(fā)展,共筑AI開發(fā)者繁榮生態(tài)

    近日,摩爾線程智能科技(北京)有限責(zé)任公司(簡(jiǎn)稱:摩爾線程)與人工智能視覺算法開源體系OpenMMLab正式達(dá)成戰(zhàn)略合作。 摩爾線程多GPU是智能算力的先進(jìn)基礎(chǔ)設(shè)施,開源算法是人工智能的重要推動(dòng)力
    發(fā)表于 11-09 14:59 ?950次閱讀

    N32G032算法庫使用指南

    N32G032算法庫使用指南
    發(fā)表于 11-11 21:50 ?0次下載
    N32G032<b class='flag-5'>算法庫</b>使用指南

    深度學(xué)習(xí)算法庫框架學(xué)習(xí)

    深度學(xué)習(xí)算法庫框架學(xué)習(xí) 深度學(xué)習(xí)是一種非常強(qiáng)大的機(jī)器學(xué)習(xí)方法,它可以用于許多不同的應(yīng)用程序,例如計(jì)算機(jī)視覺、語言處理和自然語言處理。然而,實(shí)現(xiàn)深度學(xué)習(xí)技術(shù)需要使用一些算法庫框架。在本文中,我們將探討
    的頭像 發(fā)表于 08-17 16:11 ?1311次閱讀