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

Mathématiques Discussion :

simplification d'algo : Levenberg -> linéaire?


Sujet :

Mathématiques

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Février 2007
    Messages
    182
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Février 2007
    Messages : 182
    Points : 52
    Points
    52
    Par défaut simplification d'algo : Levenberg -> linéaire?
    Bonjour à tous,

    Voilà ca fait un moment que ca me trotte dans la tête et j'arrête pas d'y penser, grmblblbl... j'aimerais optimiser (et simplifier) mon algorithme, je m'explique:

    Je fais de la régression non linéaire pour du fitting en utilisant l'algorithme de Levenberg-Marquardt pour minimiser y1 = a.exp(bx)+c

    Il s'avère que la fonction y2 = a.exp(bx) est minimisable (moindres carrés) par une régression linéaire et on obtient a et b. Mais la régression linéaire sur y1 ne permet par de trouver le coéfficient c : (y1-c) = log(a) + bx.

    Donc bon, je pense que l'algorithme de LM ca fait un peu usine a gaz pour tout ca et qu'il existe certainement quelque chose de plus simple pour minimiser y1 par une régression linéaire et de trouver c en même temps ?

    Je travaille avec matlab et les exemples et liens sont les bienvenus ?

    Merci!
    Gian

  2. #2
    Membre éclairé
    Inscrit en
    Janvier 2005
    Messages
    711
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 711
    Points : 751
    Points
    751
    Par défaut
    la comme ca, la seule solution que je vois, c'est d'estimer c en regardant la valeur de ta fonction vers moins l'infini (en supposant que b est positif), ou plus concretement pour des valeurs negatives suffisamment grande en valeur absolue.

  3. #3
    Membre éclairé
    Inscrit en
    Janvier 2005
    Messages
    711
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 711
    Points : 751
    Points
    751
    Par défaut
    ceci dit, sur ce genre de fonction, levensberg est tres efficace, et finalement avec un systeme lineaire et modulo les arrondis qui s'accumulent, tu ne pers pas forcement grand chose.

    a la limite, essaie de fitter la version en Log (linearisé), tu obtiendras peut etre des resultats plus precis.. mais a part ca...

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Février 2007
    Messages
    182
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Février 2007
    Messages : 182
    Points : 52
    Points
    52
    Par défaut
    Merci pour ta réponse (rapide!)

    Je constate en observant mes courbes que 'b' est compris entre 0 et -5 (ou-7, par regardé exactement).

    J'ai déjà essayé de fitter avec y=a.exp(bx) en régression linéaire, et le résultat est bon, mais moins bon qu'avec l'usine à gaz LM.

  5. #5
    Membre éclairé
    Inscrit en
    Janvier 2005
    Messages
    711
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 711
    Points : 751
    Points
    751
    Par défaut
    oui, m'enfin je maintiens que LM n'est pas en soi une usine a gaz. il peut le devenir sur certaines fonctions tordues, mais sur un cas simple comme celui ci il te donnera un pquet de decimales justes.

    si tu veux quelque choses de plus fiable, et que tu connais les erreurs de mesure sur tes points, regarde du cote de l'inversion ensembliste via l'analyse par intervalle... peu connu mais hyper performant ! jette un coup d'oeil au logiciel interval peeler par exemple (sous windows)...

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Février 2007
    Messages
    182
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Février 2007
    Messages : 182
    Points : 52
    Points
    52
    Par défaut
    Ok!!
    Merci bien je vais jeter un oeil, je ne connais pas du tout ca.

Discussions similaires

  1. Réponses: 3
    Dernier message: 18/04/2014, 12h00
  2. algo non linéaire avec borne
    Par membreComplexe12 dans le forum Algorithmes et structures de données
    Réponses: 13
    Dernier message: 03/07/2012, 15h53
  3. Résolution des systèmes linéaires
    Par FR119492 dans le forum Mathématiques
    Réponses: 7
    Dernier message: 24/12/2010, 21h15
  4. Algo Levenberg Marquadt
    Par Guigui4345 dans le forum MATLAB
    Réponses: 1
    Dernier message: 10/03/2008, 13h22
  5. Simplification d'équation linéaire algébrique
    Par Shivaneth dans le forum C
    Réponses: 6
    Dernier message: 09/01/2008, 01h50

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