-
Notifications
You must be signed in to change notification settings - Fork 731
Questions about Dataset #66
Comments
Answers to the Questions A2. Can you explain the difference in results. is the Floating values different or the Recommendations completely different. Can you paste me both the results A3. DSSTNE Engine supports it . In the dataset(NetCDF) format when you create you need add the analog value .https://github.com/amznlabs/amazon-dsstne/blob/master/src/amazon/dsstne/utils/NetCDFhelper.cpp#L264 is the wrapper that you should call |
As far as Q2 is concerned, you may find that your results differ between runs due to DSSTNE's de-noising feature. When you use the example config.json file linked in the docs (https://s3-us-west-2.amazonaws.com/amazon-dsstne-samples/configs/config.json) the de-noising value is set to 0.2. Can you try setting this value to 0 and re-running your tests? If you continue to see differences in the output, we can dig into the issue further. |
Thanks for your reply. It’s really helpful. Re:A1 Re:A2 What I have done: I changed all timestamp in ml20m-all to 1, and ran DSSTNE. The difference between results is that there are watched movie_ids in the result of modified ml20m-all. Result of original ml20m-all Result of modified ml20m-all For example: Re:A3 Thanks, |
@tristanpenman I changed the de-noising value to 0 in config.json, and I got a different result. original ml20m-all modified ml20m-all
Can you dig this further? Also, what do you mean by “you may find that your results differ between runs due to DSSTNE's de-noising feature”? I get the same result every time I run with the same config.json. Thanks, |
@yuasa, did you retrain the model after changing config.json, or did you just re-run 'predict'? And when I say that your results may differ, I meant that re-running 'predict' with a de-noising value > 0 may give you different recommendations. |
I retrained. And yes, I got different recommendations. |
@yuasaonrails, thanks for taking the time to do all the extra debugging. We're going to work on some features / enhancements to better support analog and digital inputs. I've created issue #69 as a starting point. You can watch that ticket via Github notifications to track progress. In the mean time, I suggest closing this ticket. It has been referenced in issue #69, and can always be reopened in the future. |
@tristanpenman Now, I am closing this issue. |
Hello @yuasaonrails I realized the problem you got is caused by the So items are not filtered for low numeric values (<= 10.0), and already viewed items can be recommended. Otherwise, apart from this (important!) filter issue, the behaviour is the same with timestamps or ratings. All these values are ignored with default 'indicator' type. Regards, and thanks to DSSTNE team for sharing your work! |
@beeva-enriqueotero Thanks for your help. |
Hello @yuasaonrails I mean that only implicit feedback ("indicator" type) is implemented. So any real or integer value, timestamp or rating is ignored. Apart from the There is an open issue asking for enhancement to correctly handle "analog" type: #69 Regards |
Thank you very much for the clarification. Your help is greatly appreciated |
Hi,
I was playing with the sample data, and now I have 3 questions.
Q1. How to make dataset with multiple feature values?
Currently, only one feature has one feature value. Is it possible to a feature has multiple values? If so how can I do that?
Q2. Changing all timestamps to 1 manually giving me a different result.
ml20m-all is the dataset of userId and movieId with timestamp.
userId movieId,timestamp: movieId,timestamp: movieId,timestamp…
On Issue#21, Mr.Rejith said “Currently no movie features are taken. Currently only 1/0 signals are supported from the wrapper script even though the Engine supports analog signals.”
So I changed all timestamps in ml20m-all to 1, and ran DSSTNE with modified data.
eg) 2,1112486027:29,1112484676:32,1112484819 to 2,1:29,1:32,1
I thought results would be the same, but it was not.
I am guessing that DSSTNE treats feature value as continuous value. Is this right? Then why did DSSTNE give me a different result?
Q3. Does DSSTNE support digital inputs?
On Issue#11, Mr.Rejith said “DSSTNE Engine supports analog inputs but we have not exposed it in the wrapper . if the Rating comes it could be viewed as an analog signals”
Analog inputs like Rating are continuous value, so I wondered if DSSTNE supports digital inputs like category id which is discrete value.
DSSTNE is wonderful. I feel like it has so much potential.
But I couldn’t figure how to use it well, and I couldn’t find detailed documentations online.
Thank you,
yuasa
The text was updated successfully, but these errors were encountered: