[MATH] Retrouver une fonction a partie de données ?

MonopSebastopol
2023-12-02 19:01:07

Salut,
Petite question aux mathématiciens du forum, sur un problème qui me parait à la fois assez commun mais que je ne sait pas du tout résoudre.
J'observe un phénomène que je veux modéliser, j'ai plusieurs points de données, et je vois ça fait un pattern qui ressemble plus ou moins à un genre de logarithme.
Comment avec mes quelques points de données je peux trouver une fonction mathématique qui colle à peu près, pour pouvoir calculer une valeur approximative pour n'importe quel valeur de x.
En gros sur ce paint, les points rouges c'est les données que j'ai, et je voudrais retrouver la formule qui me permette de calculer n'importe quel point de la courbe :
https://image.noelshack.com/fichiers/2023/48/6/1701539933-courbe-2.jpg
Est ce qu'il y a par exemple des logiciel qui permettent de trouver ça ?

Nique_Les_Maths
2023-12-02 19:02:12

Je suis vraiment pas un monstre en maths donc prends ça avec des pincettes mais c'est pas le principe même d'une interpolation ? :(

610060six
2023-12-02 19:02:45

regression non lineaire :ok:

MonopSebastopol
2023-12-02 19:05:41

Le 02 décembre 2023 à 19:02:12 :
Je suis vraiment pas un monstre en maths donc prends ça avec des pincettes mais c'est pas le principe même d'une interpolation ? :(

Oui mais perso a part l'interpolation linéaire je sais pas comment on quand ça fait ce genre de courbes

Le 02 décembre 2023 à 19:02:45 :
regression non lineaire :ok:

Ok je connais pas je vais regarder merci
Tu sais s'il y a des outils/logiciels qui permettent de faire ça facilement, ou ça se calcul à la main ?

0ToutEtCon
2023-12-02 19:06:33

A partir du moment où t'observe juste les points si tu fais pas d'hypothèses sur la forme de ta fonction sous jacente t'as pas de solution unique t'en a une infinité puisque tu peux tracer une infinité de fonctions qui passent exactement par ces points

Citranus
2023-12-02 19:06:53

fais une forme de fonction qui correspond à ton problème, par exemple a*ln(x) +b
Tu fais un programme qui parcourt des valeurs de a et de b dans des valeurs que tu choisis et tu calcules à chaque fois la somme des distances au carré entre les points de tes mesures et la fonction pour les valeurs de a et de b.
Tu minimises l'erreur et tu affiches.
Ou sinon excel peut surement faire la même chose, cette mthode ne marchera que si tu deviens obligé d'envisager une forme de fonction plus complexe.

CoeurOr
2023-12-02 19:06:54

Je suis pas cale en maths mais tu peux regarder la méthode des moindres carrés ou d'autres méthodes dopti du genrehttps://image.noelshack.com/fichiers/2017/05/1486167909-bloggif-58951f38cf2bc.png

Citranus
2023-12-02 19:07:46

Le 02 décembre 2023 à 19:06:33 :
A partir du moment où t'observe juste les points si tu fais pas d'hypothèses sur la forme de ta fonction sous jacente t'as pas de solution unique t'en a une infinité puisque tu peux tracer une infinité de fonctions qui passent exactement par ces points

:rire:

0ToutEtCon
2023-12-02 19:08:37

Le 02 décembre 2023 à 19:07:46 :

Le 02 décembre 2023 à 19:06:33 :
A partir du moment où t'observe juste les points si tu fais pas d'hypothèses sur la forme de ta fonction sous jacente t'as pas de solution unique t'en a une infinité puisque tu peux tracer une infinité de fonctions qui passent exactement par ces points

:rire:

?

610060six
2023-12-02 19:09:04

Le 02 décembre 2023 à 19:05:41 :

Le 02 décembre 2023 à 19:02:12 :
Je suis vraiment pas un monstre en maths donc prends ça avec des pincettes mais c'est pas le principe même d'une interpolation ? :(

Oui mais perso a part l'interpolation linéaire je sais pas comment on quand ça fait ce genre de courbes

Le 02 décembre 2023 à 19:02:45 :
regression non lineaire :ok:

Ok je connais pas je vais regarder merci
Tu sais s'il y a des outils/logiciels qui permettent de faire ça facilement, ou ça se calcul à la main ?

https://un-est-tout-et-tout-est-un.blogspot.com/2019/04/ia-regression-non-lineaire-avec-scikit.html

Citranus
2023-12-02 19:11:08

Le 02 décembre 2023 à 19:08:37 :

Le 02 décembre 2023 à 19:07:46 :

Le 02 décembre 2023 à 19:06:33 :
A partir du moment où t'observe juste les points si tu fais pas d'hypothèses sur la forme de ta fonction sous jacente t'as pas de solution unique t'en a une infinité puisque tu peux tracer une infinité de fonctions qui passent exactement par ces points

:rire:

?

Quand il s'agit de faire coller une fonction au mieux à des mesures, faire que la fonction passe exactement par les points de la mesure est presque impossible, et c'est le meilleur moyen de croire avancer et de faire de la merde.

MonopSebastopol
2023-12-02 19:13:28

Le 02 décembre 2023 à 19:06:33 :
A partir du moment où t'observe juste les points si tu fais pas d'hypothèses sur la forme de ta fonction sous jacente t'as pas de solution unique t'en a une infinité puisque tu peux tracer une infinité de fonctions qui passent exactement par ces points

Oui c'est vrai, après je suis clairement sur un phénomène de type logarithme

Le 02 décembre 2023 à 19:06:53 :
fais une forme de fonction qui correspond à ton problème, par exemple a*ln(x) +b
Tu fais un programme qui parcourt des valeurs de a et de b dans des valeurs que tu choisis et tu calcules à chaque fois la somme des distances au carré entre les points de tes mesures et la fonction pour les valeurs de a et de b.
Tu minimises l'erreur et tu affiches.
Ou sinon excel peut surement faire la même chose, cette mthode ne marchera que si tu deviens obligé d'envisager une forme de fonction plus complexe.

Ha oui, dit comme ça ça à l'air en fait assez simple et efficace comme algo pour trouver la solution, merci :ok:

Le 02 décembre 2023 à 19:09:04 :

Le 02 décembre 2023 à 19:05:41 :

Le 02 décembre 2023 à 19:02:12 :
Je suis vraiment pas un monstre en maths donc prends ça avec des pincettes mais c'est pas le principe même d'une interpolation ? :(

Oui mais perso a part l'interpolation linéaire je sais pas comment on quand ça fait ce genre de courbes

Le 02 décembre 2023 à 19:02:45 :
regression non lineaire :ok:

Ok je connais pas je vais regarder merci
Tu sais s'il y a des outils/logiciels qui permettent de faire ça facilement, ou ça se calcul à la main ?

https://un-est-tout-et-tout-est-un.blogspot.com/2019/04/ia-regression-non-lineaire-avec-scikit.html

Cool, merci pour vos réponses, je devrais m'en sortir je regarde tout ça

AissellesFEMBOY
2023-12-03 06:42:02

Trouve une échelle dans laquelle tu as qqch qui ressemble à une droite, après régression linéaire en dépit de

jean-bonsec
2023-12-03 06:43:03

Machine learning

TheLelouch4
2023-12-03 13:49:47

Tu peux interpoler par un polynome
Sinon fait des regressions paramétriques

Toute façon faut toujours postuler une forme paramétrique

Arc-boute
2023-12-03 13:52:02

Utilise regressi :ok:

pseu_d_eau
2023-12-03 14:17:46

Il y a des centaines et des centaines de moyens de faire ça, qui te donneront des résultats différents. La grosse majorité de ce qui est établi en machine learning sert justement à faire ce que tu demandes. :hap:

Il faut qu'on en sache plus sur le contexte de ton problème pour avoir les bonnes hypothèses, les bons a priori, pour te donner une méthode correcte. Sinon on peut simplement te balancer un truc comme l'interpolation lagrangienne qui te donnera une fonction qui passe par chacun de tes points, mais qui n'est certainement pas la fonction que tu attends. :hap:

Infos
Gestion du forum

contact@geevey.com

API disponible. Utilisez le paramètre "api" en GET, peu importe le contenu, sur une page du site.

Notes

    Partenaire: JVFlux
    Ce site n'est pas associé à Jeuxvideo.com ou Webedia. Nous utilisons seulement des archives publiques.
    Il est inutile de me spammer par e-mail pour supprimer un topic. Au contraire, en conséquence, je mettrais votre topic dans le bloc ci-dessous.
Non-assumage
    Personne n'a pas assumé de topic pour le moment.