91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

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

使用NVIDIA FLARE開發(fā)更具通用性的AI模型

星星科技指導員 ? 來源:NVIDIA ? 作者:Holger Roth ? 2022-04-15 09:42 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

聯(lián)邦學習( FL )已成為許多實際應用的現(xiàn)實。它使全球范圍內(nèi)的跨國合作能夠構建更健壯、更通用的機器學習人工智能模型。

NVIDIA FLARE v2.0 是一款開源的 FL SDK ,通過共享模型權重而非私有數(shù)據(jù),數(shù)據(jù)科學家可以更輕松地協(xié)作開發(fā)更具通用性的健壯人工智能模型。

對于醫(yī)療保健應用程序,這在數(shù)據(jù)受患者保護、某些患者類型和疾病的數(shù)據(jù)可能稀少,或者數(shù)據(jù)在儀器類型、性別和地理位置上缺乏多樣性的情況下尤其有益。

查看標志

NVIDIA FLARE 代表 聯(lián)合學習應用程序運行時環(huán)境 。它是引擎的基礎NVIDIA Clara Train FL 軟件,它已經(jīng)被用于醫(yī)學成像、遺傳分析、腫瘤學和 COVID-19 研究中的人工智能應用。 SDK 使研究人員和數(shù)據(jù)科學家能夠將其現(xiàn)有的機器學習和深度學習工作流調(diào)整為分布式范例,并使平臺開發(fā)人員能夠為分布式多方協(xié)作構建安全、隱私保護的產(chǎn)品。

NVIDIA FLARE 是一個輕量級、靈活且可擴展的分布式學習框架,在 Python 中實現(xiàn),與您的基礎培訓庫無關。您可以在 PyTorch , TensorFlow ,甚至只是 NumPy 中實現(xiàn)自己的數(shù)據(jù)科學工作流,并在聯(lián)邦設置中應用它們。

也許您希望實現(xiàn)流行的 聯(lián)邦平均( FedAvg )算法 。從初始全局模型開始,每個 FL 客戶機在其本地數(shù)據(jù)上訓練模型一段時間,并將模型更新發(fā)送到服務器進行聚合。然后,服務器使用聚合更新來更新下一輪培訓的全局模型。此過程將反復多次,直到模型收斂。

NVIDIA FLARE 提供可定制的控制器工作流,以幫助您實施 FedAvg 和其他 FL 算法,例如, 循環(huán)重量轉移 。它安排不同的任務,例如深度學習培訓,在參與的 FL 客戶機上執(zhí)行。工作流使您能夠從每個客戶端收集結果(例如模型更新),并將其聚合以更新全局模型,并將更新的全局模型發(fā)回以供繼續(xù)培訓。圖 1 顯示了原理。

每個 FL 客戶機充當工人,請求執(zhí)行下一個任務,例如模型培訓??刂破魈峁┤蝿蘸?,工作人員執(zhí)行任務并將結果返回給控制器。在每次通信中,可以有可選的過濾器來處理任務數(shù)據(jù)或結果,例如, homomorphic encryption 和解密或差異隱私。

pYYBAGJYzbmADPypAABc33uq4sk944.png

圖 1 。 NVIDIA FLARE 工作流

實現(xiàn) FedAvg 的任務可以是一個簡單的 PyTorch 程序,它為 CIFAR-10 訓練一個分類模型。您當?shù)氐呐嘤枎熆赡芸雌饋硐裣旅娴拇a示例。為了簡單起見,我跳過了整個培訓循環(huán)。

import torch
import torch.nn as nn
import torch.nn.functional as F from nvflare.apis.dxo import DXO, DataKind, MetaKey, from_shareable
from nvflare.apis.executor import Executor
from nvflare.apis.fl_constant import ReturnCode
from nvflare.apis.fl_context import FLContext
from nvflare.apis.shareable import Shareable, make_reply
from nvflare.apis.signal import Signal
from nvflare.app_common.app_constant import AppConstants class SimpleNetwork(nn.Module): def __init__(self): super(SimpleNetwork, self).__init__() self.conv1 = nn.Conv2d(3, 6, 5) self.pool = nn.MaxPool2d(2, 2) self.conv2 = nn.Conv2d(6, 16, 5) self.fc1 = nn.Linear(16 * 5 * 5, 120) self.fc2 = nn.Linear(120, 84) self.fc3 = nn.Linear(84, 10) def forward(self, x): x = self.pool(F.relu(self.conv1(x))) x = self.pool(F.relu(self.conv2(x))) x = torch.flatten(x, 1) # flatten all dimensions except batch x = F.relu(self.fc1(x)) x = F.relu(self.fc2(x)) x = self.fc3(x) return x class SimpleTrainer(Executor): def __init__(self, train_task_name: str = AppConstants.TASK_TRAIN): super().__init__() self._train_task_name = train_task_name self.device = torch.device("cuda:0" if torch.cuda.is_available() else "cpu") self.model = SimpleNetwork() self.model.to(self.device) self.optimizer = torch.optim.SGD(self.model.parameters(), lr=0.001, momentum=0.9) self.criterion = nn.CrossEntropyLoss() def execute(self, task_name: str, shareable: Shareable, fl_ctx: FLContext, abort_signal: Signal) -> Shareable: """ This function is an extended function from the superclass. As a supervised learning-based trainer, the train function will run training based on model weights from `shareable`. After finishing training, a new `Shareable` object will be submitted to server for aggregation.""" if task_name == self._train_task_name: epoch_len = 1 # Get current global model weights dxo = from_shareable(shareable) # Ensure data kind is weights. if not dxo.data_kind == DataKind.WEIGHTS: self.log_exception(fl_ctx, f"data_kind expected WEIGHTS but got {dxo.data_kind} instead.") return make_reply(ReturnCode.EXECUTION_EXCEPTION) # creates an empty Shareable with the return code # Convert weights to tensor and run training torch_weights = {k: torch.as_tensor(v) for k, v in dxo.data.items()} self.local_train(fl_ctx, torch_weights, epoch_len, abort_signal) # compute the differences between torch_weights and the now locally trained model model_diff = ... # build the shareable using a Data Exchange Object (DXO) dxo = DXO(data_kind=DataKind.WEIGHT_DIFF, data=model_diff) dxo.set_meta_prop(MetaKey.NUM_STEPS_CURRENT_ROUND, epoch_len) self.log_info(fl_ctx, "Local training finished. Returning shareable") return dxo.to_shareable() else: return make_reply(ReturnCode.TASK_UNKNOWN) def local_train(self, fl_ctx, weights, epoch_len, abort_signal): # Your training routine should respect the abort_signal. ... # Your local training loop ... for e in range(epoch_len): ... if abort_signal.triggered: self._abort_execution() ... def _abort_execution(self, return_code=ReturnCode.ERROR) -> Shareable: return make_reply(return_code)

您可以看到您的任務實現(xiàn)可以執(zhí)行許多不同的任務。您可以計算每個客戶機上的摘要統(tǒng)計信息,并與服務器共享(記住隱私限制),執(zhí)行本地數(shù)據(jù)的預處理,或者評估已經(jīng)訓練過的模型。

在 FL 培訓期間,您可以在每輪培訓開始時繪制全局模型的性能。對于本例,我們在 CIFAR-10 的異構數(shù)據(jù)拆分上運行了八個客戶端。在下圖(圖 2 )中,我顯示了默認情況下 NVIDIA FLARE 2.0 中可用的不同配置:

FedAvg

FedProx

FedOpt

使用同態(tài)加密進行安全聚合的 FedAvg ( FedAvg HE )

poYBAGJYzcCADwrRAABs3gmM85Q462.png

圖 2 。訓練期間不同 FL 算法全局模型的驗證精度

雖然 FedAvg 、 FedAvg HE 和 FedProx 在這項任務中的性能相當,但您可以使用 FedOpt 設置觀察到改進的收斂性,該設置使用 SGD with momentum 來更新服務器上的全局模型。

整個 FL 系統(tǒng)可以使用管理 API 進行控制,以自動啟動和操作不同配置的任務和工作流。 NVIDIA 還提供了一個全面的資源調(diào)配系統(tǒng),可在現(xiàn)實世界中輕松安全地部署 FL 應用程序,同時還提供了運行本地 FL 模擬的概念驗證研究。

poYBAGJYzceAejT8AADeGNbDAM0088.png

圖 3 。 NVIDIA FLARE 供應、啟動、操作( PSO )組件及其 API

開始

NVIDIA FLARE 使 FL 可用于更廣泛的應用。潛在使用案例包括幫助能源公司分析地震和井筒數(shù)據(jù)、制造商優(yōu)化工廠運營以及金融公司改進欺詐檢測模型。

關于作者

Holger Roth 是 NVIDIA 的高級應用研究科學家,專注于醫(yī)學成像的深度學習。在過去幾年中,他一直與臨床醫(yī)生和學者密切合作,為放射應用開發(fā)基于深度學習的醫(yī)學圖像計算和計算機輔助檢測模型。他擁有博士學位。來自英國倫敦大學學院。

審核編輯:郭婷

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • NVIDIA
    +關注

    關注

    14

    文章

    5617

    瀏覽量

    109864
  • 計算機
    +關注

    關注

    19

    文章

    7813

    瀏覽量

    93265
  • 深度學習
    +關注

    關注

    73

    文章

    5599

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    NVIDIA 成立由全球領先 AI 實驗室組成的 Nemotron Coalition,推動開放前沿模型發(fā)展

    在內(nèi)的領先創(chuàng)新者皆是創(chuàng)始成員,助力塑造新一代 AI 系統(tǒng)。 ● 聯(lián)盟成員將協(xié)作開發(fā)一款基于 NVIDIA DGX? Cloud 訓練的開放模型,并將生成的
    的頭像 發(fā)表于 03-17 11:14 ?114次閱讀
    <b class='flag-5'>NVIDIA</b> 成立由全球領先 <b class='flag-5'>AI</b> 實驗室組成的 Nemotron Coalition,推動開放前沿<b class='flag-5'>模型</b>發(fā)展

    NVIDIA Jetson模型賦能AI在邊緣端落地

    開源生成式 AI 模型不再局限于數(shù)據(jù)中心,而是開始深入到現(xiàn)實世界的各種機器中。從 Orin 到 Thor,NVIDIA Jetson 系列正在成為運行 NVIDIA Nemotron、
    的頭像 發(fā)表于 03-16 16:27 ?242次閱讀
    <b class='flag-5'>NVIDIA</b> Jetson<b class='flag-5'>模型</b>賦能<b class='flag-5'>AI</b>在邊緣端落地

    邊緣AI算力臨界點:深度解析176TOPS香橙派AI Station的產(chǎn)業(yè)價值

    。openEuler作為華為主導的服務器操作系統(tǒng),在ARM生態(tài)、內(nèi)核優(yōu)化和實時方面有深厚積累,這對于將AI Station作為服務器或工業(yè)控制器使用至關重要。 真實的開發(fā)者案例:ACT模型
    發(fā)表于 03-10 14:19

    NVIDIA推出代理式AI藍圖與電信推理模型

    借助全新開源大型電信模型NVIDIA Blueprint,電信運營商能夠利用自有數(shù)據(jù)訓練 AI 智能體,構建自主網(wǎng)絡。
    的頭像 發(fā)表于 03-06 17:37 ?2876次閱讀

    NVIDIA 推出 Alpamayo 系列開源 AI 模型與工具,加速安全可靠的推理型輔助駕駛汽車開發(fā)

    的仿真工具和數(shù)據(jù)集。 l Alpamayo 1、AlpaSim 和物理 AI 開放數(shù)據(jù)集可為開發(fā)具備感知、推理與類人決策能力的車輛提供支持,使開發(fā)者能夠進行模型調(diào)優(yōu)、蒸餾和測試,從而提
    的頭像 發(fā)表于 01-06 09:40 ?406次閱讀
    <b class='flag-5'>NVIDIA</b> 推出 Alpamayo 系列開源 <b class='flag-5'>AI</b> <b class='flag-5'>模型</b>與工具,加速安全可靠的推理型輔助駕駛汽車<b class='flag-5'>開發(fā)</b>

    NVIDIA推動面向數(shù)字與物理AI的開源模型發(fā)展

    NVIDIA 發(fā)布一系列涵蓋語音、安全與輔助駕駛領域的全新 AI 工具,其中包括面向移動出行領域的行業(yè)級開源視覺-語言-動作推理模型(Reasoning VLA) NVIDIA DRI
    的頭像 發(fā)表于 12-13 09:50 ?1378次閱讀

    利用NVIDIA Cosmos開放世界基礎模型加速物理AI開發(fā)

    NVIDIA 最近發(fā)布了 NVIDIA Cosmos 開放世界基礎模型(WFM)的更新,旨在加速物理 AI 模型的測試與驗證數(shù)據(jù)生成。借助
    的頭像 發(fā)表于 12-01 09:25 ?1191次閱讀

    NVIDIA 利用全新開源模型與仿真庫加速機器人研發(fā)進程

    科研人員及開發(fā)者打造功能更強大、適應更強的機器人。 ? 全新的 NVIDIA Isaac GR00T 開源基礎模型將為機器人賦予接近人類的推理能力,使其能夠拆解復雜指令,并借助已有知
    的頭像 發(fā)表于 09-30 09:52 ?3092次閱讀
    <b class='flag-5'>NVIDIA</b> 利用全新開源<b class='flag-5'>模型</b>與仿真庫加速機器人研發(fā)進程

    什么是AI模型的推理能力

    NVIDIA 的數(shù)據(jù)工廠團隊為 NVIDIA Cosmos Reason 等 AI 模型奠定了基礎,該模型近日在 Hugging Face
    的頭像 發(fā)表于 09-23 15:19 ?1306次閱讀

    NVIDIA通過全新 Omniverse庫、Cosmos物理AI模型AI計算基礎設施,為機器人領域開啟新篇章

    NVIDIA 通過全新 Omniverse 庫、Cosmos 物理 AI 模型AI 計算基礎設施,為機器人領域開啟新篇章 ? ·?全新 NVID
    的頭像 發(fā)表于 08-12 11:29 ?1829次閱讀
    <b class='flag-5'>NVIDIA</b>通過全新 Omniverse庫、Cosmos物理<b class='flag-5'>AI</b><b class='flag-5'>模型</b>及<b class='flag-5'>AI</b>計算基礎設施,為機器人領域開啟新篇章

    首創(chuàng)開源架構,天璣AI開發(fā)套件讓端側AI模型接入得心應手

    AI的演進正在逼近“終端智能涌現(xiàn)”的拐點,從通用模型向場景落地遷移成為關鍵議題。聯(lián)發(fā)科以“AI隨芯,應用無界”為主題召開天璣開發(fā)者大會202
    發(fā)表于 04-13 19:52

    使用NVIDIA RTX PRO Blackwell系列GPU加速AI開發(fā)

    NVIDIA GTC 推出新一代專業(yè)級 GPU 和 AI 賦能的開發(fā)者工具—同時,ChatRTX 更新現(xiàn)已支持 NVIDIA NIM,RTX Remix 正式結束測試階段,本月的
    的頭像 發(fā)表于 03-28 09:59 ?1325次閱讀

    英偉達GTC2025亮點 NVIDIA推出Cosmos世界基礎模型和物理AI數(shù)據(jù)工具的重大更新

    、Figure AI、Skild AI 是最早采用該技術的公司。 NVIDIA 宣布推出全新 NVIDIA Cosmos 世界基礎模型 (W
    的頭像 發(fā)表于 03-20 19:01 ?1371次閱讀

    通用汽車和NVIDIA合作構建定制化AI系統(tǒng)

    通用汽車和 NVIDIA 宣布正在借助 AI、仿真和加速計算技術,合作打造下一代汽車、工廠和機器人。
    的頭像 發(fā)表于 03-20 14:40 ?1774次閱讀

    NVIDIA 推出開放推理 AI 模型系列,助力開發(fā)者和企業(yè)構建代理式 AI 平臺

    月 18 日 —— ?NVIDIA 今日發(fā)布具有推理功能的開源 Llama Nemotron 模型系列,旨在為開發(fā)者和企業(yè)提供業(yè)務就緒型基礎,助力構建能夠獨立工作或以團隊形式完成復雜任務的高級
    發(fā)表于 03-19 09:31 ?402次閱讀
    <b class='flag-5'>NVIDIA</b> 推出開放推理 <b class='flag-5'>AI</b> <b class='flag-5'>模型</b>系列,助力<b class='flag-5'>開發(fā)</b>者和企業(yè)構建代理式 <b class='flag-5'>AI</b> 平臺