Je suis confronté à un petit soucis pour entrainer correctement un réseau neuronal.
Mes valeurs allant de 0 à 2^32 (tout le champ des entiers sur 4 octets donc), avec une moyenne de 4266870883.51741 et une déviation standard trop élevée (en gros la moyenne avec encore 3-4 zéros derrière), en bref si j'essaie de normaliser mes valeurs j'obtiens des valeurs presque toutes égales (au 0.0001 près) donc le réseau neuronal n'est pas efficace.
J'ai bidouillé un peu à la main (le coup de (x - (xMax - xMin) / 2) / (xMax - xMin)) malheureusement les valeurs obtenues sont toujours inutilisables.
Voici un échantillon des données que j'ai (une ligne input une ligne output) :
En ce qui concerne les 4 dernières lignes ce sont des données relativement plus rares (environ 0.5% de la masse totale des données que j'ai) mais qui ne peuvent-être ignorées.
Auriez-vous une petite idée de comment je pourrais standardiser au mieux ces données (entre -1 et 1 ou 0 et 1) ?
Je me suis arrêté à la première phrase, parce que je pense qu'il y a une erreur. Tu dis une déviation standard égale à environ 1000 fois la moyenne.
Dans mon jargon, la déviation standard, c'est ce qu'on appelle aussi l'écart-type. Et il y a un autre indicateur classique, la variance, qui vaut V = ECT².
Je pense que tu as utilisé la variance, et non l'écart-type.
Hmm la formule que j'ai utilisé pour calculer la déviation est sqrt( (x1-X̅)² + (x2-X̅)² + ... ). A moins qu'il ne faille multiplier tout l'intérieur de la parenthèse par 1/N (ce qui en fait me paraît avoir plus de sens, compte tenu de la quantité de valeurs que j'ai...) ?
- Edité par MysteryDash 6 septembre 2017 à 16:03:43
Déviation = racine de la moyenne(et non somme) des carrés des écarts à la moyenne.
Standardisation de données
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.