Contenu principal

mapminmax

Transformer des matrices en mappant des valeurs de ligne minimales et maximales sur [-1 1]

Description

Conseil

Pour remettre à l’échelle des données pour des workflows de Deep Learning, utilisez la paire nom-valeur de normalisation pour la couche d’entrée.

[Y,PS] = mapminmax(X,YMIN,YMAX) prend une matrice X de dimension N x Q, et en option une valeur minimale et une valeur maximale pour chaque ligne de Y, YMIN et YMAX, et renvoie une matrice Y de dimension N x Q, et des paramètres de processus qui permettent un traitement cohérent des valeurs, PS.

mapminmax traite des matrices en normalisant les valeurs minimales et maximales de chaque ligne sur [YMIN, YMAX].

exemple

[Y,PS] = mapminmax(X,FP) prend des paramètres comme une struct : FP.ymin, FP.ymax.

Y = mapminmax('apply',X,PS) renvoie Y, selon X et des paramètres PS.

X = mapminmax('reverse',Y,PS) renvoie X, selon Y et des paramètres PS.

dx_dy = mapminmax('dx_dy',X,Y,PS) renvoie la dérivée inverse.

Exemples

réduire tout

Cet exemple montre comment formater une matrice afin que les valeurs minimales et maximales de chaque ligne soient mappées dans l’intervalle par défaut [-1,+1].

x1 = [1 2 4; 1 1 1; 3 2 2; 0 0 0]
[y1,PS] = mapminmax(x1)

Ensuite, appliquez les mêmes paramètres de traitement aux nouvelles valeurs.

x2 = [5 2 3; 1 1 1; 6 7 3; 0 0 0]
y2 = mapminmax('apply',x2,PS)

Inversez le traitement de y1 pour retrouver x1.

x1_again = mapminmax('reverse',y1,PS)

Arguments d'entrée

réduire tout

Matrice que vous souhaitez traiter, définie par une matrice N x Q.

Valeur minimale pour chaque ligne de la matrice de sortie Y, définie par un scalaire.

Valeur maximale pour chaque ligne de la matrice de sortie Y, définie par un scalaire.

Arguments de sortie

réduire tout

Matrice traitée, renvoyée comme une matrice N x Q.

Paramètres de processus qui permettent le traitement cohérent de valeurs, renvoyés comme une structure.

En savoir plus

réduire tout

Algorithmes

On suppose que X a uniquement des valeurs réelles finies et que les éléments de chaque ligne ne sont pas tous égaux. (Si xmax=xmin, ou si xmax ou xmin sont non finis, y=x et aucun changement n’a lieu.)

y = (ymax-ymin)*(x-xmin)/(xmax-xmin) + ymin;

Historique des versions

Introduit dans R2006a