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

MATLAB Discussion :

Régression 3D, quelle fonction?


Sujet :

MATLAB

  1. #1
    Membre du Club
    Inscrit en
    Mars 2008
    Messages
    104
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 104
    Points : 49
    Points
    49
    Par défaut Régression 3D, quelle fonction?
    Bonjour,

    Suis à une prise de données, j'ai une matrice DATA contenant les données et deux vecteurs pour les axes x et y.

    Cela donne le plot suivant:
    http://hpics.li/e149fd1

    C'est dont assez régulier et j'aimerais calculer la fonction F telle que:
    DATA=F(x,y).
    Une info: pour un y donné, la fonction Zy=Gy(x) est linéaire.
    J'ai cru voir plein d'agorithmes mais j'y connaissant pas grand chose, je ne saurais que choisir. Donc si quelqu'un peut me renseigner, je suis à l'écoute.

    Question subsidiaire, dans le cas où la fonction Zy=Gy(x) n'est pas linéaire, il y a-t-il d'autre algorithmes?

    Merci d'avance.

  2. #2
    Membre éprouvé
    Inscrit en
    Août 2010
    Messages
    1 124
    Détails du profil
    Informations forums :
    Inscription : Août 2010
    Messages : 1 124
    Points : 1 277
    Points
    1 277
    Par défaut
    Bonjour,

    Soit tu imposes la linéarité en le couple (x,y), soit tu calcules une regression linéaire en x pour chaque valeur de y

    Pour la régression non linéaire, on utilise habituellement:
    - du paramétrique : min sum (Z_i - f(X_i,theta))^2, si on spécifie une famille f(x,theta).
    - du non paramétrique, avec des noyaux ou des ondelettes (par exemple http://en.wikipedia.org/wiki/Kernel_regression)

  3. #3
    Membre du Club
    Inscrit en
    Mars 2008
    Messages
    104
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 104
    Points : 49
    Points
    49
    Par défaut
    Bonjour,

    Je te remercie pour la réponse mais... j'ai du mal à saisir.

    Serait-il possible d'avoir plus de précisions?

  4. #4
    Membre du Club
    Inscrit en
    Mars 2008
    Messages
    104
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 104
    Points : 49
    Points
    49
    Par défaut
    J'ai oublié de dire quelque chose d'importante.

    Pour chaque y, il y a une fonction z=g(x) qui est un droite dont je peux calculer l'équation.
    De la même façon, pour chaque x, il y a une fonction z=h(y) qui est un droite dont je peux calculer l'équation.

    Je peux donc avoir les équations d'un ensemble de droites composant ma surface. Cela rend-t-il plus aisé la solution?

  5. #5
    Membre éclairé
    Avatar de Kangourou
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    579
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 579
    Points : 859
    Points
    859
    Par défaut
    salut,

    ça ne serait pas un problème de régression linéaire multiple ? Finalement tu cherches les coefficients d'une surface dans le repère(x, y, F(x,y)).

    Avec un modèle linéaire simple, le problème nécessite de trouver 4 paramètres :
    F(x,y) = a + b*x + c*y + d*x*y

    A priori ça peut se résoudre via la fonction mldivide.

    A+

  6. #6
    Membre du Club
    Inscrit en
    Mars 2008
    Messages
    104
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 104
    Points : 49
    Points
    49
    Par défaut
    Bonjour,

    Oui, c'est cela, avec peut être d=0. J'ai regardé la fonction mldivide, en quoi cela peut-il m'adier?

  7. #7
    Rédacteur/Modérateur

    Avatar de Jerome Briot
    Homme Profil pro
    Freelance mécatronique - Conseil, conception et formation
    Inscrit en
    Novembre 2006
    Messages
    20 302
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Freelance mécatronique - Conseil, conception et formation

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 302
    Points : 53 166
    Points
    53 166
    Par défaut
    Citation Envoyé par elglantosimpatico Voir le message
    J'ai regardé la fonction mldivide, en quoi cela peut-il m'adier?
    => Ajustement aux moindres carrés de courbes et de surfaces
    Ingénieur indépendant en mécatronique - Conseil, conception et formation
    • Conception mécanique (Autodesk Fusion 360)
    • Impression 3D (Ultimaker)
    • Développement informatique (Python, MATLAB, C)
    • Programmation de microcontrôleur (Microchip PIC, ESP32, Raspberry Pi, Arduino…)

    « J'étais le meilleur ami que le vieux Jim avait au monde. Il fallait choisir. J'ai réfléchi un moment, puis je me suis dit : "Tant pis ! J'irai en enfer" » (Saint Huck)

Discussions similaires

  1. Réponses: 14
    Dernier message: 27/04/2011, 09h32
  2. Quelle fonction faut-il en PHP
    Par rane dans le forum Langage
    Réponses: 5
    Dernier message: 11/05/2006, 19h14
  3. Réponses: 8
    Dernier message: 08/04/2006, 18h43
  4. Quelle fonction permet d'imprimer ?
    Par tails dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 03/06/2005, 10h17
  5. Réponses: 1
    Dernier message: 22/11/2004, 10h46

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