Curve Fitting Toolbox

Principales fonctionnalités

  • Application Curve Fitting (ajustement de courbes) pour l'ajustement de courbes et de surfaces
  • Régression linéaire et non linéaire avec des équations personnalisées
  • Bibliothèque de modèles de régression avec des paramètres de solveur et points de départ optimisés
  • Méthodes d'interpolation, comprenant notamment les B-splines, les splines de type « plaque mince » et les splines de type « produit tensoriel »
  • Techniques de lissage, comprenant notamment les splines de lissage, la régression localisée, les filtres Savitzky-Golay et les moyennes mobiles
  • Routines de prétraitement, comprenant notamment la suppression de valeurs aberrantes ainsi que la division, la réduction et la pondération de données
  • Routines de post-traitement, comprenant notamment l'interpolation, l'extrapolation, les intervalles de confiance, les intégrales et les dérivées
Surface generated using the Curve Fitting app.

Surface générée par le biais de l'outil d'ajustement de surfaces. L'outil prend en charge différentes méthodes d'ajustement, comprenant notamment la régression linéaire, la régression non linéaire, l'interpolation et le lissage.

Utilisation de Curve Fitting Toolbox

Curve Fitting Toolbox propose les techniques les plus largement utilisées pour l'ajustement de courbes et de surfaces aux données, comprenant notamment la régression linéaire et non linéaire, les splines et l'interpolation ainsi que le lissage. La boîte à outils prend en charge des options permettant une régression robuste pour ajuster les ensembles de données contenant des valeurs aberrantes. Vous pouvez accéder à tous les algorithmes par le biais de fonctions ou de l'application Curve Fitting

Fitting multiple candidate models to a single data series using the Curve Fitting app.

Ajustement de modèles candidats multiples à une série de données unique à l'aide de l'application Curve Fitting. Vous pouvez comparer visuellement les surfaces ajustées ou utiliser des indicateurs permettant de mesurer la qualité de l'ajustement tels que R2, R2 ajusté, la somme des erreurs quadratiques et l'erreur quadratique moyenne.

Ajustement des données de manière interactive

L'application Curve Fitting simplifie les tâches courantes, dont:

  • L'importation de données depuis l'espace de travail MATLAB®
  • La visualisation des données pour l'exécution d'une analyse exploratoire
  • La génération d'ajustements à l'aide d'algorithmes d'ajustement
  • L'évaluation de l'exactitude des modèles
  • L'exécution d'une analyse de post-traitement comprenant l'interpolation et extrapolation, la génération d'intervalles de confiance ainsi que le calcul d'intégrales et de dérivées
  • L'exportation d'ajustements vers l'espace de travail MATLAB pour une analyse approfondie
  • La génération automatique de code MATLAB permettant de capturer le travail et d'automatiser les tâches
MATLAB function generated with the Surface Fitting Tool.

Fonction MATLAB générée par le biais de l'application Curve Fitting.

Utilisation de la ligne de commande

L'utilisation de la ligne de commande permet de développer des fonctions personnalisées pour l'analyse et la visualisation. Ces fonctions permettent d'effectuer les opérations suivantes :

  • Dupliquer l'analyse avec un nouvel ensemble de données
  • Reproduire l'analyse avec des ensembles de données multiples (traitement en batch)
  • Intégrer une routine d'ajustement dans les fonctions MATLAB
  • Étendre les fonctionnalités de base de la boîte à outils

Curve Fitting Toolbox propose une syntaxe simple et intuitive pour l'ajustement à partir de la ligne de commande. En voici quelques exemples :

  • Régression linéaire : fittedmodel = fit([X,Y], Z, 'poly11');
  • Régression non linéaire : fittedmodel = fit(X, Y, 'fourier2');
  • Interpolation : fittedmodel = fit([Time,Temperature], Energy, 'cubicinterp');
  • Lissage : fittedmodel = fit([Time,Temperature], Energy, 'lowess', 'span', 0.12);

Les résultats d'une opération d'ajustement sont stockés dans un objet nommé « fittedmodel ». Vous pouvez effectuer une analyse de post-traitement, telle que le tracé, l'évaluation ainsi que le calcul d'intégrales et de dérivées, en appliquant une méthode à cet objet. Par exemple :

  • Tracé : plot(fittedmodel)
  • Dérivation : differentiate(fittedmodel, X, Y)
  • Évaluation : fittedmodel(80, 40)

Curve Fitting Toolbox permet de déplacer l'ajustement interactif vers la ligne de commande. À l'aide de l'application, vous pouvez générer automatiquement du code MATLAB. Vous pouvez également créer des objets d'ajustement dans l'application et les exporter vers l'espace de travail MATLAB pour approfondir l'analyse.

Extending the capabilities of the toolbox with a custom visualization.

Extension des fonctionnalités de la boîte à outils avec une visualisation personnalisée. La couleur de la carte de chaleur correspond à l'écart entre la surface ajustée et un modèle de référence.

Régression

Curve Fitting Toolbox prend en charge la régression linéaire et non linéaire.

Régression linéaire

La boîte à outils prend en charge plus de 100 modèles de régression, notamment :

  • Lignes et plans
  • Polynômes d'ordre élevé (jusqu'au neuvième degré pour les courbes et jusqu'au cinquième pour les surfaces)
  • Séries de Fourier et de puissances
  • Fonctions gaussiennes
  • Fonctions de Weibull
  • Fonctions exponentielles
  • Fonctions rationnelles
  • Somme de sinus

Tous ces modèles de régression standard comprennent des conditions de départ et paramètres de solveur optimisés qui permettent d'améliorer la qualité de l'ajustement. Vous pouvez également utiliser l'option d'équation personnalisée pour indiquer votre propre modèle de régression.

Dans l'application Curve Fitting, vous pouvez générer des ajustements à partir de modèles paramétriques complexes par le biais d'un menu déroulant. La ligne de commande permet d'accéder aux mêmes modèles à l'aide de noms intuitifs.

Nonlinear regression using a second-order Fourier series.

Régression non linéaire via une série de Fourier du second ordre. Vous pouvez transmettre l'argument « fourier2 » à la commande d'ajustement (en haut à gauche) ou sélectionner une série de Fourier du second ordre dans l'éditeur d'ajustement (en haut à droite).

Surface generated using the Custom Equation option of the Curve Fitting app.

Surface générée par le biais de l'option d'équation personnalisée de l'application Curve Fitting. Vous pouvez indiquer une équation personnalisée ou saisir une fonction MATLAB.

Les options d'analyse de régression dans Curve Fitting Toolbox permettent d'effectuer les opérations suivantes :

  • Choisir l'un des deux types de régression robuste : biquadratique ou moindre résidu absolu
  • Indiquer des conditions de départ pour les solveurs
  • Contraindre les coefficients de régression
  • Choisir un algorithme à régions de confiance ou l'algorithme de Levenberg-Marquardt
Adjusting fit options using the Curve Fitting app.

Définition des options d'ajustement par le biais de l'application Curve Fitting. Vous pouvez définir le type de régression robuste, le choix du solveur d'optimisation et le comportement du solveur en fonction des conditions d’initialisation et des contraintes.

Splines et interpolation

Curve Fitting Toolbox prend en charge différentes méthodes d'interpolation, notamment les B-splines, les splines de type « plaque mince » et les splines de type « produit tensoriel ». Curve Fitting Toolbox propose des fonctions pour des opérations de splines avancées telles que la manipulation de ruptures/nœuds, le placement optimal des nœuds et la pondération de points de données.

A cubic B-spline and the four polynomials from which it is made.

Une B-spline cubique et les quatre polynômes qui la composent. Les splines sont des polynômes lisses par morceaux qui permettent de représenter des fonctions sur de grands intervalles.

Vous pouvez représenter une spline polynômiale de type « ppform » ou « B-form ». Le type « ppform » décrit la spline en termes de points de ruptures et de coefficients polynômiaux locaux. Il est utile lorsque la spline est évaluée de façon approfondie. Le type « B-form » décrit une spline comme une combinaison linéaire de B-splines, en particulier la séquence de nœuds et les coefficients de B-splines.

Curve Fitting Toolbox prend également en charge d'autres types d'interpolation, notamment :

  • L'interpolation linéaire
  • L'interpolation au plus proche voisin
  • L'interpolation cubique par morceaux
  • L'interpolation de surface biharmonique
  • Polynôme d'interpolation d'Hermite cubique par morceaux (Piecewise Cubic Hermite Interpolating Polynomial, PCHIP)

Les commandes Curve Fitting Toolbox pour la construction d'approximations de splines prennent en charge des grilles de données vectorielles, vous permettant ainsi de créer des courbes et surfaces dans n'importe quel nombre de dimensions.

Linear interpolation using the Curve Fitting app.

Interpolation linéaire via l'application Curve Fitting.

Lissage

Les algorithmes de lissage sont largement utilisés pour supprimer les bruits des ensembles de données tout en préservant des formes pertinentes. Curve Fitting Toolbox prend en charge à la fois les splines de lissage et la régression localisée, vous permettant ainsi de générer un modèle prédictif sans avoir à indiquer une relation fonctionnelle entre les variables.

Localized regression model.

Modèle de régression localisée. Vous pouvez utiliser les techniques de lissage pour générer des modèles prédictifs sans indiquer une relation paramétrique entre les variables.

Ajustement non paramétrique 4:07
Développez un modèle prédictif lorsque vous ne pouvez pas définir de fonction décrivant les relations entre les variables.

Curve Fitting Toolbox prend en charge la régression localisée soit à l'aide d'un polynôme du premier ordre (lowess), soit à l'aide d'un polynôme du second ordre (loess). La boîte à outils propose également des options de régression localisée robuste pour ajuster les ensembles de données contenant des valeurs aberrantes. Curve Fitting Toolbox prend également en charge des lisseurs de moyennes mobiles tels que les filtres Savitzky-Golay.

Exploratory data analysis using a Savitzky-Golay filter.

Analyse de données exploratoire par le biais d'un filtre Savitzky-Golay. Les données de lissage permettent d'identifier les composantes périodiques.

Aperçu et prétraitement des données

Curve Fitting Toolbox prend en charge un workflow complet qui débute par une analyse de données exploratoire (exploratory data analysis, EDA), évolue par le biais d'un développement et d'une comparaison de modèles puis se termine par une analyse de post-traitement.

Vous pouvez tracer un ensemble de données dans deux ou trois dimensions. La boîte à outils propose des options permettant de supprimer des valeurs aberrantes, de diviser des séries de données ainsi que de pondérer et d'exclure des points de données.

Curve Fitting Toolbox permet de centrer et réduire automatiquement un ensemble de données pour normaliser les données et améliorer la qualité de l'ajustement. Vous pouvez utiliser l'option centrer-réduire si des écarts considérables apparaissent au niveau des échelles de variables ou si la distance entre les points de données diffère selon les dimensions.

Normalizing data with the Center and scale option to improve fit quality.

La normalisation de données via l'option centrer-réduire permet d'améliorer la qualité de l'ajustement.

Outlier exclusion using the Curve Fitting app.

Exclusion de valeurs aberrantes par le biais de l'application Curve Fitting (en haut). Vous pouvez créer des règles d'exclusion (au milieu) pour supprimer les points de données répondant à des critères spécifiques et utiliser l'option d'exclusion graphique (en bas) pour cliquer sur un point de données et le supprimer de l'échantillon.

Weighting data points using the Curve Fitting app.

Pondération de données par le biais de l'application Curve Fitting.

Développement, comparaison et gestion des modèles

Curve Fitting Toolbox permet d'ajuster des modèles candidats multiples à un ensemble de données. Vous pouvez ensuite évaluer la qualité de l'ajustement à l'aide d'une combinaison de statistiques descriptives, d'inspection visuelle et de validation.

Statistiques descriptives

Curve Fitting Toolbox propose une large gamme de statistiques descriptives, comprenant notamment :

  • R au carré et R au carré ajusté
  • La somme des erreurs quadratiques et erreur quadratique moyenne
  • Les degrés de liberté

Le tableau des ajustements répertorie tous les modèles candidats dans un tableau triable, vous permettant ainsi de comparer rapidement plusieurs modèles.

The Curve Fitting app, which provides a sortable table of candidate models.

L'application Curve Fitting propose un tableau avec des filtres contenant les modèles candidats.

Inspection visuelle des données

La boîte à outils permet d'inspecter visuellement les modèles candidats pour déceler les problèmes relatifs aux ajustements qui n'apparaissent pas dans les statistiques récapitulatives. Par exemple, vous pouvez :

  • Générer des tracés de résidus et de surfaces juxtaposés pour rechercher des formes dans les résidus
  • Tracer simultanément plusieurs modèles pour comparer la façon dont ils s'ajustent aux données dans des zones critiques
  • Tracer les écarts entre deux modèles comme nouvelle surface
Surface generated with the Curve Fitting app.

Surface générée par l'application Curve Fitting. La couleur de la carte de chaleur correspond à l'écart entre la surface ajustée et un modèle de référence.

Techniques de validation

Curve Fitting Toolbox prend en charge des techniques de validation qui assurent une protection contre le surajustement. Vous pouvez générer un modèle prédictif à l'aide d'un ensemble de données d'apprentissage, appliquer vos modèles à un ensemble de données de validation puis évaluer la qualité de l'ajustement.

Analyse de post-traitement

Une fois que vous avez sélectionné la courbe ou surface qui décrit le mieux la série de données, vous pouvez effectuer une analyse de post-traitement. Curve Fitting Toolbox permet d'effectuer les opérations suivantes :

  • Créer des tracés
  • Utiliser votre modèle pour estimer des valeurs (évaluation)
  • Calculer des intervalles de confiance
  • Créer des limites de prévision
  • Déterminer l'aire sous la courbe (intégration)
  • Calculer des dérivées
Postprocessing analysis with the Curve Fitting Tool.

L'analyse de post-traitement effectuée à l'aide de l'application Curve Fitting permet la création automatique d'un nuage de points pour les données brutes ainsi que pour la courbe ajustée. Les dérivées première et seconde de la courbe ajustée s'affichent également.

Les exemples suivants illustrent la façon dont le post-traitement au niveau de la ligne de commande applique des commandes intuitives aux objets créés à partir d'une opération d'ajustement :

  • Évaluation : EnergyConsumption = fittedmodel(X, Y)
  • Tracé : EnergySurface = plot(fittedmodel)
  • Intégration : Volume_Under_Surface = quad2d(fittedmodel, Min_X, Max_X, Min_Y, Max_Y)
  • Dérivation : Gradient = differentiate(fittedmodel, X,Y)
  • Calcul des intervalles de confiance : Confidence_Intervals = confint(fittedmodel)
Using command-line postprocessing to calculate and plot a gradient.

Utilisation du post-traitement au niveau de la ligne de commande pour calculer et tracer un gradient.

Essayer Curve Fitting Toolbox

Obtenir une version d'évaluation

Du dimensionnement à la génération de code avec le Model Based Design (MBD) - Exemple d'une climatisation avec Simscape et Simulink

Visionner le webinar