-
Notifications
You must be signed in to change notification settings - Fork 7
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
32 Bit constraint for input vectors #8
Comments
Hi, thanks for your interest in this library! Currently I'm only
supporting 32-bit to be consistent with the GPU enabled code, and I've seen
in experiments that it doesn't make too much of a difference (see figure 4
here http://www.ctralie.com/Research/linmdtw/paper.pdf)
But if you find a use case where that actually makes a difference, I would
be very interested to see it!
…On Tue, Sep 7, 2021 at 2:10 PM lvlanson ***@***.***> wrote:
Hello Mr Trailie,
this is Thomas Davies. I was wondering why you have this constraint for
the input vectors X and Y to be 32 Bit. Do you think it is also possible in
the future to work with 64 Bit floats?
Kind Regards,
Thomas Davies
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
<#8>, or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAJWDZX5QJIJGX76ZYNI6J3UAZISRANCNFSM5DS5MYQQ>
.
Triage notifications on the go with GitHub Mobile for iOS
<https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675>
or Android
<https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub>.
|
Hi! I use your DTW algorithm for a machine learning algorithm, where I update the timeseries based on the distance between two timeseries. Over the course of the learning process the float values can become really small, since I need to scale them between 0 and 1 before I start training them. The more epochs I use, the more likely it is that I work with really small floats EDIT: and huge floats. I usually get a buffer overflow warning pretty fast when using linear memory dtw. There is currently no rush for implementing a 64 bit version. I'd even try to help out myself. Currently I need to finish my thesis and when I'm done I can try to make a 64 bit version. My work is based on this paper https://www.sciencedirect.com/science/article/abs/pii/S0031320317304387. I am incorporating your work as well. I can send you some code if you are interested in this topic. |
Ah very interesting! So incorporating 64 bit into cython for the CPU
version would be no problem; one would just change floats to doubles.
However, I'm not aware of how to support 64-bit in pycuda. So I'd have to
look into that first
…On Wed, Sep 8, 2021 at 2:23 AM lvlanson ***@***.***> wrote:
Hi!
I use your DTW algorithm for a machine learning algorithm, where I update
the timeseries based on the distance between two timeseries. Over the
course of the learning process the float values can become really small,
since I need to scale them between 0 and 1 before I start training them.
The more epochs I use, the more likely it is that I work with really small
floats. I usually get a buffer overflow warning pretty fast when using
linear memory dtw.
There is currently no rush for implementing a 64 bit version. I'd even try
to help out myself. Currently I need to finish my thesis and when I'm done
I can try to make a 64 bit version. My work is based on this paper
https://www.sciencedirect.com/science/article/abs/pii/S0031320317304387.
I am incorporating your work as well.
I can send you some code if you are interested in this topic.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
<#8 (comment)>, or
unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAJWDZSJCNLHAIIIC7TQEXTUA36PRANCNFSM5DS5MYQQ>
.
Triage notifications on the go with GitHub Mobile for iOS
<https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675>
or Android
<https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub>.
|
Anyway, if memory is all you care about and you don't need to use CUDA to parallelize the computation, then one thing I could do in the meantime is enable a 64-bit option for the CPU |
Hey there, don't worry about this for now. We could add 64-bit support in the future. For now I need to install the changed linmdtw version in my system. Currently I am having a hard time it being recognized correctly and running. |
Yeah, I'm still reviewing your changes and brushing up on what I did
before. If you're using conda, you can setup a new environment with your
code
https://docs.conda.io/projects/conda/en/latest/user-guide/tasks/manage-environments.html
and then you can do
pip install -e .
from within your directory. That will install the package with a symbolic
link to your code, so anything you change in your code will be updated in
what you run. I'd suggest doing that in the meantime before I make a full
official release. But the test cases you left are very helpful. I just
have limited time because of teaching and other projects, but I will see
what I can do today
…On Sun, Sep 19, 2021 at 9:18 AM lvlanson ***@***.***> wrote:
Hey there,
don't worry about this for now. We could add 64-bit support in the future.
For now I need to install the changed linmdtw version in my system.
Currently I am having a hard time it being recognized correctly and running.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
<#8 (comment)>, or
unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAJWDZRQFU3SJ5KKXRENB4LUCXPLLANCNFSM5DS5MYQQ>
.
Triage notifications on the go with GitHub Mobile for iOS
<https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675>
or Android
<https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub>.
|
Hello Mr Tralie,
this is Thomas Davies. I was wondering why you have this constraint for the input vectors X and Y to be 32 Bit. Do you think it is also possible in the future to work with 64 Bit floats?
Kind Regards,
Thomas Davies
The text was updated successfully, but these errors were encountered: