But
Le complément Torch Deep Learning pour JMP® Pro fournit une interface sans code à la célèbre bibliothèque Torch pour la modélisation prédictive avec des réseaux neuronaux profonds. Le complément vous permet de former et de déployer des modèles prédictifs qui utilisent des fonctionnalités d'image, de texte ou tabulaires comme entrées pour prédire des cibles binaires, continues ou nominales.
Principales caractéristiques
- Accès à une grande variété de modèles pré-entraînés pour les données d'image et de texte qui peuvent être affinés ou entraînés à partir de zéro
- Effectuer une classification ou une régression d'images ou de textes
- Possibilité de personnaliser des réseaux profonds pour les données tabulaires, ainsi que des options pour concevoir vos propres réseaux neuronaux convolutifs personnalisés pour les séries chronologiques et les données d'image
- Un grand nombre d'options avancées pour faciliter la création, l'évaluation et la comparaison de modèles
- Validation croisée k-fold répétée avec prédictions hors pli, ainsi qu'une routine distincte pour créer des colonnes de validation k-fold optimisées
- Possibilité d'adapter plusieurs réponses Y avec différents types de modélisation dans un seul modèle
- Résultats graphiques et tabulaires détaillés et interactifs
- Interface de comparaison de modèles
- Profilage de réseaux neuronaux tabulaires, facilitant l'interprétabilité
- Calcul rapide sur un GPU NVIDIA, si disponible, sous Windows
Installation
Vous devez disposer d'une version autorisée de JMP Pro 18 ou version ultérieure. Téléchargez TorchDeepLearning.jmpaddin à partir du lien dans cette fenêtre en haut à droite. Lancez JMP Pro, ouvrez TorchDeepLearning.jmpaddin et cliquez sur Oui pour installer. Le complément installé se trouve ensuite dans le menu supérieur des compléments ( Compléments > Torch Deep Learning ).
Le complément s'appuie sur une vaste collection de bibliothèques dynamiques précompilées et de modèles Torch pré-entraînés qui ne sont pas inclus dans le complément après l'installation initiale. Lors du premier lancement de la plate-forme de compléments principale (en sélectionnant Compléments > Torch Deep Learning > Torch Deep Learning ), elle téléchargera et décompressera une série supplémentaire de fichiers volumineux (environ 4 Go au total). Les téléchargements incluent des bibliothèques compilées par CUDA si vous êtes sous Windows et le téléchargement et l'extraction totaux de ces fichiers peuvent prendre plusieurs minutes ou plus en fonction de la vitesse de votre connexion Web. S'il vous plaît soyez patient et laissez-les télécharger à 100 % et décompresser complètement. Tous les fichiers téléchargés et extraits sont placés sous le répertoire personnel du complément (cliquez sur Affichage > Compléments, sélectionnez TorchDeepLearning, puis cliquez sur le lien Dossier personnel ).
Configuration requise
Ce complément fonctionne uniquement avec JMP® Pro version 18. Pour les ensembles de données plus petits, la configuration minimale requise pour JMP® Pro devrait être suffisante ; cependant, pour la modélisation d'ensembles de données de taille moyenne à grande, y compris ceux contenant un grand nombre d'images ou de textes non structurés, il est recommandé de disposer d'au moins 32 Go de RAM CPU et d'un disque dur SSD rapide avec un stockage généreux ( par exemple 1 To) afin de gérer la quantité de données et de paramètres généralement générés pour la modélisation de réseaux neuronaux profonds.
Si vous disposez d'une machine Windows avec un GPU NVIDA, plus de détails sur la configuration du traitement GPU sont fournis dans la documentation du complément Torch ( Compléments > Torch Deep Learning > Aide ). Sous MacOS, les architectures Intel x86_x64 et Apple Silicon arm64 (M1, M2 et M3) sont prises en charge et doivent être détectées automatiquement.
Comment l'utiliser
Après avoir installé le complément dans JMP Pro :
- Ouvrez une table JMP contenant une variable cible Y à prédire ainsi que des fonctionnalités d'image, de texte ou tabulaires à utiliser comme entrées.
- Créez une ou plusieurs colonnes de validation en cliquant sur Compléments > Torch Deep Learning > Créer des colonnes pliées en K . en spécifiant Y comme variable de réponse et de stratification (recommandé).
- Cliquez sur Compléments > Torch Deep Learning > Torch Deep Learning pour lancer la plateforme. Attribuez des variables aux rôles comme dans l'exemple suivant :
Le sous-menu Compléments > Torch Deep Learning > Exemples de données contient plusieurs exemples d'ensembles de données et une table JMP nommée Torch_Storybook , qui contient 40 exemples de différents types de scénarios dans lesquels le complément peut être utile. Il comprend de riches métadonnées sur chaque exemple et des liens pour télécharger des tables de données JMP avec des scripts intégrés, des exemples de journaux JMP de sortie et des références.
Le sous-menu Compléments > Torch Deep Learning > Télécharger supplémentaire permet de télécharger plusieurs modèles d'images et de texte supplémentaires qui étendent encore les capacités du complément.
Cliquez sur Aide dans le menu pour ouvrir une documentation détaillée sur le complément, comprenant des exemples étape par étape et des conseils pour une utilisation plus efficace.
Exemples

Contexte : En tant que chimiste, vous devez prédire la composition d'échantillons inconnus en les comparant à la spectroscopie RMN d'une expérience de mélange dans laquelle le rapport de trois composants est modifié.
Défi : Les spectres RMN de sortie pour les expériences de mélange sont larges, avec un petit nombre d'essais expérimentaux, mais des milliers de colonnes présentant des caractéristiques uniques. La modélisation prédictive standard n'est pas précise et est surajustée, et le processus de codage prend beaucoup de temps.
Processus : prenez des spectres individuels et transformez-les en images avec Graph Builder, en les utilisant pour entraîner un modèle de classification d'images (réseau neuronal convolutif) afin de comprendre à quoi ressemblent les spectres à différents rapports des 3 composants.
Résultat : Peut appliquer des échantillons inconnus et identifier avec précision la composition/rapport des 3 composants.


Contexte : Des défauts de plaquette lors de la fabrication de semi-conducteurs peuvent se produire sur la plaquette dans différentes zones. Des images des tranches ou des cartes de tranches peuvent capturer la zone des défauts sur différents lots. Identifier le(s) type(s) de défaut et la cause profonde est essentiel pour proposer des solutions adaptées.
Défi : Vous disposez de plus de 30 000 images cartographiques de plaquettes, certaines présentant de nombreux types de défauts qui doivent tous être identifiés avec précision.
Processus : utilisez des images de carte de tranche présentant des défauts de tranche connus pour former des réseaux neuronaux convolutifs profonds.
Résultat : Créer et déployer un modèle d'apprentissage profond pour prédire avec précision les classes de défauts les plus probables et la probabilité de défauts sur les nouvelles images de tranches.

Contexte : Les avis sur les produits en ligne fournissent une grande quantité de données textuelles qui peuvent être analysées pour comprendre le sentiment des clients à l'égard du produit afin de prendre des décisions clés concernant l'amélioration du produit, le support client et les stratégies marketing.
Défi : Les critiques de textes ne sont pas structurées, ont un volume élevé et sont difficiles à déterminer le sentiment et à identifier les thèmes, ce qui nécessite une analyse sophistiquée.
Processus : prédisez le sentiment d'achat à l'aide de réseaux neuronaux en langage profond en fonction des scores d'évaluation des produits pour identifier les résultats clés tels que la probabilité de réachat.
Résultat : Identifier le sentiment clé à l'égard du produit (c'est-à-dire la probabilité d'acheter à nouveau, les problèmes liés au produit) comme feedback critique pour les décisions relatives au produit.
Tutoriels vidéos
Contexte complet et aperçu avec des exemples
Données tabulaires et inférence causale
Classement des images
Si vous avez un aspect particulier du complément ou un sujet sur lequel vous aimeriez voir un didacticiel vidéo, veuillez le publier dans les commentaires.
Retour
Nous apprécions vos commentaires et vous encourageons à publier des commentaires ici sur cette page. Notez que même si les compléments, en général, ne sont pas officiellement pris en charge par notre équipe d'assistance technique JMP, ce complément a été écrit et est activement développé par JMP Life Sciences R&D.
Vous pouvez également envoyer vos commentaires, problèmes, questions et suggestions directement à russ.wolfinger@jmp.com . Si vous signalez un bug ou un crash potentiel, veuillez envoyer autant d'informations que possible pour le reproduire et le diagnostiquer, y compris la configuration des données et du modèle, des captures d'écran, des fenêtres d'erreur, des messages de journal, ainsi que le système d'exploitation et la version de JMP Pro que vous utilisez.
Remerciements et avis de droits d'auteur
Nous remercions gracieusement l'équipe PyTorch d'avoir développé de si grandes fonctionnalités avec une interface C++ bien conçue. Consultez le document d'aide pour une liste complète des personnes et des avis de droits d'auteur, ainsi que ces avis en ligne de la Fondation PyTorch .
Nous apprécions et remercions également Mark Lalonde et Francis Charette-MIgneault pour leurs excellentes contributions à LibTorch :
https://medium.com/crim/contributing-to-libtorch-recent-architectures-and-vanilla-training-pipeline-3789c7bf6959
https://github.com/crim-ca/crim-libtorch-extensions
Est-ce que je lis bien ? Dans la documentation sur le chargement de modèles dans pytorch, cela est indiqué.
En Python, vous devez recréer exactement les mêmes composants d'architecture à l'aide de PyTorch , puis charger ces fichiers tour à tour.
Quoi qu'il en soit, nous avons toujours besoin de quelqu'un qui connaît pytorch et est capable de traduire ce qu'il a fait dans JMP en python. Correct? Comme s'ils avaient besoin de savoir comment créer les ensembles de données, le nn et toute validation effectuée par l'utilisateur JMP ?
@vince_faller Merci pour votre commentaire. Cette partie du document fait référence au déploiement en Python, auquel cas ces choses doivent effectivement être faites d'une manière ou d'une autre. Le déploiement en JSL est plus facile. Ce qui suit est ajouté au document :
Un exemple de code de déploiement Python est disponible dans les fichiers de notebook Jupyter iPython dans le dossier de départ du complément. Cliquez sur View > Add-Ins , sélectionnez TorchDeepLearning , cliquez sur le lien Home Folder , puis accédez au sous-dossier notebooks pour afficher ce code.
Cet exemple de code de déploiement Python est encore approximatif à plusieurs endroits et nous travaillons à l'affiner et à le rationaliser. Nous considérerons votre message comme un vote pour une génération de code Python plus automatisée, comme cela est disponible avec les modèles XGBoost. Le complément Torch et l'intégration Python native de JMP sont tous deux nouveaux pour la version 18 et nous n'avons pas encore implémenté de connexions entre les deux (le complément Torch est écrit en C++ sans Python).