Implementa una piattaforma predittiva e Federated Healthcare Analytics su Oracle Cloud

L'apprendimento federato potrebbe presto diventare lo standard de facto per analizzare i dati sanitari dei pazienti su larga scala. Poiché il processo di apprendimento federato si verifica localmente in qualsiasi ospedale, clinica o farmacia partecipante, gli algoritmi di formazione possono essere costruiti senza esportare i dati dei pazienti al di fuori del firewall di qualsiasi sistema.

SymetryML, con sede nel New Jersey, utilizza algoritmi di apprendimento federati per eseguire la sua piattaforma di analisi predittiva dell'assistenza sanitaria su Oracle Cloud Infrastructure (OCI), fornendo ai collaboratori e ai consumatori di dati i suoi modelli FL per sfruttare miliardi di petabyte di dati sanitari anonimizzati dei pazienti in tempo quasi reale.

Sebbene i modelli di apprendimento federato siano spesso difficili da creare senza aderire a modelli di governance rigorosi e a una configurazione di federazione globale, l'applicazione SymetryML ignora questi vincoli perché non contiene alcun modello di governance. Invece, l'applicazione consente ai colleghi di condividere alcune conoscenze sui propri dati con gli altri peer, in modo conforme alla normativa HIPAA, e quindi ogni peer può creare qualsiasi modello desiderato o accedere a varie analisi dalla conoscenza condivisa nella federazione SymetryML. Questa funzionalità di modellazione della governance dinamica protegge da perdite comuni di dati di apprendimento federato ed elimina la necessità che ogni nodo peer della federazione abbia set di dati IID (simili, indipendenti e identici). SymetryML consente la federazione tra più pari livello, utilizzando diverse funzioni di distribuzione della probabilità e altre caratteristiche statistiche.

I punti salienti della distribuzione SymetryML su OCI includono:

  • È possibile eseguire il provisioning delle istanze di Machine Learning per virtual machine e bare metal, entrambe eseguite sulle GPU NVIDIA
  • I dati per i modelli di apprendimento federati vengono inclusi utilizzando Oracle Cloud Infrastructure Streaming e la conoscenza condivisa risultante, la data element matrix (DEM), viene memorizzata nei database Redis e in Oracle Cloud Infrastructure Object Storage
  • I modelli di analisi dei dati in tempo reale possono essere eseguiti su Kafka, distribuito nei container su OCI

Architettura

L'app SymetryML contiene due sistemi: uno per l'interfaccia dell'applicazione software-as-a-service (SaaS) e l'altro per l'interfaccia di apprendimento automatico.

L'applicazione SaaS viene distribuita su una singola istanza di virtual machine con un'istanza di virtual machine del database Redis distribuita in una rete cloud virtuale (VCN). A ogni cliente che utilizza l'applicazione SymetryML viene allocata un'istanza SaaS.

L'interfaccia di apprendimento automatico viene distribuita in una seconda VCN che contiene una subnet per lo streaming e l'analitica dei dati, una subnet di apprendimento automatico per autoML, la modellazione predittiva e le metriche in tempo reale, una subnet di database per lo storage dei dati di persistenza che utilizza Redis e una subnet facoltativa per la federazione che contiene un cluster NATS.

Ai consumer di dati vengono allocate istanze dell'applicazione SaaS alle quali possono accedere e configurare l'ambiente in base alle proprie esigenze. I consumatori hanno una scelta di istanze di machine learning tra cui scegliere in base ai propri requisiti di analytics. Il cliente può scegliere tra virtual machine o istanze Bare Metal, entrambe con GPU NVIDIA. Dopo aver scelto il tipo di istanza, viene eseguito il provisioning delle istanze. Dall'istanza SaaS, gli utenti possono eseguire comandi per arrestare, avviare e riavviare le istanze in base alle esigenze e per rivedere i dati elaborati.

Il seguente diagramma descrive l'architettura.



symetryml-oci-architecture-oracle.zip

Per fornire dati per l'apprendimento automatico, un collaboratore di dati può utilizzare l'applicazione desktop SymetryML per puntare a una vasta gamma di origini dati, ad esempio database, dati in streaming e aree di memorizzazione degli oggetti contenenti dati grezzi dei pazienti.

Se un cliente richiede streaming e analytics in tempo reale, può sfruttare Kafka. Se il consumatore di dati desidera trarre vantaggio dalla federazione, può scegliere di distribuire un cluster NATS o utilizzare un cluster NATS al di fuori della VCN OCI. Il cluster NATS è facoltativo e non viene distribuito automaticamente come parte dell'architettura SymetryML, ma è necessario per abilitare l'apprendimento federato SymetryML.

Le considerazioni sulla futura roadmap di stato di SymetryML includono:

  • Implementa un servizio Apache Spark utilizzando Oracle Cloud Infrastructure Data Flow

    Poiché SymetryML utilizza applicazioni Java completamente interne in esecuzione come applicazioni Spark, Oracle suggerisce di utilizzare Data Flow, una piattaforma serverless basata su cloud che elabora le attività su set di dati estremamente grandi. Consente agli sviluppatori e ai data scientist Spark di creare, modificare ed eseguire job Spark su qualsiasi scala senza la necessità di cluster, un team operativo o una conoscenza Spark altamente specializzata. Poiché è serverless, non esiste alcuna infrastruttura da distribuire o gestire. È interamente basato sulle API REST e semplifica l'integrazione con applicazioni o flussi di lavoro. È inoltre possibile controllare il flusso dati utilizzando l'API REST. Utilizzando i pool di flusso di dati, è possibile supportare contemporaneamente i carichi di lavoro delle sessioni di streaming di vari utenti nello stesso tenant. Poiché i comandi del flusso di dati sono disponibili come parte dell'interfaccia della riga di comando di Oracle Cloud Infrastructure, gli utenti possono facilmente:

    • Connettersi alle origini dati Apache Spark
    • Crea applicazioni Apache Spark riutilizzabili
    • Avvia job Apache Spark in pochi secondi
    • Creare applicazioni Apache Spark utilizzando SQL, Python, Java, Scala o lo script spark-submit
    • Gestisci tutte le applicazioni Apache Spark da un'unica piattaforma
    • Elabora i dati nel cloud o on premise nel tuo data center
    • Crea modelli di Big Data che puoi assemblare facilmente in applicazioni Big Data avanzate
  • Sostituisci Apache Kafka con Oracle Streaming Service

    Oracle Cloud Infrastructure Streaming consente agli utenti di Apache Kafka di scaricare la gestione di configurazione, manutenzione e infrastruttura richiesta dall'hosting del proprio cluster Zookeeper e Kafka. Poiché Oracle Cloud Infrastructure Streaming è compatibile con la maggior parte delle API Kafka, consente di utilizzare applicazioni scritte per Kafka per inviare e ricevere messaggi dal servizio di streaming senza dover riscrivere il codice. Oracle Cloud Infrastructure Streaming può anche utilizzare l'ecosistema Kafka Connect per interfacciarsi direttamente con fonti esterne come database, aree di memorizzazione degli oggetti o qualsiasi microservizio in Oracle Cloud. I connettori Kafka possono creare, pubblicare e distribuire argomenti in modo semplice e automatico, sfruttando al contempo l'elevato throughput e la durabilità del servizio di streaming. Inoltre, Oracle Cloud Infrastructure Streaming offre una soluzione di messaggistica completamente gestita, scalabile e duratura dedicata all'inclusione di flussi di dati continui e a elevato volume che puoi utilizzare ed elaborare in tempo reale. Oracle Cloud Infrastructure Streaming è serverless e scarica la gestione dell'infrastruttura, dalla rete allo storage e alla configurazione necessaria per lo streaming dei dati. Non devi preoccuparti del provisioning dell'infrastruttura, della manutenzione continua o dell'applicazione di patch di sicurezza. Il servizio di streaming replica i dati in modo sincrono nei tre domini di disponibilità, garantendo alta disponibilità e durabilità dei dati. Nelle aree con un singolo dominio di disponibilità, i dati vengono replicati in tre domini di errore. Di seguito sono riportati alcuni possibili utilizzi di Oracle Cloud Infrastructure Streaming.

    • Messaggistica: produttori e consumatori possono utilizzare Oracle Cloud Infrastructure Streaming come bus di messaggi asincroni e agire in modo indipendente e secondo i propri ritmi.
    • Inclusione di metriche e log: utilizza Oracle Cloud Infrastructure Streaming come alternativa agli approcci tradizionali che prevedono l'estrazione dei file in modo da rendere rapidamente disponibili i dati operativi strategici per l'indicizzazione, l'analisi e la visualizzazione.
    • Inclusione dei dati dell'attività Web o mobile: utilizza Oracle Cloud Infrastructure Streaming per acquisire l'attività da siti Web o applicazioni mobile, come viste delle pagine, ricerche o altre azioni utente. È possibile utilizzare queste informazioni per il monitoraggio e l'analisi in tempo reale e nei sistemi di data warehouse per l'elaborazione e i report offline.
    • Elaborazione degli eventi dell'infrastruttura e delle applicazioni: utilizza Oracle Cloud Infrastructure Streaming come punto di accesso unificato per i componenti cloud per segnalarne gli eventi del ciclo di vita per l'audit, la contabilità e le attività correlate.
  • Distribuisci Autonomous Database

    Oracle Autonomous Database (disponibile solo sull'infrastruttura Exadata) è un servizio PaaS completamente gestito che offre indicizzazione automatica, tuning, backup, provisioning, applicazione automatica di patch e upgrade. Autonomous Database cifra anche il database, i backup e tutte le connessioni di rete. Oltre a fornire un vault, il mascheramento dei dati e il ridimensionamento immediato senza tempi di inattività, Autonomous Database include due opzioni di disaster recovery: Active Data Guard può essere applicato in modo sincrono nella stessa area e Data Guard può essere configurato in modo asincrono tra le aree, il che fornisce protezione in caso di calamità nell'intera area primaria. Ecco alcune delle caratteristiche importanti:

    • Elasticità del cloud per ridurre i costi grazie alla scalabilità automatica fino a 3 volte (e al back-down)
    • Assegna la priorità alle connessioni al database per un utilizzo efficiente delle risorse
    • Gestisci in standby locale e remoto utilizzando Oracle Data Guard
    • Il failover automatico con perdita di dati pari a zero in standby, è completamente trasparente per le applicazioni dell'utente finale e offre uno SLA del 99,995%

Il seguente diagramma illustra l'architettura futura.



symetryml-oci-future-oracle.zip

L'architettura presenta i seguenti componenti:

  • Tenancy

    Una tenancy è una partizione sicura e isolata che Oracle imposta all'interno di Oracle Cloud quando ti iscrivi a Oracle Cloud Infrastructure. Puoi creare, organizzare e amministrare le risorse in Oracle Cloud all'interno della tua tenancy. Una tenancy è sinonimo di azienda o organizzazione. Di solito, un'azienda avrà una singola tenancy e rifletterà la sua struttura organizzativa all'interno di quella tenancy. Una singola tenancy viene in genere associata a una singola sottoscrizione e una singola sottoscrizione in genere ha una sola tenancy.

  • Area

    Un'area geografica Oracle Cloud Infrastructure è un'area geografica localizzata che contiene uno o più data center, denominati domini di disponibilità. Le regioni sono indipendenti da altre regioni e grandi distanze possono separarle (tra paesi o addirittura continenti).

  • Dominio di disponibilità

    I domini di disponibilità sono data center standalone e indipendenti all'interno di un'area geografica. Le risorse fisiche in ciascun dominio di disponibilità sono isolate dalle risorse negli altri domini di disponibilità, il che fornisce tolleranza agli errori. I domini di disponibilità non condividono l'infrastruttura, ad esempio l'alimentazione o il raffreddamento, o la rete interna del dominio di disponibilità. Pertanto, un errore in un dominio di disponibilità non dovrebbe influire sugli altri domini di disponibilità nell'area.

  • Rete cloud virtuale (VCN) e subnet

    Una VCN è una rete personalizzabile e definita dal software configurata in un'area Oracle Cloud Infrastructure. Come le tradizionali reti di data center, le reti VCN consentono di controllare l'ambiente di rete. Una VCN può avere più blocchi CIDR non sovrapposti che è possibile modificare dopo aver creato la VCN. Puoi segmentare una VCN in subnet, che possono essere definite in un'area o in un dominio di disponibilità. Ogni subnet è costituita da un intervallo contiguo di indirizzi che non si sovrappongono alle altre subnet nella VCN. È possibile modificare le dimensioni di una subnet dopo la creazione. Una subnet può essere pubblica o privata.

  • Tabella di instradamento

    Le tabelle di instradamento virtuali contengono regole per instradare il traffico dalle subnet alle destinazioni esterne a una VCN, in genere attraverso i gateway.

  • Lista di sicurezza

    Per ogni subnet, puoi creare regole di sicurezza che specificano l'origine, la destinazione e il tipo di traffico che devono essere consentiti all'interno e all'esterno della subnet.

  • Gateway Internet

    Il gateway Internet consente il traffico tra le subnet pubbliche in una VCN e la rete Internet pubblica.

  • Gateway del servizio

    Il gateway di servizi fornisce l'accesso da una VCN ad altri servizi, come Oracle Cloud Infrastructure Object Storage. Il traffico dalla VCN al servizio Oracle viaggia sul fabric di rete Oracle e non attraversa Internet.

  • Local peering gateway (LPG)

    Un GPL ti consente di eseguire il peer di una VCN con un'altra VCN nella stessa area. Peering significa che le VCN comunicano utilizzando indirizzi IP privati, senza il traffico che attraversa Internet o l'instradamento tramite la rete on premise.

  • Calcolo

    Il servizio Oracle Cloud Infrastructure Compute consente di eseguire il provisioning e gestire gli host di computazione nel cloud. Puoi avviare istanze di computazione con forme che soddisfano i requisiti delle risorse per CPU, memoria, larghezza di banda di rete e storage. Dopo aver creato un'istanza di computazione, è possibile accedervi in modo sicuro, riavviare l'istanza, collegare e scollegare volumi e arrestarla quando non è più necessaria.

  • Bare metal

    I server Bare Metal di Oracle garantiscono isolamento, visibilità e controllo utilizzando istanze di computazione dedicate. I server supportano applicazioni che richiedono un numero elevato di core, grandi quantità di memoria ed elevata larghezza di banda. Possono eseguire lo scale-up fino a 160 core (i più grandi del settore), 2 TB di RAM e fino a 1 PB di storage a blocchi. I clienti possono creare ambienti cloud sui server Bare Metal di Oracle con notevoli miglioramenti a livello di prestazioni rispetto ad altri cloud pubblici e ai data center locali.

  • Identity and Access Management (IAM)

    Oracle Cloud Infrastructure Identity and Access Management (IAM) è il piano di controllo dell'accesso per Oracle Cloud Infrastructure (OCI) e Oracle Cloud Applications. L'API IAM e l'interfaccia utente consentono di gestire i domini di Identity e le risorse all'interno del dominio di Identity. Ogni dominio di Identity IAM OCI rappresenta una soluzione standalone per la gestione delle identità e degli accessi o una popolazione di utenti diversa.

Partecipa a Creazione e distribuzione

Vuoi mostrare cosa hai costruito su Oracle Cloud Infrastructure? Vuoi condividere le lezioni apprese, le best practice e le architetture di riferimento con la nostra community globale di architetti cloud? Ti aiutiamo a iniziare.

  1. Scarica il template (PPTX)

    Illustrare la propria architettura di riferimento trascinando e rilasciando le icone nel wireframe di esempio.

  2. Guarda il tutorial sull'architettura

    Istruzioni dettagliate su come creare un'architettura di riferimento.

  3. Invia il tuo diagramma

    Inviaci una e-mail con il tuo diagramma. I nostri architetti cloud esamineranno il tuo diagramma e ti contatteranno per discutere della tua architettura.

Riconoscimenti

  • Authors: Robert Huie, Sasha Banks-Louie
  • Contributors: Brad Goodwin, Kyle Finnerty, Kyle Adams, Puneet Khana, Ganesh Pitchaiah, Robert Lies

    SymetryML Team: Dustin O'Dell, Neil Couture