利用NGC 上的NVIDIA Clara Guardian 和NVIDIA Fleet ...
文章推薦指數: 80 %
Clara Guardian 是屬於NGC 目錄早期試用計畫的一部分,為現有的眾多醫療應用程式框架之一。
主要元件包括用於電腦視覺和語音的醫療預先訓練模型、訓練工具 ...
Skiptocontent
Share
Email
現在的醫院都在設法改造現有的數位基礎架構,以改善內部流程,提供更好的患者照護,並降低營運支出。
如果醫院想要應對迅速成長的人口需求、醫學患者資料累積以及疫情,就必須經歷此類轉變。
目標包括將現有的基礎架構數位化、將工作流程效率最佳化、匯集大量的患者資料,以及創造出篩檢和診斷的新工具。
醫院可以透過來自智慧感測器的資料饋送至以邊緣為基礎的系統,即時滿足患者和工作人員的需求。
智慧醫院生態系統的關鍵部分是獨立軟體供應商(ISV),他們為醫院建構和部署最先進的應用程式。
ISV資料科學家和開發人員需要能輕鬆存取軟體構件,包括兼具安全性與高效能的模型和容器。
這些構件可賦予開發人員建立AI模型和基礎架構的起步優勢。
在建立應用程式之後,必須將其部署在大量的邊緣裝置上,以獲得即時的見解。
但是,在邊緣裝置上部署、監控和管理軟體具有特殊的挑戰。
DevOps和IT管理者必須全面管理各個位置的所有實體裝置以及軟體部署。
在這一篇文章中,我們將示範如何使用來自NVIDIANGC目錄的智慧醫院應用程式框架NVIDIAClaraGuardian建構應用程式,以及如何使用NVIDIAFleetCommand安全地將應用程式部署在邊緣。
利用NGC加快AI工作流程
NGC目錄是為了加快AI工作流程而建立。
它是雲端原生GPU最佳化AI與HPC應用程式和工具的中樞,可以加快存取效能最佳化容器的速度、透過預先訓練模型縮短解決時間,並提供產業專用的軟體開發套件,以建構端對端AI解決方案。
此目錄包含各種應用及使用案例的資源,包含可用於電腦視覺、語音辨識、推薦系統等的各式各樣資源。
在醫療保健領域中,預先訓練模型涵蓋註解、分割、分類等關鍵功能。
您可以將轉移學習應用在模型,並針對自己的資料進行重新訓練,以建立自訂模型。
圖1:NGC目錄,GPU最佳化AI軟體的中樞。
NGC目錄上的AI容器和模型經過調整、測試和最佳化,將可讓現有的GPU基礎架構發揮最大的效能。
這些容器和模型是使用自動混合精度,讓您使用此功能時不需要變更程式碼或僅需要極少的變更。
自動混合精度是使用NVIDIAGPU上的Tensor核心,可以大幅加快模型訓練速度。
多GPU訓練是在所有使用Horovod和NCCL函式庫進行分散式訓練和高效率通訊之NGC模型上建置的標準功能。
圖2:容器每月更新,可在相同的GPU上提供更快的效能。
單節點8xV100(32GB)和A100(40GB)上的BERT-Large與ResNet-50v1.5訓練效能。
混合精度。
BERT的批次大小:10(V100)、24(A100),ResNet:512(V100,v20.05)、256(v20.07)
NGC上的NVIDIAClaraGuardian
NVIDIAClaraGuardian是在NGC目錄上容器化的框架之一。
ClaraGuardian是屬於NGC目錄早期試用計畫的一部分,為現有的眾多醫療應用程式框架之一。
主要元件包括用於電腦視覺和語音的醫療預先訓練模型、訓練工具、部署SDK,以及NVIDIAFleetCommand,這些都是讓ISV可以快速建構和部署解決方案,以供醫院使用。
圖3:ClaraGuardian應用程式框架。
您可以輕鬆地將AI功能加入常見感測器中,監測人群,以確保安全社交距離、測量體溫、偵測是否缺少口罩等防護裝備,或與高風險患者遠端互動,讓醫療機構中的每一個人都能在安全的情況下瞭解資訊。
應用程式和服務可以在NVIDIAJetsonNano、NVIDIAT4伺服器等各種硬體上運行,讓您能安全地在任何位置部署,從邊緣到雲端。
NVIDIAFleetCommand
NVIDIAFleetCommand是可以在數十個或多達數百萬個伺服器或邊緣裝置上,管理和擴充AI部署的混合雲端平台。
FleetCommand可以讓IT部門安全地遠端管理大量的已部署系統。
管理員可以在短短數分鐘內,將AI導入網路化醫院,而無須花數週的時間規劃和執行部署計畫。
管理員可以新增或刪除應用程式、以無線方式更新系統軟體,以及從單一控制面板監控分散在各處之裝置的狀態。
安全性是所有企業的需求。
NGC目錄中的代管應用程式會經過公共漏洞與暴露掃描、密碼編譯金鑰、私密金鑰以及中繼資料掃描,確保已準備好進行量產層級部署。
在邊緣端,將對所有已處理資料進行靜態加密,並安全、可靠的啟動,防止AI執行階段遭到竄改。
此外,由於系統採用內部部署處理近端感測器饋送,因此組織可以控制感測器資料的儲存位置。
ClaraGuardian實際應用
NVIDIAInception醫療AI新創公司WhiteboardCoordinator是使用ClaraGuardian,為西北紀念醫院(NorthwesternHospital)等頂尖醫院打造虛擬患者助理解決方案。
患者安全一直很重要,而在COVID-19疫情期間更是至關重要。
減少身體接觸等措施是減少傳播,以及確保患者和醫護人員安全的關鍵。
對話式AI有助於減少身體直接接觸,同時可以繼續提供高品質的照護。
患者可以立即從AI虛擬助理獲得答案,而無須等待臨床工作人員提供服務。
影片:患者如何在沒有任何醫院工作人員協助的情況下,取得與手術有關的最新資訊。
建構應用程式
您已經瞭解ClaraGuardian的實際應用情形,以下將說明如何建構應用程式。
虛擬患者助理應用程式是屬於ClaraGuardian用戶端應用程式,可接收患者的輸入查詢、擷取意圖和相關資訊,以解讀患者的詢問,並以自然的語音即時運算給予回應。
患者可能提出任何問題,從對於日常排程的一般問題,到治療計畫或醫療程序等更多領域的相關問題。
ClaraGuardian用戶端應用程式是使用gRPC協定與ClaraGuardianSDK互動。
以此虛擬患者助理應用程式為例,該方法是針對自動語音辨識、自然語言理解,以及文字轉語音所定義的請求和回應。
用戶端具有虛設程式,提供與伺服器相同的方法,並在同一個主控端上執行。
Python繫結用於和ClaraGuardianAI服務互動。
用戶端也可以使用protobuf檔案,以任何官方gRPC支援的語言與伺服器通訊。
ClaraGuardian自動語音辨識(automatedspeechrecognition,ASR)技能,可以針對以16位元LPCM編碼的傳入、串流音訊、RTP資料流進行即時英語轉錄。
為了方便與病房中的各種麥克風整合,並適應不同的頻率響應、極性型態和近接效應,我們提供RTP連接器做為用戶端應用程式的一部分,將傳入的麥克風資料編碼成與ClaraGuardianASR相容的輸入。
ASR的核心代表了以Jasper模型為基礎的端對端語音辨識管道。
ASR技能已針對低延遲進行最佳化,讓卷積層的整個子區塊,皆能以高準確度(在醫學資料集上,WER大約為2%)融合至單一GPU核心。
您也可以依據此逐步指示,使用NeMo訓練自己的聲學模型。
若想要使用ClaraGuardian部署已訓練模型,則必須將編碼器和解碼器檢查點匯出至ONNX。
ClaraGuardian自然語言理解(naturallanguageunderstanding,NLU)服務是以ASR轉錄的文字做為輸入,並根據預先訓練的BERT模型擷取患者意圖和相關資訊,以進行聯合意圖分類和資訊填充。
若想要使用自己的資料訓練此模型,請參閱發布在GitHub上的nlp/intent_slot_classification範例。
ClaraGuardian文字轉語音(text-to-speech,TTS)技能是以兩個神經網路模型為基礎:
經過修改的Tacotron2模型,是以NaturalTTSSynthesisbyConditioningWaveNetonMelSpectrogramPredictions論文為根據。
以流為基礎的神經網路模型,則是以WaveGlow:AFlow-basedGenerativeNetworkforSpeechSynthesis論文為根據。
NGC目錄中的Tacotron2和WaveGlow模型構成了文字轉語音工作流程,可以合成自然語音,而無須任何其他資訊,例如語音型態或節奏。
Tacotron2模型是透過採用編碼器-解碼器架構的意圖分類器和資訊標記器,從輸入的NLU文字產生梅爾聲譜圖,而WaveGlow是產生語音,以回應患者。
您可以依據NeMo文件,使用自己的資料訓練Tacotron2和WaveGlow。
為了將回應傳回病房中的揚聲器,我們提供了TLS安全SessionInitiationProtocol(SIP)連接器。
傳輸經過加密,可以防止將回應串流回患者時,發生竊聽、竄改和訊息偽造。
若想要建構應用程式,則必須使用gRPC編寫與ClaraGuardianAI技能伺服器通訊的Python用戶端。
用戶端轉錄傳入的RTSP流,並將串流回應傳送至ClaraGuardianAI技能伺服器,是第一個處理步驟:
#importallthelibraries
#setupthechannelandtheclient
channel=grpc.insecure_channel(clara_guardian_server)
client=risr_srv.RivaSpeechRecognitionStub(channel)
...
#setthestreamingconfigparameters
config=risr.RecognitionConfig(
encoding=clara_guardian_encodi
sample_rate_hertz=16000,
language_code="en-US",
max_alternatives=1,
enable_automatic_punctuation=True)
streaming_config=risr.StreamingRecognitionConfig(config_parameters)
mic_rtsp=open_stream(IP_of_device)
#sendclientrequeststogenerateresponses
...
mic_rtsp.close_stream()
在轉錄音訊之後,用戶端會傳送NLP技能伺服器要求,以偵測和確定患者查詢。
例如,當患者詢問「我今天需要接受什麼療程?」時,資訊標記器將會擷取相關的語意實體,例如「day_of_week」。
intent{
class_name:"procedure_inquiry"
score:0.9931640625
}
slots{
token:"today"
label{
class_name:"day_of_week"
score:0.56298828125
}
}
domain_str:"healthcare"
domain{
class_name:"healthcare"
score:0.9866989850997925
最後,將串流要求傳送至TTS串流技能伺服器,再將加密後的回應傳送至病房中的IP裝置:
responses=client.SynthesizeOnline(req)
圖4:ClaraGuardian與IP裝置之間的SIP訊息交換順序圖。
圖5:患者發起對話時的整體工作流程。
ClaraGuardianAI服務是透過NVIDIATriton推論伺服器進行部署。
Triton推論伺服器是針對NVIDIAGPU最佳化的雲端推論解決方案,支援部署透過所有主要框架(包括TensorRT、TensorFlow、PyTorch、ONNXRuntime甚或自訂框架)訓練的AI模型,並提供使用gRPC端點的推論伺服器。
當推論要求抵達使用gRPC的伺服器之後,即會傳遞至適當的模型調度器。
模型調度器會針對推論要求進行批次處理,並將要求轉送至後端給對應的ASR、NLP或TTS模型。
Triton同時透過可觸發整個ASR-NLP-TTS模型管道執行的單一推論要求,提供整體支援。
透過存取端點,可以取得數個指標,例如GPU利用率、延遲、推論要求數量、執行的推理次數。
部署應用程式
本節說明如何使用NVIDIAFleetCommand在搭載NVIDIAT4,且經驗證可以執行各種AI工作負載,並經過安全性和遠端管理協定測試的NTC-ReadyforEdge伺服器上,部署虛擬患者助理應用程式。
您也可以使用Helmchart部署應用程式。
Helm是NVIDIA推薦的Kubernetes套件管理器,可以讓您輕鬆地在Kubernetes上配置、部署和更新應用程式。
提供給ClaraGuardian的Helmchart是負責下載模型成品、建立模型儲存庫,以及啟動ASR、NLU和TTS服務。
若想要開始使用NVIDIAFleetCommand,則必須存取貴組織的NGCPrivateRegistry。
NGCPrivateRegistry提供安全的雲端代管環境,讓開發人員可以從單一入口網站,自訂來自NGC的預先訓練模型、SDK及Helmchart、加密、簽署、分享和部署專有軟體。
您可以透過使用者管理、自訂模型建立等其他功能,促進團隊之間的協作,並改善整體開發與部署流程。
按一下此處,以深入瞭解如何設定NGCPrivateRegistry。
在設定NGCPrivateRegistry之後,即可登入NGC帳戶。
若想要從FleetCommand存取NGCPrivateRegistry中的應用程式,請輸入NGCAPI金鑰進行驗證以達到同步。
圖6:從NGCPrivateRegistry產生API金鑰以存取應用程式。
將所有自訂內容上傳至NGCPrivateRegistry之後,請新增需要部署應用程式的邊緣裝置位置。
在此範例中,是在西北紀念醫院中安裝T4伺服器。
圖7:NGCPrivateRegistry可以儲存自訂容器、模型和Helmchart。
若想要使用ClaraGuardianHelmchart新增部署在Kubernetes叢集上的虛擬患者助理應用程式,請選擇應用程式、新增應用程式。
在表單中輸入應用程式的相關資訊,包括Helmchart的名稱。
圖8:在FleetCommand中使用Helmchart新增需要部署的應用程式。
riva-api-demoHelmchart的樹狀結構,如下所示:
├──Chart.yaml
├──templates
│├──_helpers.tpl
│├──artifactSecret.yaml
│├──deployment.yaml
│├──registrySecret.yaml
│└──service.yaml
└──values.yaml
Helmchart是範本,values.yaml檔案則提供需要注入chart中的執行階段配置。
將可視為類似用於自定義chart的發布參數。
/templates目錄包含與values.yaml中的配置值以及自訂配置結合,並呈現在Kubernetes清單中的範本檔案。
最後一步是建立部署。
Helm部署使用了兩個Kubernetes秘密存取NGC:一個用於Docker映像,另一個用於模型成品。
在預設的情況下,兩者的名稱分別為riva-ea-regcred和imagepullsecret。
在values.yaml檔案中可以修改秘密的名稱。
在新增API金鑰(使用FleetCommand位置選項)時,會將稱為imagepullsecret的Kubernetes秘密新增至位置中的所有EGX系統。
圖9:在FleetCommand中使用Helmchart新增需要部署的應用程式。
在選擇部署之後,即會將應用程式成功部署至醫院內部的伺服器。
在部署應用程式時,將會看到狀態變成綠色(或使用中),即表示已部署成功。
圖10:已部署應用程式的狀態。
圖11:使用CLI查看已部署應用程式的狀態。
總結
使用ClaraGuardian可以輕鬆建構虛擬患者助理應用程式,並可透過NVIDIAFleetCommand安全地部署、管理和擴充,以實現智慧醫院。
參加NGC目錄提供的ClaraGuardian試用,立即開始使用。
歡迎參加「利用Clara建置智慧醫院所需之AI應用」線上研討會,我們將分享想要導入人工智慧用、成為智慧醫院會需要那些技術與平台支援。
所有NVIDIA新聞
使用NVIDIAFLARE建立穩健且可廣泛應用的人工智慧模型
使用NVIDIAOmniverseReallusionConnector簡化寫實角色的創造流程
本週GFN:封測版《要塞英雄(Fortnite)》透過GeForceNOW聯盟TaiwanMobile雲端遊戲服務於iOSSafari與Android推出
JaguarLandRover宣布成為NVIDIA的合作夥伴
NVIDIA公佈2022會計年度第四季與全年營運結果
Postnavigation
NVIDIA網站透過Cookie提供與改善網站體驗。
請參閱我們的Cookie政策,深入瞭解我們如何使用Cookie以及變更Cookie設定的詳細資訊。
接受
SharethisArticle
Friend'sEmailAddress
YourName
YourEmailAddress
Comments
SendEmail
Emailsent!
延伸文章資訊
- 1你的人工智慧醫生:Nvidia Clara | Meet創業小聚
Nvidia Clara 發表以來,目前已經擴大成為五大分支:. Clara Imaging:提供事先訓練好的模型,加速影像資料註記,多用於醫療影像判讀。 Clara Parabricks® ...
- 2NVIDIA Clara - 人工智慧驅動的醫療照護產業解決方案
NVIDIA Clara Holoscan 是醫療設備的多模式運算平台,它結合了硬體系統、資料處理和人工智慧的最佳化函式庫,以及核心微服務,可在包括嵌入式、邊緣端到雲端等任何地方執行 ...
- 3AWS 雲端上的NVIDIA Clara Train SDK
Clara Train 是適用於醫療影像研究人員和人工智慧(AI) 開發人員的NVIDIA 網域最佳化的應用程式開發架構。您可以在AWS 雲端上的高可用性(HA) 組態中部署Clara Trai...
- 4NVIDIA Clara 彙整 - NVIDIA 台灣官方部落格-
標籤: NVIDIA Clara · 創下世界紀錄的DNA 定序技術幫助臨床醫生快速診斷重症患者 · 創新AI 智慧科技花蓮慈濟醫院、商之器、NVIDIA 攜手打造隨行醫療 · MONAI 影像...
- 5NVIDIA Clara ™ Holoscan - 醫療設備人工智慧運算平台
NVIDIA Clara Holoscan 是混合式的醫療設備運算平台,結合了包括嵌入式、邊緣端,到雲端的應用程式。