-
Notifications
You must be signed in to change notification settings - Fork 178
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
Taken's Parameter Search - Potential bug/enhancement #605
Comments
Thanks for the report @jcoll3 ! I agree that this seems like undesirable behaviour. May I just squeeze a minimal reproducible example out of you to make sure we're talking about the same thing? |
Thanks for the fast reply @ulupo! Here is a small example that causes the behavior.
|
Thanks @jcoll3 ! I can indeed reproduce the bad behaviour. Personally, I think we should pre-empt such situations by restricting the range of the giotto-tda/gtda/time_series/embedding.py Line 106 in eaa1dd0
Specifically, I think we need to replace
This is because we actually even need embeddings up to and including dimension Incidentally, one could (and should) argue that checks should also be applied before the mutual information giotto-tda/gtda/time_series/embedding.py Line 100 in eaa1dd0
What do you think? |
Actually I think the situation is even stricter than what I said above. To avoid errors in line giotto-tda/gtda/time_series/_utils.py Line 61 in eaa1dd0
one would also need to make sure that |
I think we're on the right track. I worked out the math for the minimum length to get 3 samples from any (stride, delay, dimension). The third vector starts at point Then
The only remaining issue I see is that the following loops add to giotto-tda/gtda/time_series/embedding.py Line 106 in eaa1dd0
giotto-tda/gtda/time_series/embedding.py Line 111 in eaa1dd0
|
Hello, any progress to fix this? I think it is really weird that the optimal parameter values don't work at all. |
Hello,
I am currently experimenting with time series classifies using Taken's embedding. The function takens_embedding_optimal_parameters is behaving somewhat differently than I expected. I am getting the following error.
ValueError: Not enough time stamps (176) to produce at least one 7-dimensional vector under the current choice of time delay (30).
I understand why this is happening, but it seems like this parameter combination should just be skipped instead of raising an error. I would just reduce the size of max dimension and/or max delay, but both are valid for lower values of the other.
It looks like issue arises here:
giotto-tda/gtda/time_series/_utils.py
Line 56 in eaa1dd0
Maybe there can be check on line 55, or potentially a flag for when _time_delay_embedding is being used a parameter search.
Thanks,
Joe
The text was updated successfully, but these errors were encountered: