[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
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 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
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
?
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 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
?
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
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 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
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
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.
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.