> ## Documentation Index
> Fetch the complete documentation index at: https://docs.wandb.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Référence du graphique en courbes

> Référence des paramètres du panneau de graphique en courbes, notamment l’axe X, l’axe Y, le lissage, l’agrégation et les options de regroupement.

Cette page présente des informations détaillées sur les paramètres du graphique en courbes. Pour en savoir plus sur l’utilisation des graphiques en courbes, voir l’[Aperçu des graphiques en courbes](/fr/models/app/features/panels/line-plot).

<div id="data-settings">
  ## Paramètres des données
</div>

Les paramètres des données déterminent quelles métriques s’affichent sur le graphique et comment les points de données sont échantillonnés, lissés et agrégés.

<div id="x-axis">
  ### Axe X
</div>

<Frame>
  <img src="https://mintcdn.com/wb-21fd5541/UhAQoGpm-LvpH3-8/images/app_ui/reference_x_axis.png?fit=max&auto=format&n=UhAQoGpm-LvpH3-8&q=85&s=2d3143e16c7509969a79e3fb5ebc76f4" alt="Sélection de l’axe X" width="3826" height="1434" data-path="images/app_ui/reference_x_axis.png" />
</Frame>

Définissez la plage de l’axe X sur n’importe quelle valeur entière ou à virgule flottante que vous avez enregistrée avec `wandb.Run.log()`.

Options d’axe X basées sur le temps disponibles :

* **Étape**: S’incrémente à chaque appel de `wandb.Run.log()`. Reflète le nombre d’étapes d’entraînement enregistrées par votre modèle. (Par défaut)
* **Temps relatif (horloge)**: Temps écoulé depuis le démarrage du processus. Si vous démarrez un run, le mettez en pause pendant une journée, puis le reprenez et enregistrez, ce point apparaît à 24 heures.
* **Temps relatif (processus)**: Temps écoulé dans le processus en cours d’exécution. Si vous démarrez un run, l’exécutez pendant 10 secondes, le mettez en pause pendant une journée, puis le reprenez, ce point apparaît à 10 secondes.
* **Temps réel**: Minutes écoulées depuis le début du premier run sur le graphique.
* **Plage X**: Va par défaut de la plus petite à la plus grande valeur de votre axe X. Vous pouvez personnaliser les valeurs minimale et maximale.

<div id="y-axis">
  ### Axe Y
</div>

Définissez les variables de l’axe y sur n’importe quelle valeur entière ou à virgule flottante que vous avez enregistrée avec `wandb.Run.log()`. Indiquez une valeur unique, un tableau de valeurs ou un histogramme de valeurs. Si vous avez enregistré plus de 1 500 points pour une variable, W\&B en échantillonne 1 500.

<Note>
  Personnalisez la couleur des lignes de l’axe y en modifiant la couleur du run dans la Runs table.
</Note>

L’option **Plage Y** s’étend par défaut de la plus petite valeur positive de vos métriques (0 inclus) à la plus grande. Vous pouvez personnaliser les valeurs minimale et maximale.

<div id="point-aggregation-method">
  ### Méthode d’agrégation des points
</div>

Choisissez le mode d’échantillonnage pour afficher les points de données :

* **Échantillonnage aléatoire** (par défaut) : Voir [Échantillonnage aléatoire](/fr/models/app/features/panels/line-plot/sampling/#random-sampling).
* **Fidélité totale** : Voir [Fidélité totale](/fr/models/app/features/panels/line-plot/sampling/#full-fidelity).

<div id="smoothing">
  ### Lissage
</div>

Définissez le [coefficient de lissage](/fr/support/models/articles/what-formula-do-you-use-for-your-smoothi) entre 0 et 1, où 0 signifie aucun lissage et 1 un lissage maximal.

Méthodes de lissage disponibles :

* **EMA pondérée dans le temps** (par défaut) : technique de moyenne mobile exponentielle (EMA) pour le lissage des données de séries temporelles qui réduit de façon exponentielle le poids des points précédents.
* **Moyenne mobile** : remplace un point par la moyenne des points d’une fenêtre située avant et après la valeur x donnée.
* **Gaussienne** : calcule une moyenne pondérée des points, où les poids correspondent à une distribution gaussienne dont l’écart type est défini comme paramètre de lissage.
* **Aucun lissage**

Pour plus de détails, voir [Lissage des graphiques en courbes](/fr/models/app/features/panels/line-plot/smoothing).

<div id="ignore-outliers">
  ### Ignorer les valeurs aberrantes
</div>

Redimensionnez le graphique pour exclure les valeurs aberrantes de l'échelle min./max. par défaut. L'impact de ce paramètre dépend du mode d'échantillonnage du graphique :

* **Mode d'échantillonnage aléatoire** : ignorer les valeurs aberrantes omet du graphique les points en dessous de 5 % et au-dessus de 95 %.
* **Mode de fidélité totale** : ignorer les valeurs aberrantes affiche tous les points, ramenés à la dernière valeur de chaque bucket, et grise la zone en dessous de 5 % et au-dessus de 95 %.

<div id="max-runs-or-groups">
  ### Nombre maximal de runs ou de groupes
</div>

Par défaut, les graphiques incluent seulement les 10 premiers runs ou groupes de runs de la liste ou de l’ensemble de runs. Modifiez l’ordre de tri pour choisir quels runs ou groupes afficher.

<Note>
  Un Workspace ne peut afficher que 1 000 runs maximum, quelle que soit sa configuration.
</Note>

<div id="chart-type">
  ### Type de graphique
</div>

Choisissez le style du graphique :

* **Graphique en courbes**
  <Frame>
    <img src="https://mintcdn.com/wb-21fd5541/UhAQoGpm-LvpH3-8/images/app_ui/plot_style_line_plot.png?fit=max&auto=format&n=UhAQoGpm-LvpH3-8&q=85&s=b6faa4e9555288db3d926c1a1e28189c" alt="Style de graphique en courbes" width="964" height="435" data-path="images/app_ui/plot_style_line_plot.png" />
  </Frame>
* **Graphique en aires**
  <Frame>
    <img src="https://mintcdn.com/wb-21fd5541/UhAQoGpm-LvpH3-8/images/app_ui/plot_style_area_plot.png?fit=max&auto=format&n=UhAQoGpm-LvpH3-8&q=85&s=ca5b997dcc3d3e17f6867944feadc588" alt="Style de graphique en aires" width="949" height="420" data-path="images/app_ui/plot_style_area_plot.png" />
  </Frame>
* **Graphique en aires en pourcentage**
  <Frame>
    <img src="https://mintcdn.com/wb-21fd5541/UhAQoGpm-LvpH3-8/images/app_ui/plot_style_percentage_plot.png?fit=max&auto=format&n=UhAQoGpm-LvpH3-8&q=85&s=17af77ce5fc5581746d4b1890c7ce024" alt="Style de graphique en aires en pourcentage" width="956" height="420" data-path="images/app_ui/plot_style_percentage_plot.png" />
  </Frame>

Configurez le type de graphique dans l'onglet **Data**. Reportez-vous à [Graphique en courbes individuel](/fr/models/app/features/panels/line-plot#individual-line-plot).

<div id="grouping-settings">
  ## Paramètres de regroupement
</div>

Regroupez tous les runs en activant le regroupement, ou regroupez-les selon une variable donnée. Lorsque vous activez le regroupement dans le tableau des runs, les groupes s’affichent automatiquement dans le graphique.

* **Regrouper les runs** : Active le regroupement des runs dans le graphique. Requis pour configurer la zone ombrée du graphique.
* **Regrouper par** : Sélectionnez éventuellement une colonne. Tous les runs ayant la même valeur dans cette colonne sont regroupés ensemble.
* **Agrégation** : La valeur de la courbe sur le graphique. Les options sont la moyenne, la médiane, le minimum et le maximum du groupe.
* **Plage** : Configurez la zone ombrée d’un graphique en courbes à fidélité totale. Les options sont Min/Max, écart-type, erreur standard ou aucune.

<div id="chart-settings">
  ## Paramètres du graphique
</div>

Configurez les titres et l’affichage de la légende :

* **Titre du panneau** : Titre affiché en haut du panneau.
* **Titre de l’axe x** : Libellé de l’axe x.
* **Titre de l’axe y** : Libellé de l’axe y.
* **Légende** : Affichez ou masquez la légende et configurez sa position.

<div id="legend-settings">
  ## Paramètres de la légende
</div>

Personnalisez la légende pour afficher n’importe quelle valeur de configuration enregistrée ainsi que les métadonnées des runs, comme la date de création ou l’utilisateur ayant créé le run.

<div id="legend-template">
  ### Modèle de légende
</div>

Définissez un modèle pour le nom affiché dans la légende.

1. Cliquez sur l’icône d’engrenage pour ouvrir les paramètres du graphique.
2. Accédez à l’onglet **Préférences d’affichage**.
3. Développez **Légende avancée**, puis indiquez le modèle de légende.
4. Cliquez sur **Appliquer**.

<div id="point-specific-values">
  ### Valeurs spécifiques à un point
</div>

Définissez des valeurs entre `[[ ]]` pour afficher des valeurs spécifiques à un point dans le réticule lorsque vous survolez un graphique.

1. Cliquez sur l’icône d’engrenage pour ouvrir les paramètres du graphique.
2. Accédez à l’onglet **Préférences d’affichage**.
3. En bas de l’onglet, configurez des valeurs spécifiques à un point pour une ou plusieurs métriques du graphique.
4. Cliquez sur **Appliquer**.

Valeurs prises en charge entre `[[ ]]` :

| Valeur        | Signification                                                |
| ------------- | ------------------------------------------------------------ |
| `${x}`        | Valeur X                                                     |
| `${y}`        | Valeur Y (y compris l’ajustement du lissage)                 |
| `${original}` | Valeur Y sans l’ajustement du lissage                        |
| `${mean}`     | Moyenne des runs groupés                                     |
| `${stddev}`   | Écart type des runs groupés                                  |
| `${min}`      | Minimum des runs groupés                                     |
| `${max}`      | Maximum des runs groupés                                     |
| `${percent}`  | Pourcentage du total (pour les graphiques en aires empilées) |

<div id="expressions">
  ## Expressions
</div>

Formulez des expressions mathématiques pour créer ou transformer des graphiques en courbes à partir de vos métriques enregistrées, des valeurs de configuration et des statistiques de synthèse. Par exemple, vous pouvez calculer la différence entre deux métriques, mettre à l’échelle une métrique à l’aide d’une valeur de configuration, ou tracer le logarithme d’une métrique. Les expressions sont évaluées à chaque étape que vous consignez.

Les sections suivantes montrent comment faire référence à des valeurs dans des expressions et décrivent les opérateurs et les fonctions que vous pouvez utiliser dans des expressions personnalisées. Dans un graphique en courbes, vous pouvez utiliser une expression pour l’axe X, l’axe Y, ou les deux.

Voir [Exemples d’expressions](#example-expressions) pour des cas d’usage courants et des expressions types.

<div id="create-new-line-plots-with-expressions">
  ### Créer de nouveaux graphiques en courbes avec des expressions
</div>

1. Accédez au workspace de votre projet.
2. Cliquez sur le bouton **+ Add panel**, puis sélectionnez **graphique en courbes**.
3. Cliquez sur l’onglet **Data**. Sélectionnez les données que vous souhaitez représenter sur le graphique en courbes pour les axes x et y.
4. Cliquez sur l’onglet **Expressions**.
5. Dans le champ **axe Y** ou **axe X**, saisissez votre expression.
6. Cliquez sur **appliquer** pour enregistrer vos paramètres et afficher le graphique en courbes.

<div id="transform-existing-line-plots-with-expressions">
  ### Transformez des graphiques en courbes existants à l’aide d’expressions
</div>

1. Ouvrez le graphique en courbes que vous souhaitez transformer.
2. Cliquez sur l’icône d’engrenage dans le coin supérieur droit du graphique pour modifier le panneau.
3. Cliquez sur l’onglet **Expressions**.
4. Dans le champ **axe Y** ou le champ **axe X**, saisissez votre expression.
5. Cliquez sur **Appliquer** pour enregistrer vos paramètres et afficher le graphique en courbes mis à jour.

<div id="referencing-values">
  ### Référencer des valeurs
</div>

Le tableau suivant décrit comment référencer des métriques enregistrées, des paramètres de configuration et des statistiques de synthèse dans les expressions de graphique en courbes.

| Type                       | Syntaxe                | Description                                                                     | Exemples                                            |
| -------------------------- | ---------------------- | ------------------------------------------------------------------------------- | --------------------------------------------------- |
| Métrique                   | `${metric_name}`       | Fait référence à une métrique enregistrée par son nom.                          | `${val/accuracy}`, `${"accuracy"}`                  |
| Paramètre de configuration | `${config:param_name}` | Fait référence à des valeurs de configuration à l'aide du préfixe `${config:}`. | `${config:lr}`, `${config:batch_size}`              |
| Statistique de synthèse    | `${summary:stat_name}` | Fait référence à des champs de synthèse à l'aide du préfixe `${summary:}`.      | `${summary:final_accuracy}`, `${summary:best_loss}` |

Utilisez `${...}` pour échapper tout nom de métrique, paramètre de configuration ou champ de synthèse contenant des caractères spéciaux ou des espaces, comme `/`, `-` ou des espaces.

Par exemple, si vous enregistrez une métrique nommée `val/accuracy`, référencez-la sous la forme `${val/accuracy}` pour éviter toute confusion avec l'opérateur de division. Si vous enregistrez un paramètre de configuration nommé `dropout-rate`, référencez-le sous la forme `${config:dropout-rate}`. Si vous enregistrez un champ de synthèse nommé `best loss`, référencez-le sous la forme `${summary:best loss}`.

<div id="nested-configs">
  #### Configurations imbriquées
</div>

Accédez aux valeurs de configuration imbriquées à l’aide de la notation pointée et de la syntaxe suivante :

```javascript theme={null}
${config:parent.child.grandchild}
```

Où `parent`, `child` et `grandchild` sont les clés du dictionnaire de configuration imbriqué.

Par exemple, supposons que vous enregistriez la configuration suivante avec des dictionnaires imbriqués :

```python theme={null}
config = {
    "model": {
        "type": "resnet",
        "layers": 50
    },
    "training": {
        "batch_size": 32,
        "learning_rate": 0.001
    }
}

with wandb.init(project="my-project", config=config) as run:
    ...
```

Vous pouvez faire référence au type de modèle avec : `${config:model.type}`. Vous pouvez faire référence à la taille de lot avec : `${config:training.batch_size}`.

Prenons un autre exemple avec la configuration suivante et des dictionnaires imbriqués :

```json Config parameters  theme={null}
config:
  optimizer:
    value:
      lr: 0.001
      weight_decay: 0.01
  model:
    value:
      hidden_size: 768
```

Faites référence au taux d’apprentissage avec `${config:optimizer.value.lr}`, à la taille de la couche cachée du modèle avec `${config:model.value.hidden_size}`, ou à la décroissance des poids avec `${config:optimizer.value.weight_decay}`.

<div id="available-operators">
  ### Opérateurs disponibles
</div>

W\&B prend en charge les opérateurs suivants dans les expressions de graphique en courbes :

| Catégorie    | Opérateurs                                         |
| ------------ | -------------------------------------------------- |
| Arithmétique | `+`, `-`, `*`, `/`, `%` (modulo), `**` (puissance) |
| Comparaison  | `==`, `!=`, `===`, `!==`, `<`, `>`, `<=`, `>=`     |
| Bit à bit    | `\|`, `^`, `&`, `<<`, `>>`, `>>>`                  |
| Logique      | `\|\|` , `&&`                                      |

<div id="math-constants-and-functions">
  ### Constantes et fonctions mathématiques
</div>

Toutes les fonctions et constantes mathématiques de JavaScript sont prises en charge. Pour plus de détails, voir la [documentation MDN sur Math](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Math). Les tableaux suivants résument les fonctions et constantes les plus couramment utilisées dans les expressions de graphique en courbes.

<div id="math-constants">
  #### Constantes mathématiques
</div>

| Constante | Description                |
| --------- | -------------------------- |
| `e`       | nombre d’Euler             |
| `pi`      | pi                         |
| `ln2`     | logarithme naturel de 2    |
| `ln10`    | logarithme naturel de 10   |
| `log2e`   | logarithme en base 2 de e  |
| `log10e`  | logarithme en base 10 de e |
| `sqrt2`   | racine carrée de 2         |
| `sqrt1_2` | racine carrée de 1/2       |

<div id="arithmetic-and-statistical-functions">
  #### Fonctions arithmétiques et statistiques
</div>

Le tableau suivant décrit les fonctions arithmétiques et statistiques disponibles :

| Fonction       | Description                                                     |
| -------------- | --------------------------------------------------------------- |
| abs(x)         | Valeur absolue                                                  |
| ceil(x)        | Fonction plafond (arrondi à l’entier supérieur le plus proche)  |
| floor(x)       | Fonction plancher (arrondi à l’entier inférieur le plus proche) |
| round(x)       | Arrondi à l’entier le plus proche                               |
| min(x, y, ...) | Valeur minimale                                                 |
| max(x, y, ...) | Valeur maximale                                                 |
| sqrt(x)        | Racine carrée                                                   |

<div id="logarithmic-and-exponential-functions">
  #### Fonctions logarithmiques et exponentielles
</div>

Le tableau suivant présente les fonctions logarithmiques et exponentielles disponibles :

| Fonction  | Description                  |
| --------- | ---------------------------- |
| log(x)    | Logarithme naturel (base e)  |
| log10(x)  | Logarithme en base 10        |
| log2(x)   | Logarithme en base 2         |
| exp(x)    | Fonction exponentielle (e^x) |
| pow(x, y) | Fonction puissance (x^y)     |

<div id="trigonometric-functions">
  #### Fonctions trigonométriques
</div>

Le tableau suivant décrit les fonctions trigonométriques disponibles :

| Fonction    | Description                    |
| ----------- | ------------------------------ |
| sin(x)      | Sinus                          |
| cos(x)      | Cosinus                        |
| tan(x)      | Tangente                       |
| asin(x)     | Arcsinus (sinus inverse)       |
| acos(x)     | Arccosinus (cosinus inverse)   |
| atan(x)     | Arctangente (tangente inverse) |
| atan2(y, x) | Arctangente à deux arguments   |

<div id="hyperbolic-functions">
  #### Fonctions hyperboliques
</div>

Le tableau suivant décrit les fonctions hyperboliques disponibles :

| Fonction | Description           |
| -------- | --------------------- |
| sinh(x)  | Sinus hyperbolique    |
| cosh(x)  | Cosinus hyperbolique  |
| tanh(x)  | Tangente hyperbolique |

<div id="example-expressions">
  ### Exemples d'expressions
</div>

Voici quelques exemples d'expressions pour les axes d'un graphique en courbes. Ces exemples sont fournis à titre illustratif. Vous pouvez utiliser n'importe quelle combinaison d'opérateurs et de fonctions décrits dans les sections précédentes pour créer des expressions complexes adaptées à vos besoins.

Pour les exemples suivants, supposons que vos [métriques de synthèse](/fr/models/track/log/log-summary#log-summary-metrics) incluent `accuracy` et `loss` avec les valeurs suivantes :

```json Summary metrics theme={null}
{
  "accuracy": 0.7829240801794489,
  "loss": 0.2194763318905079
}
```

Supposons que votre configuration ressemble à ceci :

```json Config parameters theme={null}
config = {
    "epochs": 100,
    "optimizer": {
        "value": {
            "lr": 0.001,
            "weight_decay": 0.01
        }
    }
}
```

Décalez verticalement la métrique de précision en lui ajoutant une valeur constante. Dans l’exemple suivant, augmentez la précision de 1 :

```javascript theme={null}
1 - accuracy
```

Décalez verticalement une métrique d’une valeur constante, ici le taux d’apprentissage (`lr`) :

```javascript theme={null}
accuracy+${config:optimizer.value.lr}
```

Calculez le sinus d’une métrique. Dans l’exemple suivant, calculez le sinus de la métrique de perte :

```javascript theme={null}
sin(loss)
```

Décalez la phase d’une métrique en lui appliquant une fonction sinus. Par exemple, appliquez une fonction sinus et décalez la phase de la métrique de perte de 2 :

```javascript theme={null}
sin(loss - 2)
```

Remettez à l’échelle la métrique de précision à l’aide du paramètre de configuration `batch_size` :

```javascript theme={null}
${accuracy} / ${config:batch_size}
```

Calculez la valeur minimale de deux métriques. Dans l’exemple suivant, calculez la valeur minimale de la perte et de la précision :

```javascript theme={null}
min(loss, accuracy)
```

Calculez la racine carrée de la somme des carrés de deux métriques. Dans l’exemple suivant, calculez la racine carrée de la somme des carrés de la perte et de la précision :

```javascript theme={null}
sqrt(loss ** 2 + accuracy ** 2)
```

Calculez l’exponentielle de la perte. Dans l’exemple suivant, calculez l’exponentielle de la métrique « perte » :

```javascript theme={null}
sqrt(loss*100)+sqrt(loss*100000)
```

<Note>
  Vous pouvez également utiliser les valeurs de synthèse des métriques dans les expressions avec la syntaxe `${summary:metric_name}`. Par exemple :

  ```javascript theme={null}
  sqrt(${summary:loss}*100)+sqrt(${summary:loss}*100000)
  ```
</Note>

<div id="multi-metric-panel-expressions">
  ### Expressions de panneau à plusieurs métriques
</div>

Utilisez une expression régulière pour créer un seul graphique en courbes affichant plusieurs métriques ensemble (y compris les métriques correspondantes qui seront enregistrées ultérieurement). Pour des instructions détaillées, voir [Ajouter un graphique en courbes](/fr/models/app/features/panels/line-plot#multi-metric-line-plot).

Par exemple :

* Au lieu de créer des panneaux distincts pour les métriques de chaque couche, vous pouvez les afficher ensemble dans un seul panneau. Par exemple, si vous consignez des métriques avec un schéma de nommage cohérent, comme `layer_0_loss`, `layer_1_loss` et `layer_2_loss`, vous pouvez utiliser une expression régulière comme `layer_\d+_loss` pour afficher toutes les pertes des couches sur un même graphique.
* Faites correspondre toutes les métriques qui partagent un schéma de nommage commun. Par exemple :
  * `train_.*` correspond à toutes les métriques d’entraînement comme `train_loss`, `train_accuracy`, `train_f1_score`
  * `.*_accuracy` correspond aux métriques d’accuracy sur différents jeux de données comme `train_accuracy`, `val_accuracy`, `test_accuracy`
* Utilisez l’alternance pour faire correspondre uniquement les métriques souhaitées. Par exemple, le groupe non capturant `(?:layer_0|layer_10)_loss` correspond uniquement aux pertes de la première et de la dixième couche, en excluant les couches intermédiaires.

<div id="capture-groups">
  #### Groupes de capture
</div>

Les groupes de capture de votre expression régulière déterminent la façon dont les panneaux affichant plusieurs métriques sont créés. Ce comportement peut être déroutant si vous ne vous y attendez pas.

* **Les groupes de capture créent plusieurs panneaux**
  Lorsque votre expression régulière contient des parenthèses formant un groupe de capture, l’UI crée un panneau distinct pour chaque valeur unique capturée par ce groupe.

  Par exemple, l’expression `(layer_0|layer_10)_loss` contient un groupe de capture et crée deux panneaux distincts :

  1. Un panneau pour les métriques correspondant à `layer_0`.
  2. Un panneau pour les métriques correspondant à `layer_10`.

* **Les groupes non capturants conservent les métriques ensemble**
  Pour faire correspondre plusieurs alternatives sans créer de panneaux distincts, utilisez un groupe non capturant avec la syntaxe `?:`. L’expression `(?:layer_0|layer_10)_loss` correspond aux mêmes métriques que dans l’exemple précédent, mais les affiche ensemble dans un seul panneau.

Voici la différence :

* `(layer_0|layer_10)_loss` - Crée deux panneaux, un pour chaque couche.
* `(?:layer_0|layer_10)_loss` - Crée un panneau affichant les deux couches ensemble.

Cela vous permet de choisir l’approche la mieux adaptée à vos besoins d’analyse. Utilisez des groupes de capture lorsque vous souhaitez séparer les métriques dans des panneaux distincts. Utilisez des groupes non capturants lorsque vous souhaitez comparer des métriques ensemble sur un seul graphique.
