Difference between revisions of "Contrôle de la qualité des données CTP assisté par l’IA"

From wiki
Jump to navigation Jump to search
(Created page with "('''English''': Contrôle de la qualité des données CTP assisté par l’IA) As part of the suite of Conductivity, Temperature, Depth (CTD) AI tools being produced by t...")
 
 
(2 intermediate revisions by the same user not shown)
Line 1: Line 1:
('''English''': [[Contrôle de la qualité des données CTP assisté par l’IA]])
+
('''English''': [[AI-Assisted Quality Control of CTD Data]])
  
As part of the suite of Conductivity, Temperature, Depth (CTD) AI tools being produced by the Office of the Chief Data Steward (OCDS), we are developing a model to assist with identifying and deleting poor-quality scans during the CTD quality control process. Using a combination of a Gaussian Mixture Model (GMM) to cluster CTD scans into groups with similar physical properties and Multi-Layer Perceptrons to classify the scans in each group, we are able to automatically flag the poor-quality scans to be deleted with a high degree of accuracy. Through the deployment of the model as a real-time online endpoint and the support of model communication through a client-side program, we have successfully integrated an experimental model into the client's business process in a field testing environment. The continuation of this line of work will now look to bring the model into a production environment for regular usage in the quality control process.
+
Dans le cadre de la série d’outils d’intelligence artificielle relatifs à la conductivité, la température et la profondeur (CTP) que produit le Bureau de l’intendant en chef des données, nous élaborons un modèle pour aider à repérer et à supprimer les analyses de mauvaise qualité pendant le processus de contrôle de la qualité des données CTP. À l’aide de la combinaison d’un modèle de mélange gaussien (GMM) pour regrouper les analyses de la CTP dans des groupes ayant des propriétés physiques semblables et de perceptrons multicouches pour classer les analyses dans chaque groupe, nous sommes en mesure de signaler automatiquement les analyses de mauvaise qualité à supprimer avec un degré élevé d’exactitude. Grâce au déploiement du modèle en tant que point d’extrémité en ligne en temps réel et au soutien de la communication du modèle au moyen d’un programme côté-client, nous avons réussi à intégrer un modèle expérimental au processus opérationnel du client dans un environnement de mise à l’essai sur le terrain. La poursuite de ce travail visera maintenant à intégrer le modèle dans un environnement de production pour un usage régulier dans le cadre du processus de contrôle de la qualité.
== Use Case Objectives ==
+
== Objectifs du cas d’usage ==
[[File:Business_process.png|alt=|right|382x382px]]
+
[[File:Business process fr.png|alt=|right|402x402px]]
The quality control process for CTD data is a highly time-intensive task. An oceanographer performs a visual inspection to identify poor-quality scans in each CTD profile using graphical editing software. As the task requires careful inspection of the data and the CTD profiles collected during one year number in the thousands, this work consumes a large amount of time and effort. To ease this burden, we have produced an AI tool that is capable of flagging the poor-quality CTD scans such that these flags can be displayed to the oceanographer within the graphical editing software. This allows for the task to be sped up by providing a quick reference for the areas in the CTD profiles where attention is required. By providing flags for assisted decision-making rather than using the model for fully automated decision-making, we preserve the ability of oceanographer to use their domain expertise to make the best possible decisions. As the model becomes more mature and its performance improves, we may explore options to increase the degree of automation.                                     
+
Le processus de contrôle de la qualité des données CTP exige beaucoup de temps. Un océanographe effectue une inspection visuelle pour repérer les analyses de mauvaise qualité dans chaque profil CTP à l’aide d’un logiciel d’édition graphique. Étant donné que la tâche exige une inspection minutieuse des données et des profils CTP recueillis au cours d’une année, ce travail demande beaucoup de temps et d’efforts. Pour alléger ce fardeau, nous avons produit un outil d’intelligence artificielle capable de signaler les analyses de la CTP de mauvaise qualité de sorte que ces indicateurs puissent être affichés dans le logiciel d’édition graphique pour l’océanographe. Cela permet d’accélérer la tâche en fournissant une référence rapide pour les secteurs des profils CTP où une attention est requise. En fournissant des indicateurs pour la prise de décisions assistées plutôt qu’en utilisant le modèle pour la prise de décisions entièrement automatisée, nous préservons la capacité de l’océanographe d’avoir recours à son expertise dans le domaine pour prendre les meilleures décisions possibles. À mesure que le modèle prend de l’expérience et que son rendement s’améliore, nous pouvons explorer des options pour accroître le degré d’automatisation.                                     
 
    
 
    
 
    
 
    
* '''Machine Learning Task''': Flag in advance the scans to be deleted during CTD quality control
+
* '''Tâche d’apprentissage machine''' : Signaler à l’avance les analyses à supprimer au moment du contrôle de la qualité des données CTP.
* '''Business Value''': Flagged scans allow the oceanographer to quickly focus attention on crucial areas, reducing the time and effort required to delete scans
+
* '''Valeur opérationnelle''' : Les analyses signalées permettent à l’océanographe de concentrer rapidement son attention sur les secteurs essentiels, ce qui réduit le temps et l’effort requis pour supprimer les analyses.
* '''Measures of Success''':
+
* '''Mesures du succès''' :
** Accuracy of model predictions
+
** Exactitude des prévisions du modèle
**Client feedback on quality control speed-ups
+
**Commentaires des clients sur l’accélération du contrôle de la qualité
*'''Aspirational Goals''':
+
*'''Objectifs ultimes''' :
** Mitigation of uncertainty in human decisions
+
** Atténuation de l’incertitude dans les décisions humaines
** Semi or full automation of scan deletions
+
** Automatisation partielle ou complète des suppressions d’analyses
  
  
  
==Machine Learning Pipeline==
+
==Pipeline d’apprentissage automatique==
  
The machine learning pipeline consists of three main steps: data preparation, data partitioning via a Gaussian Mixture Model (GMM) and data classification via a Multi-Layer Perceptron (MLP).
+
Le pipeline d’apprentissage automatique comprend trois étapes principales, soit la préparation des données, le partitionnement des données au moyen d’un modèle de mélange gaussien (GMM) et la classification des données au moyen d’un perceptron multicouche.
  
The data preparation covers the standard machine learning tasks of data cleaning, feature engineering and scaling. The feature engineering is used to draw out the most relevant information from the data for later use in the classification task. The MLP classifies each CTD scan independently based on its features. However, the local neighborhood around each scan often contains valuable information about the changes of feature values across the depth-wise dimension of the CTD profile and the rate at which these values are changing. Sudden rapid changes in values can be strong indicators of factors corrupting the data recorded in the CTD scans. We therefore place windows of various sizes around each CTD scan and calculate statistics over the scan values within the window to augment each CTD scan with information about different sized local neighborhoods. Our experimental evaluations have shown these additional features to have a positive impact on the performance of the model.
+
La préparation des données couvre les tâches d’apprentissage machine standard que sont le nettoyage des données, l’ingénierie des caractéristiques et la mise à l’échelle. L’ingénierie des caractéristiques sert à extraire les renseignements les plus pertinents des données pour une utilisation ultérieure dans la tâche de classification. Le perceptron multicouche classe chaque analyse de la CTP indépendamment en fonction de ses caractéristiques. Cependant, le voisinage entourant chaque analyse contient souvent des renseignements précieux sur les changements de valeurs des caractéristiques dans la dimension de profondeur du profil CTP et sur la vitesse à laquelle ces valeurs changent. Des changements soudains et rapides des valeurs peuvent être de forts indicateurs de facteurs corrompant les données enregistrées dans les analyses de la CTP. Par conséquent, nous plaçons des fenêtres de différentes tailles autour de chaque analyse de la CTP et calculons des statistiques sur les valeurs de l’analyse dans la fenêtre afin de renforcer chaque analyse avec des renseignements sur des voisinages de différentes tailles. Nos évaluations expérimentales ont montré que ces caractéristiques supplémentaires ont un effet positif sur le rendement du modèle.
  
The data partitioning step is used to break the CTD scans up into groups that have similar physical properties to each other. Since the CTD profiles are collected across a vast geographical area (the North-East Pacific), a large span of depths (0 to 4300 meters below surface) and across all seasons, these spatio-temporal variations lead to a highly varied distribution of physical properties in the CTD scans. This degree of variation is difficult for a single MLP to cope with and learn how to distinguish between good or poor-quality scans in all observed conditions. Performance can be greatly improved by first partitioning the scans and then training a separate MLP for each partition. We achieve this using a GMM trained on the primary physical properties of the scans, namely the temperature, conductivity and salinity values.
+
L’étape du partitionnement des données est utilisée pour diviser les analyses de la CTP en groupes ayant des propriétés physiques similaires les uns aux autres. Étant donné que les profils CTP sont recueillis dans une vaste zone géographique (le nord-est du Pacifique), sur une vaste étendue de profondeurs (de 0 à 4 300 mètres sous la surface) et pour toutes les saisons, ces variations spatio-temporelles mènent à une distribution très variée des propriétés physiques dans les analyses de la CTP. Ce degré de variation est difficile à gérer pour un seul perceptron multicouche et pour qu’il apprenne à distinguer les analyses de bonne ou de mauvaise qualité dans toutes les conditions observées. Le rendement peut être grandement amélioré en partitionnant d’abord les analyses, puis en entraînant un perceptron multicouche distinct pour chaque partition. Pour ce faire, nous utilisons un modèle de mélange gaussien entraîné aux principales propriétés physiques des analyses, à savoir les valeurs de température, de conductivité et de salinité.
  
Finally, data classification is achieved using one MLP per cluster of CTD scans. The MLP is trained for binary classification to flag CTD scans as poor-quality (to be deleted) or good quality (to be preserved). The ground truth used to produce the training data is derived from historical instances of quality control, using the decisions made by oceanographers in the past regarding which scans should be deleted. The deleted scans are far fewer than the preserved scans, making the training data highly imbalanced. This is often problematic in a machine learning setting as it causes the model to learn in a fashion biased towards the majority class. To address this, we apply oversampling to randomly duplicate deleted scans in the training data in order to balance their numbers with the preserved scans.
+
Enfin, la classification des données est réalisée à l’aide d’un perceptron multicouche par groupe d’analyses de la CTP. Le perceptron multicouche est entraîné à la classification binaire pour signaler les analyses de la CTP comme étant de mauvaise qualité (à supprimer) ou de bonne qualité (à conserver). La réalité de terrain utilisée pour produire les données d’entraînement est dérivée des exemples historiques de contrôle de la qualité, en utilisant les décisions prises par les océanographes dans le passé au sujet des analyses à supprimer. Les analyses supprimées sont beaucoup moins nombreuses que les analyses conservées, ce qui rend les données d’entraînement très déséquilibrées. Cela pose souvent un problème dans un contexte d’apprentissage automatique, car cela amène le modèle à apprendre d’une manière qui favorise la classe majoritaire. Pour y remédier, nous appliquons un suréchantillonnage pour dupliquer aléatoirement les analyses supprimées dans les données d’entraînement afin d’équilibrer leurs nombres avec les analyses conservées.
[[File:Ml_pipeline.png|alt=|center|992x992px]]
+
[[File:Ml pipeline fr.png|alt=|center|992x992px]]
  
 
    
 
    
==Experimental Model Performance==
+
==Rendement du modèle expérimental==
[[File:Performance.png|alt=|right|477x477px]]
+
[[File:Performance fr.png|alt=|right|476x476px]]
In order to validate the performance of the model, we have performed experimentation using historical CTD data covering the years 2013-2021. We use a 5-fold cross-validation methodology to ensure robustness in the measured results.
+
Afin de valider le rendement du modèle, nous avons effectué une expérimentation à l’aide des données CTP historiques couvrant les années 2013 à 2021. Nous utilisons une méthodologie de validation croisée à cinq volets pour assurer la robustesse des résultats mesurés.
  
It is important that the model is able to effectively classify both the scans to be deleted as well as the scans to be preserved, or in the context of machine learning, the positive and negative samples. While the performance for classification of positive and negative samples can be measured separately, we have configured the model to balance performance across these two goals. Therefore, we report only the overall accuracy of the model here for simplicity. The global accuracy achieved by the model is roughly 92.6% measured against the historical decisions made by oceanographers. This demonstrates that the model has learned to effectively observe the patterns indicative of poor-quality scans and replicate the decision-making used by oceanographers with a high degree of accuracy.
+
Il est important que le modèle soit en mesure de classer efficacement à la fois les analyses à supprimer et les analyses à conserver, ou dans le contexte de l’apprentissage automatique, les échantillons positifs et négatifs. Bien que le rendement pour la classification des échantillons positifs et négatifs puisse être mesuré séparément, nous avons configuré le modèle de façon à équilibrer le rendement entre ces deux objectifs. Par conséquent, nous ne déclarons ici que l’exactitude globale du modèle par souci de simplicité. L’exactitude globale obtenue par le modèle est d’environ 92,6 % mesurée par rapport aux décisions historiques prises par les océanographes. Cela démontre que le modèle a appris à observer efficacement les schémas indiquant des analyses de mauvaise qualité et à reproduire avec un degré élevé de précision la prise de décision utilisée par les océanographes.
  
It is also important to note that the quality of the model flags is impacted by the depth of the scans being processed. The shallowest depths are the most difficult to handle as the greatest variations in the physical properties of the water occur near the surface. A breakdown of model performance by depth ranges can be seen in the figure on the right. The first 50 meters are quite challenging, resulting in a model accuracy of roughly 88.7%. While the scans beneath 500 meters are more regular, resulting in a model accuracy of roughly 94.1%.
+
Il est également important de noter que la qualité des indicateurs du modèle est influencée par la profondeur des analyses traitées. Les profondeurs les plus superficielles sont les plus difficiles à gérer, car les plus grandes variations des propriétés physiques de l’eau se produisent près de la surface. La figure de droite présente une ventilation des rendements du modèle par plage de profondeur. Les 50 premiers mètres présentent un défi considérable, ce qui donne une exactitude de modèle d’environ 88,7 %. Les analyses inférieures à 500 mètres sont plus régulières, ce qui donne une exactitude de modèle d’environ 94,1 %.
  
Perfect model accuracy will never be obtainable as there is uncertainty in the decision-making even for oceanographers. There are many complex factors at play influencing the data that is ultimately recorded such as choppy water causing the scanning equipment to descend irregularly, winds and strong weather conditions causing mixing of waters near the surface, and currents causing mixing of waters under the surface. As the distinction between proper and corrupted scan data can be very difficult to identify under these conditions, the human decision-making process is not guaranteed to be perfect. This in fact highlights a potential area where the development of more mature AI models that can exploit additional information on these factors may have the potential to lead to automated approaches that could eventually augment the human decisions to a higher overall quality.
+
La précision parfaite du modèle ne sera jamais atteinte, car la prise de décisions est incertaine, même pour les océanographes. De nombreux facteurs complexes entrent en jeu et influencent les données qui sont finalement enregistrées, comme l’eau agitée qui cause la descente irrégulière de l’équipement d’analyse, les vents et les conditions météorologiques violentes qui causent le mélange des eaux près de la surface, et les courants qui causent le mélange des eaux sous la surface. Comme la distinction entre les données d’analyse correctes et corrompues peut être très difficile à repérer dans ces conditions, le processus de prise de décision humaine n’est pas assuré d’être parfait. Cela met en évidence un domaine potentiel où le développement de modèles d’IA plus matures qui peuvent exploiter des renseignements supplémentaires sur ces facteurs pourrait mener à des approches automatisées susceptibles d’éventuellement améliorer la qualité globale des décisions humaines.
  
 
    
 
    
Line 45: Line 45:
  
  
==Model Deployment and Integration==
+
==Déploiement et intégration du modèle==
To get practical value out of the AI model, it must be integrated into the client's business process in an easy-to-use manner. We have taken the approach of making the model available via a real-time online endpoint deployed on a cloud analytics platform. The client then uses the model through communication with the endpoint managed by a client-side program which runs on the user's machine.
+
Pour tirer une valeur pratique du modèle d’IA, il faut l’intégrer au processus opérationnel du client d’une manière facile à utiliser. Nous avons adopté une approche consistant à rendre le modèle disponible au moyen d’un point d’extrémité en ligne en temps réel déployé sur une plateforme d’analytique infonuagique. Le client utilise ensuite le modèle en communiquant avec le point d’extrémité géré par un programme côté-client qui fonctionne sur la machine de l’utilisateur.
  
For the field test setting, we have used Azure Databricks as the cloud analytics platform through which the model is deployed. A real-time online endpoint is used to make the model available via an Application Programming Interface (API). This means that authenticated users can access the model from any machine that is connected to the internet. We have produced a light-weight client-side program that runs on the user's machine to manage communication with the model. This program provides a simple graphical interface used to select the CTD files to send to the model for processing. The program then receives a response with the flags generated by the model and saves new files containing the results. These files can be loaded directly into the graphical editor used during the standard CTD quality control process. This provides the user with a simple method to use the model with minimal overhead and integrates the model results directly into the existing quality control software.
+
Pour les paramètres d’essai sur le terrain, nous avons utilisé ''Azure Databricks'' comme plateforme d’analytique infonuagique au moyen de laquelle le modèle est déployé. Un point d’extrémité en ligne en temps réel est utilisé pour rendre le modèle disponible au moyen d’une interface de programmation d’application (API). Cela signifie que les utilisateurs authentifiés peuvent accéder au modèle à partir de n’importe quelle machine connectée à Internet. Nous avons produit un programme côté-client léger qui fonctionne sur la machine de l’utilisateur pour gérer la communication avec le modèle. Ce programme fournit une interface graphique simple permettant de sélectionner les fichiers CTP à envoyer au modèle pour traitement. Le programme reçoit ensuite une réponse comportant les indicateurs générés par le modèle et enregistre les nouveaux fichiers contenant les résultats. Ces fichiers peuvent être chargés directement dans l’éditeur graphique utilisé pendant le processus standard de contrôle de la qualité des données CTP. L’utilisateur dispose ainsi d’une méthode simple pour utiliser le modèle avec un minimum de frais généraux et intègre les résultats du modèle directement dans le logiciel de contrôle de la qualité existant.
  
The user can optionally send the CTD files back to the model endpoint after the quality control process has been finished. This allows for the scan deletion decisions made by the user to be compared against the model's predicted flags in order to assess the performance of the model. The results are then analyzed to provide a breakdown of the model performance across various metrics which are presented visually in a Power BI report.[[File:Model_communications.png|alt=|center]]
+
L’utilisateur peut, en option, renvoyer les fichiers CTP au point d’extrémité du modèle une fois le processus de contrôle de la qualité terminé. Cela permet de comparer les décisions de suppression d’analyses prises par l’utilisateur avec les indicateurs prévus par le modèle afin d’évaluer le rendement du modèle. Les résultats sont ensuite analysés afin de fournir une ventilation du rendement du modèle pour diverses mesures qui sont présentées visuellement dans un rapport Power BI.
 +
[[File:Model communications fr.png|alt=|center]]
  
  
Line 56: Line 57:
  
  
==Next Steps ==
+
==Prochaines étapes ==
Having gone through the proof-of-concept and field test stages, the model has demonstrated positive results that can lead to business value by speeding up the CTD quality control process. We are now in a position to begin preparations to bring the model into a production environment. Refinements to the model deployment, integration architecture and backing code will be implemented to ensure that the model functionality can be supplied to the client in the form of a robust tool. Monitoring must also be implemented to ensure that the model continues to deliver reliable performance over time. If model drift is detected during monitoring, this must trigger corrective action to retrain the model. Finally, an in-depth model reporting dashboard will be designed to provide detailed information on model performance, enabling the user to better understand the tool they are working with.
+
Après avoir franchi les étapes de validation de principe et d’essai sur le terrain, le modèle a démontré des résultats positifs qui peuvent générer une valeur opérationnelle en accélérant le processus de contrôle de la qualité des données CTP. Nous sommes maintenant en mesure de commencer les préparatifs pour intégrer le modèle dans un environnement de production. Des améliorations seront apportées au déploiement du modèle, à l’architecture d’intégration et au code de soutien afin de garantir que le client puisse disposer de la fonctionnalité du modèle sous la forme d’un outil solide. Une surveillance doit également être mise en œuvre pour veiller à ce que le modèle continue d’offrir un rendement fiable au fil du temps. Si une dérive du modèle est détectée pendant la surveillance, cela doit déclencher une action corrective pour entraîner le modèle de nouveau. Enfin, un tableau de bord approfondi des rapports sur le modèle sera conçu pour fournir des renseignements détaillés sur le rendement du modèle, ce qui permettra à l’utilisateur de mieux comprendre l’outil avec lequel il travaille.

Latest revision as of 17:17, 10 January 2023

(English: AI-Assisted Quality Control of CTD Data)

Dans le cadre de la série d’outils d’intelligence artificielle relatifs à la conductivité, la température et la profondeur (CTP) que produit le Bureau de l’intendant en chef des données, nous élaborons un modèle pour aider à repérer et à supprimer les analyses de mauvaise qualité pendant le processus de contrôle de la qualité des données CTP. À l’aide de la combinaison d’un modèle de mélange gaussien (GMM) pour regrouper les analyses de la CTP dans des groupes ayant des propriétés physiques semblables et de perceptrons multicouches pour classer les analyses dans chaque groupe, nous sommes en mesure de signaler automatiquement les analyses de mauvaise qualité à supprimer avec un degré élevé d’exactitude. Grâce au déploiement du modèle en tant que point d’extrémité en ligne en temps réel et au soutien de la communication du modèle au moyen d’un programme côté-client, nous avons réussi à intégrer un modèle expérimental au processus opérationnel du client dans un environnement de mise à l’essai sur le terrain. La poursuite de ce travail visera maintenant à intégrer le modèle dans un environnement de production pour un usage régulier dans le cadre du processus de contrôle de la qualité.

Objectifs du cas d’usage

Le processus de contrôle de la qualité des données CTP exige beaucoup de temps. Un océanographe effectue une inspection visuelle pour repérer les analyses de mauvaise qualité dans chaque profil CTP à l’aide d’un logiciel d’édition graphique. Étant donné que la tâche exige une inspection minutieuse des données et des profils CTP recueillis au cours d’une année, ce travail demande beaucoup de temps et d’efforts. Pour alléger ce fardeau, nous avons produit un outil d’intelligence artificielle capable de signaler les analyses de la CTP de mauvaise qualité de sorte que ces indicateurs puissent être affichés dans le logiciel d’édition graphique pour l’océanographe. Cela permet d’accélérer la tâche en fournissant une référence rapide pour les secteurs des profils CTP où une attention est requise. En fournissant des indicateurs pour la prise de décisions assistées plutôt qu’en utilisant le modèle pour la prise de décisions entièrement automatisée, nous préservons la capacité de l’océanographe d’avoir recours à son expertise dans le domaine pour prendre les meilleures décisions possibles. À mesure que le modèle prend de l’expérience et que son rendement s’améliore, nous pouvons explorer des options pour accroître le degré d’automatisation.


  • Tâche d’apprentissage machine : Signaler à l’avance les analyses à supprimer au moment du contrôle de la qualité des données CTP.
  • Valeur opérationnelle : Les analyses signalées permettent à l’océanographe de concentrer rapidement son attention sur les secteurs essentiels, ce qui réduit le temps et l’effort requis pour supprimer les analyses.
  • Mesures du succès :
    • Exactitude des prévisions du modèle
    • Commentaires des clients sur l’accélération du contrôle de la qualité
  • Objectifs ultimes :
    • Atténuation de l’incertitude dans les décisions humaines
    • Automatisation partielle ou complète des suppressions d’analyses


Pipeline d’apprentissage automatique

Le pipeline d’apprentissage automatique comprend trois étapes principales, soit la préparation des données, le partitionnement des données au moyen d’un modèle de mélange gaussien (GMM) et la classification des données au moyen d’un perceptron multicouche.

La préparation des données couvre les tâches d’apprentissage machine standard que sont le nettoyage des données, l’ingénierie des caractéristiques et la mise à l’échelle. L’ingénierie des caractéristiques sert à extraire les renseignements les plus pertinents des données pour une utilisation ultérieure dans la tâche de classification. Le perceptron multicouche classe chaque analyse de la CTP indépendamment en fonction de ses caractéristiques. Cependant, le voisinage entourant chaque analyse contient souvent des renseignements précieux sur les changements de valeurs des caractéristiques dans la dimension de profondeur du profil CTP et sur la vitesse à laquelle ces valeurs changent. Des changements soudains et rapides des valeurs peuvent être de forts indicateurs de facteurs corrompant les données enregistrées dans les analyses de la CTP. Par conséquent, nous plaçons des fenêtres de différentes tailles autour de chaque analyse de la CTP et calculons des statistiques sur les valeurs de l’analyse dans la fenêtre afin de renforcer chaque analyse avec des renseignements sur des voisinages de différentes tailles. Nos évaluations expérimentales ont montré que ces caractéristiques supplémentaires ont un effet positif sur le rendement du modèle.

L’étape du partitionnement des données est utilisée pour diviser les analyses de la CTP en groupes ayant des propriétés physiques similaires les uns aux autres. Étant donné que les profils CTP sont recueillis dans une vaste zone géographique (le nord-est du Pacifique), sur une vaste étendue de profondeurs (de 0 à 4 300 mètres sous la surface) et pour toutes les saisons, ces variations spatio-temporelles mènent à une distribution très variée des propriétés physiques dans les analyses de la CTP. Ce degré de variation est difficile à gérer pour un seul perceptron multicouche et pour qu’il apprenne à distinguer les analyses de bonne ou de mauvaise qualité dans toutes les conditions observées. Le rendement peut être grandement amélioré en partitionnant d’abord les analyses, puis en entraînant un perceptron multicouche distinct pour chaque partition. Pour ce faire, nous utilisons un modèle de mélange gaussien entraîné aux principales propriétés physiques des analyses, à savoir les valeurs de température, de conductivité et de salinité.

Enfin, la classification des données est réalisée à l’aide d’un perceptron multicouche par groupe d’analyses de la CTP. Le perceptron multicouche est entraîné à la classification binaire pour signaler les analyses de la CTP comme étant de mauvaise qualité (à supprimer) ou de bonne qualité (à conserver). La réalité de terrain utilisée pour produire les données d’entraînement est dérivée des exemples historiques de contrôle de la qualité, en utilisant les décisions prises par les océanographes dans le passé au sujet des analyses à supprimer. Les analyses supprimées sont beaucoup moins nombreuses que les analyses conservées, ce qui rend les données d’entraînement très déséquilibrées. Cela pose souvent un problème dans un contexte d’apprentissage automatique, car cela amène le modèle à apprendre d’une manière qui favorise la classe majoritaire. Pour y remédier, nous appliquons un suréchantillonnage pour dupliquer aléatoirement les analyses supprimées dans les données d’entraînement afin d’équilibrer leurs nombres avec les analyses conservées.


Rendement du modèle expérimental

Afin de valider le rendement du modèle, nous avons effectué une expérimentation à l’aide des données CTP historiques couvrant les années 2013 à 2021. Nous utilisons une méthodologie de validation croisée à cinq volets pour assurer la robustesse des résultats mesurés.

Il est important que le modèle soit en mesure de classer efficacement à la fois les analyses à supprimer et les analyses à conserver, ou dans le contexte de l’apprentissage automatique, les échantillons positifs et négatifs. Bien que le rendement pour la classification des échantillons positifs et négatifs puisse être mesuré séparément, nous avons configuré le modèle de façon à équilibrer le rendement entre ces deux objectifs. Par conséquent, nous ne déclarons ici que l’exactitude globale du modèle par souci de simplicité. L’exactitude globale obtenue par le modèle est d’environ 92,6 % mesurée par rapport aux décisions historiques prises par les océanographes. Cela démontre que le modèle a appris à observer efficacement les schémas indiquant des analyses de mauvaise qualité et à reproduire avec un degré élevé de précision la prise de décision utilisée par les océanographes.

Il est également important de noter que la qualité des indicateurs du modèle est influencée par la profondeur des analyses traitées. Les profondeurs les plus superficielles sont les plus difficiles à gérer, car les plus grandes variations des propriétés physiques de l’eau se produisent près de la surface. La figure de droite présente une ventilation des rendements du modèle par plage de profondeur. Les 50 premiers mètres présentent un défi considérable, ce qui donne une exactitude de modèle d’environ 88,7 %. Les analyses inférieures à 500 mètres sont plus régulières, ce qui donne une exactitude de modèle d’environ 94,1 %.

La précision parfaite du modèle ne sera jamais atteinte, car la prise de décisions est incertaine, même pour les océanographes. De nombreux facteurs complexes entrent en jeu et influencent les données qui sont finalement enregistrées, comme l’eau agitée qui cause la descente irrégulière de l’équipement d’analyse, les vents et les conditions météorologiques violentes qui causent le mélange des eaux près de la surface, et les courants qui causent le mélange des eaux sous la surface. Comme la distinction entre les données d’analyse correctes et corrompues peut être très difficile à repérer dans ces conditions, le processus de prise de décision humaine n’est pas assuré d’être parfait. Cela met en évidence un domaine potentiel où le développement de modèles d’IA plus matures qui peuvent exploiter des renseignements supplémentaires sur ces facteurs pourrait mener à des approches automatisées susceptibles d’éventuellement améliorer la qualité globale des décisions humaines.




Déploiement et intégration du modèle

Pour tirer une valeur pratique du modèle d’IA, il faut l’intégrer au processus opérationnel du client d’une manière facile à utiliser. Nous avons adopté une approche consistant à rendre le modèle disponible au moyen d’un point d’extrémité en ligne en temps réel déployé sur une plateforme d’analytique infonuagique. Le client utilise ensuite le modèle en communiquant avec le point d’extrémité géré par un programme côté-client qui fonctionne sur la machine de l’utilisateur.

Pour les paramètres d’essai sur le terrain, nous avons utilisé Azure Databricks comme plateforme d’analytique infonuagique au moyen de laquelle le modèle est déployé. Un point d’extrémité en ligne en temps réel est utilisé pour rendre le modèle disponible au moyen d’une interface de programmation d’application (API). Cela signifie que les utilisateurs authentifiés peuvent accéder au modèle à partir de n’importe quelle machine connectée à Internet. Nous avons produit un programme côté-client léger qui fonctionne sur la machine de l’utilisateur pour gérer la communication avec le modèle. Ce programme fournit une interface graphique simple permettant de sélectionner les fichiers CTP à envoyer au modèle pour traitement. Le programme reçoit ensuite une réponse comportant les indicateurs générés par le modèle et enregistre les nouveaux fichiers contenant les résultats. Ces fichiers peuvent être chargés directement dans l’éditeur graphique utilisé pendant le processus standard de contrôle de la qualité des données CTP. L’utilisateur dispose ainsi d’une méthode simple pour utiliser le modèle avec un minimum de frais généraux et intègre les résultats du modèle directement dans le logiciel de contrôle de la qualité existant.

L’utilisateur peut, en option, renvoyer les fichiers CTP au point d’extrémité du modèle une fois le processus de contrôle de la qualité terminé. Cela permet de comparer les décisions de suppression d’analyses prises par l’utilisateur avec les indicateurs prévus par le modèle afin d’évaluer le rendement du modèle. Les résultats sont ensuite analysés afin de fournir une ventilation du rendement du modèle pour diverses mesures qui sont présentées visuellement dans un rapport Power BI.



Prochaines étapes

Après avoir franchi les étapes de validation de principe et d’essai sur le terrain, le modèle a démontré des résultats positifs qui peuvent générer une valeur opérationnelle en accélérant le processus de contrôle de la qualité des données CTP. Nous sommes maintenant en mesure de commencer les préparatifs pour intégrer le modèle dans un environnement de production. Des améliorations seront apportées au déploiement du modèle, à l’architecture d’intégration et au code de soutien afin de garantir que le client puisse disposer de la fonctionnalité du modèle sous la forme d’un outil solide. Une surveillance doit également être mise en œuvre pour veiller à ce que le modèle continue d’offrir un rendement fiable au fil du temps. Si une dérive du modèle est détectée pendant la surveillance, cela doit déclencher une action corrective pour entraîner le modèle de nouveau. Enfin, un tableau de bord approfondi des rapports sur le modèle sera conçu pour fournir des renseignements détaillés sur le rendement du modèle, ce qui permettra à l’utilisateur de mieux comprendre l’outil avec lequel il travaille.