-
Notifications
You must be signed in to change notification settings - Fork 3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Extrapolating to Infinite History Lengths #24
Comments
This seems like it would be a reasonable solution to me, but I'm assuming the user would have to specify a functional form to fit the history length? That shouldn't be hard, we would just need to have a few options ready-made, polynomial, exponential etc. |
Maybe something like (making this up right now...) typedef struct inform_polynomial
{
int degree;
double *coefficients;
} inform_polynomial;
// IEEE 754 specifies that floating-point values can be INF or -INF
double inform_polynomial_limit(inform_polynomial *poly, double x, inform_error *err);
polynomial *inform_fit_polynomial(double *xs, int degree, inform_error *err); And then have one for each type of implemented curve? |
BTW, I'm absolutely certain that libraries exist for this kind of thing: GSL linear and non-Linear least-squares fitting. |
Yeah that seems pretty reasonable to me. |
One feature that may be of value is a method for extrapolating the finite-history estimates of active information, transfer entropy, etc... to their full infinite-history counterparts. This is a feature that none of the related projects, e.g. JIDT, seem to have.
Proposed Approach
The obvious method for doing this is to implement a suite of curve-fitting functions which, given a sequence of values parameterized by k, would fit a closed-form curve. Taking the limit as k → ∞, would give an approximation of the infinite-history form of the various measures.
The text was updated successfully, but these errors were encountered: