-
Notifications
You must be signed in to change notification settings - Fork 795
Improve ISSM interface #1223
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
Improve ISSM interface #1223
Conversation
2780b9e
to
fe7a198
Compare
4912cda
to
33921d4
Compare
tests are missing, and are pending the bugfix in #1233
33921d4
to
e1c0939
Compare
test/model/deepstate/test_issm.py
Outdated
|
||
season_indices = [[0] * 10, [0] * 2 + [1] * 8] | ||
|
||
for item in range(1, 2): |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You are checking here for only one item?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
right, that was for debugging, I'll revert it
for item in range(1, 2): | ||
for time in range(2, 10): | ||
season_indicator = mx.nd.one_hot( | ||
mx.nd.array([season_indices[item][time]]), 12 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe I am missing something: mx.nd.array([season_indices[item][time]])
is always [1]
for this range of item
and time
values and you always create this one_hot array: [[0. 1. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.]]
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
on item=0
the season index is always 0
, on item=1
the season index changes from 0
to 1
after two time steps
Also maybe can you run |
|
Issue #, if available: addresses #1200
Description of changes: Using custom ISSMs in DeepState (i.e. other than the default one for the given frequency), does not work because the time features from which coefficients are constructed always fall back to the default ones. This PR changes this, by coupling each ISSM with the time feature that is needed to derive its coefficients.
Tests are added for the ISSM classes, which were not there before.
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.