IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Méthodes prédictives Discussion :

Boîte à outils réseau de neurones


Sujet :

Méthodes prédictives

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Inscrit en
    Septembre 2009
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Septembre 2009
    Messages : 12
    Par défaut Boîte à outils réseau de neurones
    Bonjour à tous,

    j'ai un doute sur la toolbox de réseau de neurones dans Matlab. En fait, c'est sur les réseaux de neurones en général.

    Je sais que l'on peut utiliser les RN pour faire de la prédiction. Par exemple, je peux essayer de prédire la valeur d'une voiture d'ici à 1 an après avoir entraîné mon réseau avec la variation de son prix pendant les 10 dernières années.

    Mon doute est lié aux fonctions d'activation utilisées (sigmoïde, tangente hyperbolique, etc). Normalement, les valeurs de sortie d'un réseau varient entre 0 et 1 (ou -1 et 1). Alors, comment est-il possible de prédire une valeur qui sort de cet intervalle ?

    je vous remercie en avance.

  2. #2
    Expert confirmé

    Profil pro
    Fabricant et casseur d'avions
    Inscrit en
    Avril 2004
    Messages
    3 820
    Détails du profil
    Informations personnelles :
    Localisation : France, Tarn (Midi Pyrénées)

    Informations professionnelles :
    Activité : Fabricant et casseur d'avions
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2004
    Messages : 3 820
    Par défaut
    Salut,

    Citation Envoyé par sketter Voir le message
    Normalement, les valeurs de sortie d'un réseau varient entre 0 et 1 (ou -1 et 1). Alors, comment est-il possible de prédire une valeur qui sort de cet intervalle ?
    Ben...
    Si c'est entre 0 et 1, tu multiplies par 30000, et tu as le prix en euros.
    Si c'est entre -1 et 1, tu multiplies par 10000, et tu as la variation par rapport au prix actuel.

    Non?

    Tu l'entraines avec quoi ton réseau? La valeur de sortie sera équivalente au résultats des jeux d'entrainement, donc si tu sais ce que tu lui apprends, tu sais ce qu'il va te sortir.
    "Errare humanum est, sed perseverare diabolicum"

    Ma page sur DVP.com

  3. #3
    Membre éprouvé Avatar de Bucketpc
    Inscrit en
    Août 2008
    Messages
    98
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations forums :
    Inscription : Août 2008
    Messages : 98
    Par défaut
    Alors, comment est-il possible de prédire une valeur qui sort de cet intervalle ?
    Comme tu les dis, la valeur doit être entre 0 et 1 ou -1 et 1. pour obtenir une valeur comme ça il faut utiliser la fonction sigmoid ou bien tang comme fonction d'activation sur la couche de sortie.

  4. #4
    Membre habitué
    Inscrit en
    Septembre 2009
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Septembre 2009
    Messages : 12
    Par défaut
    Citation Envoyé par Bucketpc Voir le message
    Comme tu les dis, la valeur doit être entre 0 et 1 ou -1 et 1. pour obtenir une valeur comme ça il faut utiliser la fonction sigmoid ou bien tang comme fonction d'activation sur la couche de sortie.
    en fait, j'ai quand-même donné un exemple idiot..hehe

    Mon vrai problème est le suivant : j'ai une matrice d'entrées contenant des températures mesurées par 5 sondes pendant l'année 2008. J'ai un total de 500 observations. Donc, la matrice est T(500,5).

    Comme sortie, j'ai un vecteur avec une fréquence propre de vibration d'un pont, avec 500 observations. Donc, w(500,1). Les fréquences propres varient entre 2 et 3 Hz.

    J'entraîne mon réseau (1 couche cachée avec 10 neurones) en utilisant 60% des observations et je le valide avec 10%. Après, je le test avec les autres 30%.

    Bon, le problème est que pour n'importe quelle combinaison de fonctions d'activation (logsig-tansig, tansig-logsig, logsig-pureline, etc.) mes sorties (les fréquences propres prédites) sont toujours à la bonne échelle (entre 2 et 3 Hz).

    Alors, ce ne devrait pas être entre 0 et 1 où encore entre -1 et 1 à cause des fonctions d'activation ??

    merci en avance

  5. #5
    Membre éprouvé
    Inscrit en
    Mai 2006
    Messages
    196
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 196
    Par défaut
    Salut,

    Précision: Je n'ai jamais utilisé les RdN matlab. Je les ai toujours codé.

    De la manière dont j'ai appris a faire un RdN, les fonctions d'activations type tanh, simoide ... Je ne les utilise que pour la couche cachée. Au niveau de ma couche de sortie la fonction de transfert et l'identité. Si matlab fonction de la même manière, tu peux très bien obtenir obtenir des valeurs de sortie sortant des intervalles [-1 1] ou [0 1] ...

  6. #6
    Membre habitué
    Inscrit en
    Septembre 2009
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Septembre 2009
    Messages : 12
    Par défaut architecture d'un réseau de neurones
    merci Clerq.

    Finalement, j'ai découvert que Matlab fait une sorte de normalisation et de "dénormalisation". C'est pour ça que les sorties ne sont pas entre -1 et 1 (ou 0 et 1), mais sont toujours à la même échelle des entrées...

    Bon, maintenant j'ai un autre doute. Je n'arrive pas à comprendre l'architecture d'un réseau de neurones. Supposons que j'aie une matrice d'entrées avec 50 observations sur 5 caractéristiques (X=50x5). Et, comme sortie, un vecteur quelconque (y=50x1).

    Je veux entraîner un réseau avec une couche cachée ayant 10 neurones.

    L'architecture est donc :

    Couche d'entrée : 5 neurones
    Couche cachée : 10 neurones
    Couche de sortie : 1 neurones.

    Mes 50 observations vont être pondérées par 5 neurones. La sortie de la couche est un vecteur 5x1.

    Après, comment ça se passe pour la couche cachée et, finalement, comment est-il possible d'avoir un vecteur 50x1 en sortie !?!?!

    encore merci !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. interface graphique, réseau de neurones
    Par korp69 dans le forum C++
    Réponses: 19
    Dernier message: 13/11/2006, 14h44
  2. Fenêtre "boîte à outil" au premier plan
    Par Antoine88 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 14/10/2006, 15h01
  3. Réponses: 2
    Dernier message: 12/06/2006, 17h36
  4. Réseau de neurones - reconnaissance visage
    Par PrAbronsius dans le forum Algorithmes et structures de données
    Réponses: 9
    Dernier message: 03/05/2006, 04h38
  5. [WD8] Boîte à outils
    Par Pascal dans le forum WinDev
    Réponses: 2
    Dernier message: 01/03/2005, 22h12

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo