L'industrie de la fabrication de semi-conducteurs est à l'aube d'une ère de transformation, portée par des techniques analytiques avancées. Cette présentation explore l'application de la modélisation prédictive et de l'analyse diagnostique au sein du logiciel JMP afin d'améliorer significativement les résultats de fabrication, notamment lors des phases cruciales de tri et de test de classification. En exploitant des données paramétriques exhaustives collectées à différentes étapes du processus de production des semi-conducteurs, nous nous attachons à affiner la prédiction des résultats de conformité/non-conformité au niveau unitaire et à identifier les causes sous-jacentes des défauts potentiels.
Notre étude met en lumière l'utilisation stratégique des capacités de modélisation prédictive de JMP pour prévoir avec précision l'état final des tests système des produits semi-conducteurs. Cette approche permet non seulement la détection précoce des problèmes, mais aussi la mise en œuvre rapide de mesures correctives, garantissant ainsi des taux de rendement plus élevés et une qualité de produit supérieure. Parallèlement, l'analyse diagnostique intégrée à JMP offre une exploration approfondie des données, permettant aux fabricants d'identifier et de corriger les causes profondes des défaillances au sein du réseau complexe des processus de production.
Cette présentation met en lumière des applications concrètes des fonctionnalités JMP, démontrant leur rôle essentiel dans l'optimisation des processus de fabrication des semi-conducteurs. Découvrez comment la modélisation prédictive et l'analyse diagnostique peuvent être utilisées efficacement pour optimiser la production, réduire les coûts et améliorer la fiabilité des produits. Rejoignez-nous pour explorer les stratégies analytiques de pointe qui promettent de redéfinir l'avenir de la fabrication des semi-conducteurs.
Bonjour à tous. Je m'appelle John Xu et mon collègue est Suraj Sindia. Nous travaillons tous deux chez Intel Corporation. Comme vous le savez, Intel est une entreprise de fabrication de semi-conducteurs. Nous produisons des puces informatiques et d'autres types de circuits intégrés. Aujourd'hui, nous souhaitons vous présenter l'une de nos recherches : « Révolutionner les tests de fabrication de semi-conducteurs avec JMP ».
Nous appliquons certaines méthodologies d'IA au sein de JMP pour faciliter la modélisation prédictive du pilotage des tests. Notre prédiction se divise en quatre sections. La première présente brièvement l'industrie de la fabrication de semi-conducteurs, puis décrit la méthode de modélisation prédictive utilisée dans JMP, basée sur un réseau neuronal et le boosting.
Nous vous présentons ensuite une étude de cas d'utilisation de la démonstration JMP, en adaptant les tests aux tests de fabrication dans JMP. Nous passons en revue l'application JMP et utilisons le réseau neuronal et l'ACP de JMP. Enfin, nous proposons un résumé et des conclusions.
Aperçu des semi-conducteurs. Ce secteur, crucial et en constante évolution, est au cœur des technologies modernes. Les semi-conducteurs, que l'on appelle aussi circuits intégrés, sont des composants essentiels présents dans une multitude d'appareils électroniques : smartphones, ordinateurs, automobiles, réfrigérateurs, etc.
Ce secteur se caractérise par son haut niveau d'innovation et ses investissements importants ; une seule usine de fabrication peut coûter jusqu'à 10 milliards de dollars pour sa construction. Quant à la demande du marché du silicium, elle concerne au moins certains segments de marché liés aux semi-conducteurs, comme la mémoire, notamment la mémoire rapide, ou les microprocesseurs.
Plus on s'y connaît, plus on sait que le processeur (CPU) d'un ordinateur est un composant courant. Les circuits intégrés standard sont utilisés dans de nombreux types d'appareils, comme les automobiles, et les circuits intégrés spécifiques à une application (ASIC), notamment les bandes analogiques utilisées dans les feux de circulation.
Je vais ensuite vous donner un aperçu général du modèle de fabrication des semi-conducteurs. On peut distinguer trois types d'entreprises : les fabricants intégrés (IDM), les entreprises sans usine de fabrication (Fabless) et les fonderies spécialisées (Pure-Play Foundries). Les entreprises Fabless conçoivent et réalisent les circuits intégrés pour les puces, mais ne les fabriquent pas. Parmi ces entreprises, on trouve des sociétés comme AMD, Nvidia et Qualcomm.
De plus, certaines entreprises ne fabriquent pas leurs propres produits. Elles ne conçoivent pas leurs propres circuits intégrés, mais les fabriquent pour d'autres entreprises de fabrication sans usine. Parmi elles, on trouve TSMC ou d'autres fonderies. D'autres entreprises, comme Intel ou Samsung, réalisent l'ensemble du processus en interne.
En résumé, nous concevons nos propres puces, que nous fabriquons nous-mêmes dans nos propres usines. Nous procédons ensuite à l'assemblage et à la fabrication des puces finales, puis nous les expédions à nos clients comme HP ou Dell, qui se chargent de les intégrer aux ordinateurs destinés aux clients finaux. Ainsi, nous vous proposons un processus de fabrication de semi-conducteurs de pointe.
En réalité, le processus de fabrication des semi-conducteurs comprend plusieurs centaines d'étapes différentes. Il s'agit d'un processus très général, qui commence avec les plaquettes de silicium. Concrètement, des entreprises comme Seasonic produisent le silicium, le découpent en plaquettes, puis les expédient à Intel. De nombreuses étapes sont ensuite nécessaires pour fabriquer la puce à partir de ces plaquettes.
La première étape est l'oxydation, c'est-à-dire la croissance d'une couche de dioxyde de silicium sur la surface de la plaquette. Ensuite, on procède à la photolithographie, qui consiste à former le circuit sur la plaquette à l'aide d'un procédé chimique photosensible. Puis, on effectue une gravure chimique par soufflage pour éliminer les matériaux indésirables et obtenir les motifs souhaités. Vient ensuite le dopage, qui consiste à introduire des impuretés pour modifier les propriétés électroniques du silicium, avant le dépôt.
En fait, nous ajoutons des couches de matériau à la plaquette par différentes techniques. On peut donc superposer plusieurs couches successives. Ensuite, nous procédons au tri et aux tests des puces électroniques. Mais aujourd'hui, la recherche portera sur ce processus que nous appelons les tests.
La diapositive suivante vous donnera plus de détails sur notre processus de test.
Merci, John. Merci pour cet aperçu du processus de fabrication des semi-conducteurs. Comme John l'a démontré, ce processus comporte plusieurs étapes. Les tests constituent l'étape principale : ils permettent de vérifier la conformité technique de la puce. C'est à cette étape que toutes les étapes de fabrication précédentes sont testées afin de s'assurer qu'elles répondent aux exigences pour lesquelles le circuit intégré ou la puce a été conçu.
Les tests de semi-conducteurs comportent trois phases principales. La première est le test électrique des puces. À cette étape, les puces sont testées directement sur la plaquette, sans découpe préalable. Des sondes, comme celle illustrée sur cette image, sondent les nœuds internes de la puce afin de mesurer des tensions, des courants d'alimentation, des courants de fuite, etc.
Les unités qui réussissent le test de tri électrique sont ensuite découpées de la plaquette et emballées, et les unités emballées ressemblent à quelque chose de probablement familier à la plupart d'entre nous qui avons déjà vu une carte mère d'ordinateur : ces composants noirs, les circuits intégrés.
Ces unités sont désormais conditionnées et testées, tant au niveau de leur fonctionnalité que de leurs performances, à l'aide de millions de tests. Toute unité qui échoue à un seul de ces tests est éliminée. Si ses performances sont insuffisantes ou n'atteignent pas le seuil de performance d'une catégorie, elle est reclassée dans une catégorie inférieure et testée pour des performances inférieures. Si ces performances ne sont toujours pas satisfaisantes, des tests supplémentaires sont effectués pour une catégorie encore plus basse, et ainsi de suite. Si les performances ne sont toujours pas conformes à la catégorie la plus basse, l'unité est éliminée, et ainsi de suite.
La deuxième étape principale du processus de test de fabrication est appelée test de classe ou test d'emballage. Après le test d'emballage, on trouve une étape appelée pilotage des tests. Lors de cette étape, un outil hors ligne dirige les pièces vers l'une des trois voies (ou plus) afin de soumettre la puce au test final au niveau système.
Il s'agit du support de test, ou du support de test le plus coûteux, sur lequel les puces, désormais conditionnées, sont montées sur une carte mère et soumises à des tests de haut niveau, similaires à des tests d'application.
Il s'agit de tests tels que le démarrage de Windows ou de Linux, l'exécution de programmes d'application exigeants comme le navigateur Chrome, et même d'applications de type JMP, une fois le composant installé sur la carte mère. L'objectif est de reproduire au mieux les conditions d'utilisation réelles d'un ordinateur. Si le composant réussit ce test système final, il est expédié aux clients d'Intel ou aux clients des fabricants de semi-conducteurs.
Pourquoi effectue-t-on des tests VLSI ou des tests de circuits intégrés ? Ces tests sont essentiels pour garantir le bon fonctionnement des composants. Chaque puce fabriquée comporte inévitablement un risque de défaut. Chaque étape de fabrication peut introduire des défauts, et c'est pourquoi, après ces étapes, une phase de test est nécessaire pour éliminer les composants défectueux.
Dans de nombreux cas, les pièces défectueuses ne permettent pas à la puce de remplir la fonction pour laquelle elle a été conçue, et dans certains cas, elles ne répondent pas aux exigences de performance pour lesquelles elle a été conçue.
Le rôle crucial des tests réside non seulement dans l'assurance fonctionnelle, mais aussi dans l'assurance performance. Après la détection des défauts et l'assurance fonctionnelle, ils contribuent également à l'amélioration du rendement, c'est-à-dire à l'optimisation du flux de production. Ainsi, les défauts détectés lors des tests peuvent être exploités pour améliorer le processus de fabrication, par exemple en modifiant la photolithographie ou la gravure, afin de contrôler le flux de production et d'éviter l'apparition de défauts.
Ceci est extrêmement important pour maximiser le chiffre d'affaires et les économies de coûts, dans la mesure où chaque pour cent d'amélioration du rendement entraîne des économies substantielles pour le fabricant.
Quels sont les défis liés aux tests de semi-conducteurs ou aux tests VLSI ? VLSI signifie Very Large Scale Integrated Circuit (circuit intégré à très grande échelle), car l’intégration de transistors dans les microprocesseurs modernes dépasse jusqu’à 10 milliards de transistors individuels.
À droite, vous trouverez une petite illustration d'un microprocesseur moderne, où la taille des transistors peut atteindre quelques nanomètres. C'est comme si mille transistors étaient intégrés dans un seul cheveu.
Le coût et le temps considérables des tests résultent de la nécessité de tester chaque transistor individuellement. On imagine aisément le nombre de vecteurs de test requis pour tester chaque transistor d'une telle conception. Il en résulte d'importants volumes de données de test, dont l'analyse permet de diagnostiquer l'emplacement des transistors défectueux, de traiter ces données massives pour vérifier leur conformité et de caractériser leurs performances. On détermine ainsi si la puce est conforme à la catégorie la plus exigeante ou si elle doit être reclassée dans une catégorie inférieure avant d'être expédiée à nos clients.
Le rôle de la modélisation prédictive dans les tests VLSI se dessine désormais, compte tenu des éléments présentés précédemment… Vous disposez d'un potentiel considérable d'économies et de la possibilité d'extraire des informations exploitables d'un vaste ensemble de données. Ces techniques de modélisation prédictive permettent la détection précoce des défauts en identifiant les problèmes potentiels à partir d'un nombre très réduit de tests.
Elle permet de réaliser d'importantes économies de coûts et de temps de test en prédisant, grâce à un nombre réduit de tests, quelles puces sont susceptibles de réussir ou d'échouer, au lieu d'attendre la dernière étape. La modélisation prédictive peut également servir à supprimer complètement certaines étapes de test, comme nous le ferons dans cette étude de cas, où nous éliminons l'étape de pilotage des tests. Dans cette étape, un technicien est chargé de répartir les puces dans l'une des nombreuses voies où elles sont soumises à un test système final.
La modélisation prédictive peut être utilisée de manière ciblée et efficace pour éliminer certaines étapes de test présentant une forte corrélation. Les gains potentiels en termes d'apprentissage et d'amélioration de la qualité sont considérables grâce à la modélisation prédictive. Dans notre étude de cas, nous allons donc examiner comment éliminer l'étape de pilotage des tests à l'aide de JMP et d'un modèle de réseau neuronal entraîné avec JMP.
Pour rappel, dans nos trois étapes de test différentes, du tri au classement, du classement au SLT, il existe une étape de test intermédiaire au cours de laquelle une mesure hors ligne est effectuée pour orienter les pièces vers l'une des nombreuses voies de test finales au niveau du système.
Dans cette étude de cas, nous disposons de trois bancs d'essai dont la durée est désignée par TT1 à TT3. TT1 correspond au banc d'essai le plus long, réservé aux unités les plus performantes, et le plus court, à celles les moins performantes. L'objectif est d'utiliser la modélisation prédictive via JMP pour orienter chaque puce vers le banc d'essai le plus approprié, plutôt que de se fier aux mesures XC2 effectuées par un outil de mesure hors ligne.
Nous utilisons les mesures en ligne déjà effectuées lors des étapes de tri et de classification pour prédire la ligne de test à laquelle chaque matrice doit être soumise. Notre ensemble de données comprend 13 186 unités testées. Chacune de ces unités possède 16 signaux de capteurs mesurés in situ. Cinq de ces signaux sont catégoriels et onze sont des entrées numériques. Les sorties prennent l'une des trois valeurs catégorielles TT1 à TT3.
Comme vous pouvez le constater, la distribution est assez asymétrique, TT3 dominant parmi les unités et TT1 étant le moins représenté, environ 564 sur 10 488.
Les variables X1 à X5 sont des entrées catégorielles. Elles couvrent plusieurs plages catégorielles, de deux à 22 niveaux. Parmi les entrées numériques X6 à X16, la répartition est assez diversifiée. Comme vous pouvez le constater pour X6, la plage s'étend de 0,01 à 1,5. Dans le cas de X14, la plage est la plus étendue, allant de zéro à plus de 2 500. Nous disposons donc d'une gamme d'entrées assez diversifiée.
Nous allons étudier la construction d'un modèle de base basé sur un réseau de neurones dans JMP afin de prédire l'une de ces trois valeurs catégorielles à partir des 16 signaux d'entrée recueillis in situ. Pour débuter la construction de notre modèle dans JMP, nous utiliserons le modèle de réseau de neurones le plus simple possible, tout en conservant des informations utiles sur la précision de la classification.
Nous commencerons avec un réseau de neurones à une seule couche, composé de trois neurones. Nous utiliserons une validation croisée à 5 plis. Le taux d'apprentissage sera fixé à 0,1. Aucun boosting ne sera appliqué, ce qui signifie que le nombre de modèles supplémentaires sera nul. Le nombre de parcours sera fixé à un, impliquant l'absence de rétropropagation incrémentale après convergence.
Pour chaque neurone, nous définirons la fonction d'activation comme étant la tangente hyperbolique (tanh). Nous allons maintenant utiliser JMP pour une démonstration concrète du processus de modélisation. Voici mon tableau de données. Je vais maintenant le partager.
Voilà mon tableau de données. Vous voyez ici les entrées X1 à X16 et le plan temporel de test, soit l'une des trois valeurs TT1 à TT3. Ce sont les trois valeurs que vous voyez. Nous allons maintenant commencer la modélisation prédictive. Dans le menu déroulant « Analyser », vous trouverez l'option « Modélisation prédictive », et nous allons lancer l'entraînement du réseau de neurones.
Pour nos facteurs X (les entrées), nous utiliserons X1 à X16. Pour la réponse Y, nous utiliserons TT Lane. Cliquez sur OK. Le menu d'entraînement du réseau de neurones s'affiche. Nous utiliserons une validation croisée K-Fold. Comme indiqué, nous utiliserons cinq plis.
Pour la graine aléatoire, nous utiliserons un nombre symbolique déjà employé dans la diapositive précédente, afin d'assurer la cohérence des valeurs. La première couche comportera trois neurones ; il s'agit du modèle de base. La seconde couche ne comportera aucun neurone. Nous utiliserons la fonction d'activation hyperbolique tangente hyperbolique (tanh).
Il s'agit essentiellement d'une fonction sigmoïde. Nous n'utiliserons pas de boosting. Nous initialiserons le nombre de modèles à zéro et le taux d'apprentissage à 0,1. Nous cliquons maintenant sur « Lancer » pour démarrer l'entraînement. Le modèle est en cours de construction et d'entraînement, et, surprise, c'est un modèle simple ! Nous l'avons construit rapidement. On observe ici un R² généralisé plutôt satisfaisant, même avec seulement trois neurones pour cet ensemble de données de 13 000 unités.
Comme nous avons utilisé la validation croisée K-Fold, avec un nombre de plis égal à cinq, cela signifie que 80 % des données sont utilisées pour l'entraînement et 20 % pour la validation. On constate alors que le coefficient de détermination (R²) atteint respectivement 92,9 % et 93 % pour les ensembles de données d'entraînement et de validation. Nous observons donc quelques erreurs de classification. La matrice de confusion présente les voies TT réelles (valeurs de référence) en ordonnée et les voies prédites en abscisse.
Nous observons un taux d'erreur de classification d'environ 20 %, soit le taux le plus élevé de cet ensemble de données. Dans 20 % des cas, le modèle de réseau neuronal prédit TT1 comme TT2. Pour nos besoins, nous pouvons également représenter graphiquement ce taux. Un taux d'erreur de 15 % ou moins est idéal, mais un taux de 20 % ou moins est acceptable. Nous allons démontrer comment améliorer ce taux.
Nous allons maintenant représenter le diagramme du réseau de neurones. Comme vous pouvez le constater, nous avons les 16 entrées. Les trois neurones que nous avons désignés pour la première couche ont chacun la fonction d'activation hyperbolique Tanh et la fonction TT Lane comme sortie. Nous allons maintenant augmenter la complexité du modèle. Comme je l'ai dit, il s'agit du modèle de base. Complexifions-le afin d'améliorer le taux d'erreurs de classification.
Nous avions trois neurones dans la première étape, et aucun dans la seconde. Nous allons maintenant passer à deux neurones. Nous conservons l'absence de boosting et le même taux d'apprentissage. Ce dernier peut être modulé, c'est-à-dire modifié en fonction de la vitesse de convergence souhaitée, au détriment de la précision.
En augmentant le taux d'apprentissage, vous risquez de converger vers des minima locaux plutôt que vers des minima globaux. La convergence sera plus rapide, mais vous vous exposez à ce risque. Différentes méthodes de pénalité peuvent être utilisées. Nous opterons pour l'erreur quadratique moyenne minimale. Le nombre de parcours est fixé à un.
Au fur et à mesure de la construction de notre modèle, vous constaterez que notre coefficient de détermination (R²) s'est déjà amélioré par rapport au modèle de base (qui, pour rappel, était de 0,92 à 0,93). Notre modèle 3x2 présente également un R² amélioré. Notre taux d'erreur de classification a lui aussi diminué, passant de 0,2 à 0,18, soit environ 18 %. Le diagramme illustre ce phénomène : le modèle comporte deux étapes, la première avec trois neurones et la seconde avec deux.
Poursuivons en augmentant la complexité du modèle afin d'examiner son impact sur le taux d'erreurs de classification. Il convient toutefois de veiller à ne pas surapprendre les données, ce qui nuirait à la généralité du modèle. Pour un modèle comportant 13 000 unités, nous allons analyser le nombre de paramètres correspondants.
Comme vous le constaterez, la durée d'entraînement augmente avec le nombre de neurones de notre modèle. Voici le R² généralisé pour cette nouvelle complexité accrue. Comme vous pouvez le voir, la précision ne s'améliore pas toujours avec une simple augmentation des paramètres du modèle, en raison du risque de surapprentissage mentionné précédemment.
Comme vous pouvez le constater, le coefficient de détermination (R²) est de 0,937 et 0,936, légèrement supérieur à celui du réseau 3x2, mais la différence est minime. Vous remarquerez également que le taux d'erreur de classification a légèrement augmenté avec la complexité. Enfin, comme vous pouvez le voir sur le diagramme, nous avons cinq neurones dans la première étape et sept dans la seconde.
L'augmentation de la complexité du modèle n'entraîne pas systématiquement une amélioration du taux d'erreurs de classification. C'est là qu'interviennent des techniques d'optimisation intelligentes, telles que le boosting, et la combinaison des paramètres du modèle et du boosting pour accroître la précision. À présent, connaissant la précision et le taux d'erreurs de classification obtenus, comment réduire la complexité des données d'entrée ?
Nous utilisons actuellement 16 variables d'entrée. Comment réduire leur nombre tout en conservant la même précision ? Comme indiqué précédemment, l'augmentation de la complexité du modèle entraîne une légère baisse de la précision de la classification. Comment limiter le surapprentissage en réduisant le nombre de variables d'entrée ? C'est là que JMP s'avère utile : ses méthodes multivariées d'analyse en composantes principales nous permettent de construire un modèle avec moins de variables d'entrée.
Nous allons maintenant sélectionner les composantes principales à partir de l'ensemble de données d'entrée, et retenir le nombre de composantes principales nécessaires pour minimiser les erreurs. Comme vous le constaterez, nos entrées sont X1 à X16. Nous ne sélectionnons que les entrées numériques, car pour l'analyse en composantes principales, JMP ne peut traiter que les données numériques.
Comme vous pouvez le constater, nous avons les 11 composantes principales de l'ensemble de données. Cependant, chaque composante principale supplémentaire explique une part de variance d'entrée moindre. Nous pouvons tracer le graphique des valeurs propres pour visualiser le point d'inflexion de l'ACP, qui se situe, comme vous pouvez le voir, à environ deux composantes principales. En effet, la quasi-totalité de la variance est expliquée par seulement deux composantes principales.
Mais affichons également la fonction de répartition cumulative (CDF) incrémentale des valeurs propres. Comme vous pouvez le constater, environ 90 % de la variance des entrées est capturée par seulement six vecteurs propres, ou six composantes principales. Nous allons maintenant utiliser ces six composantes principales et les compléter avec les entrées catégorielles pour l'entraînement de notre réseau de neurones. Pour rappel, lors du lancement de l'outil d'analyse en composantes principales (ACP), JMP ne prenait en charge que les entrées numériques et non les entrées catégorielles.
Pour notre réseau de neurones, nous devrons le compléter avec les variables catégorielles et le construire à partir des composantes principales que nous avons sélectionnées. Revenons maintenant au tableau de données initial. J'ai conservé les composantes principales issues de cette analyse. Nous allons les sélectionner et reconstruire notre modèle de réseau de neurones.
J'ai généré les six composantes principales. Je les utilise comme entrées, puis je les complète avec X1 à X5. Je souhaite que TT Lane représente toujours ma réponse Y (ou sortie). J'utilise la même validation croisée K-fold et la même graine aléatoire. La première couche comporte trois neurones et la seconde, deux.
Nous allons commencer par zéro modèle incrémental, c'est-à-dire sans boosting. Nous l'examinerons ensuite avec le boosting. C'est parti ! Vous remarquerez que j'utilise le même nombre de plis : 20 % des données pour la validation et 80 % pour l'entraînement.
Voilà. Prêts ? On constate que nous avons atteint un niveau de précision similaire à celui obtenu avec les 16 entrées. Première vérification : nous n’avons plus que 11 entrées, les six composantes principales et les cinq catégories. Nous utilisons un réseau de neurones 3x2. Le taux d’erreur de classification est acceptable. Il est comparable à celui obtenu avec les 11 entrées et le réseau 5x7, plus complexe.
Comment procéder ensuite ? Augmentons maintenant le nombre de neurones du modèle et examinons son impact sur notre taux d'erreurs de classification. L'entraînement du modèle, lorsqu'il devient plus complexe, prend plus de temps. Vous le constaterez lorsque j'introduireai le boosting : l'entraînement sera encore plus long tout au long de la journée.
Vous constaterez qu'avec le réseau sept par cinq, notre précision s'est améliorée grâce à la réduction du nombre de données d'entrée. Cela peut paraître paradoxal, mais réduire ce nombre peut parfois accroître la précision en fonction de la complexité du modèle.
Voilà l'enseignement non négligeable, ou l'idée essentielle à tirer de ceci. Maintenant, si nous allons plus loin et examinons… Observons le diagramme. Comme je l'ai dit, nous avons les six composantes principales et les cinq entrées catégorielles. La complexité du modèle a été multipliée par sept, passant à un réseau de cinq.
Passons maintenant au boosting. Aidons-le. Il est important de noter que le boosting avec JMP ne fonctionne que sur la première couche ; autrement dit, JMP ignore tout nombre de neurones spécifié dans la deuxième couche. Seuls les neurones de la première couche sont utilisés pour le boosting.
Nous n'aurons plus de neurones dans la première couche, et le taux de boosting sera de cinq, ce qui réduira le nombre de neurones de cette couche à trois. Le boosting consiste à minimiser l'erreur entre la prédiction après convergence et les entrées. Le taux d'erreur entre la prédiction cible et la valeur réelle est minimisé à chaque incrémentation du boosting. Dans ce cas, nous avons un total de 15 neurones.
Nous allons maintenant illustrer le boosting. Le modèle est mis à l'échelle en fonction du nombre de modèles sélectionnés. Ici, cinq sert de facteur d'échelle pour ajuster le nombre de neurones lors de la première étape. Notre modèle final comportera 15 neurones, après validation croisée à 5 plis sur l'ensemble d'entraînement. Nous allons maintenant observer le modèle ajusté. Nous conclurons ensuite notre présentation.
Comme je l'ai mentionné, le boosting allonge le temps d'entraînement. Or, comme vous pouvez le constater, du fait de l'utilisation d'une seule couche avec le boosting, notre coefficient de détermination (R²) est inférieur à celui du réseau 5x7, mais supérieur à celui du modèle de base initial. La comparaison entre le modèle de base et le modèle validé par validation croisée à 5 plis est présentée ici.
Comme vous pouvez le constater, le modèle amélioré est présenté ici. Il s'agit du modèle amélioré comparé au modèle de base. La précision est également visible ici. Elle est très comparable entre le modèle amélioré et le modèle de base.
Nous terminons la présentation. Revenons à nos diapositives. Voilà. Comme vous pouvez le constater, nous avons entraîné le modèle de base. Ensuite, nous avons réduit la complexité des données d'entrée grâce à l'ACP. Plus précisément, nous avons sélectionné les six composantes principales, les avons complétées par les variables catégorielles X1 à X5, puis nous avons entraîné notre réseau de neurones.
En réduisant le nombre de données d'entrée, la précision s'est améliorée. C'est là le point essentiel : l'augmentation de la complexité du modèle n'améliore pas nécessairement sa précision. En revanche, la réduction de la complexité des données d'entrée peut contribuer à améliorer la précision. Nous avons ensuite utilisé le graphique d'éboulis, et nous avons sélectionné les six neurones, ou les six vecteurs de base, comme composantes principales pour l'entraînement.
Voici un autre cas que nous avons omis aujourd'hui, où nous ne disposons que d'entrées catégorielles. Comme vous pouvez le constater, la précision a considérablement diminué, ce qui signifie qu'il est impossible de réduire indéfiniment la complexité des entrées sans obtenir un modèle moins précis.
Nous avons ensuite choisi un niveau de boosting de cinq. Dans ce cas précis, il s'agit d'un boosting de deux neurones sur trois. Comme vous pouvez le constater, en augmentant le niveau de boosting de 2 à 5, on observe une amélioration du taux d'erreur de classification et du coefficient de détermination (R²).
Nous pouvons comparer ces réseaux. Dans ce cas précis, bien que nous ayons construit de nombreux modèles, je compare ici uniquement les trois principaux modèles que nous avons finalement utilisés. Un simple réseau de neurones à deux couches, avec un facteur de boosting de 5, six composantes principales et cinq entrées, a atteint le seuil de précision recherché.
Dans chaque cas, vous devrez examiner les exigences de précision de votre application. Choisissez ensuite judicieusement le modèle, après avoir testé différents paramètres d'entraînement, la complexité du modèle et la complexité des entrées. Dans notre présentation d'aujourd'hui, nous avons examiné comment le modèle de réseau neuronal peut être utilisé dans JMP pour notre application cible : le pilotage adaptatif des tests pour les circuits intégrés.
Nous avons examiné différents modèles prédictifs. Nous avons utilisé un réseau de neurones simple, un réseau de neurones avec analyse en composantes principales, et un réseau de neurones avec analyse en composantes principales et boosting. Nous avons démontré les améliorations en termes de ressources de test supplémentaires nécessaires.
Dans ce cas précis, nous avons pu éliminer l'outil de mesure XC2, dont le coût peut atteindre 100 000 $ par machine, en utilisant les mesures in-C2 déjà effectuées lors de certaines phases de test pour prédire le parcours de test au niveau système. Cette réduction opportune des coûts de test est possible grâce à de simples réseaux neuronaux à deux couches.
Il est important de préciser que JMP, via son interface utilisateur, ne permet d'entraîner qu'un réseau de neurones à deux couches. Cependant, vous pouvez complexifier le réseau grâce à JSL, qui vous permet de le personnaliser et de créer un réseau plus profond, notamment pour les applications haut de gamme manipulant de grands ensembles de données. C'est tout pour aujourd'hui. Merci de votre attention.