Uso delle sessioni notebook per creare e addestrare i modelli
Dopo aver creato una sessione notebook, è possibile scrivere ed eseguire il codice Python utilizzando le librerie di apprendimento automatico nell'interfaccia JupyterLab per creare e addestrare i modelli.
Autenticazione alle API OCI da una sessione notebook
Quando si lavora all'interno di una sessione notebook, si opera come utente Linux datascience
. Questo utente non dispone di un'identità IAM (Identity and Access Management) OCI, quindi non dispone dell'accesso all'API OCI. Le risorse OCI includono progetti e modelli di Data Science e le risorse di altri servizi OCI, come lo storage degli oggetti, le funzioni, il vault, il flusso di dati e così via. Per accedere a queste risorse dall'ambiente notebook, utilizzare uno dei due approcci di autenticazione riportati di seguito.
(Consigliato) Autenticazione mediante il principal risorsa di una sessione notebook
Un principal risorsa è una funzione di IAM che consente alle risorse di essere attori principali autorizzati in grado di eseguire azioni sulle risorse del servizio. Ogni risorsa ha la propria identità ed esegue l'autenticazione utilizzando i certificati aggiunti. Questi certificati vengono creati automaticamente, assegnati alle risorse e ruotati, evitando di dover memorizzare le credenziali in una sessione notebook.
Il servizio Data Science consente di eseguire l'autenticazione utilizzando il principal delle risorse di una sessione notebook per accedere ad altre risorse OCI. I principal delle risorse forniscono un modo più sicuro per eseguire l'autenticazione alle risorse rispetto alla configurazione OCI e all'approccio API key
L'amministratore della tenancy deve scrivere i criteri per concedere le autorizzazioni per un principal risorsa per accedere ad altre risorse OCI. Vedere Uso di Oracle Resource Manager per la configurazione della tenancy per Data Science.
È possibile eseguire l'autenticazione con i principal delle risorse in una sessione notebook utilizzando le interfacce riportate di seguito.
- SDK Oracle Accelerated Data Science:
-
Eseguire le operazioni riportate di seguito in una cella del notebook.
import ads ads.set_auth(auth='resource_principal')
Per i dettagli, consulta la documentazione di Accelerated Data Science.
- SDK Python OCI:
-
Eseguire le operazioni riportate di seguito in una cella del notebook.
import oci from oci.data_science import DataScienceClient rps = oci.auth.signers.get_resource_principals_signer() dsc = DataScienceClient(config={}, signer=rps)
- OCI CLI:
-
Utilizzare il flag
`--auth=resource_principal`
con i comandi.
Il token principal risorsa viene inserito nella cache per 15 minuti. Se si modifica il criterio o il gruppo dinamico, è necessario attendere 15 minuti per visualizzare l'effetto delle modifiche.
Se non si utilizzano in modo esplicito i principal delle risorse quando si richiama un SDK o un'interfaccia CLI, vengono utilizzati il file di configurazione e l'approccio della chiave API
(Predefinito) Autenticazione mediante il file di configurazione OCI e le chiavi API
Puoi operare come tuo utente IAM impostando un file di configurazione OCI e le chiavi API per accedere alle risorse OCI. Questo è l'approccio di autenticazione predefinito
Per eseguire l'autenticazione utilizzando il file di configurazione e l'approccio della chiave API, è necessario caricare un file di configurazione OCI nella directory /home/datascience/.oci/
della sessione notebook. Per il profilo pertinente definito nel file di configurazione OCI, è inoltre necessario caricare o creare i file .pem
necessari.
Impostare il file di configurazione e la chiave API OCI utilizzando le chiavi e gli OCID richiesti.
Utilizzo dei file di codice esistenti
È possibile creare nuovi file o utilizzare i propri file esistenti.
È possibile caricare i file dal computer locale selezionando Carica nell'interfaccia JupyterLab o trascinandoli.
È possibile eseguire i comandi sftp
, scp
, curl
, wget
o rsync
per estrarre i file nell'ambiente della sessione notebook in base alle limitazioni di networking imposte dalla selezione della VCN e della subnet.
Installazione di librerie Python extra
È possibile installare una libreria non preinstallata nell'immagine della sessione notebook. È possibile installare e modificare un ambiente Honda predefinito o creare un ambiente conda da zero.
Per ulteriori informazioni, vedere la sezione sull'installazione di librerie extra nella documentazione di ADS.
Utilizzo delle variabili di ambiente fornite nelle sessioni notebook
Quando si avvia una sessione notebook, il servizio crea variabili di ambiente utili che è possibile utilizzare nel codice:
Nome chiave variabile |
descrizione; |
Specificato da |
---|---|---|
|
OCID della tenancy a cui appartiene il notebook. |
Dati popolati automaticamente da Data Science. |
|
OCID del progetto associato alla sessione notebook corrente. |
Dati popolati automaticamente da Data Science. |
|
OCID del compartimento del progetto a cui è associato il notebook. |
Dati popolati automaticamente da Data Science. |
|
OCID utente. |
Dati popolati automaticamente da Data Science. |
|
OCID della sessione notebook corrente. |
Dati popolati automaticamente da Data Science. |
|
OCID compartimento della sessione notebook corrente. |
Dati popolati automaticamente da Data Science. |
|
Percorso del token del principal risorsa OCI. |
Dati popolati automaticamente da Data Science. |
|
ID del token del principal risorsa OCI. |
Dati popolati automaticamente da Data Science. |
|
URL dello script del ciclo di vita della sessione notebook da eseguire durante la creazione. |
Specificato dall'utente. |
|
URL dello script del ciclo di vita della sessione notebook da eseguire durante l'attivazione. |
Specificato dall'utente. |
|
URL dello script del ciclo di vita della sessione notebook da eseguire durante la disattivazione. |
Specificato dall'utente. |
|
URL dello script del ciclo di vita della sessione notebook da eseguire durante l'eliminazione. |
Specificato dall'utente. |
|
Spazio di nomi dello storage degli oggetti per i log di output degli script del ciclo di vita del notebook. |
Specificato dall'utente. |
|
Bucket di storage degli oggetti per i log di output degli script del ciclo di vita del notebook. |
Specificato dall'utente. |
|
Disabilitare il download dei file dal client JupyterLab e dall'API di download JupyterLab. Impostare su True per disabilitare la funzionalità di download. |
Specificato dall'utente. |
SHM_SIZE |
Spazio di memoria condivisa, immettere la dimensione di memoria seguita dalle unità: g per GB, m per MB e b per byte. Ad esempio, immettere 128g per 128 GB di spazio di memoria condivisa. | Specificato dall'utente. |
Per accedere a queste variabili di ambiente nella sessione notebook, utilizzare la libreria os
di Python. Ad esempio:
import os
project_ocid = os.environ['PROJECT_OCID']
print(project_ocid)
I valori
NB_SESSION_COMPARTMENT_OCID
e PROJECT_COMPARTMENT_OCID
non vengono aggiornati in una sessione notebook in esecuzione se le risorse hanno spostato i compartimenti dopo la creazione della sessione notebook.Uso delle variabili di ambiente personalizzate
Utilizzare le proprie variabili di ambiente personalizzate nelle sessioni notebook.
Dopo aver definito le variabili di ambiente personalizzate, accedere a queste variabili di ambiente in una sessione notebook con la libreria os
di Python. Ad esempio, se si definisce una coppia di valori chiave con chiave MY_CUSTOM_VAR1
e valore VALUE-1
, quando si esegue il codice seguente, si ottiene VALUE-1
.
import os
my_custom_var1 = os.environ['MY_CUSTOM_VAR1']
print(my_custom_var1)
Il sistema non consente di sovrascrivere le variabili di ambiente fornite dal sistema con variabili personalizzate. Ad esempio, non è possibile assegnare un nome a una variabile personalizzata,
USER_OCID
. Uso dell'SDK Oracle Accelerated Data Science
Oracle Accelerated Data Science (ADS) SDK accelera le attività comuni di data science fornendo strumenti che automatizzano e semplificano le attività comuni di data science. Offre ai data scientist un'interfaccia Python amichevole per i servizi OCI, tra cui Data Science, inclusi job, Big Data, Data Flow, Object Storage, Streaming e Vault e a Oracle Database. ADS offre un'interfaccia per gestire il ciclo di vita dei modelli di machine learning, dall'acquisizione dei dati alla valutazione, all'interpretazione e alla distribuzione dei modelli.
Con ADS puoi:
- Leggi i data set da Object Storage, Oracle Database (ATP, ADW e on-premise), AWS S3 e altre fonti nei data frame Pandas.
- Ottimizzare i modelli utilizzando l'ottimizzazione degli iperparametri con il modulo
ADSTuner
. - Genera report di valutazione dettagliati dei candidati modello con il modulo
ADSEvaluator
. - Salva i modelli di Machine Learning nel catalogo dei modelli di Data Science.
- Distribuisci i modelli come richieste HTTP con la distribuzione dei modelli.
- Avvia i job ETL, di elaborazione dati e di formazione modello distribuiti in Spark utilizzando Data Flow.
-
connettersi al BDS dalla sessione notebook. Per il cluster creato deve essere abilitato Kerberos.
Utilizzare i cluster abilitati per Kerberos per connettersi ai Big Data da una sessione notebook.
- Utilizzare i tipi di entità geografiche per caratterizzare i dati, creare statistiche di riepilogo del significato e stampare. Utilizzare il sistema di avvertenza e convalida per verificare la qualità dei dati.
- Addestra i modelli di Machine Learning utilizzando i job di Data Science.
- Gestire il ciclo di vita degli ambienti conda utilizzando l'interfaccia CLI
ads conda
.