Open lthoang opened 3 months ago
Do we need it to preserve the order of b3
for validation and b4
for testing, or it can be arbitrary?
Do we need it to preserve the order of
b3
for validation andb4
for testing, or it can be arbitrary?
@tqtg I think we should preserve the order of b3
and b4
for validation and testing as validation data can be included in the historical baskets for test.
We can also add another option to specify whether we should keep the order or not. However, we need a motivating example for the arbitrary case.
Using validation data for testing is also a debatable topic. I think it's good to include a couple of paper references as motivation for this feature.
Using validation data for testing is also a debatable topic. I think it's good to include a couple of paper references as motivation for this feature.
MMNR: Multi-view Multi-aspect Neural Networks for Next-basket Recommendation, code https://github.com/Hiiizhy/MMNR
Description
Dataset can be split by the order of basket in user sequence.
NextBasketEvaluation
now supports splitting data by user sequence. The data will be split based onuser_id
, meaning users in training, validation, and testing do not overlap.In this requested feature, users in validation and test should be available in training data.
Expected behavior with the suggested feature
We can keep the last basket in sequence as testing, second last basket as validation, and the rest as training. For example, a sequence
b1 b2 b3 b4
can be split into trainb1 b2
, validationb3
, and testb4
while the history baskets for validation isb1 b2
and the history baskets for test isb1 b2 b3
.