Utilisation de sessions de carnet pour créer et entraîner des modèles
Après avoir créé une session de carnet, vous pouvez écrire et exécuter du code Python à l'aide des bibliothèques d'apprentissage automatique de l'interface JupyterLab pour créer et entraîner des modèles.
Authentification auprès des API OCI à partir d'une session de carnet
Lorsque vous travaillez dans une session de carnet, vous travaillez en tant qu'utilisateur Linux datascience
. Cet utilisateur n'a pas d'identité IAM (OCI Identity and Access Management), il n'a donc pas accès à l'API OCI. Les ressources OCI incluent les projets et les modèles du service de science des données et les ressources d'autres services pour OCI : Stockage d'objets, Fonctions, Chambre forte, Flux de données, etc. Pour accéder à ces ressources à partir de l'environnement de carnet, vous devez utiliser l'une des deux approches d'authentification fournies :
(Recommandé) Authentification à l'aide du principal de ressources d'une session de carnet
Un principal de ressource est une fonction du service IAM qui permet aux ressources d'être des acteurs principaux autorisés qui peuvent effectuer des actions sur les ressources de service. Chaque ressource possède sa propre identité et s'authentifie à l'aide des certificats qui y sont ajoutés. Ces certificats sont créés, affectés aux ressources et mis à jour automatiquement, ce qui vous évite d'avoir à stocker les données d'identification dans une session de carnet.
Le service de science des données vous permet de vous authentifier à l'aide du principal de ressources d'une session de carnet pour accéder à d'autres ressources OCI. Les principaux de ressources offrent un moyen plus sûr de s'authentifier auprès des ressources par rapport à la configuration OCI et à l'approche par clé d'API.
Un administrateur de location doit écrire des politiques pour accorder des autorisations à un principal de ressource pour accéder à d'autres ressources OCI. Voir Utilisation du gestionnaire de ressources Oracle pour configurer votre location pour le service de science des données.
Vous pouvez effectuer l'authentification à l'aide de principaux de ressources dans une session de carnet à l'aide des interfaces suivantes :
- Trousse SDK Oracle Accelerated Data Science :
-
Exécutez ce qui suit dans une cellule de carnet :
import ads ads.set_auth(auth='resource_principal')
Pour plus de détails, consultez la documentation sur Accelerated Data Science.
- Trousse SDK Python pour OCI :
-
Exécutez ce qui suit dans une cellule de carnet :
import oci from oci.data_science import DataScienceClient rps = oci.auth.signers.get_resource_principals_signer() dsc = DataScienceClient(config={}, signer=rps)
- Interface de ligne de commande OCI :
-
Utilisez l'indicateur
`--auth=resource_principal`
avec les commandes.
Le jeton du principal de ressources est mis en mémoire cache pendant 15 minutes. Si vous modifiez la politique ou le groupe dynamique, vous devez attendre 15 minutes pour voir l'effet des modifications.
Si vous n'utilisez pas explicitement les principaux de ressources lors de l'appel d'une trousse SDK ou d'une interface de ligne de commande, le fichier de configuration et l'approche par clé d'API sont utilisés.
(Par défaut) Authentification à l'aide du fichier de configuration OCI et des clés d'API
Vous pouvez utiliser votre propre utilisateur IAM en configurant un fichier de configuration OCI et des clés d'API pour accéder aux ressources OCI. Il s'agit de l'approche d'authentification par défaut.
Pour effectuer l'authentification à l'aide du fichier de configuration et de la clé d'API, vous devez charger un fichier de configuration OCI dans le répertoire /home/datascience/.oci/
de la session de carnet. Pour le profil approprié défini dans le fichier de configuration OCI, vous devez également charger ou créer les fichiers .pem
requis.
Configurez le fichier de configuration OCI et la clé d'API à l'aide des clés et OCID requis.
Utilisation de fichiers de code existants
Vous pouvez créer de nouveaux fichiers ou utiliser vos fichiers existants.
Les fichiers peuvent être chargés à partir de votre machine locale en sélectionnant Charger dans l'interface JupyterLab, ou par glisser-déposer.
Vous pouvez exécuter les commandes sftp
, scp
, curl
, wget
ou rsync
pour extraire des fichiers dans votre environnement de session de carnet en respectant les limites de réseau imposées par le réseau en nuage virtuel et le sous-réseau sélectionnés.
Installation de bibliothèques Python supplémentaires
Vous pouvez installer une bibliothèque qui n'est pas préinstallée dans l'image de session de carnet. Vous pouvez installer et modifier un environnement Conda ou créer un environnement Conda prédéfini de A à Z.
Pour plus d'informations, voir la section Installation des bibliothèques supplémentaires dans la documentation ADS.
Utilisation des variables d'environnement fournies dans les sessions de carnet
Lorsque vous démarrez une session de carnet, le service crée des variables d'environnement utiles que vous pouvez utiliser dans votre code :
Nom de la clé de variable |
Description |
Spécifié par |
---|---|---|
|
OCID de la location à laquelle appartient le carnet. |
Alimenté automatiquement par le service de science des données. |
|
OCID du projet associé à la session de carnet courante. |
Alimenté automatiquement par le service de science des données. |
|
OCID du compartiment du projet auquel le carnet est associé. |
Alimenté automatiquement par le service de science des données. |
|
OCID de l'utilisateur. |
Alimenté automatiquement par le service de science des données. |
|
OCID de la session de carnet courante. |
Alimenté automatiquement par le service de science des données. |
|
OCID du compartiment de la session de carnet courante. |
Alimenté automatiquement par le service de science des données. |
|
Chemin d'accès au jeton du principal de ressource OCI. |
Alimenté automatiquement par le service de science des données. |
|
ID du jeton du principal de ressource OCI. |
Alimenté automatiquement par le service de science des données. |
|
URL du script de cycle de vie de la session de carnet à exécuter lors de la création. |
Spécifiée par l'utilisateur. |
|
URL du script de cycle de vie de la session de carnet à exécuter lors de l'activation. |
Spécifiée par l'utilisateur. |
|
URL du script de cycle de vie de la session de carnet à exécuter lors de la désactivation. |
Spécifiée par l'utilisateur. |
|
URL du script de cycle de vie de la session de carnet à exécuter lors de la suppression. |
Spécifiée par l'utilisateur. |
|
Espace de noms du stockage d'objets pour les journaux de sortie du script de cycle de vie du carnet. |
Spécifiée par l'utilisateur. |
|
Seau de stockage d'objets pour les journaux de sortie du script de cycle de vie des carnets. |
Spécifiée par l'utilisateur. |
|
Désactivez le téléchargement de fichier à partir du client JupyterLab et de l'API de téléchargement JupyterLab, réglez à Vrai pour désactiver la fonctionnalité de téléchargement. |
Spécifiée par l'utilisateur. |
SHM_SIZE |
Espace mémoire partagé, entrez la taille de la mémoire suivie des unités : g pour Go, m pour Mo et b pour octets. Par exemple, entrez 128g pour 128 Go d'espace mémoire partagé. | Spécifiée par l'utilisateur. |
Pour accéder à ces variables d'environnement dans votre session de carnet, utilisez la bibliothèque Python os
. Par exemple :
import os
project_ocid = os.environ['PROJECT_OCID']
print(project_ocid)
Les valeurs
NB_SESSION_COMPARTMENT_OCID
et PROJECT_COMPARTMENT_OCID
ne sont pas mises à jour dans une session de carnet en cours d'exécution si les ressources ont été déplacées des compartiments après la création de la session de carnet.Utilisation de variables d'environnement personnalisées
Utilisez vos propres variables d'environnement personnalisées dans les sessions de carnet.
Après avoir défini vos variables d'environnement personnalisées, accédez-les dans une session de carnet avec la bibliothèque os
Python. Par exemple, si vous définissez une paire clé-valeur avec la clé MY_CUSTOM_VAR1
et la valeur VALUE-1
, lorsque vous exécutez le code suivant, vous obtenez VALUE-1
.
import os
my_custom_var1 = os.environ['MY_CUSTOM_VAR1']
print(my_custom_var1)
Le système ne vous permet pas de remplacer les variables d'environnement fournies par le système par des variables personnalisées. Par exemple, vous ne pouvez pas nommer une variable personnalisée,
USER_OCID
. Utilisation de la trousse SDK Oracle Accelerated Data Science
La trousse SDK Oracle Accelerated Data Science (ADS) accélère les activités courantes de science des données en fournissant des outils qui automatisent et simplifient les tâches courantes de science des données. Il fournit aux experts en science des données une interface Python conviviale pour les services OCI, notamment le service de science des données, notamment les tâches, le service de mégadonnées, le service de flux de données, le service de stockage d'objets, le service de diffusion en continu et le service de chambre forte, ainsi que pour Oracle Database. ADS vous fournit une interface pour gérer le cycle de vie des modèles d'apprentissage automatique, de l'acquisition de données à l'évaluation, à l'interprétation et au déploiement de modèles.
Avec ADS, vous pouvez :
- Lisez les jeux de données du service de stockage d'objets, d'Oracle Database (ATP, ADW et sur place), d'AWS S3 et d'autres sources dans les cadres de données Pandas.
- Réglez les modèles à l'aide de l'optimisation des hyperparamètres avec le module
ADSTuner
. - Générez des rapports d'évaluation détaillés des candidats modèles à l'aide du module
ADSEvaluator
. - Enregistrez les modèles d'apprentissage automatique dans le catalogue de modèles du service de science des données.
- Déployez des modèles en tant que demandes HTTP avec un déploiement de modèle.
- Démarrez des tâches d'ETC réparties, de traitement de données et d'entraînement de modèle dans Spark à l'aide du service de flux de données.
-
Connectez-vous au service BDS à partir de la session de carnet. Kerberos doit être activé pour la grappe créée.
Utilisez des grappes activées pour Kerberos pour vous connecter au service de mégadonnées à partir d'une session de carnet.
- Utilisez les types de fonction pour caractériser les données, créer des statistiques sommaires significatives et tracer. Utilisez le système d'avertissement et de validation pour tester la qualité des données.
- Entraîner les modèles d'apprentissage automatique à l'aide des travaux du service de science des données.
- Gérez le cycle de vie des environnements Conda à l'aide de l'interface de ligne de commande
ads conda
.