Replies: 2 comments 2 replies
-
You could write a custom There isn't anything built-in like this. PySR/SymbolicRegression.jl are optimizing accuracy and simplicity - thus, if a variable doesn't improve the accuracy, it should not appear in the equation. |
Beta Was this translation helpful? Give feedback.
-
Hi, I got the same problem here. By prio-ri physical knowledge, I can know for sure that some variables are 100% influential to the result. Yet I could not force them to appear. I was wondering if anyone have resolved it. I might try write a custom version, yet I am no expert in CS, so I have no idea how long I might take. Regards, Mike |
Beta Was this translation helpful? Give feedback.
-
I have a large test matrix of conditions allowing me to see the influence of certain variables on the function I'm trying to investigate. There is a visible difference in the curves when varying only one parameter and the difference is obvious. However, these variables are not always included in the resulting best fit equations produced by pysr.
I have set
complexity_of_constants=3
to prevent the algorithm from using generic constants unless absolutely necessary.I'm a bit new to symbolic regression, having only experienced Eureqa in the past but I do have experience with other optimization techniques (differential evolution mostly) and I was always able to define a feasible space to restrict the search; reading through the API documents, I've found some constraint options, such as choosing which operators to consider and setting custom complexities for them. However, I have not found a way to constrain the use of each constant to >=1, <5 for instance...
Is it possible to ensure each variable is used in the equation?
Beta Was this translation helpful? Give feedback.
All reactions