Topic de MonopSebastopol :

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

  • 1
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 ?
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 ? :(

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 ?

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

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:

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:

?

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

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.

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

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

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

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

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:

  • 1

Données du topic

Auteur
MonopSebastopol
Date de création
2 décembre 2023 à 19:01:07
Nb. messages archivés
17
Nb. messages JVC
17
En ligne sur JvArchive 116