Modifier

Forum aux questions sur l’utilisation de l’IA avec Windows

Général

Qu’est-ce que WinML ?

WinML ou Windows Machine Apprentissage est une API de haut niveau permettant de déployer des modèles Machine Learning (ML) à accélération matérielle sur des appareils Windows qui permettent aux développeurs d’utiliser les fonctionnalités de l’appareil pour effectuer l’inférence de modèle. Le focus est mis sur le chargement, la liaison et l’évaluation du modèle. WinML utilise le format de modèle ONNX.

Qu’est-ce que DirectML ?

DirectML est une API de bas niveau pour le Machine Learning qui fournit une accélération GPU pour les tâches courantes de Machine Learning sur un large éventail de matériels et de pilotes pris en charge, y compris tous les GPU compatibles DirectX 12 provenant de fournisseurs tels que AMD, Intel, NVIDIA et Nvidia. DirectML est un composant de WinML.

Qu’est-ce qu’ONNX ?

Open Network Neural Exchange ou ONNX est un format standard ouvert pour représenter des modèles ML. Les frameworks de modèle ML populaires, tels que PyTorch, TensorFlow, SciKit-Learn, Keras, Chainer, MATLAB, etc., peuvent être exportés ou convertis au format ONNX standard. Une fois au format ONNX, le modèle peut s’exécuter sur diverses plateformes et appareils. ONNX est adapté à l’utilisation d’un modèle ML dans un format différent de celui sur lequel il a été formé.

Qu’est-ce que ORT ?

ONNX Runtime ou ORT est un outil d’exécution unifié pour l’exécution de modèles dans différents frameworks (PyTorch, TensorFlow, etc.) qui prend en charge les accélérateurs matériels (processeurs d’appareil, GPU ou npus).

Comment ONNX diffère-t-il des autres frameworks ML, comme PyTorch ou TensorFlow ?

PyTorch et TensorFlow sont utilisés pour le développement, l’entraînement et l’exécution de modèles d’apprentissage profond utilisés dans les applications IA. PyTorch est souvent utilisé pour la recherche, TensorFlow est souvent utilisé pour le déploiement du secteur, et ONNX est un format d’échange de modèle standardisé qui permet de combler l’écart, ce qui vous permet de basculer entre les frameworks selon les besoins et compatibles entre les plateformes.

Qu’est-ce qu’un NPU ? Comment est-ce différent d’un processeur ou d’un GPU ?

Une unité de traitement neuronal ou NPU est une puce IA dédiée conçue spécifiquement pour effectuer des tâches IA. Le focus d’un NPU diffère de celui d’un processeur ou d’un GPU. Une unité centrale de traitement ou un processeur est le processeur principal d’un ordinateur, responsable de l’exécution d’instructions et de calculs à usage général. Une unité de traitement graphique ou GPU est un processeur spécialisé conçu pour le rendu des graphiques et optimisé pour le traitement parallèle. Il est capable de rendre des images complexes pour l’édition vidéo et les tâches de jeu.

Les processeurs npus sont conçus pour accélérer les algorithmes d’apprentissage profond et peuvent supprimer certaines tâches de l’UC ou du GPU d’un ordinateur, afin que l’appareil puisse fonctionner plus efficacement. Les processeurs npus sont conçus pour accélérer les tâches de réseau neuronal. Ils excellent dans le traitement de grandes quantités de données en parallèle, ce qui les rend idéales pour les tâches d’IA courantes telles que la reconnaissance d’images ou le traitement en langage naturel. Par exemple, lors d’une tâche de reconnaissance d’image, le NPU peut être responsable de la détection d’objets ou de l’accélération de l’image, tandis que le GPU prend en charge le rendu d’images.

Comment puis-je savoir quel type d’UC, de GPU ou de NPU mon appareil possède ?

Pour case activée le type de processeur, de GPU ou de NPU sur votre appareil Windows et la façon dont il fonctionne, ouvrez le Gestionnaire des tâches (Ctrl + Alt + Supprimer), puis sélectionnez l’onglet Performances et vous pourrez voir l’UC, la mémoire, le Wi-Fi, le GPU et/ou le NPU répertoriés, ainsi que des informations sur sa vitesse, son taux d’utilisation et d’autres données.

Concepts d’IA utiles

Qu’est-ce qu’un modèle de langage volumineux (LLM) ?

Un LLM est un type de modèle Machine Apprentissage (ML) connu pour la capacité d’atteindre la génération et la compréhension de langage à usage général. Les machines virtuelles sont des réseaux neuronaux artificiels qui acquièrent des capacités en apprenant des relations statistiques à partir de grandes quantités de documents texte pendant un processus de formation auto-supervisé et semi-supervisé par le calcul. Les modules LLM sont souvent utilisés pour la génération de texte, une forme d’IA générative qui, compte tenu d’un texte d’entrée, génère des mots (ou des « jetons ») susceptibles de créer des phrases cohérentes et contextuellement pertinentes en retour. Il existe également des modèles SLA (Small Language Models) qui ont moins de paramètres et une capacité plus limitée, mais peuvent être plus efficaces (nécessitant moins de ressources de calcul), rentables et idéales pour des domaines spécifiques.

Qu’est-ce que l’apprentissage du modèle ML ?

Dans Machine Apprentissage, l’entraînement de modèle implique l’alimentation d’un jeu de données dans un modèle (un LLM ou SLM), ce qui lui permet d’apprendre à partir des données afin que le modèle puisse prendre des prédictions ou des décisions en fonction de ces données, en reconnaissant les modèles. Il peut également impliquer l’ajustement itératif des paramètres de modèle pour optimiser ses performances.

Qu’est-ce que l’inférence ?

Le processus d’utilisation d’un modèle Machine Learning entraîné pour effectuer des prédictions ou des classifications sur de nouvelles données invisibles est appelé « Inférence ». Une fois qu’un modèle de langage a été formé sur un jeu de données, en apprenant ses modèles et relations sous-jacents, il est prêt à appliquer ces connaissances à des scénarios réels. L’inférence est le moment de vérité d’un modèle IA, un test de la façon dont il peut appliquer des informations apprises pendant l’entraînement pour effectuer une prédiction ou résoudre une tâche. Le processus d’utilisation d’un modèle existant pour l’inférence est différent de la phase d’entraînement, ce qui nécessite l’utilisation des données d’entraînement et de validation pour développer le modèle et affiner ses paramètres.

Qu’est-ce que le réglage précis du modèle ML ?

Le réglage précis est une étape cruciale du Machine Learning où un modèle préentraîné est adapté pour effectuer une tâche spécifique. Au lieu d’entraîner un modèle à partir de zéro, le réglage précis commence par un modèle existant (généralement formé sur un jeu de données volumineux) et ajuste ses paramètres à l’aide d’un jeu de données plus petit et spécifique à une tâche. En améliorant le réglage, le modèle apprend les fonctionnalités spécifiques aux tâches tout en conservant les connaissances générales acquises lors de la pré-formation, ce qui améliore les performances pour des applications spécifiques.

Qu’est-ce que l’ingénierie d’invite ?

L’ingénierie prompte est une approche stratégique utilisée avec l’IA générative pour façonner le comportement et les réponses d’un modèle de langage. Il implique l’élaboration réfléchie d’invites d’entrée ou de requêtes pour obtenir le résultat souhaité d’un modèle de langage (comme GPT-3 ou GPT-4). En concevant une invite efficace, vous pouvez guider un modèle ML pour produire le type de réponse souhaité. Les techniques incluent l’ajustement du libellé, la spécification du contexte ou l’utilisation de codes de contrôle pour influencer la sortie du modèle.

Qu’est-ce que l’accélération matérielle (en ce qui concerne l’entraînement du modèle ML) ?

L’accélération matérielle fait référence à l’utilisation de matériel informatique spécialisé conçu pour accélérer les applications IA au-delà de ce qui est réalisable avec des PROCESSEURs à usage général. L’accélération matérielle améliore la vitesse, l’efficacité énergétique et les performances globales des tâches de Machine Learning, telles que les modèles d’apprentissage, les prédictions ou le déchargement de calcul sur des composants matériels dédiés qui excellent au traitement parallèle pour les charges de travail d’apprentissage profond. Les GPU et les processeurs réseau sont des exemples d’accélérateurs matériels.