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.

Nota

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.
Importante

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.

Caricamento di file

È possibile caricare i file dal computer locale selezionando Carica nell'interfaccia JupyterLab o trascinandoli.

Uso di comandi terminal aggiuntivi

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

TENANCY_OCID

OCID della tenancy a cui appartiene il notebook.

Dati popolati automaticamente da Data Science.

PROJECT_OCID

OCID del progetto associato alla sessione notebook corrente.

Dati popolati automaticamente da Data Science.

PROJECT_COMPARTMENT_OCID

OCID del compartimento del progetto a cui è associato il notebook.

Dati popolati automaticamente da Data Science.

USER_OCID

OCID utente.

Dati popolati automaticamente da Data Science.

NB_SESSION_OCID

OCID della sessione notebook corrente.

Dati popolati automaticamente da Data Science.

NB_SESSION_COMPARTMENT_OCID

OCID compartimento della sessione notebook corrente.

Dati popolati automaticamente da Data Science.

OCI_RESOURCE_PRINCIPAL_RPT_PATH

Percorso del token del principal risorsa OCI.

Dati popolati automaticamente da Data Science.

OCI_RESOURCE_PRINCIPAL_RPT_ID

ID del token del principal risorsa OCI.

Dati popolati automaticamente da Data Science.

NB_ONCREATE_SCRIPT_URL

URL dello script del ciclo di vita della sessione notebook da eseguire durante la creazione.

Specificato dall'utente.

NB_ONACTIVATE_SCRIPT_URL

URL dello script del ciclo di vita della sessione notebook da eseguire durante l'attivazione.

Specificato dall'utente.

NB_ONDEACTIVATE_SCRIPT_URL

URL dello script del ciclo di vita della sessione notebook da eseguire durante la disattivazione.

Specificato dall'utente.

NB_ONDELETE_SCRIPT_URL

URL dello script del ciclo di vita della sessione notebook da eseguire durante l'eliminazione.

Specificato dall'utente.

NB_SCRIPT_OUTPUT_LOG_NAMESPACE

Spazio di nomi dello storage degli oggetti per i log di output degli script del ciclo di vita del notebook.

Specificato dall'utente.

NB_SCRIPT_OUTPUT_LOG_BUCKET

Bucket di storage degli oggetti per i log di output degli script del ciclo di vita del notebook.

Specificato dall'utente.

SECURE_DATA_SESSION

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)
Nota

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)
Nota

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.