Conférencier
|
Transcription
|
| Bill Worley |
Bonjour à tous, ici Bill Worley, ingénieur système JMP. Je travaille chez JMP depuis près de sept ans. Aujourd'hui, nous allons parler |
| |
prétraiter les données spectroscopiques pour analyse. J'appelle cela une préquelle car j'ai déjà donné une conférence sur l'analyse des données spectrales dans JMP, mais le pré-traitement est une première étape importante et vous montrera pourquoi. Allons-y. |
| |
Parlons donc un peu du résumé ici. Le pré-traitement des données spectroscopiques est vraiment une première étape importante dans la préparation de vos données, n'importe quelle donnée, pour l'analyse. |
| |
Nous pouvons, vous savez, vous parler de... nous allons revoir la démo et démontrer la variable normale standard et les outils de lissage Savitzky-Golay dans JMP. Ce sont les outils de pré-traitement qui sont assez standards dans tout le monde. |
| |
le monde de la chimie, l'industrie chimique et tous ceux qui font de la spectroscopie et analysent des données spectroscopiques. Ils le sauraient... |
| |
plus sur la variante normale standard du Savitzky-Golay et comment ils sont utilisés. Encore une fois, il s'agit d'une première étape importante pour vous aider à créer des modèles prédictifs à partir de vos données spectroscopiques brutes. |
| |
Ainsi, avec un peu de données spectrales de fond, les données peuvent être très compliquées. Le pré-traitement est utilisé pour aider à lisser, filtrer et corriger la ligne de base avant de créer ces modèles prédictifs ou tout modèle prédictif que vous souhaiterez peut-être créer. Le filtrage Savitzky-Golay et la variable normale standard |
| |
sont des outils qui ont... ils sont utilisés dans JMP. Le Savitzky-Golay était un complément développé par Ian Cox, c'est donc... merci à Ian pour cela. La variable normale standard nécessite un... |
| |
une sorte de formule et nous vous montrerons comment l'intégrer dans JMP. Et puis la dernière ligne, c'est... le Graph Builder est également un outil inestimable pour visualiser vos données spectroscopiques et qui peut être utilisé comme plateforme alternative pour lisser vos données. |
| |
Mais encore une fois, nous y reviendrons au fur et à mesure que nous avancerons dans le débat. |
| |
Pourquoi nous faisons cela. Pourquoi voudriez-vous effectuer un quelconque type de pré-traitement ? Eh bien, si vous regardez cela, d'abord, ces spectres supérieurs, ou groupes de spectres, ce sont les données brutes de 100 spectres et vous ne pouvez pas vraiment faire de différence entre |
| |
vous savez, un mélange de 100 % d'amidon ou de 100 % de gluten. Vous pouvez voir certaines différences, mais vous ne pouvez tout simplement pas... vous ne pouvez pas dire ce que c'est. Bien, |
| |
ce que nous faisons à partir de là, nous effectuons le lissage et le filtrage Savitzky-Golay, puis vous prenez cette première dérivée et cela vous donne un ensemble de spectres beaucoup plus propre, |
| |
bien regroupés, mais toujours pas complètement là où vous aimeriez être. Et puis, enfin, après avoir effectué ce lissage variable normal standard, les spectres sont beaucoup plus propres, beaucoup plus faciles à voir où se trouvent les pics. |
| |
Et vous pouvez voir où se situent les différences dans les différents groupements de spectres. Encore une fois, il y a 20 spectres pour chacune de ces lignes rouges, lignes grises et lignes bleues, et c'est définitivement beaucoup plus propre. Vous pouvez voir où se trouvent les pics pour les différents mélanges. |
| |
D'accord, donc avec le filtrage Savitzky-Golay, c'est un filtre numérique fourni à vos données spectrales à des fins de lissage. Ce qui est bien, c'est que cela ne modifie pas le spectre global lui-même, l'endroit où se trouvent les pics et tout le reste. C'est donc un bel outil là-bas. |
| |
Il utilise la convolution pour le lissage et est basé sur une formule linéaire des moindres carrés. |
| |
Ces dérivées première et seconde sont également... vous êtes également capable d'apprivoiser celles du signal lisse. |
| |
Et le filtrage de toutes les données sans importance à chaque extrémité du spectre peut également être effectué. Si vous vous retrouvez dans des situations où, vous savez, vous avez quelque chose au début, cela n'a tout simplement pas d'importance et cela ne fera que vous gâcher à mesure que vous avancez et c'est la même chose à l'autre bout du fil. |
| |
Graph Builder vous permet d'effectuer même un lissage interne ou un filtrage interne que vous ne pouvez pas faire avec le Savitzky-Golay. |
| |
ajouter à. Vous pouvez donc utiliser le filtre de données locales avec le Graph Builder et définir davantage les zones d'intérêt. |
| |
Donc, |
| |
Continuons. Savitzky-Golay |
| |
L'analyse est que nous avons le... nous avons fait... si nous faisons cette analyse, il s'agit d'un regroupement de spectres. Nous avons donc le lisse, |
| |
la dérivée première, maintenant un peu allongée. Et nous y avons mis la ligne zéro. Et avec la dérivée première, vous pouvez |
| |
indiquez où se trouvent les pics, en fonction des points zéro ou du croisement des points zéro, c'est vrai, cela vous donne donc une idée de l'endroit où se trouvent les pics pour un moment donné |
| |
groupe de spectres, ensemble de spectres. Et pour la dérivée seconde, c'est un peu différent. Cela aide à aplatir la ligne de base et ensuite, si vous avez des pics qui se chevauchent, cela vous aide |
| |
développez davantage ou mieux voyez où ceux-ci se chevauchent et vous passez d'un positif à un négatif, ce qui est une indication des pics qui se chevauchent et où ils pourraient se trouver. D'accord, et c'est ainsi que vous utilisez cet outil. |
| |
La variable normale standard elle-même est encore une fois la standardisation des données par rapport aux spectres individuels. Il peut être utilisé seul ou comme outil de lissage supplémentaire et nous l'utilisons aujourd'hui comme outil supplémentaire. |
| |
C'est utilisé... |
| |
il est utilisé pour la correction du décalage de ligne de base et la correction des variations d'intensité globale. Ce qui est bien, c'est que cela supprime la variation de base sans modifier la forme des spectres, n'est-ce pas. |
| |
Et les données, le problème, et vous le verrez quand nous le ferons, c'est que les données doivent être empilées, d'accord. |
| |
Très bien, ce n'est qu'une des formules qui |
| |
pourrait être utilisé pour configurer la formule variable normale standard, et je vais vous montrer comment procéder. Il existe plusieurs manières différentes, mais cela devient un peu compliqué et je vais vous montrer comment procéder. La partie importante ici est que |
| |
nous avons ici la formule standard pour la colonne standardisée, mais nous devons nous assurer que nous l'utilisons comme variable et c'est le spectre lui-même. Donc |
| |
il y a une petite astuce pour ajouter cela. |
| |
C'est vrai, donc si la variation normale standard était effectuée uniquement sur les données brutes, voici à quoi cela ressemblerait. |
| |
Nous pouvons voir les regroupements, nous pouvons voir, vous savez, comment les choses se déroulent, mais si nous faisions cette variable normale standard après avoir fait cette dérivée première, c'est beaucoup plus propre. Vous obtenez une bien meilleure idée de l'endroit où les spectres se chevauchent, où ils, vous savez, |
| |
où vous devrez peut-être faire un petit peu... où cette dérivée seconde entrerait en jeu, où vous avez des pics qui se chevauchent peut-être ici, n'est-ce pas, |
| |
et peut-être de retour ici. Donc |
| |
c'est là que cela aide vraiment à construire une meilleure vision de ce que vous voyez. Et cette ligne zéro, encore une fois, indique où, vous savez, lorsque vous la traversez, cette ligne zéro est une indication des pics, où les pics utilisent la dérivée première. |
| |
Très bien, passons à une démo. |
| |
Très bien, sors de là. |
| |
Parlons donc de la visualisation des données... les données d'abord. N'oubliez pas que chaque fois que vous obtenez un nouvel ensemble de données, la meilleure chose à faire est de l'extraire et de le visualiser. Vous savez, tracez ces données, obtenez une meilleure idée de ce à quoi vous êtes confronté. Et descendons ici et arrêtons-nous |
| |
nos données brutes sur le gluten. C'est vrai, nous avons donc importé les données. Nous devons maintenant faire un peu de visualisation dessus, et allons-y... passons à Graph Builder. |
| |
C'est vrai et les premières choses que nous allons faire, |
| |
déplacez-le un peu, accédez aux données brutes. Bon, maintenant nous allons intégrer ça. |
| |
Et ce sont les données ponctuelles, donc c'est ce que nous... ce que nous avons vu auparavant avant de procéder à un lissage, avant de faire autre chose. C'étaient ces données de ligne et, si je peux changer cela en |
| |
un tracé parallèle, à droite, qui me donne les données linéaires pour les spectres. Encore une fois, nous ne pouvons pas voir grand-chose de ce qui se passe là-bas, mais cela nous donne une meilleure idée de l’endroit où les choses se déroulent. Je peux faire ça... |
| |
nous pouvons faire certaines choses ici, quelque chose appelé... si nous en avons besoin, et vous verrez cela avec d'autres données, ce parallèle a fusionné. Mais cela n'a rien changé. Il n’a pas été rassemblé comme vous le verrez avec certaines autres données, je vais donc clore cela. |
| |
C'est vrai, et certains des autres outils que j'aime utiliser lorsque je visualise les données sont la carte de contrôle multivariée pilotée par modèle, et faisons-le d'abord. |
| |
Nous passons donc aux analyses, à la qualité et aux processus, et à la carte de contrôle multivariée pilotée par modèle. |
| |
Déplacez-le vers le haut. |
| |
C'est vrai, je n'ai aucune donnée historique, alors je dis d'accord. Et ce que cela nous permet de faire, c'est d'examiner les données et de dire, d'accord, |
| |
nous pouvons voir des groupements de spectres, n'est-ce pas. Et pour l'essentiel, c'est... je veux juste le souligner, |
| |
nous sommes capables d'expliquer la plupart des variations que nous observons, au moins jusqu'à 85 % de la variation avec deux composantes principales, d'accord. Et ça utilise ça ??? T au carré |
| |
informations que nous avons ici. Et cela nous indique également où les choses pourraient devenir incontrôlables pour un spectre donné, n'est-ce pas. Pourquoi est-il différent du reste du groupe ? |
| |
Donc, si je survole l'un de ces points, je peux le retirer, n'est-ce pas. Si je survole l'un des points hors de contrôle, encore une fois, retirez-le, |
| |
et maintenant nous pouvons voir, wow, ils sont vraiment différents, vous savez. Il y a quelque chose de différent dans ce spectre que nous devons, vous savez, peut-être mieux comprendre. Dans ce cas, nous avons déjà une meilleure compréhension, car nous savons que ce sont des mélanges, mais nous voulons le voir. |
| |
Et retirons celui-ci aussi. Très bien, donc c'en est encore un. Donc, entre ces trois spectres, nous avons une grande variété de mélanges, vous savez. Nous avons donc trois des... trois groupes et nous pourrions également y mettre les deux autres, juste pour voir. Mais nous en resterons là, pour l'instant. |
| |
D'accord, voilà donc la carte de contrôle multivariée pilotée par modèle. L'autre outil que j'aime utiliser est... il utilise des méthodes multivariées et s'appelle la mise à l'échelle multidimensionnelle. |
| |
Et la raison pour laquelle j'aime l'utiliser est, surtout pour des systèmes comme celui-ci, |
| |
c'est que nous avons |
| |
encore nos données brutes, c'est vrai, et nous devons... |
| |
laissez-moi d'abord régler ça et je vous le dirai. |
| |
Nous avons deux dimensions ici, n'est-ce pas, et c'est juste basé sur ce que nous avons vu auparavant, mais la raison pour laquelle j'aime les utiliser est que cela nous permet de faire un regroupement ou de visualiser un regroupement des données elles-mêmes. Bien, |
| |
faisons cela. Cela prend une seconde pour arriver. |
| |
Et nous pouvons voir que nous avons cinq groupes distincts de spectres, n'est-ce pas, donc chacun d'entre eux concerne un groupe de notre mélange d'amidon et de gluten. Si je mets en évidence ce groupe ici, c'est le premier groupe, qui est entièrement, vous savez, 100 % amidon. |
| |
Le groupe intermédiaire est un mélange 50/50 et ce groupe ici est composé à 100 % de gluten. D'accord, cela fait également ressortir les données dans le tableau de données, tout comme indiqué ici, de sorte que |
| |
l'interactivité est également agréable. Ce que cela nous montre également, c'est que nous faisons déjà un assez bon travail en étant déjà... déjà en mesure de répartir les différents groupes. Si nous regardons le diagramme de Shepard, |
| |
nous avons R carré de 1 et |
| |
en ligne droite, d'accord. Encore une fois, c'est un bon moyen de le visualiser, et vous pouvez faire plus avec cela, mais nous laisserons cela pour une autre fois. |
| |
OK, jusqu'à présent, |
| |
nous avons introduit les données, nous les avons visualisées, c'est vrai, et maintenant nous devons effectuer un pré-traitement. |
| |
Et ce que nous allons faire, j'ai plus ou moins ceci, voici des espaces réservés, donc nous allons faire une analyse Savitzky-Golay et nous allons faire une varite normale standard, au moins le premier dérivé, d'accord. |
| |
Très bien, alors laissez-moi nettoyer un peu ça. |
| |
Bien, fermez ça. |
| |
Et encore une fois, nous allons prendre ces données brutes et nous allons utiliser ce complément Savitzky-Golay pour effectuer l'analyse. C'est donc sous les compléments pour moi. |
| |
Et il s'agit d'un complément gratuit, vous pouvez donc l'obtenir et nous le mettrons à votre disposition. Donc c'est encore une fois, nous allons prendre les données brutes, |
| |
c'est vrai, et si vous voulez en savoir plus sur ce qu'est Savitzky-Golay, nous avons un lien Wikipédia ici pour que vous puissiez l'utiliser. Mais nous allons utiliser cela pour aider à lisser les données à chaque longueur d'onde, n'est-ce pas, puis prendre ces dérivées première et seconde. Et je dis, d'accord. |
| |
Et voilà, et nous avons ici nos données fluides. |
| |
Et une chose, vous savez, vous pouvez ajuster cela selon vos besoins, mais ce que nous voulons faire, c'est en quelque sorte prendre ceci, |
| |
élargissez un peu cette fenêtre. |
| |
Très bien. |
| |
Fais celui-là. |
| |
Et vous pouvez jouer avec les polynômes ici, l'ordre d'ajustement des polynômes. |
| |
Dans ce cas, cela ne fait vraiment pas beaucoup de différence d'aller vers un polynôme du huitième ordre. Un deuxième... la deuxième commande fait très bien l'affaire. Très bien, et nous pourrons ensuite extraire ces données de notre première dérivée. |
| |
Dites de sauvegarder les données fluides, c'est vrai, et nous pouvons les sauvegarder dans la table de données. Et je l'ai déjà fait, donc je n'ai pas besoin de vous montrer ce processus, mais sachez simplement que les données sont ensuite renvoyées dans la table de données à partir de là, d'accord. |
| |
Fermons cela. |
| |
Très bien, et nous sommes prêts à partir maintenant, mais maintenant nous devons faire cette dernière étape, n'est-ce pas. Alors regardons... avant d'y aller, revenons en arrière et regardons |
| |
nos données Savitzky-Golay. Ce sont donc les données dérivées premières. Je voudrais à nouveau examiner cela sous le |
| |
Générateur de graphiques, à droite. Et voyez, ça... ça n'a pas l'air très prometteur, mais faisons une intrigue parallèle, |
| |
ça rend les choses un peu meilleures. Et nettoyons-le, puis faisons cette fusion parallèle d'échelles combinées, et cela amène les données dans un format beaucoup plus |
| |
visuel... un meilleur visuel que celui que nous avions avant, n'est-ce pas. Nous pouvons jouer avec cela et encore une fois, nous pourrions ajouter notre propre ligne zéro ici pour mieux comprendre où les pics se croisent. |
| |
Mais ce sont ces données dérivées premières. C'est... vous pouvez voir les groupes, mais ils ne sont pas, vous savez, ils ne sont pas complètement séparés comme vous aimeriez vraiment qu'ils aient une meilleure idée, d'accord. |
| |
Nous sommes donc installés là. Ces données sont de retour dans la table de données. Je vais clôturer cela, puis rappelez-vous que j'ai dit, vous devez empiler les données pour le... pour faire la variable normale standard, nous devons donc le faire. Commençons par présenter quelques données ici. |
| |
Très bien, alors |
| |
sous-ensemble de tout cela. |
| |
Les tables. Sous-ensemble. |
| |
Toutes les lignes. Colonnes sélectionnées et dites d'accord. Très bien, alors maintenant nous sommes prêts à y aller. |
| |
Droite. |
| |
Eh bien, au moins, nous sommes... nous avons les données séparées, n'est-ce pas. Maintenant, nous devons faire... empiler les données, n'est-ce pas. Et encore une fois, il s’agit de pouvoir filtrer toutes les données dont nous avons besoin pour la formule. |
| |
Donc sous Tableaux. Empiler. |
| |
Et ce sont nos colonnes que nous empilons. |
| |
À droite, et empilez par rangée. |
| |
Je vais sélectionner les colonnes que nous souhaitons conserver. |
| |
En plus de ça. Et après, |
| |
Je suis désolé... Je clique juste pour obtenir cette configuration, mais vous comprendrez l'idée. Je vais laisser cela de côté pendant une seconde pour que les gens voient ce qu'il faut pour y arriver. J'ai donc sauvegardé ça. |
| |
Vous savez, regardez le 12 sans titre maintenant. Ce sont nos données empilées, n'est-ce pas, et nous pouvons maintenant effectuer cette variable normale standard. Un moyen rapide de le faire est de créer une nouvelle colonne, |
| |
clic-droit. |
| |
Et je dois construire cette formule à partir d'ici, depuis l'éditeur de formule. Je vais utiliser cet outil statistique appelé |
| |
colonne normaliser, à droite. Et si je passe la souris sur ceci, ici, cela vous donne une idée de ce que vous faites avec cela. Que signifie standardisé, n'est-ce pas. Nous allons donc... |
| |
une moyenne de 0 et un écart type de 1, c'est donc ce que nous essayons d'obtenir avec les données et par rapport à tous les spectres donnés. Nous devons donc prendre les données |
| |
ici et là, rappelez-vous que j'ai dit que nous devions ajouter cette bivariable, qui, dans ce cas, sera le spectre. Je vais dire d'accord. |
| |
Très bien, et cela nous donne un ensemble de données. Maintenant, il existe un moyen plus simple de procéder, ou ce que je pense être un moyen plus simple, mais cela peut aussi être... |
| |
cela prend parfois un peu plus de temps. Mais si je clique avec le bouton droit sur les spectres ici, et encore une fois, rappelez-vous que je fais cela parce que nous avons besoin d'une bivariable. Je vais donc accéder à la nouvelle colonne d'informations et créer ce groupe. |
| |
Et je vais prendre ma colonne de données et je vais faire un clic droit dessus et je vais créer une nouvelle colonne de formules. |
| |
Nous allons passer à la distribution et, rappelez-vous, à la standardisation. Nous sommes... donc nous voulons ça |
| |
moyenne de 0 ; écart type de 1. Sélectionnez cela, puis cela crée cette nouvelle colonne. Ce qui est bien, c'est que les données correspondent, donc je peux pousser un soupir de soulagement d'avoir bien fait les choses. |
| |
C'est vrai, donc j'ai ça. Maintenant, cela nécessiterait à partir d'ici, je vais cliquer sur cette colonne, |
| |
que nous prenons ces données, les divisons puis les remettons dans la table de données normale ou dans la table de données initiale. Une chose que je veux vous montrer avec ceci, c'est que |
| |
une fois que vous avez empilé les données, vous pouvez faire d'autres visualisations, n'est-ce pas. Donc, si je vais au... retour au Graph Builder à droite, je veux prendre ces données |
| |
dans le |
| |
O, et ensuite je vais retirer l'étiquette, et c'est une bonne façon de voir où se trouvent toutes les variations. Donc ce sont tous les, |
| |
vous savez, des boîtes à moustaches indiquant où... vous voyez la variation dans les données, c'est donc juste une très bonne façon de pouvoir visualiser ce qui se passe. |
| |
Une autre façon puissante d'utiliser Graph Builder, et les données doivent être empilées dans ce cas pour ce faire. Maintenant, ce que vous pouvez aussi faire, c'est |
| |
si vous récupérez les données ponctuelles, supprimons cela, mettons les données ponctuelles là-dedans et nous pourrons ensuite procéder à un lissage. Maintenant, c'est un individu lisse, donc c'est une moyenne... pour chaque... pour toutes les données. Ce que nous aimerions faire, c'est faire ça |
| |
Lissage Savitzky-Golay, donc je dois m'arrêter |
| |
la superposition, à droite. Voilà donc toutes les données. Maintenant, ça va être difficile à voir, mais je vais faire ceci, j'espère que vous pourrez voir ceci, si je sélectionne sous Plus lisse, nous allons passer à Savitzky-Golay. |
| |
C'est vrai, et je pense que vous êtes... j'espère que vous avez vu que cela correspond maintenant à cette ligne, cette ligne de lissage juste là. |
| |
C'est une autre façon de lisser les données, n'est-ce pas, en utilisant le Savitzky-Golay. Et puis vous pouvez changer cela en quadratique, vous pouvez effectuer un découpage local ici, et finalement, vous pouvez enregistrer cela dans la table de données. |
| |
Je vais en rester là pour l'instant. |
| |
C'est vrai et rappelez-vous, nous avons dû diviser ces données, les sauvegarder dans la table de données. Je vais renoncer à l'étape de fractionnement, puis revenir simplement aux données... au tableau de données d'origine. |
| |
Je n'ai pas besoin de ça. |
| |
D'accord et puis quand je |
| |
regardez à nouveau les données sous Graph Builder, |
| |
Je peux prendre ce groupe variable normal standard, |
| |
déposez ça dedans. Encore une fois, cela n'a pas l'air très prometteur, mais nous allons faire le tracé parallèle puis cliquer avec le bouton droit. |
| |
Combinez ces échelles. |
| |
Et c'est essentiellement notre lissage terminé, d'accord. Nous avons donc tout mis en place. Encore une fois, nous pourrions ajouter une ligne zéro ici, |
| |
si besoin. Allons-y et ajoutons cela. |
| |
Zéro et nous en ferons une sorte de vert, |
| |
voilà, ajoute-le. |
| |
Dites OK, et là encore, vous utiliserez ceci pour vous aider à déterminer où se trouvent vos pics. |
| |
Sur la base du pic maximum lorsque j'ai franchi ce point zéro, d'accord. |
| |
Donc à peu près, c'est tout. Revenons à notre |
| |
Power Point. |
| |
Donc, en conclusion, le pré-traitement... nous devions pré-traiter les données... pré-traiter les données pour les rendre plus propres, pour les rendre, vous savez, beaucoup plus faciles à utiliser. |
| |
Où aussi avec JMP... |
| |
JMP fait ceci... |
| |
nous travaillons pour rendre ce processus beaucoup plus facile. Le prétraitement dans JMP 16 sera pris en charge par des compléments et des fonctionnalités intégrées. |
| |
Nous attendons avec impatience JMP 17, où le pré-traitement, ce qui sera proposé dans l'explorateur de données fonctionnelles, avec des options de lissage spectral et de base beaucoup plus sophistiquées, ainsi qu'une détection et une sélection de pics. |
| |
Pour analyser les données spectrales, s'il vous plaît, il y a... il y a eu une conférence que j'ai faite en 2020 pour le Discovery |
| |
Munich. C'était une conférence virtuelle, mais cela vous donnera une bonne idée de la façon d'utiliser JMP pour analyser vos données spectrales. |
| |
Et sur ce, je vous dis merci et, j'espère, vous avez tous trouvé... trouvé cela utile. S'il vous plaît laissez-moi savoir. |